Skip to content

Commit a2cd99d

Browse files
committed
fix: add pagination object to summeries
1 parent 2de30b9 commit a2cd99d

File tree

14 files changed

+48
-34
lines changed

14 files changed

+48
-34
lines changed

src/collection/domain/useCases/getMyDataCollectionItems.ts

Lines changed: 3 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,14 +2,14 @@ import { CollectionRepository } from '../repositories/CollectionRepository'
22
import { MyDataCollectionItemSubset } from '../models/MyDataCollectionItemSubset'
33
import { PublicationStatus } from '../../../shared/core/domain/models/PublicationStatus'
44
import { CollectionItemType } from '@/collection/domain/models/CollectionItemType'
5+
import { MyDataCollectionItemsPaginationInfo } from '../models/MyDataCollectionItemsPaginationInfo'
56

67
export async function getMyDataCollectionItems(
78
collectionRepository: CollectionRepository,
89
roleIds: number[],
910
collectionItemTypes: CollectionItemType[],
1011
publicationStatuses: PublicationStatus[],
11-
limit?: number,
12-
selectedPage?: number,
12+
paginationInfo?: MyDataCollectionItemsPaginationInfo,
1313
searchText?: string,
1414
otherUserName?: string
1515
): Promise<MyDataCollectionItemSubset> {
@@ -18,8 +18,7 @@ export async function getMyDataCollectionItems(
1818
roleIds,
1919
collectionItemTypes,
2020
publicationStatuses,
21-
limit,
22-
selectedPage,
21+
paginationInfo,
2322
searchText,
2423
otherUserName
2524
)
Lines changed: 8 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,8 @@
1+
import { PaginationInfo } from '../../../shared/pagination/domain/models/PaginationInfo'
2+
3+
export class DatasetVersionPaginationInfo extends PaginationInfo<DatasetVersionPaginationInfo> {
4+
constructor(page = 1, pageSize = 10, totalItems = 0, itemName = 'Version') {
5+
super(page, pageSize, totalItems, itemName)
6+
}
7+
}
8+

src/dataset/domain/repositories/DatasetRepository.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -10,6 +10,7 @@ import { DatasetDownloadCount } from '../models/DatasetDownloadCount'
1010
import { FormattedCitation, CitationFormat } from '../models/DatasetCitation'
1111
import { DatasetTemplate } from '../models/DatasetTemplate'
1212
import { CollectionSummary } from '@/collection/domain/models/CollectionSummary'
13+
import { DatasetVersionPaginationInfo } from '../models/DatasetVersionPaginationInfo'
1314

1415
export interface DatasetRepository {
1516
getByPersistentId: (
@@ -46,8 +47,7 @@ export interface DatasetRepository {
4647
publish(persistentId: string, versionUpdateType: VersionUpdateType): Promise<void>
4748
getDatasetVersionsSummaries: (
4849
datasetId: number | string,
49-
limit?: number,
50-
offset?: number
50+
paginationInfo?: DatasetVersionPaginationInfo
5151
) => Promise<DatasetVersionSummarySubset>
5252
getDownloadCount: (
5353
datasetId: string | number,
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,13 +1,13 @@
11
import { DatasetRepository } from '../repositories/DatasetRepository'
22
import { DatasetVersionSummarySubset } from '../models/DatasetVersionSummaryInfo'
3+
import { DatasetVersionPaginationInfo } from '../models/DatasetVersionPaginationInfo'
34

45
export function getDatasetVersionsSummaries(
56
datasetRepository: DatasetRepository,
67
datasetId: number | string,
7-
limit?: number,
8-
offset?: number
8+
paginationInfo?: DatasetVersionPaginationInfo
99
): Promise<DatasetVersionSummarySubset> {
10-
return datasetRepository.getDatasetVersionsSummaries(datasetId, limit, offset).catch((error) => {
10+
return datasetRepository.getDatasetVersionsSummaries(datasetId, paginationInfo).catch((error) => {
1111
throw error
1212
})
1313
}

src/dataset/infrastructure/repositories/DatasetJSDataverseRepository.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -48,6 +48,7 @@ import { DatasetsWithCount } from '../../domain/models/DatasetsWithCount'
4848
import { VersionUpdateType } from '../../domain/models/VersionUpdateType'
4949
import { DatasetVersionSummarySubset } from '@/dataset/domain/models/DatasetVersionSummaryInfo'
5050
import { DatasetDownloadCount } from '@/dataset/domain/models/DatasetDownloadCount'
51+
import { DatasetVersionPaginationInfo } from '@/dataset/domain/models/DatasetVersionPaginationInfo'
5152
import { FormattedCitation, CitationFormat } from '@/dataset/domain/models/DatasetCitation'
5253
import { axiosInstance } from '@/axiosInstance'
5354
import { DATAVERSE_BACKEND_URL } from '../../../config'
@@ -375,11 +376,10 @@ export class DatasetJSDataverseRepository implements DatasetRepository {
375376
}
376377
getDatasetVersionsSummaries(
377378
datasetId: number | string,
378-
limit?: number,
379-
offset?: number
379+
paginationInfo?: DatasetVersionPaginationInfo
380380
): Promise<DatasetVersionSummarySubset> {
381381
return getDatasetVersionsSummaries
382-
.execute(datasetId, limit, offset)
382+
.execute(datasetId, paginationInfo?.pageSize, paginationInfo?.offset)
383383
.catch((error: ReadError) => {
384384
throw error
385385
})
Lines changed: 7 additions & 0 deletions
Original file line numberDiff line numberDiff line change
@@ -0,0 +1,7 @@
1+
import { PaginationInfo } from '../../../shared/pagination/domain/models/PaginationInfo'
2+
3+
export class FileVersionPaginationInfo extends PaginationInfo<FileVersionPaginationInfo> {
4+
constructor(page = 1, pageSize = 10, totalItems = 0, itemName = 'Version') {
5+
super(page, pageSize, totalItems, itemName)
6+
}
7+
}

src/files/domain/repositories/FileRepository.ts

Lines changed: 2 additions & 2 deletions
Original file line numberDiff line numberDiff line change
@@ -12,6 +12,7 @@ import { FixityAlgorithm } from '../models/FixityAlgorithm'
1212
import { FileMetadataDTO } from '@/files/domain/useCases/DTOs/FileMetadataDTO'
1313
import { RestrictFileDTO } from '../useCases/restrictFileDTO'
1414
import { FileVersionSummarySubset } from '../models/FileVersionSummaryInfo'
15+
import { FileVersionPaginationInfo } from '../models/FileVersionPaginationInfo'
1516

1617
export interface FileRepository {
1718
getAllByDatasetPersistentId: (
@@ -34,8 +35,7 @@ export interface FileRepository {
3435
) => Promise<number>
3536
getFileVersionSummaries: (
3637
fileId: number | string,
37-
limit?: number,
38-
offset?: number
38+
paginationInfo?: FileVersionPaginationInfo
3939
) => Promise<FileVersionSummarySubset>
4040
getById: (id: number, datasetVersionNumber?: string) => Promise<File | undefined>
4141
getMultipleFileDownloadUrl: (ids: number[], downloadMode: FileDownloadMode) => string
Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -1,11 +1,11 @@
11
import { FileRepository } from '../repositories/FileRepository'
22
import { FileVersionSummarySubset } from '../models/FileVersionSummaryInfo'
3+
import { FileVersionPaginationInfo } from '../models/FileVersionPaginationInfo'
34

45
export function getFileVersionSummaries(
56
fileRepository: FileRepository,
67
fileId: number | string,
7-
limit?: number,
8-
offset?: number
8+
paginationInfo?: FileVersionPaginationInfo
99
): Promise<FileVersionSummarySubset> {
10-
return fileRepository.getFileVersionSummaries(fileId, limit, offset)
10+
return fileRepository.getFileVersionSummaries(fileId, paginationInfo)
1111
}

src/files/infrastructure/FileJSDataverseRepository.ts

Lines changed: 3 additions & 3 deletions
Original file line numberDiff line numberDiff line change
@@ -46,6 +46,7 @@ import { RestrictFileDTO } from '../domain/useCases/restrictFileDTO'
4646
import { FileMetadataDTO } from '@/files/domain/useCases/DTOs/FileMetadataDTO'
4747
import { JSDataverseReadErrorHandler } from '@/shared/helpers/JSDataverseReadErrorHandler'
4848
import { FileVersionSummarySubset } from '../domain/models/FileVersionSummaryInfo'
49+
import { FileVersionPaginationInfo } from '../domain/models/FileVersionPaginationInfo'
4950

5051
const includeDeaccessioned = true
5152

@@ -251,10 +252,9 @@ export class FileJSDataverseRepository implements FileRepository {
251252
}
252253
getFileVersionSummaries(
253254
fileId: number | string,
254-
limit?: number,
255-
offset?: number
255+
paginationInfo?: FileVersionPaginationInfo
256256
): Promise<FileVersionSummarySubset> {
257-
return getFileVersionSummaries.execute(fileId, limit, offset)
257+
return getFileVersionSummaries.execute(fileId, paginationInfo?.pageSize, paginationInfo?.offset)
258258
}
259259

260260
getById(id: number, datasetVersionNumber?: string): Promise<File> {

src/sections/dataset/dataset-versions/useGetDatasetVersionsSummaries.ts

Lines changed: 4 additions & 4 deletions
Original file line numberDiff line numberDiff line change
@@ -2,12 +2,13 @@ import { useCallback, useEffect, useState } from 'react'
22
import { DatasetVersionSummaryInfo } from '@/dataset/domain/models/DatasetVersionSummaryInfo'
33
import { DatasetRepository } from '@/dataset/domain/repositories/DatasetRepository'
44
import { getDatasetVersionsSummaries } from '@/dataset/domain/useCases/getDatasetVersionsSummaries'
5+
import { DatasetVersionPaginationInfo } from '@/dataset/domain/models/DatasetVersionPaginationInfo'
56

67
interface UseGetDatasetVersionsSummaries {
78
datasetVersionSummaries: DatasetVersionSummaryInfo[] | undefined
89
error: string | null
910
isLoading: boolean
10-
fetchSummaries: (limit?: number, offset?: number) => Promise<void>
11+
fetchSummaries: (paginationInfo?: DatasetVersionPaginationInfo) => Promise<void>
1112
}
1213

1314
interface Props {
@@ -26,16 +27,15 @@ export const useGetDatasetVersionsSummaries = ({
2627
const [error, setError] = useState<string | null>(null)
2728

2829
const fetchSummaries = useCallback(
29-
async (limit?: number, offset?: number) => {
30+
async (paginationInfo?: DatasetVersionPaginationInfo) => {
3031
setIsLoading(true)
3132
setError(null)
3233

3334
try {
3435
const versionSummaries = await getDatasetVersionsSummaries(
3536
datasetRepository,
3637
persistentId,
37-
limit,
38-
offset
38+
paginationInfo
3939
)
4040
setSummaries(versionSummaries.summaries)
4141
} catch (err) {

0 commit comments

Comments
 (0)