2021-11-12 02:52:10 +01:00
|
|
|
export function query(obj: Record<string, unknown>): string {
|
2021-09-30 17:31:43 +02:00
|
|
|
const params = Object.entries(obj)
|
2023-01-13 05:40:33 +01:00
|
|
|
.filter(([, v]) => (Array.isArray(v) ? v.length : v !== undefined))
|
|
|
|
.reduce((a, [k, v]) => ((a[k] = v), a), {} as Record<string, any>);
|
2021-09-30 17:31:43 +02:00
|
|
|
|
|
|
|
return Object.entries(params)
|
2021-09-30 19:25:57 +02:00
|
|
|
.map((e) => `${e[0]}=${encodeURIComponent(e[1])}`)
|
2023-01-13 05:40:33 +01:00
|
|
|
.join("&");
|
2019-02-13 15:45:35 +01:00
|
|
|
}
|
2019-03-18 05:20:49 +01:00
|
|
|
|
|
|
|
export function appendQuery(url: string, query: string): string {
|
2023-01-13 05:40:33 +01:00
|
|
|
return `${url}${
|
|
|
|
/\?/.test(url) ? (url.endsWith("?") ? "" : "&") : "?"
|
|
|
|
}${query}`;
|
2019-03-18 05:20:49 +01:00
|
|
|
}
|