Skip to content

Commit 012ec5b

Browse files
authored
[ENG-10770] "See more" button shows error when only one admin contributor exists (#945)
- Ticket: https://openscience.atlassian.net/browse/ENG-10770 - Feature flag: n/a ## Summary of Changes 1. Updated show load more contributors logic.
1 parent c171867 commit 012ec5b

12 files changed

Lines changed: 28 additions & 22 deletions

File tree

src/app/features/collections/components/add-to-collection/project-contributors-step/project-contributors-step.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -42,6 +42,7 @@ <h3>{{ 'collections.addToCollection.projectContributors' | translate }}</h3>
4242
[(contributors)]="projectContributors"
4343
[tableParams]="tableParams()"
4444
[isLoading]="isContributorsLoading()"
45+
[showLoadMore]="hasMoreContributors()"
4546
[isLoadingMore]="isLoadingMore()"
4647
(remove)="handleRemoveContributor($event)"
4748
(loadMore)="loadMoreContributors()"

src/app/features/collections/components/add-to-collection/project-contributors-step/project-contributors-step.component.ts

Lines changed: 4 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -60,15 +60,16 @@ export class ProjectContributorsStepComponent {
6060
private readonly customConfirmationService = inject(CustomConfirmationService);
6161
private readonly router = inject(Router);
6262

63+
readonly currentUser = select(UserSelectors.getCurrentUser);
6364
readonly isContributorsLoading = select(ContributorsSelectors.isContributorsLoading);
6465
readonly contributorsTotalCount = select(ContributorsSelectors.getContributorsTotalCount);
6566
readonly selectedProject = select(ProjectsSelectors.getSelectedProject);
66-
readonly currentUser = select(UserSelectors.getCurrentUser);
67-
isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
67+
readonly isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
68+
readonly hasMoreContributors = select(ContributorsSelectors.hasMoreContributors);
69+
readonly pageSize = select(ContributorsSelectors.getContributorsPageSize);
6870

6971
private initialContributors = select(ContributorsSelectors.getContributors);
7072
readonly projectContributors = signal<ContributorModel[]>([]);
71-
pageSize = select(ContributorsSelectors.getContributorsPageSize);
7273

7374
readonly tableParams = computed<TableParameters>(() => ({
7475
...DEFAULT_TABLE_PARAMS,

src/app/features/contributors/contributors.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -67,6 +67,7 @@ <h1 class="py-5 px-3 md:px-5 xl:px-4">{{ 'navigation.contributors' | translate }
6767
[tableParams]="tableParams()"
6868
[hasAdminAccess]="hasAdminAccess()"
6969
[currentUserId]="currentUser()?.id"
70+
[showLoadMore]="hasMoreContributors()"
7071
[showCurator]="true"
7172
[showInfo]="true"
7273
[resourceType]="resourceType()"

src/app/features/contributors/contributors.component.ts

Lines changed: 3 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -132,11 +132,12 @@ export class ContributorsComponent implements OnInit, OnDestroy {
132132
readonly isContributorsLoading = select(ContributorsSelectors.isContributorsLoading);
133133
readonly contributorsTotalCount = select(ContributorsSelectors.getContributorsTotalCount);
134134
readonly isViewOnlyLinksLoading = select(ViewOnlyLinkSelectors.isViewOnlyLinksLoading);
135+
readonly isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
136+
readonly pageSize = select(ContributorsSelectors.getContributorsPageSize);
137+
readonly hasMoreContributors = select(ContributorsSelectors.hasMoreContributors);
135138
readonly hasAdminAccess = select(CurrentResourceSelectors.hasResourceAdminAccess);
136139
readonly resourceAccessRequestEnabled = select(CurrentResourceSelectors.resourceAccessRequestEnabled);
137140
readonly currentUser = select(UserSelectors.getCurrentUser);
138-
pageSize = select(ContributorsSelectors.getContributorsPageSize);
139-
isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
140141

141142
readonly tableParams = computed<TableParameters>(() => ({
142143
...DEFAULT_TABLE_PARAMS,

src/app/features/metadata/dialogs/contributors-dialog/contributors-dialog.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -20,6 +20,7 @@
2020
[tableParams]="tableParams()"
2121
[isLoading]="isLoading()"
2222
[isLoadingMore]="isLoadingMore()"
23+
[showLoadMore]="hasMoreContributors()"
2324
[showEmployment]="false"
2425
[showEducation]="false"
2526
[hasAdminAccess]="hasAdminAccess()"

src/app/features/metadata/dialogs/contributors-dialog/contributors-dialog.component.ts

Lines changed: 2 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -73,7 +73,9 @@ export class ContributorsDialogComponent implements OnInit {
7373
hasAdminAccess = select(MetadataSelectors.hasAdminAccess);
7474
contributors = signal<ContributorModel[]>([]);
7575
isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
76+
hasMoreContributors = select(ContributorsSelectors.hasMoreContributors);
7677
pageSize = select(ContributorsSelectors.getContributorsPageSize);
78+
7779
changesMade = signal<boolean>(false);
7880

7981
currentUser = select(UserSelectors.getCurrentUser);

src/app/features/preprints/components/stepper/preprints-metadata-step/preprints-contributors/preprints-contributors.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ <h2>{{ 'common.labels.contributors' | translate }}</h2>
1212
[(contributors)]="contributors"
1313
[tableParams]="tableParams()"
1414
[isLoading]="isContributorsLoading()"
15+
[showLoadMore]="hasMoreContributors()"
1516
[isLoadingMore]="isLoadingMore()"
1617
(remove)="removeContributor($event)"
1718
(loadMore)="loadMoreContributors()"

src/app/features/preprints/components/stepper/preprints-metadata-step/preprints-contributors/preprints-contributors.component.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -62,6 +62,7 @@ export class PreprintsContributorsComponent implements OnInit {
6262
readonly contributors = signal<ContributorModel[]>([]);
6363
readonly contributorsTotalCount = select(ContributorsSelectors.getContributorsTotalCount);
6464
readonly isContributorsLoading = select(ContributorsSelectors.isContributorsLoading);
65+
readonly hasMoreContributors = select(ContributorsSelectors.hasMoreContributors);
6566
readonly isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
6667
readonly pageSize = select(ContributorsSelectors.getContributorsPageSize);
6768

src/app/features/registries/components/registries-metadata-step/registries-contributors/registries-contributors.component.html

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -6,6 +6,7 @@ <h2 class="mb-2">{{ 'common.labels.contributors' | translate }}</h2>
66
[(contributors)]="contributors"
77
[tableParams]="tableParams()"
88
[isLoading]="isContributorsLoading()"
9+
[showLoadMore]="hasMoreContributors()"
910
[isLoadingMore]="isLoadingMore()"
1011
(remove)="removeContributor($event)"
1112
(loadMore)="loadMoreContributors()"

src/app/features/registries/components/registries-metadata-step/registries-contributors/registries-contributors.component.ts

Lines changed: 1 addition & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -66,6 +66,7 @@ export class RegistriesContributorsComponent implements OnInit, OnDestroy {
6666

6767
isContributorsLoading = select(ContributorsSelectors.isContributorsLoading);
6868
contributorsTotalCount = select(ContributorsSelectors.getContributorsTotalCount);
69+
hasMoreContributors = select(ContributorsSelectors.hasMoreContributors);
6970
isLoadingMore = select(ContributorsSelectors.isContributorsLoadingMore);
7071
pageSize = select(ContributorsSelectors.getContributorsPageSize);
7172

0 commit comments

Comments
 (0)