@ieeesa-npm/groups 0.15.0 → 0.15.2

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.
@@ -1,23 +1,24 @@
1
1
  import * as i0 from '@angular/core';
2
- import { Injectable, EventEmitter, Component, ViewEncapsulation, Output, ViewChild, Input, ChangeDetectionStrategy, NgModule } from '@angular/core';
2
+ import { Component, ViewEncapsulation, Inject, Injectable, EventEmitter, Input, Output, ViewChild, ChangeDetectionStrategy, NgModule } from '@angular/core';
3
3
  import * as i3 from '@angular/common';
4
4
  import { CommonModule } from '@angular/common';
5
- import { Validators } from '@angular/forms';
5
+ import * as i3$1 from '@angular/forms';
6
+ import { FormsModule, Validators } from '@angular/forms';
6
7
  import * as i2$1 from '@ieeesa-npm/presentation';
7
- import { AlignType, FormControlType, DynamicFormComponent, MenuComponent, IconButtonComponent, TextTruncatedDirective, SearchType, ChipsType, TableColumnType, TableColumnSortDirection, ModalConfirmationComponent, DataTableComponent, ModalComponent, SearchComponent, SelectComponent, LegendComponent } from '@ieeesa-npm/presentation';
8
+ import { SlideToggleComponent, AlignType, FormControlType, DynamicFormComponent, MenuComponent, IconButtonComponent, TextTruncatedDirective, SearchType, ChipsType, TableColumnType, TableColumnSortDirection, ModalConfirmationComponent, DataTableComponent, ModalComponent, SearchComponent, SelectComponent, LegendComponent } from '@ieeesa-npm/presentation';
8
9
  import * as i2 from '@ieeesa-npm/utility';
9
10
  import { AlertsService } from '@ieeesa-npm/utility';
10
11
  import { HttpErrorResponse } from '@angular/common/http';
11
12
  import * as i1 from '@angular/material/dialog';
12
- import { MatDialogModule } from '@angular/material/dialog';
13
- import { BehaviorSubject, map, catchError, Subject, takeUntil, merge } from 'rxjs';
14
- import { FormStatus, AlertType, ModalType } from '@ieeesa-npm/models';
13
+ import { MAT_DIALOG_DATA, MatDialogModule } from '@angular/material/dialog';
14
+ import { BehaviorSubject, map, catchError, Subject, takeUntil, forkJoin, merge } from 'rxjs';
15
+ import { AlertType, FormStatus, ModalType } from '@ieeesa-npm/models';
16
+ import * as i4 from '@angular/material/button';
17
+ import { MatButtonModule } from '@angular/material/button';
15
18
  import { FlatTreeControl } from '@angular/cdk/tree';
16
19
  import { takeUntil as takeUntil$1, map as map$1 } from 'rxjs/operators';
17
20
  import { MatIconModule } from '@angular/material/icon';
18
- import * as i8 from '@angular/material/button';
19
- import { MatButtonModule } from '@angular/material/button';
20
- import * as i4 from '@angular/material/tree';
21
+ import * as i4$1 from '@angular/material/tree';
21
22
  import { MatTreeModule } from '@angular/material/tree';
22
23
  import * as i5 from '@angular/material/tooltip';
23
24
  import { MatTooltipModule } from '@angular/material/tooltip';
@@ -88,6 +89,9 @@ var addUserRoster = {
88
89
  };
89
90
  var createGroup = {
90
91
  heading: "New Group",
92
+ reciprocalCredit: {
93
+ selectAtLeastOneGroup: "Please add at least one Working Group to enable Reciprocal Credit, or turn off the toggle."
94
+ },
91
95
  label: {
92
96
  parentGroup: "Parent Group",
93
97
  changeParentGroup: "Change Parent Group",
@@ -339,10 +343,14 @@ var errors = {
339
343
  "2022": "Representation Organization does not exist.",
340
344
  "2023": "Member Type is required.",
341
345
  "2024": "Unable to connect to IEEE user database. Please contact <a href='mailto:standards-support@ieee.org' rel='noopener noreferrer'>standards-support@ieee.org</a> if this persists.",
342
- "3004": "Organization does not found.",
346
+ "3004": "Organization not found.",
343
347
  ER1000: "Allowed group types are not found for the selected group.",
344
348
  ER1001: "Roster type is not configured.",
345
- "20l2": "First Name is required."
349
+ "20l2": "First Name is required.",
350
+ "MTG-010": "A group cannot grant reciprocal credit to itself.",
351
+ "MTG-011": "Reciprocal credit configuration already exists for this home/foreign group pair.",
352
+ "MTG-012": "Administrative permissions required for reciprocal credit configuration.",
353
+ "default": "Something went wrong. Please try again."
346
354
  };
347
355
  var ariaLabel = {
348
356
  alert: "Alert"
@@ -406,6 +414,66 @@ var GroupFunctionType;
406
414
  GroupFunctionType["ADD_USER_TO_ROSTER"] = "ADD_USER_TO_ROSTER";
407
415
  })(GroupFunctionType || (GroupFunctionType = {}));
408
416
 
417
+ /**
418
+ * Modal to select one or more foreign working groups (under the same committee)
419
+ * for reciprocal credit. Provides search and a checkbox table. Returns the
420
+ * selected AvailableForeignGroup[] on Add.
421
+ * @export
422
+ * @class AddWorkingGroupsComponent
423
+ */
424
+ class AddWorkingGroupsComponent {
425
+ // eslint-disable-next-line no-unused-vars
426
+ constructor(
427
+ // eslint-disable-next-line no-unused-vars
428
+ dialogRef,
429
+ // eslint-disable-next-line no-unused-vars
430
+ data) {
431
+ this.dialogRef = dialogRef;
432
+ this.data = data;
433
+ this.rows = [];
434
+ this.searchTerm = '';
435
+ const selectedIds = new Set(this.data?.selectedGroupIds ?? []);
436
+ this.rows = (this.data?.availableGroups ?? []).map((group) => ({
437
+ ...group,
438
+ selected: selectedIds.has(group.groupId),
439
+ }));
440
+ }
441
+ /** Rows filtered by the search term (group name). */
442
+ get filteredRows() {
443
+ const term = this.searchTerm.trim().toLowerCase();
444
+ if (!term)
445
+ return this.rows;
446
+ return this.rows.filter((row) => row.groupName.toLowerCase().includes(term));
447
+ }
448
+ /** Count of currently selected rows (for the title). */
449
+ get selectedCount() {
450
+ return this.rows.filter((row) => row.selected).length;
451
+ }
452
+ /** Toggle a row's selection. */
453
+ toggleRow(row) {
454
+ row.selected = !row.selected;
455
+ }
456
+ onCancel() {
457
+ this.dialogRef.close();
458
+ }
459
+ onAdd() {
460
+ const selected = this.rows
461
+ .filter((row) => row.selected)
462
+ // eslint-disable-next-line @typescript-eslint/no-unused-vars, no-unused-vars
463
+ .map(({ selected, ...group }) => group);
464
+ this.dialogRef.close(selected);
465
+ }
466
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddWorkingGroupsComponent, deps: [{ token: i1.MatDialogRef }, { token: MAT_DIALOG_DATA }], target: i0.ɵɵFactoryTarget.Component }); }
467
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: AddWorkingGroupsComponent, isStandalone: true, selector: "ieeesa-add-working-groups", ngImport: i0, template: "<div class=\"ieeesa-add-working-groups\">\r\n <div class=\"ieeesa-add-working-groups__header\">\r\n <h2 class=\"ieeesa-add-working-groups__title\">\r\n Add Working Groups ({{ selectedCount }})\r\n </h2>\r\n <button\r\n type=\"button\"\r\n class=\"ieeesa-add-working-groups__close\"\r\n (click)=\"onCancel()\"\r\n aria-label=\"Close\"\r\n >\r\n \u00D7\r\n </button>\r\n </div>\r\n\r\n <p class=\"ieeesa-add-working-groups__subtitle\">Choose working groups under the same committee</p>\r\n\r\n <!-- Search -->\r\n <div class=\"ieeesa-add-working-groups__search\">\r\n <input\r\n type=\"text\"\r\n [(ngModel)]=\"searchTerm\"\r\n placeholder=\"Search by name...\"\r\n aria-label=\"Search working groups\"\r\n />\r\n </div>\r\n\r\n <!-- Table -->\r\n <div class=\"ieeesa-add-working-groups__table\">\r\n <div class=\"ieeesa-add-working-groups__table-head\">\r\n <span class=\"ieeesa-add-working-groups__col-name\">Working Group</span>\r\n </div>\r\n\r\n <div\r\n *ngFor=\"let row of filteredRows\"\r\n class=\"ieeesa-add-working-groups__row\"\r\n >\r\n <label class=\"ieeesa-add-working-groups__col-name\">\r\n <input\r\n type=\"checkbox\"\r\n [checked]=\"row.selected\"\r\n (change)=\"toggleRow(row)\"\r\n />\r\n <span>{{ row.groupName }}</span>\r\n </label>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"filteredRows.length === 0\"\r\n class=\"ieeesa-add-working-groups__empty\"\r\n >\r\n No working groups found.\r\n </div>\r\n </div>\r\n\r\n <!-- Actions -->\r\n <div class=\"ieeesa-add-working-groups__actions\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-tertiary-button\"\r\n (click)=\"onCancel()\"\r\n >\r\n Cancel\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-primary-button\"\r\n [disabled]=\"selectedCount === 0\"\r\n (click)=\"onAdd()\"\r\n >\r\n Add\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-add-working-groups{padding:20px 24px;min-width:420px;font-family:Calibri Regular}.ieeesa-add-working-groups__header{display:flex;align-items:center;justify-content:space-between}.ieeesa-add-working-groups__title{font-family:Calibri Bold;font-size:1.25rem;font-weight:700;margin:0}.ieeesa-add-working-groups__close{border:none;background:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#49454f}.ieeesa-add-working-groups__subtitle{font-size:.875rem;color:#49454f;margin:8px 0 16px}.ieeesa-add-working-groups__search{margin-bottom:12px}.ieeesa-add-working-groups__search input{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid #878b8f;border-radius:4px;font-size:.875rem}.ieeesa-add-working-groups__table{border-top:1px solid #e0e0e0;max-height:360px;overflow-y:auto}.ieeesa-add-working-groups__table-head{display:flex;align-items:center;padding:8px 0;background:#f7f7f7;font-family:Calibri Bold;font-weight:700;font-size:.8125rem;color:#49454f;position:sticky;top:0;z-index:1}.ieeesa-add-working-groups__row{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f0}.ieeesa-add-working-groups__col-name{flex:1 1 auto;display:flex;align-items:center;gap:10px;font-size:.875rem}.ieeesa-add-working-groups__empty{padding:16px 0;text-align:center;color:#878b8f;font-size:.875rem}.ieeesa-add-working-groups__actions{display:flex;justify-content:flex-start;gap:12px;margin-top:20px}\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: "ngmodule", type: FormsModule }, { kind: "directive", type: i3$1.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i3$1.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i3$1.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { 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: MatDialogModule }], encapsulation: i0.ViewEncapsulation.None }); }
468
+ }
469
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: AddWorkingGroupsComponent, decorators: [{
470
+ type: Component,
471
+ args: [{ selector: 'ieeesa-add-working-groups', standalone: true, imports: [CommonModule, FormsModule, MatButtonModule, MatDialogModule], encapsulation: ViewEncapsulation.None, template: "<div class=\"ieeesa-add-working-groups\">\r\n <div class=\"ieeesa-add-working-groups__header\">\r\n <h2 class=\"ieeesa-add-working-groups__title\">\r\n Add Working Groups ({{ selectedCount }})\r\n </h2>\r\n <button\r\n type=\"button\"\r\n class=\"ieeesa-add-working-groups__close\"\r\n (click)=\"onCancel()\"\r\n aria-label=\"Close\"\r\n >\r\n \u00D7\r\n </button>\r\n </div>\r\n\r\n <p class=\"ieeesa-add-working-groups__subtitle\">Choose working groups under the same committee</p>\r\n\r\n <!-- Search -->\r\n <div class=\"ieeesa-add-working-groups__search\">\r\n <input\r\n type=\"text\"\r\n [(ngModel)]=\"searchTerm\"\r\n placeholder=\"Search by name...\"\r\n aria-label=\"Search working groups\"\r\n />\r\n </div>\r\n\r\n <!-- Table -->\r\n <div class=\"ieeesa-add-working-groups__table\">\r\n <div class=\"ieeesa-add-working-groups__table-head\">\r\n <span class=\"ieeesa-add-working-groups__col-name\">Working Group</span>\r\n </div>\r\n\r\n <div\r\n *ngFor=\"let row of filteredRows\"\r\n class=\"ieeesa-add-working-groups__row\"\r\n >\r\n <label class=\"ieeesa-add-working-groups__col-name\">\r\n <input\r\n type=\"checkbox\"\r\n [checked]=\"row.selected\"\r\n (change)=\"toggleRow(row)\"\r\n />\r\n <span>{{ row.groupName }}</span>\r\n </label>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"filteredRows.length === 0\"\r\n class=\"ieeesa-add-working-groups__empty\"\r\n >\r\n No working groups found.\r\n </div>\r\n </div>\r\n\r\n <!-- Actions -->\r\n <div class=\"ieeesa-add-working-groups__actions\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-tertiary-button\"\r\n (click)=\"onCancel()\"\r\n >\r\n Cancel\r\n </button>\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-primary-button\"\r\n [disabled]=\"selectedCount === 0\"\r\n (click)=\"onAdd()\"\r\n >\r\n Add\r\n </button>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-add-working-groups{padding:20px 24px;min-width:420px;font-family:Calibri Regular}.ieeesa-add-working-groups__header{display:flex;align-items:center;justify-content:space-between}.ieeesa-add-working-groups__title{font-family:Calibri Bold;font-size:1.25rem;font-weight:700;margin:0}.ieeesa-add-working-groups__close{border:none;background:none;font-size:1.5rem;line-height:1;cursor:pointer;color:#49454f}.ieeesa-add-working-groups__subtitle{font-size:.875rem;color:#49454f;margin:8px 0 16px}.ieeesa-add-working-groups__search{margin-bottom:12px}.ieeesa-add-working-groups__search input{width:100%;box-sizing:border-box;padding:8px 12px;border:1px solid #878b8f;border-radius:4px;font-size:.875rem}.ieeesa-add-working-groups__table{border-top:1px solid #e0e0e0;max-height:360px;overflow-y:auto}.ieeesa-add-working-groups__table-head{display:flex;align-items:center;padding:8px 0;background:#f7f7f7;font-family:Calibri Bold;font-weight:700;font-size:.8125rem;color:#49454f;position:sticky;top:0;z-index:1}.ieeesa-add-working-groups__row{display:flex;align-items:center;padding:10px 0;border-bottom:1px solid #f0f0f0}.ieeesa-add-working-groups__col-name{flex:1 1 auto;display:flex;align-items:center;gap:10px;font-size:.875rem}.ieeesa-add-working-groups__empty{padding:16px 0;text-align:center;color:#878b8f;font-size:.875rem}.ieeesa-add-working-groups__actions{display:flex;justify-content:flex-start;gap:12px;margin-top:20px}\n"] }]
472
+ }], ctorParameters: function () { return [{ type: i1.MatDialogRef }, { type: undefined, decorators: [{
473
+ type: Inject,
474
+ args: [MAT_DIALOG_DATA]
475
+ }] }]; } });
476
+
409
477
  /* eslint-disable no-unused-vars */
410
478
  var GroupRosterType;
411
479
  (function (GroupRosterType) {
@@ -609,6 +677,23 @@ class GroupsService {
609
677
  this.isParentGroupChanged = false;
610
678
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
611
679
  this.representingOrganizations = [];
680
+ // ---------------------------------------------------------------------------
681
+ // Reciprocal Credit (SP3M-22)
682
+ // The reciprocal controller lives on the MEETINGS service, reached through the
683
+ // gateway. apiBaseUrl = appConfig.baseApiUrl (ends in `/v1`), and the gateway
684
+ // routes the meetings service under `${apiBaseUrl}/meetings` (same as every other
685
+ // meetings/events call, e.g. `${apiBaseUrl}/meetings/event/...`).
686
+ //
687
+ // The reciprocal controller sits on the meetings service under `admin/reciprocal-credit`.
688
+ // apiBaseUrl already carries the version segment (`.../v1`), and the gateway routes
689
+ // the meetings service under `${apiBaseUrl}/meetings`, so the version is NOT repeated
690
+ // (no second `/v1` or `/api/v1`). The full path is:
691
+ // `${apiBaseUrl}/meetings/admin/reciprocal-credit/...`
692
+ // = https://saappsapidev.ieee.org/v1/meetings/admin/reciprocal-credit/...
693
+ // Every method builds URLs from RECIPROCAL_BASE_PATH below.
694
+ // ---------------------------------------------------------------------------
695
+ /** Path prefix (relative to apiBaseUrl) for the reciprocal-credit endpoints. */
696
+ this.RECIPROCAL_BASE_PATH = 'meetings/admin/reciprocal-credit';
612
697
  }
613
698
  // eslint-disable-next-line @typescript-eslint/no-explicit-any
614
699
  setAppConfig(apiBaseUrl, userPermission) {
@@ -740,10 +825,35 @@ class GroupsService {
740
825
  const errorMessage = [];
741
826
  errorCodes?.forEach((item, index) => {
742
827
  const errorMessageKey = errorCodes[index];
743
- errorMessage.push(this.groupsText[errorMessageKey]);
828
+ errorMessage.push(this.groupsText[errorMessageKey] ??
829
+ errorCodes[index] ??
830
+ this.groupsText?.default);
744
831
  });
745
832
  return errorMessage;
746
833
  }
834
+ /**
835
+ * Handles custom API errors: maps BE error codes to messages and shows an
836
+ * alert. Mirrors the events-and-meetings error handling so reciprocal-credit
837
+ * failures (e.g. MTG-011 duplicate, MTG-012 permission) surface consistently.
838
+ * @param {*} error the HttpErrorResponse from a failed call
839
+ * @param {boolean} [showAlert=true] whether to display the alert
840
+ * @memberof GroupsService
841
+ */
842
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
843
+ handleErrors(error, showAlert = true) {
844
+ const errorCodes = error?.error?.body?.errorCodes;
845
+ if (Array.isArray(errorCodes) && !error?.error?.status) {
846
+ const errorMessage = this.parseErrorMessage(errorCodes);
847
+ if (showAlert) {
848
+ this.alertService?.showMessage({
849
+ status: 'custom',
850
+ message: errorMessage,
851
+ alertType: AlertType.ERROR,
852
+ isCloseNeeded: true,
853
+ });
854
+ }
855
+ }
856
+ }
747
857
  /**
748
858
  * Sets selected group info.
749
859
  * @param {(GroupInfo | undefined)} selectedGroupInfo -selected group info.
@@ -1210,6 +1320,75 @@ class GroupsService {
1210
1320
  getMemberTypes() {
1211
1321
  return this.memberTypes;
1212
1322
  }
1323
+ /**
1324
+ * Build a reciprocal-credit endpoint URL from apiBaseUrl + the base path,
1325
+ * guarding against accidental double slashes if apiBaseUrl has a trailing slash.
1326
+ * @param {string} [suffix] extra path/query appended after the base path.
1327
+ * @return {string}
1328
+ */
1329
+ buildReciprocalUrl(suffix = '') {
1330
+ const base = this.apiBaseUrl?.replace(/\/+$/, '') ?? '';
1331
+ return `${base}/${this.RECIPROCAL_BASE_PATH}${suffix}`;
1332
+ }
1333
+ /**
1334
+ * Fetch the foreign groups available for reciprocal credit for a home group.
1335
+ * GET {apiBaseUrl}/meetings/admin/reciprocal-credit/{homeGroupId}/available-groups
1336
+ * @param {string} homeGroupId
1337
+ * @return {Observable<ReciprocalCreditResponse<AvailableForeignGroup[]>>}
1338
+ * @memberof GroupsService
1339
+ */
1340
+ getAvailableReciprocalGroups(homeGroupId) {
1341
+ return this.httpService
1342
+ .getData(this.buildReciprocalUrl(`/${homeGroupId}/available-groups`))
1343
+ .pipe(map((response) => response), catchError((error) => {
1344
+ throw error;
1345
+ }));
1346
+ }
1347
+ /**
1348
+ * Load existing reciprocal-credit config rows for a home group (edit prefill).
1349
+ * GET {apiBaseUrl}/meetings/admin/reciprocal-credit/{homeGroupId}[?eventId=...]
1350
+ * Returns one row per foreign group; an empty array means reciprocal credit is off.
1351
+ * @param {string} homeGroupId
1352
+ * @param {string} [eventId] optional — filters to an event-scoped config.
1353
+ * @return {Observable<ReciprocalCreditResponse<ReciprocalCreditConfigRow[]>>}
1354
+ * @memberof GroupsService
1355
+ */
1356
+ getReciprocalConfig(homeGroupId, eventId) {
1357
+ const query = eventId ? `?eventId=${encodeURIComponent(eventId)}` : '';
1358
+ return this.httpService
1359
+ .getData(this.buildReciprocalUrl(`/${homeGroupId}${query}`))
1360
+ .pipe(map((response) => response), catchError((error) => {
1361
+ throw error;
1362
+ }));
1363
+ }
1364
+ /**
1365
+ * Save a reciprocal-credit config (creates/reactivates one row per foreign group).
1366
+ * POST {apiBaseUrl}/meetings/admin/reciprocal-credit
1367
+ * @param {SaveReciprocalCreditPayload} payload
1368
+ * @return {Observable<ReciprocalCreditResponse<ReciprocalCreditConfigRow[]>>}
1369
+ * @memberof GroupsService
1370
+ */
1371
+ saveReciprocalCredit(payload) {
1372
+ return this.httpService
1373
+ .postData(this.buildReciprocalUrl(), payload)
1374
+ .pipe(map((response) => response), catchError((error) => {
1375
+ throw error;
1376
+ }));
1377
+ }
1378
+ /**
1379
+ * Remove (soft delete) a single reciprocal-credit config row by its configId.
1380
+ * POST {apiBaseUrl}/meetings/admin/reciprocal-credit/{configId}/remove
1381
+ * @param {string} configId
1382
+ * @return {Observable<ReciprocalCreditResponse<null>>}
1383
+ * @memberof GroupsService
1384
+ */
1385
+ removeReciprocalConfig(configId) {
1386
+ return this.httpService
1387
+ .postData(this.buildReciprocalUrl(`/${configId}/remove`), {})
1388
+ .pipe(map((response) => response), catchError((error) => {
1389
+ throw error;
1390
+ }));
1391
+ }
1213
1392
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsService, deps: [{ token: i2.HttpService }, { token: UserPermissionsService }, { token: GroupPermissionsMapService }, { token: i2.AlertsService }], target: i0.ɵɵFactoryTarget.Injectable }); }
1214
1393
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsService, providedIn: 'root' }); }
1215
1394
  }
@@ -1220,7 +1399,230 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
1220
1399
  }]
1221
1400
  }], ctorParameters: function () { return [{ type: i2.HttpService }, { type: UserPermissionsService }, { type: GroupPermissionsMapService }, { type: i2.AlertsService }]; } });
1222
1401
 
1402
+ /**
1403
+ * Reciprocal Credit configuration section shown inside the group create/edit
1404
+ * form — ONLY when the group is a Working Group. Provides the enable toggle,
1405
+ * selected foreign-group chips, and the "+ Add Working Groups" launcher.
1406
+ *
1407
+ * The toggle has no backend flag: it is derived from whether any config rows
1408
+ * exist for the home group. Enabling persists nothing until at least one foreign
1409
+ * group is added (POST); disabling soft-deletes every existing config row
1410
+ * (one POST /{configId}/remove per row).
1411
+ *
1412
+ * The parent form reads `enabled` and `selectedForeignGroups` to build the save
1413
+ * request, and `removedConfigIds` to know which existing rows to remove.
1414
+ * @export
1415
+ * @class ReciprocalCreditSectionComponent
1416
+ */
1417
+ class ReciprocalCreditSectionComponent {
1418
+ // eslint-disable-next-line no-unused-vars
1419
+ constructor(
1420
+ // eslint-disable-next-line no-unused-vars
1421
+ groupsService,
1422
+ // eslint-disable-next-line no-unused-vars
1423
+ dialog) {
1424
+ this.groupsService = groupsService;
1425
+ this.dialog = dialog;
1426
+ this.destroy$ = new Subject();
1427
+ /** Emits the current enabled state whenever it changes. */
1428
+ this.enabledChange = new EventEmitter();
1429
+ /** Emits the current selected foreign groups whenever they change. */
1430
+ this.selectionChange = new EventEmitter();
1431
+ /**
1432
+ * Emits the config ids of previously-saved rows that have been removed locally
1433
+ * (chip de-selected or toggle turned off), so the parent can soft-delete each
1434
+ * on save.
1435
+ */
1436
+ this.removedConfigIdsChange = new EventEmitter();
1437
+ /** Toggle state. */
1438
+ this.enabled = false;
1439
+ /** Option config for the shared ieeesa-slide-toggle. */
1440
+ this.toggleOption = {
1441
+ id: 1,
1442
+ label: '',
1443
+ checked: false,
1444
+ ariaLabel: 'Enable Reciprocal Credit',
1445
+ };
1446
+ /** Selected foreign working groups (chips). */
1447
+ this.selectedForeignGroups = [];
1448
+ /**
1449
+ * Persistent map of foreignGroupId → configId for the rows that existed on the
1450
+ * initial load. Kept for the whole edit session so a saved group re-selected
1451
+ * after being de-selected recovers its configId (and its queued removal is undone).
1452
+ */
1453
+ this.savedConfigIdByGroupId = new Map();
1454
+ /**
1455
+ * Config ids that existed on load but have since been removed locally (either by
1456
+ * de-selecting a chip or turning the toggle off). The parent removes each on save.
1457
+ */
1458
+ this.removedConfigIds = [];
1459
+ /** All foreign working groups available under the same committee. */
1460
+ this.availableGroups = [];
1461
+ this.isLoading = false;
1462
+ }
1463
+ ngOnInit() {
1464
+ if (this.homeGroupId) {
1465
+ this.loadAvailableGroups(this.homeGroupId);
1466
+ this.loadExistingConfig(this.homeGroupId);
1467
+ }
1468
+ }
1469
+ /** Fetch the foreign working groups available for selection. */
1470
+ loadAvailableGroups(homeGroupId) {
1471
+ this.groupsService
1472
+ .getAvailableReciprocalGroups(homeGroupId)
1473
+ .pipe(takeUntil(this.destroy$))
1474
+ .subscribe({
1475
+ next: (res) => {
1476
+ this.availableGroups = res?.body ?? [];
1477
+ },
1478
+ error: (error) => {
1479
+ this.groupsService.handleErrors(error);
1480
+ },
1481
+ });
1482
+ }
1483
+ /**
1484
+ * Load existing reciprocal config rows for the edit-prefill path. The toggle is
1485
+ * ON when one or more rows exist; each chip keeps its own configId for removal.
1486
+ */
1487
+ loadExistingConfig(homeGroupId) {
1488
+ this.isLoading = true;
1489
+ this.groupsService
1490
+ .getReciprocalConfig(homeGroupId, this.eventId)
1491
+ .pipe(takeUntil(this.destroy$))
1492
+ .subscribe({
1493
+ next: (res) => {
1494
+ const rows = res?.body ?? [];
1495
+ this.selectedForeignGroups = rows.map((row) => ({
1496
+ groupId: row.foreignGroupId,
1497
+ groupName: row.foreignGroupName,
1498
+ configId: row.configId,
1499
+ }));
1500
+ // Remember each saved row's configId so it can be recovered if the
1501
+ // group is de-selected and then re-selected before saving.
1502
+ this.savedConfigIdByGroupId = new Map(rows.map((row) => [row.foreignGroupId, row.configId]));
1503
+ this.enabled = this.selectedForeignGroups.length > 0;
1504
+ this.toggleOption = { ...this.toggleOption, checked: this.enabled };
1505
+ this.removedConfigIds = [];
1506
+ this.emitState();
1507
+ this.isLoading = false;
1508
+ },
1509
+ error: (error) => {
1510
+ this.isLoading = false;
1511
+ this.groupsService.handleErrors(error);
1512
+ },
1513
+ });
1514
+ }
1515
+ /** Handle the enable/disable toggle (shared ieeesa-slide-toggle emits SlideToggleOption). */
1516
+ onToggleChange(option) {
1517
+ this.enabled = !!option?.checked;
1518
+ this.toggleOption = { ...this.toggleOption, checked: this.enabled };
1519
+ if (!this.enabled) {
1520
+ // Turning off queues every existing (saved) row for removal and clears chips.
1521
+ this.queueRemovalOf(this.selectedForeignGroups);
1522
+ this.selectedForeignGroups = [];
1523
+ }
1524
+ this.emitState();
1525
+ }
1526
+ /** Open the Add Working Groups modal. */
1527
+ onAddWorkingGroups() {
1528
+ const dialogRef = this.dialog.open(AddWorkingGroupsComponent, {
1529
+ panelClass: 'ieeesa-modal-dialog',
1530
+ data: {
1531
+ availableGroups: this.availableGroups,
1532
+ selectedGroupIds: this.selectedForeignGroups.map((g) => g.groupId),
1533
+ },
1534
+ });
1535
+ dialogRef
1536
+ .afterClosed()
1537
+ .pipe(takeUntil(this.destroy$))
1538
+ .subscribe((result) => {
1539
+ if (result) {
1540
+ this.mergeSelection(result);
1541
+ this.emitState();
1542
+ }
1543
+ });
1544
+ }
1545
+ /**
1546
+ * Merge the modal's returned selection into the current chips. Groups that are
1547
+ * no longer selected but were saved get queued for removal; already-selected
1548
+ * groups keep their existing configId.
1549
+ */
1550
+ mergeSelection(selected) {
1551
+ const selectedIds = new Set(selected.map((g) => g.groupId));
1552
+ // Queue removal for previously-saved chips that are no longer selected.
1553
+ const dropped = this.selectedForeignGroups.filter((g) => !selectedIds.has(g.groupId));
1554
+ this.queueRemovalOf(dropped);
1555
+ // Rebuild the selection, recovering each saved group's original configId
1556
+ // from the persistent load-time map (not just the currently-selected list),
1557
+ // so a de-selected-then-re-selected saved group keeps its configId.
1558
+ this.selectedForeignGroups = selected.map((g) => ({
1559
+ groupId: g.groupId,
1560
+ groupName: g.groupName,
1561
+ configId: this.savedConfigIdByGroupId.get(g.groupId),
1562
+ }));
1563
+ // Un-queue removal for any saved group that is (re)selected — it should be
1564
+ // kept, not removed, on save.
1565
+ this.removedConfigIds = this.removedConfigIds.filter((configId) => {
1566
+ const stillSelected = this.selectedForeignGroups.some((g) => g.configId === configId);
1567
+ return !stillSelected;
1568
+ });
1569
+ }
1570
+ /** Remove a selected foreign group chip. */
1571
+ removeGroup(groupId) {
1572
+ const removed = this.selectedForeignGroups.filter((g) => g.groupId === groupId);
1573
+ this.queueRemovalOf(removed);
1574
+ this.selectedForeignGroups = this.selectedForeignGroups.filter((g) => g.groupId !== groupId);
1575
+ this.emitState();
1576
+ }
1577
+ /** Track saved rows (those with a configId) that must be removed on the BE. */
1578
+ queueRemovalOf(groups) {
1579
+ groups.forEach((g) => {
1580
+ if (g.configId && !this.removedConfigIds.includes(g.configId)) {
1581
+ this.removedConfigIds.push(g.configId);
1582
+ }
1583
+ });
1584
+ }
1585
+ /** True when the section is valid (toggle off, OR toggle on with ≥1 group). */
1586
+ get isValid() {
1587
+ return !this.enabled || this.selectedForeignGroups.length > 0;
1588
+ }
1589
+ emitState() {
1590
+ this.enabledChange.emit(this.enabled);
1591
+ this.selectionChange.emit(this.selectedForeignGroups);
1592
+ this.removedConfigIdsChange.emit([...this.removedConfigIds]);
1593
+ }
1594
+ ngOnDestroy() {
1595
+ this.destroy$.next(true);
1596
+ this.destroy$.complete();
1597
+ }
1598
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ReciprocalCreditSectionComponent, deps: [{ token: GroupsService }, { token: i1.MatDialog }], target: i0.ɵɵFactoryTarget.Component }); }
1599
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: ReciprocalCreditSectionComponent, isStandalone: true, selector: "ieeesa-reciprocal-credit-section", inputs: { homeGroupId: "homeGroupId", eventId: "eventId", parentCommitteeName: "parentCommitteeName" }, outputs: { enabledChange: "enabledChange", selectionChange: "selectionChange", removedConfigIdsChange: "removedConfigIdsChange" }, ngImport: i0, template: "<div class=\"ieeesa-reciprocal-credit\">\r\n <p class=\"ieeesa-reciprocal-credit__title\">Reciprocal Credit</p>\r\n\r\n <!-- Enable toggle -->\r\n <div class=\"ieeesa-reciprocal-credit__toggle-row\">\r\n <ieeesa-slide-toggle\r\n [slideToggle]=\"toggleOption\"\r\n (slideToggleChange)=\"onToggleChange($event)\"\r\n ></ieeesa-slide-toggle>\r\n <div class=\"ieeesa-reciprocal-credit__toggle-text\">\r\n <span class=\"ieeesa-reciprocal-credit__toggle-label\">Enable Reciprocal Credit</span>\r\n <span class=\"ieeesa-reciprocal-credit__toggle-subtext\">\r\n Use this configuration in eligible event attendance calculations.\r\n </span>\r\n </div>\r\n </div>\r\n\r\n <!-- Info banner (always shown in the section) -->\r\n <div class=\"ieeesa-reciprocal-credit__info-banner\">\r\n <strong>Available only for Working Groups.</strong>\r\n Voting members of this Home Working Group can receive attendance credit when they\r\n attend meetings hosted by selected Foreign Working Groups under the same Standards Committee.\r\n </div>\r\n\r\n <!-- Selection UI (only when enabled) -->\r\n <ng-container *ngIf=\"enabled\">\r\n <label class=\"ieeesa-reciprocal-credit__field-label\">\r\n Eligible Foreign Working Groups*\r\n </label>\r\n\r\n <div class=\"ieeesa-reciprocal-credit__chips-box\">\r\n <span\r\n *ngFor=\"let group of selectedForeignGroups\"\r\n class=\"ieeesa-reciprocal-credit__chip\"\r\n >\r\n {{ group.groupName }}\r\n <button\r\n type=\"button\"\r\n class=\"ieeesa-reciprocal-credit__chip-remove\"\r\n (click)=\"removeGroup(group.groupId)\"\r\n [attr.aria-label]=\"'Remove ' + group.groupName\"\r\n >\r\n \u00D7\r\n </button>\r\n </span>\r\n <span\r\n *ngIf=\"selectedForeignGroups.length === 0\"\r\n class=\"ieeesa-reciprocal-credit__chips-placeholder\"\r\n >\r\n No working groups selected\r\n </span>\r\n </div>\r\n\r\n <p class=\"ieeesa-reciprocal-credit__helper\" *ngIf=\"parentCommitteeName\">\r\n Only groups under {{ parentCommitteeName }} are available.\r\n </p>\r\n\r\n <div class=\"ieeesa-reciprocal-credit__add-row\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-tertiary-button ieeesa-reciprocal-credit__add-btn\"\r\n (click)=\"onAddWorkingGroups()\"\r\n >\r\n + Add Working Groups\r\n </button>\r\n </div>\r\n\r\n <!-- One-way relationship warning -->\r\n <div class=\"ieeesa-reciprocal-credit__warning-banner\">\r\n <strong>One-way relationship:</strong> Adding a Foreign Working Group here does not\r\n automatically enable reciprocal credit in the opposite direction.\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-reciprocal-credit{margin-top:16px;font-family:Calibri Regular}.ieeesa-reciprocal-credit__title{font-family:Calibri Bold;font-weight:700;font-size:1rem;margin:0 0 12px}.ieeesa-reciprocal-credit__toggle-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.ieeesa-reciprocal-credit__toggle-text{display:flex;flex-direction:column}.ieeesa-reciprocal-credit__toggle-label{font-family:Calibri Bold;font-weight:700;font-size:.875rem}.ieeesa-reciprocal-credit__toggle-subtext{font-size:.75rem;color:#49454f}.ieeesa-reciprocal-credit__info-banner{background:#eaf2f9;border-radius:4px;padding:12px 16px;font-size:.875rem;color:#1c1b1f;margin-bottom:16px}.ieeesa-reciprocal-credit__field-label{display:block;font-size:.75rem;color:#49454f;margin-bottom:6px}.ieeesa-reciprocal-credit__chips-box{min-height:44px;border:1px solid #878b8f;border-radius:4px;padding:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ieeesa-reciprocal-credit__chip{display:inline-flex;align-items:center;gap:6px;background:#f0f5f9;border:1px solid #b0d6ec;border-radius:4px;padding:2px 8px;font-size:.8125rem;color:#00629b}.ieeesa-reciprocal-credit__chip-remove{border:none;background:none;cursor:pointer;color:#00629b;font-size:1rem;line-height:1;padding:0}.ieeesa-reciprocal-credit__chips-placeholder{color:#878b8f;font-size:.8125rem}.ieeesa-reciprocal-credit__helper{font-size:.75rem;color:#49454f;margin:6px 0 0}.ieeesa-reciprocal-credit__add-row{display:flex;justify-content:flex-end;margin-top:12px}.ieeesa-reciprocal-credit__warning-banner{background:#fdf6e3;border:1px solid #f0e2b6;border-radius:4px;padding:12px 16px;font-size:.8125rem;color:#6b5900;margin-top:12px}\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: "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: MatDialogModule }, { kind: "component", type: SlideToggleComponent, selector: "ieeesa-slide-toggle", inputs: ["formControlName", "slideToggle", "isDisabled", "canShowIcon"], outputs: ["slideToggleChange"] }], encapsulation: i0.ViewEncapsulation.None }); }
1600
+ }
1601
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: ReciprocalCreditSectionComponent, decorators: [{
1602
+ type: Component,
1603
+ args: [{ selector: 'ieeesa-reciprocal-credit-section', standalone: true, imports: [
1604
+ CommonModule,
1605
+ MatButtonModule,
1606
+ MatDialogModule,
1607
+ SlideToggleComponent,
1608
+ ], encapsulation: ViewEncapsulation.None, template: "<div class=\"ieeesa-reciprocal-credit\">\r\n <p class=\"ieeesa-reciprocal-credit__title\">Reciprocal Credit</p>\r\n\r\n <!-- Enable toggle -->\r\n <div class=\"ieeesa-reciprocal-credit__toggle-row\">\r\n <ieeesa-slide-toggle\r\n [slideToggle]=\"toggleOption\"\r\n (slideToggleChange)=\"onToggleChange($event)\"\r\n ></ieeesa-slide-toggle>\r\n <div class=\"ieeesa-reciprocal-credit__toggle-text\">\r\n <span class=\"ieeesa-reciprocal-credit__toggle-label\">Enable Reciprocal Credit</span>\r\n <span class=\"ieeesa-reciprocal-credit__toggle-subtext\">\r\n Use this configuration in eligible event attendance calculations.\r\n </span>\r\n </div>\r\n </div>\r\n\r\n <!-- Info banner (always shown in the section) -->\r\n <div class=\"ieeesa-reciprocal-credit__info-banner\">\r\n <strong>Available only for Working Groups.</strong>\r\n Voting members of this Home Working Group can receive attendance credit when they\r\n attend meetings hosted by selected Foreign Working Groups under the same Standards Committee.\r\n </div>\r\n\r\n <!-- Selection UI (only when enabled) -->\r\n <ng-container *ngIf=\"enabled\">\r\n <label class=\"ieeesa-reciprocal-credit__field-label\">\r\n Eligible Foreign Working Groups*\r\n </label>\r\n\r\n <div class=\"ieeesa-reciprocal-credit__chips-box\">\r\n <span\r\n *ngFor=\"let group of selectedForeignGroups\"\r\n class=\"ieeesa-reciprocal-credit__chip\"\r\n >\r\n {{ group.groupName }}\r\n <button\r\n type=\"button\"\r\n class=\"ieeesa-reciprocal-credit__chip-remove\"\r\n (click)=\"removeGroup(group.groupId)\"\r\n [attr.aria-label]=\"'Remove ' + group.groupName\"\r\n >\r\n \u00D7\r\n </button>\r\n </span>\r\n <span\r\n *ngIf=\"selectedForeignGroups.length === 0\"\r\n class=\"ieeesa-reciprocal-credit__chips-placeholder\"\r\n >\r\n No working groups selected\r\n </span>\r\n </div>\r\n\r\n <p class=\"ieeesa-reciprocal-credit__helper\" *ngIf=\"parentCommitteeName\">\r\n Only groups under {{ parentCommitteeName }} are available.\r\n </p>\r\n\r\n <div class=\"ieeesa-reciprocal-credit__add-row\">\r\n <button\r\n mat-button\r\n type=\"button\"\r\n class=\"mat-tertiary-button ieeesa-reciprocal-credit__add-btn\"\r\n (click)=\"onAddWorkingGroups()\"\r\n >\r\n + Add Working Groups\r\n </button>\r\n </div>\r\n\r\n <!-- One-way relationship warning -->\r\n <div class=\"ieeesa-reciprocal-credit__warning-banner\">\r\n <strong>One-way relationship:</strong> Adding a Foreign Working Group here does not\r\n automatically enable reciprocal credit in the opposite direction.\r\n </div>\r\n </ng-container>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-reciprocal-credit{margin-top:16px;font-family:Calibri Regular}.ieeesa-reciprocal-credit__title{font-family:Calibri Bold;font-weight:700;font-size:1rem;margin:0 0 12px}.ieeesa-reciprocal-credit__toggle-row{display:flex;align-items:flex-start;gap:12px;margin-bottom:12px}.ieeesa-reciprocal-credit__toggle-text{display:flex;flex-direction:column}.ieeesa-reciprocal-credit__toggle-label{font-family:Calibri Bold;font-weight:700;font-size:.875rem}.ieeesa-reciprocal-credit__toggle-subtext{font-size:.75rem;color:#49454f}.ieeesa-reciprocal-credit__info-banner{background:#eaf2f9;border-radius:4px;padding:12px 16px;font-size:.875rem;color:#1c1b1f;margin-bottom:16px}.ieeesa-reciprocal-credit__field-label{display:block;font-size:.75rem;color:#49454f;margin-bottom:6px}.ieeesa-reciprocal-credit__chips-box{min-height:44px;border:1px solid #878b8f;border-radius:4px;padding:8px;display:flex;flex-wrap:wrap;gap:8px;align-items:center}.ieeesa-reciprocal-credit__chip{display:inline-flex;align-items:center;gap:6px;background:#f0f5f9;border:1px solid #b0d6ec;border-radius:4px;padding:2px 8px;font-size:.8125rem;color:#00629b}.ieeesa-reciprocal-credit__chip-remove{border:none;background:none;cursor:pointer;color:#00629b;font-size:1rem;line-height:1;padding:0}.ieeesa-reciprocal-credit__chips-placeholder{color:#878b8f;font-size:.8125rem}.ieeesa-reciprocal-credit__helper{font-size:.75rem;color:#49454f;margin:6px 0 0}.ieeesa-reciprocal-credit__add-row{display:flex;justify-content:flex-end;margin-top:12px}.ieeesa-reciprocal-credit__warning-banner{background:#fdf6e3;border:1px solid #f0e2b6;border-radius:4px;padding:12px 16px;font-size:.8125rem;color:#6b5900;margin-top:12px}\n"] }]
1609
+ }], ctorParameters: function () { return [{ type: GroupsService }, { type: i1.MatDialog }]; }, propDecorators: { homeGroupId: [{
1610
+ type: Input
1611
+ }], eventId: [{
1612
+ type: Input
1613
+ }], parentCommitteeName: [{
1614
+ type: Input
1615
+ }], enabledChange: [{
1616
+ type: Output
1617
+ }], selectionChange: [{
1618
+ type: Output
1619
+ }], removedConfigIdsChange: [{
1620
+ type: Output
1621
+ }] } });
1622
+
1223
1623
  const INDEX_VALUE = 4;
1624
+ /** Group type name that enables the Reciprocal Credit section. */
1625
+ const WORKING_GROUP_TYPE_NAME = 'Working Group';
1224
1626
  /**
1225
1627
  * CreateGroupComponent uses DynamicFormComponent to build create new group form or edit group and implement the functionalities of submission of form and handling success and error scenarios.
1226
1628
  * @class CreateGroupComponent
@@ -1268,6 +1670,11 @@ class CreateGroupComponent {
1268
1670
  label: this.createGroupText?.label?.changeParentGroup,
1269
1671
  checked: false,
1270
1672
  };
1673
+ /** Reciprocal credit state (Working Group only) — captured for Save. */
1674
+ this.reciprocalEnabled = false;
1675
+ this.reciprocalSelectedGroups = [];
1676
+ /** Config ids of previously-saved reciprocal rows removed locally — for soft-delete on Save. */
1677
+ this.reciprocalRemovedConfigIds = [];
1271
1678
  }
1272
1679
  /**
1273
1680
  * Initialize the create group form group array and component.
@@ -1506,6 +1913,13 @@ class CreateGroupComponent {
1506
1913
  */
1507
1914
  onFormSubmit(form) {
1508
1915
  form[0]?.markAllAsTouched();
1916
+ // Reciprocal Credit: if the toggle is ON, at least one foreign group is
1917
+ // required (BE rejects an empty foreign-group list). Block Save otherwise.
1918
+ if (this.isReciprocalInvalid) {
1919
+ this.showAlertMessage(this.createGroupText?.reciprocalCredit?.selectAtLeastOneGroup ??
1920
+ 'Please add at least one Working Group to enable Reciprocal Credit, or turn off the toggle.', AlertType.ERROR);
1921
+ return;
1922
+ }
1509
1923
  if (form[0].status === FormStatus.VALID) {
1510
1924
  const formData = form[0]?.getRawValue();
1511
1925
  // eslint-disable-next-line no-unused-expressions
@@ -1571,7 +1985,8 @@ class CreateGroupComponent {
1571
1985
  .subscribe({
1572
1986
  next: (res) => {
1573
1987
  if (res?.status) {
1574
- this.submitFormResponse?.emit(res);
1988
+ // Persist reciprocal-credit changes (Working Group edit only), then emit.
1989
+ this.persistReciprocalCredit(res);
1575
1990
  }
1576
1991
  },
1577
1992
  error: (error) => {
@@ -1579,6 +1994,57 @@ class CreateGroupComponent {
1579
1994
  },
1580
1995
  });
1581
1996
  }
1997
+ /**
1998
+ * Persists reciprocal-credit changes captured from the section after a
1999
+ * successful group edit: POSTs newly-added foreign groups (those without a
2000
+ * configId) and soft-deletes each removed config id. Emits the group-edit
2001
+ * response once persistence completes (or immediately if there's nothing to do).
2002
+ * @param {*} editResponse the successful edit-group response
2003
+ * @memberof CreateGroupComponent
2004
+ */
2005
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2006
+ persistReciprocalCredit(editResponse) {
2007
+ const homeGroupId = this.selectedGroupInfo?.groupId;
2008
+ // Nothing to persist when the section isn't shown or there's no home group.
2009
+ if (!this.isReciprocalSectionVisible || !homeGroupId) {
2010
+ this.submitFormResponse?.emit(editResponse);
2011
+ return;
2012
+ }
2013
+ // Add: selected groups that were not already saved (no configId yet).
2014
+ const foreignGroupIdsToAdd = this.reciprocalSelectedGroups
2015
+ .filter((group) => !group.configId)
2016
+ .map((group) => group.groupId);
2017
+ // eslint-disable-next-line @typescript-eslint/no-explicit-any
2018
+ const calls = [];
2019
+ if (this.reciprocalEnabled && foreignGroupIdsToAdd.length > 0) {
2020
+ calls.push(this.groupsService.saveReciprocalCredit({
2021
+ homeGroupId,
2022
+ foreignGroupIds: foreignGroupIdsToAdd,
2023
+ }));
2024
+ }
2025
+ // Remove: each previously-saved config id removed locally.
2026
+ this.reciprocalRemovedConfigIds.forEach((configId) => {
2027
+ calls.push(this.groupsService.removeReciprocalConfig(configId));
2028
+ });
2029
+ // Nothing to persist — emit the edit response as-is.
2030
+ if (calls.length === 0) {
2031
+ this.submitFormResponse?.emit(editResponse);
2032
+ return;
2033
+ }
2034
+ forkJoin(calls)
2035
+ .pipe(takeUntil(this.destroy$))
2036
+ .subscribe({
2037
+ next: () => {
2038
+ this.submitFormResponse?.emit(editResponse);
2039
+ },
2040
+ error: (error) => {
2041
+ // Group edit already succeeded; surface the reciprocal error but still
2042
+ // emit so the parent completes the edit flow.
2043
+ this.groupsService.handleErrors(error);
2044
+ this.submitFormResponse?.emit(editResponse);
2045
+ },
2046
+ });
2047
+ }
1582
2048
  /**
1583
2049
  * Captures the server side errors and handles the errors based on the custom or Http errors.
1584
2050
  * @param {HttpErrorResponse} error
@@ -1626,6 +2092,65 @@ class CreateGroupComponent {
1626
2092
  createGroupCancelled() {
1627
2093
  this.formCancel?.emit();
1628
2094
  }
2095
+ /**
2096
+ * True when the group being created/edited is a Working Group — gates the
2097
+ * Reciprocal Credit section.
2098
+ * @return {boolean}
2099
+ * @memberof CreateGroupComponent
2100
+ */
2101
+ get isWorkingGroup() {
2102
+ const groupTypeId = this.groupFunctionType === GroupFunctionType.EDIT
2103
+ ? this.selectedGroupInfo?.groupType
2104
+ : this.selectedCreateGroupTypeId;
2105
+ if (!groupTypeId)
2106
+ return false;
2107
+ const groupTypes = this.groupsService?.getFormattedGroupTypes(this.groupsService?.getLoadedGroupTypes());
2108
+ return groupTypes?.[groupTypeId]?.name === WORKING_GROUP_TYPE_NAME;
2109
+ }
2110
+ /**
2111
+ * True when the Reciprocal Credit section should be shown: only for a Working
2112
+ * Group in EDIT mode. Hidden during create because the home group has no id
2113
+ * yet and the create flow is still being finalized with the client team.
2114
+ * @return {boolean}
2115
+ * @memberof CreateGroupComponent
2116
+ */
2117
+ get isReciprocalSectionVisible() {
2118
+ return (this.groupFunctionType === GroupFunctionType.EDIT && this.isWorkingGroup);
2119
+ }
2120
+ /**
2121
+ * True when the reciprocal section is shown, the toggle is ON, but no foreign
2122
+ * group has been added — an invalid state (BE rejects an empty foreign-group
2123
+ * list). Used to block the edit Save.
2124
+ * @return {boolean}
2125
+ * @memberof CreateGroupComponent
2126
+ */
2127
+ get isReciprocalInvalid() {
2128
+ return (this.isReciprocalSectionVisible &&
2129
+ this.reciprocalEnabled &&
2130
+ this.reciprocalSelectedGroups.length === 0);
2131
+ }
2132
+ /** Home group id for the reciprocal section (present in edit). */
2133
+ get reciprocalHomeGroupId() {
2134
+ return this.groupFunctionType === GroupFunctionType.EDIT
2135
+ ? this.selectedGroupInfo?.groupId
2136
+ : undefined;
2137
+ }
2138
+ /** Parent committee name shown in the reciprocal helper text. */
2139
+ get reciprocalParentCommitteeName() {
2140
+ return this.selectedGroupParentInfo?.groupName;
2141
+ }
2142
+ /** Capture reciprocal toggle state from the section. */
2143
+ onReciprocalEnabledChange(enabled) {
2144
+ this.reciprocalEnabled = enabled;
2145
+ }
2146
+ /** Capture reciprocal foreign-group selection from the section. */
2147
+ onReciprocalSelectionChange(groups) {
2148
+ this.reciprocalSelectedGroups = groups;
2149
+ }
2150
+ /** Capture the config ids to soft-delete on Save from the section. */
2151
+ onReciprocalRemovedConfigIdsChange(configIds) {
2152
+ this.reciprocalRemovedConfigIds = configIds;
2153
+ }
1629
2154
  /**
1630
2155
  * Gets allowed parent groups for reassigning the parent.
1631
2156
  * @param {string} groupId
@@ -1699,6 +2224,13 @@ class CreateGroupComponent {
1699
2224
  form[0]?.controls['newParentGroup']?.value?.id?.toString())[0];
1700
2225
  this.form?.get('parentGroup')?.setValue(selectedParentGroup?.groupName);
1701
2226
  }
2227
+ // Track the selected group type in create mode so the Reciprocal Credit
2228
+ // section can render only for Working Groups.
2229
+ if (this.groupFunctionType !== GroupFunctionType.EDIT) {
2230
+ this.selectedCreateGroupTypeId =
2231
+ form[0]?.controls['groupType']?.value?.id ??
2232
+ form[0]?.controls['groupType']?.value;
2233
+ }
1702
2234
  }
1703
2235
  /**
1704
2236
  * NgOnDestroy performs necessary cleanup tasks, such as unsubscribing from subscription when the component is being destroyed.
@@ -1709,11 +2241,16 @@ class CreateGroupComponent {
1709
2241
  this.destroy$.unsubscribe();
1710
2242
  }
1711
2243
  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 }); }
1712
- 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></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 }], encapsulation: i0.ViewEncapsulation.None }); }
2244
+ 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 }); }
1713
2245
  }
1714
2246
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: CreateGroupComponent, decorators: [{
1715
2247
  type: Component,
1716
- args: [{ selector: 'ieeesa-create-group', standalone: true, imports: [CommonModule, DynamicFormComponent, MatDialogModule], encapsulation: ViewEncapsulation.None, providers: [AlertsService], 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></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"] }]
2248
+ args: [{ selector: 'ieeesa-create-group', standalone: true, imports: [
2249
+ CommonModule,
2250
+ DynamicFormComponent,
2251
+ MatDialogModule,
2252
+ ReciprocalCreditSectionComponent,
2253
+ ], encapsulation: ViewEncapsulation.None, providers: [AlertsService], 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"] }]
1717
2254
  }], ctorParameters: function () { return [{ type: GroupsService }, { type: i2.GlobalErrorHandlerService }, { type: i2.AlertsService }]; }, propDecorators: { submitFormResponse: [{
1718
2255
  type: Output
1719
2256
  }], formCancel: [{
@@ -2380,7 +2917,7 @@ class TreeViewComponent {
2380
2917
  this.destroy$.unsubscribe();
2381
2918
  }
2382
2919
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeViewComponent, deps: [{ token: Groups }, { token: i0.ElementRef }, { token: GroupsService }, { token: i2$1.BreakpointObserverService }], target: i0.ɵɵFactoryTarget.Component }); }
2383
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TreeViewComponent, isStandalone: true, selector: "ieeesa-tree", inputs: { parentGroupsInfo: "parentGroupsInfo", childGroupsInfo: "childGroupsInfo", isGroupSearchOrFilterActive: "isGroupSearchOrFilterActive", deletedGroupIdInfo: "deletedGroupIdInfo", userGroupPermissions: "userGroupPermissions" }, outputs: { toggleGroupClick: "toggleGroupClick", createGroupClick: "createGroupClick", editGroupClick: "editGroupClick", deleteGroupClick: "deleteGroupClick", viewRosterClick: "viewRosterClick" }, ngImport: i0, template: "<div class=\"ieeesa-tree\">\r\n <mat-tree\r\n [dataSource]=\"dataSource\"\r\n [treeControl]=\"treeControl\"\r\n class=\"ieeesa-tree__root\"\r\n #rootSelector\r\n role=\"treegrid\"\r\n >\r\n <mat-tree-node\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodePadding\r\n [matTreeNodePaddingIndent]=\"treePaddingIndent\"\r\n class=\"ieeesa-body-md-16\"\r\n >\r\n <div\r\n class=\"ieeesa-tree__node w-100 d-flex\"\r\n [ngStyle]=\"getBoxShadow()\"\r\n [ngClass]=\"\r\n node?.item?.groupParentId &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.FILTER &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.SEARCH\r\n ? 'ieeesa-tree__root-node-white-bg'\r\n : 'ieeesa-tree__root-node'\r\n \"\r\n >\r\n <div\r\n [ngClass]=\"\r\n !isGroupSearchOrFilterActive ? 'ieeesa-tree__collapse-icon' : ''\r\n \"\r\n role=\"gridcell\"\r\n ></div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n ieeesaGroupNodeOutlet;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </mat-tree-node>\r\n <mat-tree-node\r\n *matTreeNodeDef=\"let node; when: hasChildGroups\"\r\n matTreeNodePadding\r\n [matTreeNodePaddingIndent]=\"treePaddingIndent\"\r\n class=\"ieeesa-body-md-16 ieeesa-tree__parent-node-wrapper\"\r\n >\r\n <div\r\n [ngClass]=\"[\r\n treeControl.isExpanded(node) ? 'ieeesa-tree__expanded' : '',\r\n node?.item?.groupParentId &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.FILTER &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.SEARCH\r\n ? 'ieeesa-tree__root-node-white-bg'\r\n : 'ieeesa-tree__root-node'\r\n ]\"\r\n class=\"ieeesa-tree__node w-100 d-flex\"\r\n [ngStyle]=\"getBoxShadow()\"\r\n >\r\n <div role=\"gridcell\">\r\n <ieeesa-icon-button\r\n *ngIf=\"!isGroupSearchOrFilterActive\"\r\n (iconButtonClick)=\"viewChildGroups(node)\"\r\n [iconButton]=\"getToggleButtonInfo(node)\"\r\n ></ieeesa-icon-button>\r\n </div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n ieeesaGroupNodeOutlet;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </mat-tree-node>\r\n <ng-template #ieeesaGroupNodeOutlet let-node>\r\n <ng-container\r\n *ngTemplateOutlet=\"ieeesaGroupInfoOutlet; context: { $implicit: node }\"\r\n ></ng-container>\r\n <div\r\n class=\"d-flex d-none gap-3 d-sm-flex d-md-flex d-lg-flex ieeesa-tree__group-actions\"\r\n role=\"gridcell\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n ieeesaGroupActionsOutlet;\r\n context: { $implicit: node }\r\n \"\r\n >\r\n </ng-container>\r\n </div>\r\n <ieeesa-menu\r\n [button]=\"constants?.viewGroups?.groupActionsMenu\"\r\n [menuItems]=\"getFilteredGroupActions(node)\"\r\n (menuItemClick)=\"onGroupActionsClick($event); handleGroupActions(node)\"\r\n class=\"d-lg-none d-md-none d-sm-none\"\r\n role=\"gridcell\"\r\n ></ieeesa-menu>\r\n </ng-template>\r\n <ng-template #ieeesaGroupInfoOutlet let-node>\r\n <div class=\"ieeesa-tree__group-info-wrapper\">\r\n <div class=\"ieeesa-tree__group-info d-flex align-items-baseline\">\r\n <p\r\n class=\"ieeesa-tree__node-group-name ieeesa-title-md-18\"\r\n [matTooltip]=\"node?.item?.groupName\"\r\n ieeesaTextTruncated\r\n role=\"gridcell\"\r\n >{{ node?.item?.groupName }}</p>\r\n <p\r\n class=\"ieeesa-tree__node-group-acronym ieeesa-title-sm-16\"\r\n [matTooltip]=\"node?.item?.groupAcronym\"\r\n ieeesaTextTruncated\r\n role=\"gridcell\"\r\n >{{ node?.item?.groupAcronym }}</p>\r\n </div>\r\n <div class=\"ieeesa-tree__node-group-desc\">\r\n {{ node?.item?.groupTypeInfo?.name }}\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #ieeesaGroupActionsOutlet let-node>\r\n <ieeesa-icon-button\r\n *ngFor=\"let item of getFilteredGroupActions(node); trackBy: trackByFn\"\r\n [iconButton]=\"item\"\r\n (iconButtonClick)=\"\r\n onGroupActionsClick($event); handleGroupActions(node)\r\n \"\r\n >\r\n </ieeesa-icon-button>\r\n </ng-template>\r\n </mat-tree>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-tree p{margin-bottom:0}.ieeesa-tree .ieeesa-icon-button{padding:0}.ieeesa-tree .ieeesa-icon-button__svg{height:1.5em;width:1.5em}.ieeesa-tree .ieeesa-icon-button__2 .ieeesa-icon-button__svg{height:1em}.ieeesa-tree .mat-mdc-icon-button{padding:0!important;position:absolute;right:1.7em}.ieeesa-tree__group-actions{margin-left:auto}.ieeesa-tree__group-info-wrapper{width:80%;max-width:60%;padding-left:.375em}.ieeesa-tree__group-info{margin-bottom:.125em}.ieeesa-tree__parent-node-wrapper .ieeesa-tree__group-info-wrapper{max-width:69%}.ieeesa-tree__node-group-name{text-overflow:ellipsis;white-space:pre;overflow:hidden;max-width:67%;min-width:0;padding-right:.375em}.ieeesa-tree__node-group-acronym{color:#63666a!important;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:auto;max-width:100%;min-width:0}.ieeesa-tree__node-group-desc{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#4a4d50;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ieeesa-tree__node-group-desc:hover{white-space:normal}.ieeesa-tree__node{background:#f3f5f7;padding:.5em .75em .5em .5em;box-shadow:0 1px #9ba0a6 inset;border-right:1px solid #dbe2eb;border-bottom:1px solid #dbe2eb;border-left:1px solid #dbe2eb}.ieeesa-tree__root-node-white-bg{background:#fff}.ieeesa-tree__expanded{box-shadow:0 .0625em #00629b inset!important;background:#fff}.ieeesa-tree__collapse-icon{min-width:1.5em}@media (max-width: 992px){.ieeesa-tree__group-info-wrapper{max-width:60%}.ieeesa-tree__node-group-acronym{max-width:90%}}@media (max-width: 576px){.ieeesa-tree__group-info-wrapper,.ieeesa-tree__node-group-acronym,.ieeesa-tree__parent-node-wrapper .ieeesa-tree__group-info-wrapper{max-width:90%}.ieeesa-tree__node-group-name{max-width:80%}}.ieeesa-menu .mat-mdc-menu-content{padding:1.25em 1.25em 1.25em .5em!important}.ieeesa-menu__item__icon{background-color:unset!important;box-shadow:none!important;height:1.5em!important;width:1.5em!important;margin-right:.5em!important}.ieeesa-menu__item:not(:last-of-type){margin-bottom:1.5em!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatTreeModule }, { kind: "directive", type: i4.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i4.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }, { kind: "component", type: i4.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { kind: "directive", type: i4.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: MenuComponent, selector: "ieeesa-menu", inputs: ["menuItems", "button", "defaultIconSize", "isMarginBottomZero"], outputs: ["menuToggleButtonElement", "menuItemClick"] }, { kind: "component", type: IconButtonComponent, selector: "ieeesa-icon-button", inputs: ["iconButton", "isLabelNeeded"], outputs: ["iconButtonClick"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: TextTruncatedDirective, selector: "[matTooltip][ieeesaTextTruncated]", inputs: ["elementClassNameToAddTooltip"] }], encapsulation: i0.ViewEncapsulation.None }); }
2920
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: TreeViewComponent, isStandalone: true, selector: "ieeesa-tree", inputs: { parentGroupsInfo: "parentGroupsInfo", childGroupsInfo: "childGroupsInfo", isGroupSearchOrFilterActive: "isGroupSearchOrFilterActive", deletedGroupIdInfo: "deletedGroupIdInfo", userGroupPermissions: "userGroupPermissions" }, outputs: { toggleGroupClick: "toggleGroupClick", createGroupClick: "createGroupClick", editGroupClick: "editGroupClick", deleteGroupClick: "deleteGroupClick", viewRosterClick: "viewRosterClick" }, ngImport: i0, template: "<div class=\"ieeesa-tree\">\r\n <mat-tree\r\n [dataSource]=\"dataSource\"\r\n [treeControl]=\"treeControl\"\r\n class=\"ieeesa-tree__root\"\r\n #rootSelector\r\n role=\"treegrid\"\r\n >\r\n <mat-tree-node\r\n *matTreeNodeDef=\"let node\"\r\n matTreeNodePadding\r\n [matTreeNodePaddingIndent]=\"treePaddingIndent\"\r\n class=\"ieeesa-body-md-16\"\r\n >\r\n <div\r\n class=\"ieeesa-tree__node w-100 d-flex\"\r\n [ngStyle]=\"getBoxShadow()\"\r\n [ngClass]=\"\r\n node?.item?.groupParentId &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.FILTER &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.SEARCH\r\n ? 'ieeesa-tree__root-node-white-bg'\r\n : 'ieeesa-tree__root-node'\r\n \"\r\n >\r\n <div\r\n [ngClass]=\"\r\n !isGroupSearchOrFilterActive ? 'ieeesa-tree__collapse-icon' : ''\r\n \"\r\n role=\"gridcell\"\r\n ></div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n ieeesaGroupNodeOutlet;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </mat-tree-node>\r\n <mat-tree-node\r\n *matTreeNodeDef=\"let node; when: hasChildGroups\"\r\n matTreeNodePadding\r\n [matTreeNodePaddingIndent]=\"treePaddingIndent\"\r\n class=\"ieeesa-body-md-16 ieeesa-tree__parent-node-wrapper\"\r\n >\r\n <div\r\n [ngClass]=\"[\r\n treeControl.isExpanded(node) ? 'ieeesa-tree__expanded' : '',\r\n node?.item?.groupParentId &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.FILTER &&\r\n groupsService.getGroupFunctionType() !== groupFunctionType.SEARCH\r\n ? 'ieeesa-tree__root-node-white-bg'\r\n : 'ieeesa-tree__root-node'\r\n ]\"\r\n class=\"ieeesa-tree__node w-100 d-flex\"\r\n [ngStyle]=\"getBoxShadow()\"\r\n >\r\n <div role=\"gridcell\">\r\n <ieeesa-icon-button\r\n *ngIf=\"!isGroupSearchOrFilterActive\"\r\n (iconButtonClick)=\"viewChildGroups(node)\"\r\n [iconButton]=\"getToggleButtonInfo(node)\"\r\n ></ieeesa-icon-button>\r\n </div>\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n ieeesaGroupNodeOutlet;\r\n context: { $implicit: node }\r\n \"\r\n ></ng-container>\r\n </div>\r\n </mat-tree-node>\r\n <ng-template #ieeesaGroupNodeOutlet let-node>\r\n <ng-container\r\n *ngTemplateOutlet=\"ieeesaGroupInfoOutlet; context: { $implicit: node }\"\r\n ></ng-container>\r\n <div\r\n class=\"d-flex d-none gap-3 d-sm-flex d-md-flex d-lg-flex ieeesa-tree__group-actions\"\r\n role=\"gridcell\"\r\n >\r\n <ng-container\r\n *ngTemplateOutlet=\"\r\n ieeesaGroupActionsOutlet;\r\n context: { $implicit: node }\r\n \"\r\n >\r\n </ng-container>\r\n </div>\r\n <ieeesa-menu\r\n [button]=\"constants?.viewGroups?.groupActionsMenu\"\r\n [menuItems]=\"getFilteredGroupActions(node)\"\r\n (menuItemClick)=\"onGroupActionsClick($event); handleGroupActions(node)\"\r\n class=\"d-lg-none d-md-none d-sm-none\"\r\n role=\"gridcell\"\r\n ></ieeesa-menu>\r\n </ng-template>\r\n <ng-template #ieeesaGroupInfoOutlet let-node>\r\n <div class=\"ieeesa-tree__group-info-wrapper\">\r\n <div class=\"ieeesa-tree__group-info d-flex align-items-baseline\">\r\n <p\r\n class=\"ieeesa-tree__node-group-name ieeesa-title-md-18\"\r\n [matTooltip]=\"node?.item?.groupName\"\r\n ieeesaTextTruncated\r\n role=\"gridcell\"\r\n >{{ node?.item?.groupName }}</p>\r\n <p\r\n class=\"ieeesa-tree__node-group-acronym ieeesa-title-sm-16\"\r\n [matTooltip]=\"node?.item?.groupAcronym\"\r\n ieeesaTextTruncated\r\n role=\"gridcell\"\r\n >{{ node?.item?.groupAcronym }}</p>\r\n </div>\r\n <div class=\"ieeesa-tree__node-group-desc\">\r\n {{ node?.item?.groupTypeInfo?.name }}\r\n </div>\r\n </div>\r\n </ng-template>\r\n <ng-template #ieeesaGroupActionsOutlet let-node>\r\n <ieeesa-icon-button\r\n *ngFor=\"let item of getFilteredGroupActions(node); trackBy: trackByFn\"\r\n [iconButton]=\"item\"\r\n (iconButtonClick)=\"\r\n onGroupActionsClick($event); handleGroupActions(node)\r\n \"\r\n >\r\n </ieeesa-icon-button>\r\n </ng-template>\r\n </mat-tree>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-tree p{margin-bottom:0}.ieeesa-tree .ieeesa-icon-button{padding:0}.ieeesa-tree .ieeesa-icon-button__svg{height:1.5em;width:1.5em}.ieeesa-tree .ieeesa-icon-button__2 .ieeesa-icon-button__svg{height:1em}.ieeesa-tree .mat-mdc-icon-button{padding:0!important;position:absolute;right:1.7em}.ieeesa-tree__group-actions{margin-left:auto}.ieeesa-tree__group-info-wrapper{width:80%;max-width:60%;padding-left:.375em}.ieeesa-tree__group-info{margin-bottom:.125em}.ieeesa-tree__parent-node-wrapper .ieeesa-tree__group-info-wrapper{max-width:69%}.ieeesa-tree__node-group-name{text-overflow:ellipsis;white-space:pre;overflow:hidden;max-width:67%;min-width:0;padding-right:.375em}.ieeesa-tree__node-group-acronym{color:#63666a!important;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;width:auto;max-width:100%;min-width:0}.ieeesa-tree__node-group-desc{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#4a4d50;letter-spacing:0;text-overflow:ellipsis;white-space:nowrap;overflow:hidden}.ieeesa-tree__node-group-desc:hover{white-space:normal}.ieeesa-tree__node{background:#f3f5f7;padding:.5em .75em .5em .5em;box-shadow:0 1px #9ba0a6 inset;border-right:1px solid #dbe2eb;border-bottom:1px solid #dbe2eb;border-left:1px solid #dbe2eb}.ieeesa-tree__root-node-white-bg{background:#fff}.ieeesa-tree__expanded{box-shadow:0 .0625em #00629b inset!important;background:#fff}.ieeesa-tree__collapse-icon{min-width:1.5em}@media (max-width: 992px){.ieeesa-tree__group-info-wrapper{max-width:60%}.ieeesa-tree__node-group-acronym{max-width:90%}}@media (max-width: 576px){.ieeesa-tree__group-info-wrapper,.ieeesa-tree__node-group-acronym,.ieeesa-tree__parent-node-wrapper .ieeesa-tree__group-info-wrapper{max-width:90%}.ieeesa-tree__node-group-name{max-width:80%}}.ieeesa-menu .mat-mdc-menu-content{padding:1.25em 1.25em 1.25em .5em!important}.ieeesa-menu__item__icon{background-color:unset!important;box-shadow:none!important;height:1.5em!important;width:1.5em!important;margin-right:.5em!important}.ieeesa-menu__item:not(:last-of-type){margin-bottom:1.5em!important}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgForOf, selector: "[ngFor][ngForOf]", inputs: ["ngForOf", "ngForTrackBy", "ngForTemplate"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "directive", type: i3.NgTemplateOutlet, selector: "[ngTemplateOutlet]", inputs: ["ngTemplateOutletContext", "ngTemplateOutlet", "ngTemplateOutletInjector"] }, { kind: "directive", type: i3.NgStyle, selector: "[ngStyle]", inputs: ["ngStyle"] }, { kind: "ngmodule", type: MatTreeModule }, { kind: "directive", type: i4$1.MatTreeNodeDef, selector: "[matTreeNodeDef]", inputs: ["matTreeNodeDefWhen", "matTreeNode"] }, { kind: "directive", type: i4$1.MatTreeNodePadding, selector: "[matTreeNodePadding]", inputs: ["matTreeNodePadding", "matTreeNodePaddingIndent"] }, { kind: "component", type: i4$1.MatTree, selector: "mat-tree", exportAs: ["matTree"] }, { kind: "directive", type: i4$1.MatTreeNode, selector: "mat-tree-node", inputs: ["role", "disabled", "tabIndex"], exportAs: ["matTreeNode"] }, { kind: "ngmodule", type: MatIconModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: MenuComponent, selector: "ieeesa-menu", inputs: ["menuItems", "button", "defaultIconSize", "isMarginBottomZero"], outputs: ["menuToggleButtonElement", "menuItemClick"] }, { kind: "component", type: IconButtonComponent, selector: "ieeesa-icon-button", inputs: ["iconButton", "isLabelNeeded"], outputs: ["iconButtonClick"] }, { kind: "ngmodule", type: MatTooltipModule }, { kind: "directive", type: i5.MatTooltip, selector: "[matTooltip]", exportAs: ["matTooltip"] }, { kind: "directive", type: TextTruncatedDirective, selector: "[matTooltip][ieeesaTextTruncated]", inputs: ["elementClassNameToAddTooltip"] }], encapsulation: i0.ViewEncapsulation.None }); }
2384
2921
  }
2385
2922
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: TreeViewComponent, decorators: [{
2386
2923
  type: Component,
@@ -5028,7 +5565,7 @@ class GroupsComponent {
5028
5565
  this.destroy$.unsubscribe();
5029
5566
  }
5030
5567
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsComponent, deps: [{ token: i1.MatDialog }, { token: GroupsService }, { token: i2.AlertsService }, { token: i2$1.BreakpointObserverService }, { token: i2.GlobalErrorHandlerService }, { token: UserPermissionsService }, { token: GroupPermissionsMapService }], target: i0.ɵɵFactoryTarget.Component }); }
5031
- static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GroupsComponent, isStandalone: true, selector: "ieeesa-groups", inputs: { groupsPageInfo: "groupsPageInfo", applicationId: "applicationId", apiBaseURL: "apiBaseURL", userPermissions: "userPermissions", userInfo: "userInfo" }, providers: [AlertsService], ngImport: i0, template: "<div class=\"ieeesa-groups px-4\">\r\n <div\r\n class=\"ieeesa-groups__info d-flex justify-content-between pb-3 align-items-center\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__info--white-bg'\r\n : 'ieeesa-groups__info--blue-bg'\r\n \"\r\n >\r\n <p\r\n class=\"mb-0\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-title-lg-24 p-0'\r\n : 'ieeesa-headline-lg-32 ieeesa-groups__info__heading'\r\n \"\r\n >\r\n {{ groupsPageInfo?.groupsTitle }}\r\n </p>\r\n <div\r\n class=\"d-flex d-sm-flex d-md-none d-lg-none d-xl-none ieeesa-groups__mobile-icons gap-2\"\r\n >\r\n <ieeesa-icon-button\r\n [iconButton]=\"createGroupIcon\"\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n (iconButtonClick)=\"openCreateGroupForm()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"filterGroupIcon\"\r\n (iconButtonClick)=\"showGroupFilter()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"searchGroupIcon\"\r\n (iconButtonClick)=\"onGroupSearch()\"\r\n >\r\n </ieeesa-icon-button>\r\n </div>\r\n </div>\r\n <div\r\n class=\"ieeesa-groups__actions\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__actions--white-bg'\r\n : 'ieeesa-groups__actions--blue-bg'\r\n \"\r\n >\r\n <div class=\"ieeesa-groups__actions--search row\">\r\n <div\r\n class=\"order-2 order-sm-1 col-12 col-md-7 col-lg-7 col-xl-7 d-flex flex-column justify-content-between\"\r\n >\r\n <p class=\"ieeesa-body-md-16\">\r\n {{ groupsPageInfo?.groupsDescription }}\r\n </p>\r\n <button\r\n [ngClass]=\"\r\n isMobileView ? 'p-0' : 'ieeesa-groups__actions__add-group-btn'\r\n \"\r\n mat-button\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n class=\"ieeesa-groups__create-subgroup mat-tertiary-button d-none d-sm-none d-md-block d-lg-block d-xl-block\"\r\n (click)=\"openCreateGroupForm()\"\r\n [attr.aria-label]=\"constants?.viewGroups?.ariaLabel?.addGroup\"\r\n >\r\n {{ constants?.viewGroups?.addGroup }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"\r\n ((isGroupSearchActive || isGroupFilterActive) && isMobileView) ||\r\n !isMobileView\r\n \"\r\n class=\"order-1 order-sm-2 col-12 col-md-5 col-lg-5 col-xl-5 d-flex flex-column\"\r\n [ngClass]=\"isMobileView ? 'ieeesa-search-mobile-view' : ''\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isGroupSearchActive || !isMobileView\"\r\n (searchValue)=\"onGroupSearchClick($event)\"\r\n [searchTerm]=\"trimmedSearchTerm\"\r\n [searchType]=\"searchType\"\r\n [placeholderLabel]=\"searchPlaceHolderText\"\r\n [minCharacterToSearch]=\"minCharacterToSearch\"\r\n [supportMessage]=\"supportMessage\"\r\n ></ieeesa-search>\r\n\r\n <ieeesa-select\r\n *ngIf=\"isGroupFilterActive || !isMobileView\"\r\n class=\"align-self-end pt-lg-4 pt-md-4 pt-xl-4\"\r\n [isSortNeeded]=\"false\"\r\n [dropdownOptions]=\"selectGroupOptions\"\r\n [isLabelAlignedLeft]=\"true\"\r\n [selectLabel]=\"constants?.viewGroups?.filterByLabel\"\r\n (optionSelected)=\"onGroupTypeFiltered($event)\"\r\n [placeholderText]=\"filterPlaceHolderText\"\r\n [selectedOptions]=\"selectedGroupType\"\r\n ></ieeesa-select>\r\n </div>\r\n </div>\r\n <ieeesa-tree\r\n *ngIf=\"parentGroupsInfo && parentGroupsInfo.length > 0\"\r\n [parentGroupsInfo]=\"parentGroupsInfo\"\r\n [childGroupsInfo]=\"childGroupsInfo\"\r\n [deletedGroupIdInfo]=\"deletedGroupId\"\r\n [isGroupSearchOrFilterActive]=\"isGroupSearchOrFilterActive\"\r\n [userGroupPermissions]=\"userGroupPermissions\"\r\n (toggleGroupClick)=\"getGroups($event)\"\r\n (createGroupClick)=\"openCreateGroupForm($event)\"\r\n (deleteGroupClick)=\"openDeleteConfirmationModal($event)\"\r\n (viewRosterClick)=\"viewRoster($event)\"\r\n (editGroupClick)=\"openEditGroupForm($event)\"\r\n ></ieeesa-tree>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-groups{background-color:#f2f2f2}.ieeesa-groups__mobile-icons .ieeesa-icon-button__svg{height:1.5em!important;width:1.5em!important}.ieeesa-groups__mobile-icons .ieeesa-icon-button__3{display:flex;padding-top:0}.ieeesa-groups__info--white-bg{background-color:#fff;padding:16px 24px 0}.ieeesa-groups__info__heading{padding:12px 0}.ieeesa-groups__actions{background-color:#fff;box-shadow:0 2px #00b5e2 inset;padding:16px 24px 48px}.ieeesa-groups__actions--white-bg{background-color:#fff;box-shadow:none}.ieeesa-groups__actions__add-group-btn{max-width:8.125em}.ieeesa-groups__actions--search .ieeesa-search-mobile-view{margin-bottom:1em}.ieeesa-groups .ieeesa-select-field__label{width:max-content;padding-right:9px}.ieeesa-groups .ieeesa-select-field__label-left{display:flex;align-items:center}.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field{width:auto}.ieeesa-groups .ieeesa-select-field .ieeesa-form-support-text,.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field-subscript-wrapper{display:none}@media (min-width: 767px){.ieeesa-groups__actions--search{margin-bottom:1em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i8.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: SearchComponent, selector: "ieeesa-search", inputs: ["formControlName", "placeholderLabel", "searchTerm", "supportMessage", "searchType", "minCharacterToSearch"], outputs: ["searchValue"] }, { kind: "component", type: SelectComponent, selector: "ieeesa-select", inputs: ["isSortNeeded", "dropdownOptions", "selectedOptions", "formControlName", "isMultiLevel", "isLabelAlignedLeft", "selectLabel", "isMultiSelect", "isDisabled", "isSearch", "placeholderText"], outputs: ["optionSelected", "optionSearched", "dropdownOpenedChange"] }, { kind: "component", type: TreeViewComponent, selector: "ieeesa-tree", inputs: ["parentGroupsInfo", "childGroupsInfo", "isGroupSearchOrFilterActive", "deletedGroupIdInfo", "userGroupPermissions"], outputs: ["toggleGroupClick", "createGroupClick", "editGroupClick", "deleteGroupClick", "viewRosterClick"] }, { kind: "component", type: IconButtonComponent, selector: "ieeesa-icon-button", inputs: ["iconButton", "isLabelNeeded"], outputs: ["iconButtonClick"] }], encapsulation: i0.ViewEncapsulation.None }); }
5568
+ static { this.ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "14.0.0", version: "16.2.12", type: GroupsComponent, isStandalone: true, selector: "ieeesa-groups", inputs: { groupsPageInfo: "groupsPageInfo", applicationId: "applicationId", apiBaseURL: "apiBaseURL", userPermissions: "userPermissions", userInfo: "userInfo" }, providers: [AlertsService], ngImport: i0, template: "<div class=\"ieeesa-groups px-4\">\r\n <div\r\n class=\"ieeesa-groups__info d-flex justify-content-between pb-3 align-items-center\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__info--white-bg'\r\n : 'ieeesa-groups__info--blue-bg'\r\n \"\r\n >\r\n <p\r\n class=\"mb-0\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-title-lg-24 p-0'\r\n : 'ieeesa-headline-lg-32 ieeesa-groups__info__heading'\r\n \"\r\n >\r\n {{ groupsPageInfo?.groupsTitle }}\r\n </p>\r\n <div\r\n class=\"d-flex d-sm-flex d-md-none d-lg-none d-xl-none ieeesa-groups__mobile-icons gap-2\"\r\n >\r\n <ieeesa-icon-button\r\n [iconButton]=\"createGroupIcon\"\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n (iconButtonClick)=\"openCreateGroupForm()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"filterGroupIcon\"\r\n (iconButtonClick)=\"showGroupFilter()\"\r\n >\r\n </ieeesa-icon-button>\r\n <ieeesa-icon-button\r\n [iconButton]=\"searchGroupIcon\"\r\n (iconButtonClick)=\"onGroupSearch()\"\r\n >\r\n </ieeesa-icon-button>\r\n </div>\r\n </div>\r\n <div\r\n class=\"ieeesa-groups__actions\"\r\n [ngClass]=\"\r\n isMobileView\r\n ? 'ieeesa-groups__actions--white-bg'\r\n : 'ieeesa-groups__actions--blue-bg'\r\n \"\r\n >\r\n <div class=\"ieeesa-groups__actions--search row\">\r\n <div\r\n class=\"order-2 order-sm-1 col-12 col-md-7 col-lg-7 col-xl-7 d-flex flex-column justify-content-between\"\r\n >\r\n <p class=\"ieeesa-body-md-16\">\r\n {{ groupsPageInfo?.groupsDescription }}\r\n </p>\r\n <button\r\n [ngClass]=\"\r\n isMobileView ? 'p-0' : 'ieeesa-groups__actions__add-group-btn'\r\n \"\r\n mat-button\r\n *ngIf=\"\r\n validateAccess(permissionType.CREATE_ROOT_GROUP) ||\r\n validateAccess(this.permissionType.MANAGE_ALL_GROUPS)\r\n \"\r\n class=\"ieeesa-groups__create-subgroup mat-tertiary-button d-none d-sm-none d-md-block d-lg-block d-xl-block\"\r\n (click)=\"openCreateGroupForm()\"\r\n [attr.aria-label]=\"constants?.viewGroups?.ariaLabel?.addGroup\"\r\n >\r\n {{ constants?.viewGroups?.addGroup }}\r\n </button>\r\n </div>\r\n\r\n <div\r\n *ngIf=\"\r\n ((isGroupSearchActive || isGroupFilterActive) && isMobileView) ||\r\n !isMobileView\r\n \"\r\n class=\"order-1 order-sm-2 col-12 col-md-5 col-lg-5 col-xl-5 d-flex flex-column\"\r\n [ngClass]=\"isMobileView ? 'ieeesa-search-mobile-view' : ''\"\r\n >\r\n <ieeesa-search\r\n *ngIf=\"isGroupSearchActive || !isMobileView\"\r\n (searchValue)=\"onGroupSearchClick($event)\"\r\n [searchTerm]=\"trimmedSearchTerm\"\r\n [searchType]=\"searchType\"\r\n [placeholderLabel]=\"searchPlaceHolderText\"\r\n [minCharacterToSearch]=\"minCharacterToSearch\"\r\n [supportMessage]=\"supportMessage\"\r\n ></ieeesa-search>\r\n\r\n <ieeesa-select\r\n *ngIf=\"isGroupFilterActive || !isMobileView\"\r\n class=\"align-self-end pt-lg-4 pt-md-4 pt-xl-4\"\r\n [isSortNeeded]=\"false\"\r\n [dropdownOptions]=\"selectGroupOptions\"\r\n [isLabelAlignedLeft]=\"true\"\r\n [selectLabel]=\"constants?.viewGroups?.filterByLabel\"\r\n (optionSelected)=\"onGroupTypeFiltered($event)\"\r\n [placeholderText]=\"filterPlaceHolderText\"\r\n [selectedOptions]=\"selectedGroupType\"\r\n ></ieeesa-select>\r\n </div>\r\n </div>\r\n <ieeesa-tree\r\n *ngIf=\"parentGroupsInfo && parentGroupsInfo.length > 0\"\r\n [parentGroupsInfo]=\"parentGroupsInfo\"\r\n [childGroupsInfo]=\"childGroupsInfo\"\r\n [deletedGroupIdInfo]=\"deletedGroupId\"\r\n [isGroupSearchOrFilterActive]=\"isGroupSearchOrFilterActive\"\r\n [userGroupPermissions]=\"userGroupPermissions\"\r\n (toggleGroupClick)=\"getGroups($event)\"\r\n (createGroupClick)=\"openCreateGroupForm($event)\"\r\n (deleteGroupClick)=\"openDeleteConfirmationModal($event)\"\r\n (viewRosterClick)=\"viewRoster($event)\"\r\n (editGroupClick)=\"openEditGroupForm($event)\"\r\n ></ieeesa-tree>\r\n </div>\r\n</div>\r\n", styles: [".ieeesa-subtitle{text-align:left;font-family:Calibri Regular;font-size:1.5625rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-body{text-align:left;font-family:Calibri Regular;font-size:1.25rem;letter-spacing:0;color:#000;opacity:1}.ieeesa-display-lg-57{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:3.5625rem;line-height:64px;color:#000;letter-spacing:0}.ieeesa-display-md-45{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.813rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-md-47{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.9375rem;line-height:52px;color:#000;letter-spacing:0}.ieeesa-display-sm-38{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.375rem;line-height:44px;color:#000;letter-spacing:0}.ieeesa-headline-lg-32{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-lg-34{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:2.125rem;line-height:40px;color:#000;letter-spacing:0}.ieeesa-headline-md-30{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.875rem;line-height:36px;color:#000;letter-spacing:0}.ieeesa-headline-sm-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:32px;color:#00629b;letter-spacing:0}.ieeesa-headline-sm-26{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.625rem;line-height:32px;color:#000;letter-spacing:0}.ieeesa-title-lg-bold-24{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-lg-24{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.5rem;line-height:28px;color:#000;letter-spacing:0}.ieeesa-title-md-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.009375em}.ieeesa-title-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-title-sm-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-label-lg-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.ieeesa-btn-label-lg-bold-16{font-family:Calibri Regular;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#00629b;letter-spacing:.00625em}.ieeesa-label-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-label-sm-13{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.8125rem;line-height:16px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-16{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-bold-18{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-lg-18{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1.125rem;line-height:24px;color:#000;letter-spacing:.03125em}.ieeesa-body-md-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:20px;color:#1c1b1f;letter-spacing:.015625em}.ieeesa-body-md-16{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:20px;color:#000;letter-spacing:.015625em}.ieeesa-body-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-sm-12{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.75rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-body-color-sm-14{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:.875rem;line-height:18px;color:#49454f;letter-spacing:.025em}.ieeesa-body-sm-bold-14{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:.875rem;line-height:16px;color:#000;letter-spacing:.025em}.ieeesa-title-inter-lg-bold-24{font-family:Inter Bold;font-style:normal;font-weight:700;font-size:1.5rem;line-height:29px;color:#000;letter-spacing:0}.mat-mdc-button.mat-mdc-button-base.mat-primary-button,.mat-mdc-button.mat-mdc-button-base.mat-secondary-button,.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button,.mat-mdc-button.mat-mdc-button-base.mat-text-button{min-width:103px;width:auto;min-height:40px;height:auto;border-radius:3px;text-align:center;padding:.625em 1.5em;border:none;font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#000;letter-spacing:.00625em}.mat-mdc-button.mat-mdc-button-base>.mat-icon{margin-right:11px}.mat-mdc-button.mat-mdc-button-base.mat-primary-button{background-color:#00629b;color:#fff}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:focus{background:#1f75a7}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:hover{background-color:#003e65}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:active{background-color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-primary-button:disabled{background-color:#1c1b1f1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button{color:#fff;background:#a7a8aa;box-shadow:0 1px 2px #0000004d,0 2px 6px 2px #00000026}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:hover{background:#a7a8aa}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:focus{background:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:active{background:#1d192b1f}.mat-mdc-button.mat-mdc-button-base.mat-secondary-button:disabled{background:#1c1b1f1f;color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button{background-color:#fff;border:1px solid #00629b;color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:hover{background-color:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:focus{background-color:#f0f5f9}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:active{background:#6750a41f}.mat-mdc-button.mat-mdc-button-base.mat-tertiary-button:disabled{border:1px solid rgba(28,27,31,.12);color:#1c1b1f;opacity:.38}.mat-mdc-button.mat-mdc-button-base.mat-text-button{color:#00629b}.mat-mdc-button.mat-mdc-button-base.mat-text-button:hover,.mat-mdc-button.mat-mdc-button-base.mat-text-button:active{background:#6750a414}.mat-mdc-button.mat-mdc-button-base.mat-text-button:disabled{color:#1c1b1f;opacity:.38}.ieeesa-text-button{color:#cac4d0;background:none;border:none}.ieeesa-view-more-or-less-button{border:none;background:none;text-decoration:underline;color:#00629b}.flex-align-center{display:flex;align-items:center;justify-content:center}.mat-button-toggle-checked{background-color:#a7a8aa}.mat-button-toggle-checked .mat-button-toggle-label-content:before{font-family:\"Font Awesome 5 Free\";font-weight:900;content:\"\\f00c\";padding-right:.5625em}.mat-button-toggle-group .mat-button-toggle-label-content{font-family:Calibri Bold;font-style:normal;font-weight:700;font-size:1rem;line-height:20px;color:#1c1b1f;letter-spacing:.00625em}.no-bg-color-btn{color:#00629b;border-radius:3px;border:1px solid #00629b;min-height:40px;height:auto}@media (max-width: 768px){.mat-button-toggle-group .mat-button-toggle-label-content{max-width:8ch;text-overflow:ellipsis;white-space:nowrap;overflow:hidden;position:relative}}.cdk-overlay-pane .mat-mdc-tooltip .mdc-tooltip__surface{color:#525252;padding:6px 12px;font-family:Calibri Regular;font-size:1rem;border:1px solid #cac4d0;background:#fff;box-shadow:0 4px 8px #00000040;max-width:unset!important}.cdk-overlay-pane .mat-mdc-option .mdc-list-item__primary-text{font-family:Calibri Regular!important}.cdk-overlay-pane.ieeesa-modal-confirm-dialog,.cdk-overlay-pane.ieeesa-modal-dialog,.cdk-overlay-pane.ieeesa-alert-dialog{width:100%;min-width:312px}.mat-mdc-form-field{font-family:Calibri Regular;font-style:normal;font-weight:400;font-size:1rem;line-height:24px;color:#49454f;letter-spacing:.03125em}.ieeesa-cancel-modal-confirm-dialog{width:25vw!important}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation{padding:1.5em 1.5em 1em}.ieeesa-cancel-modal-confirm-dialog .ieeesa-confirmation .mat-mdc-dialog-content{text-align:center;padding:0 0 1em!important}.mat-mdc-button,.mat-mdc-outlined-button{--mat-mdc-button-persistent-ripple-color: unset}@media (max-width: 768px){.ieeesa-cancel-modal-confirm-dialog{width:90vw!important}}.ieeesa-wrapper-border{border:1px solid #b2b7be;border-top:none;padding:1.5em;border-radius:0 0 4px 4px}.ieeesa-groups{background-color:#f2f2f2}.ieeesa-groups__mobile-icons .ieeesa-icon-button__svg{height:1.5em!important;width:1.5em!important}.ieeesa-groups__mobile-icons .ieeesa-icon-button__3{display:flex;padding-top:0}.ieeesa-groups__info--white-bg{background-color:#fff;padding:16px 24px 0}.ieeesa-groups__info__heading{padding:12px 0}.ieeesa-groups__actions{background-color:#fff;box-shadow:0 2px #00b5e2 inset;padding:16px 24px 48px}.ieeesa-groups__actions--white-bg{background-color:#fff;box-shadow:none}.ieeesa-groups__actions__add-group-btn{max-width:8.125em}.ieeesa-groups__actions--search .ieeesa-search-mobile-view{margin-bottom:1em}.ieeesa-groups .ieeesa-select-field__label{width:max-content;padding-right:9px}.ieeesa-groups .ieeesa-select-field__label-left{display:flex;align-items:center}.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field{width:auto}.ieeesa-groups .ieeesa-select-field .ieeesa-form-support-text,.ieeesa-groups .ieeesa-select-field .mat-mdc-form-field-subscript-wrapper{display:none}@media (min-width: 767px){.ieeesa-groups__actions--search{margin-bottom:1em}}\n"], dependencies: [{ kind: "ngmodule", type: CommonModule }, { kind: "directive", type: i3.NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "directive", type: i3.NgIf, selector: "[ngIf]", inputs: ["ngIf", "ngIfThen", "ngIfElse"] }, { kind: "ngmodule", type: MatDialogModule }, { kind: "ngmodule", type: MatButtonModule }, { kind: "component", type: i4.MatButton, selector: " button[mat-button], button[mat-raised-button], button[mat-flat-button], button[mat-stroked-button] ", inputs: ["disabled", "disableRipple", "color"], exportAs: ["matButton"] }, { kind: "component", type: SearchComponent, selector: "ieeesa-search", inputs: ["formControlName", "placeholderLabel", "searchTerm", "supportMessage", "searchType", "minCharacterToSearch"], outputs: ["searchValue"] }, { kind: "component", type: SelectComponent, selector: "ieeesa-select", inputs: ["isSortNeeded", "dropdownOptions", "selectedOptions", "formControlName", "isMultiLevel", "isLabelAlignedLeft", "selectLabel", "isMultiSelect", "isDisabled", "isSearch", "placeholderText"], outputs: ["optionSelected", "optionSearched", "dropdownOpenedChange"] }, { kind: "component", type: TreeViewComponent, selector: "ieeesa-tree", inputs: ["parentGroupsInfo", "childGroupsInfo", "isGroupSearchOrFilterActive", "deletedGroupIdInfo", "userGroupPermissions"], outputs: ["toggleGroupClick", "createGroupClick", "editGroupClick", "deleteGroupClick", "viewRosterClick"] }, { kind: "component", type: IconButtonComponent, selector: "ieeesa-icon-button", inputs: ["iconButton", "isLabelNeeded"], outputs: ["iconButtonClick"] }], encapsulation: i0.ViewEncapsulation.None }); }
5032
5569
  }
5033
5570
  i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImport: i0, type: GroupsComponent, decorators: [{
5034
5571
  type: Component,
@@ -5076,5 +5613,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.12", ngImpo
5076
5613
  * Generated bundle index. Do not edit.
5077
5614
  */
5078
5615
 
5079
- export { CreateGroupComponent, EditUserRolesComponent, FilterType, GroupAction, GroupFunctionType, GroupNode, GroupRosterType, Groups, GroupsComponent, GroupsDataSource, GroupsModule, GroupsService, GroupsValidationPatterns, RoleType, RosterFunctionType, TableColumnSchemaUserGroup, TreeViewComponent };
5616
+ export { AddWorkingGroupsComponent, CreateGroupComponent, EditUserRolesComponent, FilterType, GroupAction, GroupFunctionType, GroupNode, GroupRosterType, Groups, GroupsComponent, GroupsDataSource, GroupsModule, GroupsService, GroupsValidationPatterns, ReciprocalCreditSectionComponent, RoleType, RosterFunctionType, TableColumnSchemaUserGroup, TreeViewComponent };
5080
5617
  //# sourceMappingURL=ieeesa-npm-groups.mjs.map