server: handle search with no first/last better
This commit is contained in:
parent
24414b04bb
commit
3e3024dd5c
@ -65,6 +65,12 @@ impl QueryRoot {
|
|||||||
|after, before, first, last| async move {
|
|after, before, first, last| async move {
|
||||||
info!("{after:?} {before:?} {first:?} {last:?} {query}");
|
info!("{after:?} {before:?} {first:?} {last:?} {query}");
|
||||||
let total = nm.count(&query)?;
|
let total = nm.count(&query)?;
|
||||||
|
let (first, last) = if let (None, None) = (first, last) {
|
||||||
|
info!("neither first nor last set, defaulting to 20");
|
||||||
|
(Some(20), Some(20))
|
||||||
|
} else {
|
||||||
|
(first, last)
|
||||||
|
};
|
||||||
|
|
||||||
let mut start = after.map(|after| after + 1).unwrap_or(0);
|
let mut start = after.map(|after| after + 1).unwrap_or(0);
|
||||||
let mut end = before.unwrap_or(total);
|
let mut end = before.unwrap_or(total);
|
||||||
@ -91,17 +97,6 @@ impl QueryRoot {
|
|||||||
tags: ts.tags,
|
tags: ts.tags,
|
||||||
})
|
})
|
||||||
.collect();
|
.collect();
|
||||||
//let mut slice = &res[..];
|
|
||||||
|
|
||||||
/*
|
|
||||||
if let Some(first) = first {
|
|
||||||
slice = &slice[..first.min(slice.len())];
|
|
||||||
end -= first.min(slice.len());
|
|
||||||
} else if let Some(last) = last {
|
|
||||||
slice = &slice[slice.len() - last.min(slice.len())..];
|
|
||||||
start = end - last.min(slice.len());
|
|
||||||
}
|
|
||||||
*/
|
|
||||||
|
|
||||||
let mut connection = Connection::new(start > 0, end < total);
|
let mut connection = Connection::new(start > 0, end < total);
|
||||||
connection.edges.extend(
|
connection.edges.extend(
|
||||||
|
|||||||
Loading…
x
Reference in New Issue
Block a user