summaryrefslogtreecommitdiff
path: root/internal/paging/boundary.go
diff options
context:
space:
mode:
authorLibravatar kim <89579420+NyaaaWhatsUpDoc@users.noreply.github.com>2024-04-30 11:19:33 +0100
committerLibravatar GitHub <noreply@github.com>2024-04-30 12:19:33 +0200
commit4f87ef246cc15d2b4a3effb3dff5cf3ece9a44b3 (patch)
treee2c3bb90ce14db783120a37edf865c7e05c3634b /internal/paging/boundary.go
parent[chore]: Bump github.com/tdewolff/minify/v2 from 2.20.19 to 2.20.20 (#2875) (diff)
downloadgotosocial-4f87ef246cc15d2b4a3effb3dff5cf3ece9a44b3.tar.xz
[bugfix] paging rel links (#2883)
* fix paging so it uses correct cursor query parameter name * improved code comment * whoops, flip the cursoring :facepalm: * fix the broken test
Diffstat (limited to 'internal/paging/boundary.go')
-rw-r--r--internal/paging/boundary.go50
1 files changed, 30 insertions, 20 deletions
diff --git a/internal/paging/boundary.go b/internal/paging/boundary.go
index 83d265515..bf4508aff 100644
--- a/internal/paging/boundary.go
+++ b/internal/paging/boundary.go
@@ -23,26 +23,36 @@ package paging
func EitherMinID(minID, sinceID string) Boundary {
/*
- Paging with `since_id` vs `min_id`:
-
- limit = 4 limit = 4
- +----------+ +----------+
- max_id--> |xxxxxxxxxx| | | <-- max_id
- +----------+ +----------+
- |xxxxxxxxxx| | |
- +----------+ +----------+
- |xxxxxxxxxx| | |
- +----------+ +----------+
- |xxxxxxxxxx| |xxxxxxxxxx|
- +----------+ +----------+
- | | |xxxxxxxxxx|
- +----------+ +----------+
- | | |xxxxxxxxxx|
- +----------+ +----------+
- since_id--> | | |xxxxxxxxxx| <-- min_id
- +----------+ +----------+
- | | | |
- +----------+ +----------+
+ Paging with `since_id` vs `min_id`:
+
+ limit = 4 limit = 4
+ +----------+ +----------+
+ max_id--> |xxxxxxxxxx| | | <-- max_id
+ +----------+ +----------+
+ |xxxxxxxxxx| | |
+ +----------+ +----------+
+ |xxxxxxxxxx| | |
+ +----------+ +----------+
+ |xxxxxxxxxx| |xxxxxxxxxx|
+ +----------+ +----------+
+ | | |xxxxxxxxxx|
+ +----------+ +----------+
+ | | |xxxxxxxxxx|
+ +----------+ +----------+
+ since_id--> | | |xxxxxxxxxx| <-- min_id
+ +----------+ +----------+
+ | | | |
+ +----------+ +----------+
+
+ To sum it up in words:
+
+ when paging with since_id, max_id is used as
+ the cursor value, and since_id provides a
+ limiting value to the results.
+
+ when paging with min_id, min_id is used as
+ the cursor value, and max_id provides a
+ limiting value to the results.
*/
switch {