diff --git a/apps/lfx-one/src/app/modules/committees/committee-manage/committee-manage.component.ts b/apps/lfx-one/src/app/modules/committees/committee-manage/committee-manage.component.ts index 5a05a9750..066cbbdbe 100644 --- a/apps/lfx-one/src/app/modules/committees/committee-manage/committee-manage.component.ts +++ b/apps/lfx-one/src/app/modules/committees/committee-manage/committee-manage.component.ts @@ -208,13 +208,13 @@ export class CommitteeManageComponent { // Update existing committee this.committeeService.updateCommittee(this.committeeId()!, committeeData).subscribe({ next: () => this.handleCommitteeSuccess('updated'), - error: (error) => this.handleCommitteeError(error, 'update'), + error: () => this.handleCommitteeError('update'), }); } else { // Create new committee this.committeeService.createCommittee(committeeData).subscribe({ next: (committee) => this.handleCreateSuccess(committee), - error: (error) => this.handleCommitteeError(error, 'create'), + error: () => this.handleCommitteeError('create'), }); } } @@ -246,8 +246,7 @@ export class CommitteeManageComponent { this.showMemberOperationToast(totalSuccess, totalFailed, totalSuccess + totalFailed); this.router.navigate(['/groups']); }, - error: (error) => { - console.error('Error processing member changes:', error); + error: () => { this.messageService.add({ severity: 'error', summary: 'Error', @@ -333,8 +332,7 @@ export class CommitteeManageComponent { // Navigate back to committees list this.router.navigate(['/groups']); }, - error: (error: unknown) => { - console.error('Error saving committee and members:', error); + error: () => { this.messageService.add({ severity: 'error', summary: 'Error', @@ -455,8 +453,7 @@ export class CommitteeManageComponent { } } - private handleCommitteeError(error: unknown, operation: 'create' | 'update'): void { - console.error(`Error ${operation} committee:`, error); + private handleCommitteeError(operation: 'create' | 'update'): void { this.submitting.set(false); this.messageService.add({ @@ -570,10 +567,7 @@ export class CommitteeManageComponent { private createMemberOperation(type: string, operation: () => Observable) { return operation().pipe( switchMap(() => of({ type, success: 1, failed: 0 })), - catchError((error) => { - console.error(`Error ${type} member:`, error); - return of({ type, success: 0, failed: 1 }); - }) + catchError(() => of({ type, success: 0, failed: 1 })) ); } diff --git a/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.html b/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.html index c19741ac3..e91489b69 100644 --- a/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.html +++ b/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.html @@ -54,7 +54,7 @@

{{ committee()?.name }}

} Created {{ committee()?.created_at | date: 'MMM d, y' }} @if (committee()?.updated_at) { - · Updated {{ committee()?.updated_at | date: 'MMM d, y' }} + · Updated {{ committee()?.updated_at | date: 'MMM d, y' }} } @@ -187,6 +187,4 @@

{{ committee()?.name }}

} - - diff --git a/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.ts b/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.ts index 84e3cafb5..714efb9e8 100644 --- a/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.ts +++ b/apps/lfx-one/src/app/modules/committees/committee-view/committee-view.component.ts @@ -8,11 +8,10 @@ import { ActivatedRoute, Router, RouterLink } from '@angular/router'; import { BreadcrumbComponent } from '@components/breadcrumb/breadcrumb.component'; import { ButtonComponent } from '@components/button/button.component'; import { TagComponent } from '@components/tag/tag.component'; +import { RouteLoadingComponent } from '@components/loading/route-loading.component'; import { Committee, CommitteeMemberVisibility, getCommitteeCategorySeverity, TagSeverity } from '@lfx-one/shared'; import { CommitteeService } from '@services/committee.service'; -import { RouteLoadingComponent } from '@components/loading/route-loading.component'; import { MenuItem, MessageService } from 'primeng/api'; -import { ConfirmDialogModule } from 'primeng/confirmdialog'; import { catchError, combineLatest, finalize, of, switchMap } from 'rxjs'; import { CommitteeOverviewComponent } from '../components/committee-overview/committee-overview.component'; @@ -21,17 +20,7 @@ type CommitteeTab = 'overview' | 'members' | 'votes' | 'meetings' | 'surveys' | @Component({ selector: 'lfx-committee-view', - imports: [ - BreadcrumbComponent, - ButtonComponent, - TagComponent, - ConfirmDialogModule, - RouterLink, - RouteLoadingComponent, - DatePipe, - NgClass, - CommitteeOverviewComponent, - ], + imports: [BreadcrumbComponent, ButtonComponent, TagComponent, RouterLink, RouteLoadingComponent, DatePipe, NgClass, CommitteeOverviewComponent], templateUrl: './committee-view.component.html', styleUrl: './committee-view.component.scss', }) diff --git a/apps/lfx-one/src/app/modules/committees/components/committee-members/committee-members.component.html b/apps/lfx-one/src/app/modules/committees/components/committee-members/committee-members.component.html index a510d6b7f..940c3eabd 100644 --- a/apps/lfx-one/src/app/modules/committees/components/committee-members/committee-members.component.html +++ b/apps/lfx-one/src/app/modules/committees/components/committee-members/committee-members.component.html @@ -157,7 +157,6 @@

{{ committeeLabel.singular }} Memb size="small" severity="secondary" [href]="'mailto:' + member.email" - target="_blank" pTooltip="Send Message"> } @@ -186,15 +185,8 @@

{{ committeeLabel.singular }} Memb
- @if (groupBehavioralClass() === 'governing-board' || groupBehavioralClass() === 'oversight-committee') { - -

No Board Members Found

-

Board members with voting rights will appear here once added.

- } @else { - -

No Contributors Yet

-

Contributors will appear here as they join this working group.

- } + +

No members found

@if (canManageMembers()) {
+ +
+

How Can People Join the Group?

+
+
+
+
+ +
+
+ +

Control how new members can join this {{ committeeLabel.toLowerCase() }}

+
+
+ + +
+
+
+

{{ committeeLabel }} Features

diff --git a/apps/lfx-one/src/app/modules/committees/components/committee-settings/committee-settings.component.ts b/apps/lfx-one/src/app/modules/committees/components/committee-settings/committee-settings.component.ts index 1af9406ce..9564ed012 100644 --- a/apps/lfx-one/src/app/modules/committees/components/committee-settings/committee-settings.component.ts +++ b/apps/lfx-one/src/app/modules/committees/components/committee-settings/committee-settings.component.ts @@ -6,7 +6,7 @@ import { FormGroup, ReactiveFormsModule } from '@angular/forms'; import { MessageComponent } from '@components/message/message.component'; import { SelectComponent } from '@components/select/select.component'; import { ToggleComponent } from '@components/toggle/toggle.component'; -import { COMMITTEE_LABEL, COMMITTEE_SETTINGS_FEATURES, MEMBER_VISIBILITY_OPTIONS } from '@lfx-one/shared/constants'; +import { COMMITTEE_LABEL, COMMITTEE_SETTINGS_FEATURES, JOIN_MODE_OPTIONS, MEMBER_VISIBILITY_OPTIONS } from '@lfx-one/shared/constants'; @Component({ selector: 'lfx-committee-settings', @@ -21,4 +21,5 @@ export class CommitteeSettingsComponent { public readonly features = COMMITTEE_SETTINGS_FEATURES; public readonly committeeLabel = COMMITTEE_LABEL.singular; public readonly memberVisibilityOptions = MEMBER_VISIBILITY_OPTIONS; + public readonly joinModeOptions = JOIN_MODE_OPTIONS; } diff --git a/apps/lfx-one/src/app/modules/committees/components/member-form/member-form.component.html b/apps/lfx-one/src/app/modules/committees/components/member-form/member-form.component.html index 114380f4e..aed5701f6 100644 --- a/apps/lfx-one/src/app/modules/committees/components/member-form/member-form.component.html +++ b/apps/lfx-one/src/app/modules/committees/components/member-form/member-form.component.html @@ -141,7 +141,6 @@ placeholder="Start date" [showButtonBar]="true" appendTo="body" - data-testid="member-form-role-start">
@if (form().errors?.['role_start_after_role_end']) { @@ -192,7 +190,6 @@ placeholder="Start date" [showButtonBar]="true" appendTo="body" - data-testid="member-form-voting-start"> @if (form().errors?.['voting_status_start_after_voting_status_end']) {