]>
Commit | Line | Data |
---|---|---|
dd24f1bb C |
1 | import { environment } from '../../../environments/environment' |
2 | ||
dd24f1bb C |
3 | function getAbsoluteAPIUrl () { |
4 | let absoluteAPIUrl = environment.hmr === true | |
5 | ? 'http://localhost:9000' | |
6 | : environment.apiUrl | |
7 | ||
8 | if (!absoluteAPIUrl) { | |
9 | // The API is on the same domain | |
10 | absoluteAPIUrl = window.location.origin | |
11 | } | |
12 | ||
13 | return absoluteAPIUrl | |
14 | } | |
15 | ||
16 | function getAbsoluteEmbedUrl () { | |
17 | let absoluteEmbedUrl = environment.originServerUrl | |
18 | if (!absoluteEmbedUrl) { | |
19 | // The Embed is on the same domain | |
20 | absoluteEmbedUrl = window.location.origin | |
21 | } | |
22 | ||
23 | return absoluteEmbedUrl | |
24 | } | |
25 | ||
26 | // Thanks: https://gist.github.com/ghinda/8442a57f22099bdb2e34 | |
27 | function objectToFormData (obj: any, form?: FormData, namespace?: string) { | |
28 | const fd = form || new FormData() | |
29 | let formKey | |
30 | ||
31 | for (const key of Object.keys(obj)) { | |
32 | if (namespace) formKey = `${namespace}[${key}]` | |
33 | else formKey = key | |
34 | ||
35 | if (obj[key] === undefined) continue | |
36 | ||
37 | if (Array.isArray(obj[key]) && obj[key].length === 0) { | |
38 | fd.append(key, null) | |
39 | continue | |
40 | } | |
41 | ||
42 | if (obj[key] !== null && typeof obj[key] === 'object' && !(obj[key] instanceof File)) { | |
43 | objectToFormData(obj[key], fd, formKey) | |
44 | } else { | |
45 | fd.append(formKey, obj[key]) | |
46 | } | |
47 | } | |
48 | ||
49 | return fd | |
50 | } | |
51 | ||
52 | export { | |
dd24f1bb C |
53 | objectToFormData, |
54 | getAbsoluteAPIUrl, | |
55 | getAbsoluteEmbedUrl | |
56 | } |