adds dynamic trail filters
This commit is contained in:
@@ -99,6 +99,15 @@ interface TrailFilter {
|
||||
sortOrder: "+" | "-"
|
||||
}
|
||||
|
||||
interface TrailFilterValues {
|
||||
min_distance: number,
|
||||
max_distance: number,
|
||||
min_elevation_gain: number,
|
||||
max_elevation_gain: number,
|
||||
min_durtation: number,
|
||||
max_duration: number,
|
||||
}
|
||||
|
||||
export { Trail };
|
||||
|
||||
export type { TrailFilter };
|
||||
export type { TrailFilter, TrailFilterValues };
|
||||
@@ -1,5 +1,5 @@
|
||||
import type { SummitLog } from "$lib/models/summit_log";
|
||||
import { Trail, type TrailFilter } from "$lib/models/trail";
|
||||
import { Trail, type TrailFilter, type TrailFilterValues } from "$lib/models/trail";
|
||||
import type { Waypoint } from "$lib/models/waypoint";
|
||||
import { pb } from "$lib/pocketbase";
|
||||
import { getFileURL } from "$lib/util/file_util";
|
||||
@@ -349,6 +349,18 @@ export async function trails_delete(trail: Trail) {
|
||||
}
|
||||
}
|
||||
|
||||
export async function trails_get_filter_values(f: (url: RequestInfo | URL, config?: RequestInit) => Promise<Response> = fetch): Promise<TrailFilterValues> {
|
||||
const r = await f('/api/v1/trail/filter', {
|
||||
method: 'GET',
|
||||
})
|
||||
|
||||
if (r.ok) {
|
||||
return await r.json();
|
||||
} else {
|
||||
throw new ClientResponseError(await r.json())
|
||||
}
|
||||
}
|
||||
|
||||
export async function fetchGPX(trail: Trail, f: (url: RequestInfo | URL, config?: RequestInit) => Promise<Response> = fetch) {
|
||||
if (!trail.gpx) {
|
||||
return "";
|
||||
|
||||
Reference in New Issue
Block a user