diff options
author | fragosti <francesco.agosti93@gmail.com> | 2018-06-02 02:04:56 +0800 |
---|---|---|
committer | fragosti <francesco.agosti93@gmail.com> | 2018-06-02 02:04:56 +0800 |
commit | 3a7f26f6200bd3796a5207f62c0bdd18858db0e1 (patch) | |
tree | cbe7fc033e26e809659d7bb6ec30dbc1c75c0db7 /packages/website/ts/utils | |
parent | 484fd68495bf921c57a09b413d978b028f0c80e8 (diff) | |
download | dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.tar dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.tar.gz dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.tar.bz2 dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.tar.lz dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.tar.xz dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.tar.zst dexon-sol-tools-3a7f26f6200bd3796a5207f62c0bdd18858db0e1.zip |
Have basic newsletter subscribe form working
Diffstat (limited to 'packages/website/ts/utils')
-rw-r--r-- | packages/website/ts/utils/backend_client.ts | 8 | ||||
-rw-r--r-- | packages/website/ts/utils/fetch_utils.ts | 12 | ||||
-rw-r--r-- | packages/website/ts/utils/utils.ts | 3 |
3 files changed, 22 insertions, 1 deletions
diff --git a/packages/website/ts/utils/backend_client.ts b/packages/website/ts/utils/backend_client.ts index c440b1604..fb7c21c59 100644 --- a/packages/website/ts/utils/backend_client.ts +++ b/packages/website/ts/utils/backend_client.ts @@ -8,6 +8,7 @@ const ETH_GAS_STATION_ENDPOINT = '/eth_gas_station'; const PRICES_ENDPOINT = '/prices'; const RELAYERS_ENDPOINT = '/relayers'; const WIKI_ENDPOINT = '/wiki'; +const SUBSCRIBE_SUBSTACK_NEWSLETTER_ENDPOINT = '/newsletter_subscriber/substack'; export const backendClient = { async getGasInfoAsync(): Promise<WebsiteBackendGasInfo> { @@ -33,4 +34,11 @@ export const backendClient = { const result = await fetchUtils.requestAsync(utils.getBackendBaseUrl(), WIKI_ENDPOINT); return result; }, + async subscribeToNewsletterAsync(email: string): Promise<boolean> { + const result = await fetchUtils.postAsync(utils.getBackendBaseUrl(), SUBSCRIBE_SUBSTACK_NEWSLETTER_ENDPOINT, { + email, + referrer: window.location.href, + }); + return result.status === 200; + }, }; diff --git a/packages/website/ts/utils/fetch_utils.ts b/packages/website/ts/utils/fetch_utils.ts index d2e902db5..e65ac64e1 100644 --- a/packages/website/ts/utils/fetch_utils.ts +++ b/packages/website/ts/utils/fetch_utils.ts @@ -20,6 +20,18 @@ export const fetchUtils = { const result = await response.json(); return result; }, + + async postAsync(baseUrl: string, path: string, body: object): Promise<Response> { + const url = `${baseUrl}${path}`; + const response = await fetch(url, { + method: 'POST', + headers: { + 'Content-Type': 'application/json', + }, + body: JSON.stringify(body), + }); + return response; + }, }; function queryStringFromQueryParams(queryParams?: object): string { diff --git a/packages/website/ts/utils/utils.ts b/packages/website/ts/utils/utils.ts index b9d962b75..10381845b 100644 --- a/packages/website/ts/utils/utils.ts +++ b/packages/website/ts/utils/utils.ts @@ -306,7 +306,8 @@ export const utils = { return parsedProviderName; }, getBackendBaseUrl(): string { - return isDogfood() ? configs.BACKEND_BASE_STAGING_URL : configs.BACKEND_BASE_PROD_URL; + return 'http://localhost:3000'; + // return isDogfood() ? configs.BACKEND_BASE_STAGING_URL : configs.BACKEND_BASE_PROD_URL; }, isDevelopment(): boolean { return configs.ENVIRONMENT === Environments.DEVELOPMENT; |