Merge branch 'feat/inda-383-daily-stat' into 'main'
[ProtonMail-WebClient.git] / packages / shared / lib / fetch / helpers.ts
blobfa2cdf02e990467c9bef479cc5134b6e782ab1ca
1 const appendQueryParams = (url: URL, params: { [key: string]: any }) => {
2     Object.keys(params).forEach((key) => {
3         const value = params[key];
4         if (typeof value === 'undefined') {
5             return;
6         }
7         url.searchParams.append(key, value);
8     });
9 };
11 export const createUrl = (urlString: string, params: { [key: string]: any } = {}, origin?: string) => {
12     let url: URL;
13     if (origin) {
14         url = new URL(urlString, origin);
15     } else {
16         url = new URL(urlString);
17     }
18     appendQueryParams(url, params);
19     return url;
22 export const getDateHeader = (headers: Headers) => {
23     const dateHeader = headers?.get?.('date');
24     if (!dateHeader) {
25         return;
26     }
27     const newServerTime = new Date(dateHeader);
28     if (Number.isNaN(+newServerTime)) {
29         return;
30     }
31     return newServerTime;