aboutsummaryrefslogtreecommitdiff
path: root/src/services/ExploreService.ts
diff options
context:
space:
mode:
authorIvan Chen <ivan@tagg.id>2021-01-26 18:09:32 -0500
committerIvan Chen <ivan@tagg.id>2021-01-26 18:09:32 -0500
commit0570f1fa41bc9d41303ade2cf54592a4670cb87b (patch)
tree517894da8b93a8b9c7f06087380aa7b484c8f488 /src/services/ExploreService.ts
parent6cd49ed14f99fe953026e54969abc6232f3aec57 (diff)
renamed services to have consistent naming and added common service
Diffstat (limited to 'src/services/ExploreService.ts')
-rw-r--r--src/services/ExploreService.ts59
1 files changed, 59 insertions, 0 deletions
diff --git a/src/services/ExploreService.ts b/src/services/ExploreService.ts
new file mode 100644
index 00000000..980258be
--- /dev/null
+++ b/src/services/ExploreService.ts
@@ -0,0 +1,59 @@
+import AsyncStorage from '@react-native-community/async-storage';
+import {ALL_USERS_ENDPOINT, DISCOVER_ENDPOINT} from '../constants';
+import {EMPTY_EXPLORE_SECTIONS} from '../store/initialStates';
+import {ExploreSectionType, ProfilePreviewType} from '../types';
+
+export const getAllTaggUsers = async (token: string) => {
+ try {
+ const response = await fetch(ALL_USERS_ENDPOINT, {
+ method: 'GET',
+ headers: {
+ Authorization: 'Token ' + token,
+ },
+ });
+ const status = response.status;
+ if (status === 200) {
+ const response_data = await response.json();
+ return response_data;
+ } else {
+ console.log(
+ 'Something went wrong! 😭',
+ 'Not able to retrieve tagg users list',
+ );
+ }
+ } catch (error) {
+ console.log(
+ 'Something went wrong! 😭',
+ 'Not able to retrieve tagg users list',
+ error,
+ );
+ }
+};
+
+export const getAllExploreSections = async () => {
+ try {
+ const token = await AsyncStorage.getItem('token');
+ const response = await fetch(DISCOVER_ENDPOINT, {
+ method: 'GET',
+ headers: {
+ Authorization: 'Token ' + token,
+ },
+ });
+ if (response.status !== 200) {
+ return EMPTY_EXPLORE_SECTIONS;
+ }
+ const data = await response.json();
+ const exploreSections: Record<ExploreSectionType, ProfilePreviewType[]> = {
+ 'New to Tagg': data.categories.new_to_tagg,
+ 'People You May Know': data.categories.people_you_may_know,
+ 'Trending on Tagg': data.categories.trending_on_tagg,
+ "Brown '21": data.categories.brown_21,
+ "Brown '22": data.categories.brown_22,
+ "Brown '23": data.categories.brown_23,
+ };
+
+ return exploreSections;
+ } catch (error) {
+ console.log('Unable to fetch explore data');
+ }
+};