diff --git a/CHANGELOG.md b/CHANGELOG.md index 4288299184c..3e8ba924460 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -5,3 +5,7 @@ Inited :) ### 0.1.1 + +* `Repos` + * `Common` + * Extension `ReadStandardCRUDRepo#doWithAll` has been added diff --git a/repos/common/src/commonMain/kotlin/dev/inmo/micro_utils/repos/pagination/PaginationExtensions.kt b/repos/common/src/commonMain/kotlin/dev/inmo/micro_utils/repos/pagination/PaginationExtensions.kt new file mode 100644 index 00000000000..38d351c21ef --- /dev/null +++ b/repos/common/src/commonMain/kotlin/dev/inmo/micro_utils/repos/pagination/PaginationExtensions.kt @@ -0,0 +1,15 @@ +package dev.inmo.micro_utils.repos.pagination + +import dev.inmo.micro_utils.pagination.doWithPagination +import dev.inmo.micro_utils.pagination.nextPageIfNotEmpty +import dev.inmo.micro_utils.repos.ReadStandardCRUDRepo + +suspend inline fun > REPO.doWithAll( + block: (List) -> Unit +) { + doWithPagination { + getByPagination(it).also { + block(it.results) + }.nextPageIfNotEmpty() + } +}