From 9014a5b52e9810eb71bc88b3645b0e716a8576ca Mon Sep 17 00:00:00 2001 From: crupest Date: Fri, 31 Jul 2020 23:13:03 +0800 Subject: Add http get timeline api query params. --- Timeline/ClientApp/src/app/utilities/url.ts | 13 ++++++++++++- 1 file changed, 12 insertions(+), 1 deletion(-) (limited to 'Timeline/ClientApp/src/app/utilities/url.ts') diff --git a/Timeline/ClientApp/src/app/utilities/url.ts b/Timeline/ClientApp/src/app/utilities/url.ts index 0b8623a2..90923fd2 100644 --- a/Timeline/ClientApp/src/app/utilities/url.ts +++ b/Timeline/ClientApp/src/app/utilities/url.ts @@ -34,8 +34,19 @@ export function updateQueryString( } export function applyQueryParameters(url: string, query: T): string { + if (query == null) return url; + for (const [key, value] of Object.entries(query)) { - url = updateQueryString(key, String(value), url); + if (typeof value === 'string') url = updateQueryString(key, value, url); + else if (typeof value === 'number') + url = updateQueryString(key, String(value), url); + else if (typeof value === 'boolean') + url = updateQueryString(key, value ? 'true' : 'false', url); + else if (value instanceof Date) + url = updateQueryString(key, value.toISOString(), url); + else { + console.error('Unknown query parameter type. Param: ', value); + } } return url; } -- cgit v1.2.3