react-native-salespanda 0.4.4 → 0.5.3

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (45) hide show
  1. package/lib/module/SalespandaApp.js +16 -8
  2. package/lib/module/SalespandaApp.js.map +1 -1
  3. package/lib/module/assets/images/index.js +1 -22
  4. package/lib/module/assets/images/index.js.map +1 -1
  5. package/lib/module/components/Loader.js +45 -0
  6. package/lib/module/components/Loader.js.map +1 -0
  7. package/lib/module/config/SalespandaConfig.js +17 -0
  8. package/lib/module/config/SalespandaConfig.js.map +1 -1
  9. package/lib/module/index.js +1 -32
  10. package/lib/module/index.js.map +1 -1
  11. package/lib/module/navigation/BottomTabNavigator.js +1 -3
  12. package/lib/module/navigation/BottomTabNavigator.js.map +1 -1
  13. package/lib/module/screens/Tabs/HomeScreen.js +184 -104
  14. package/lib/module/screens/Tabs/HomeScreen.js.map +1 -1
  15. package/lib/module/services/api.js +132 -0
  16. package/lib/module/services/api.js.map +1 -0
  17. package/lib/module/services/authService.js +59 -0
  18. package/lib/module/services/authService.js.map +1 -0
  19. package/lib/module/store/index.js +13 -0
  20. package/lib/module/store/index.js.map +1 -0
  21. package/lib/typescript/src/SalespandaApp.d.ts.map +1 -1
  22. package/lib/typescript/src/components/Loader.d.ts +11 -0
  23. package/lib/typescript/src/components/Loader.d.ts.map +1 -0
  24. package/lib/typescript/src/config/SalespandaConfig.d.ts +14 -0
  25. package/lib/typescript/src/config/SalespandaConfig.d.ts.map +1 -1
  26. package/lib/typescript/src/index.d.ts +1 -12
  27. package/lib/typescript/src/index.d.ts.map +1 -1
  28. package/lib/typescript/src/screens/Tabs/HomeScreen.d.ts.map +1 -1
  29. package/lib/typescript/src/services/api.d.ts +638 -0
  30. package/lib/typescript/src/services/api.d.ts.map +1 -0
  31. package/lib/typescript/src/services/authService.d.ts +13 -0
  32. package/lib/typescript/src/services/authService.d.ts.map +1 -0
  33. package/lib/typescript/src/store/index.d.ts +36 -0
  34. package/lib/typescript/src/store/index.d.ts.map +1 -0
  35. package/package.json +8 -2
  36. package/react-native.config.js +8 -5
  37. package/src/SalespandaApp.tsx +18 -10
  38. package/src/components/Loader.tsx +48 -0
  39. package/src/config/SalespandaConfig.ts +37 -0
  40. package/src/index.tsx +8 -30
  41. package/src/navigation/BottomTabNavigator.tsx +1 -3
  42. package/src/screens/Tabs/HomeScreen.tsx +229 -73
  43. package/src/services/api.ts +173 -0
  44. package/src/services/authService.ts +75 -0
  45. package/src/store/index.ts +16 -0
@@ -2,33 +2,46 @@
2
2
 
3
3
  import React from 'react';
4
4
  import { View, Text, StyleSheet, TouchableOpacity, ScrollView, Image, FlatList, Dimensions } from 'react-native';
5
- import { scale, verticalScale, moderateScale } from 'react-native-size-matters';
6
- import { Colors } from "../../constants/Colors.js";
5
+ import { scale, verticalScale, moderateScale, moderateVerticalScale } from 'react-native-size-matters';
7
6
  import { SafeAreaView } from 'react-native-safe-area-context';
7
+ import Loader from "../../components/Loader.js";
8
8
  import TabsHeader from "../../components/TabsHeader.js";
9
- import { jsx as _jsx, jsxs as _jsxs } from "react/jsx-runtime";
9
+ import { Colors } from "../../constants/Colors.js";
10
+ import { useAuthenticateMutation, useLazyGetHomeQuery, useSpssoLoginMutation, loadPersistedTokens, persistTokens, setRuntimeTokens, clearPersistedTokens } from "../../services/api.js";
11
+ import { jsx as _jsx, jsxs as _jsxs, Fragment as _Fragment } from "react/jsx-runtime";
10
12
  const MenuItem = ({
11
- title,
12
- icon,
13
+ imageUrl,
13
14
  onPress
14
15
  }) => {
15
- return /*#__PURE__*/_jsxs(TouchableOpacity, {
16
+ return /*#__PURE__*/_jsx(TouchableOpacity, {
16
17
  style: styles.menuItem,
17
18
  onPress: onPress,
18
- children: [/*#__PURE__*/_jsx(View, {
19
- style: styles.iconContainer,
20
- children: /*#__PURE__*/_jsx(Text, {
21
- style: styles.iconText,
22
- children: icon
23
- })
24
- }), /*#__PURE__*/_jsx(Text, {
25
- style: styles.menuItemText,
26
- children: title
27
- })]
19
+ activeOpacity: 0.8,
20
+ children: imageUrl ? /*#__PURE__*/_jsx(Image, {
21
+ source: {
22
+ uri: imageUrl
23
+ },
24
+ style: styles.menuItemImage
25
+ }) : /*#__PURE__*/_jsx(Loader, {
26
+ message: ""
27
+ })
28
28
  });
29
29
  };
30
30
  const HomeScreen = () => {
31
- const images = ['https://images.unsplash.com/photo-1500530855697-b586d89ba3ee?q=80&w=1200&auto=format&fit=crop', 'https://images.unsplash.com/photo-1482192596544-9eb780fc7f66?q=80&w=1200&auto=format&fit=crop', 'https://images.unsplash.com/photo-1522071820081-009f0129c71c?q=80&w=1200&auto=format&fit=crop', 'https://images.unsplash.com/photo-1501785888041-af3ef285b470?q=80&w=1200&auto=format&fit=crop', 'https://images.unsplash.com/photo-1460353581641-37baddab0fa2?q=80&w=1200&auto=format&fit=crop', 'https://images.unsplash.com/photo-1496302662116-35cc4f36df92?q=80&w=1200&auto=format&fit=crop'];
31
+ const [loading, setLoading] = React.useState(false);
32
+ const [error, setError] = React.useState(null);
33
+ const [homeData, setHomeData] = React.useState(null);
34
+ const [authenticate] = useAuthenticateMutation();
35
+ const [spssoLogin] = useSpssoLoginMutation();
36
+ const [triggerHome, {
37
+ isFetching: isHomeFetching
38
+ }] = useLazyGetHomeQuery();
39
+ const bannerItems = React.useMemo(() => homeData?.home_banner && homeData.home_banner.length > 0 ? homeData.home_banner.map(item => ({
40
+ image: item.image,
41
+ title: item.title ?? undefined,
42
+ link: item.link ?? null
43
+ })) : [], [homeData?.home_banner]);
44
+ const menuItems = React.useMemo(() => homeData?.menu ?? [], [homeData?.menu]);
32
45
  const screenWidth = Dimensions.get('window').width;
33
46
  const [activeIndex, setActiveIndex] = React.useState(0);
34
47
  const flatListRef = React.useRef(null);
@@ -37,10 +50,75 @@ const HomeScreen = () => {
37
50
  const index = Math.round(offsetX / screenWidth);
38
51
  setActiveIndex(index);
39
52
  };
53
+ const loadHomeData = React.useCallback(async isRetry => {
54
+ try {
55
+ setLoading(true);
56
+ setError(null);
57
+ const storedTokens = await loadPersistedTokens();
58
+ let accessToken = storedTokens.accessToken;
59
+ let token = storedTokens.token;
60
+ if (!accessToken) {
61
+ const authResp = await authenticate({}).unwrap();
62
+ accessToken = authResp.access_token;
63
+ setRuntimeTokens({
64
+ accessToken
65
+ });
66
+ await persistTokens({
67
+ accessToken
68
+ });
69
+ }
70
+ if (!token && accessToken) {
71
+ const ssoResp = await spssoLogin({
72
+ access_token: accessToken
73
+ }).unwrap();
74
+ token = ssoResp.token;
75
+ setRuntimeTokens({
76
+ token
77
+ });
78
+ await persistTokens({
79
+ token
80
+ });
81
+ }
82
+ if (!token) {
83
+ throw new Error('Missing auth token, please try again.');
84
+ }
85
+ const tokenHeader = token ?? undefined;
86
+ const homeResp = await triggerHome({
87
+ tokenOverride: tokenHeader
88
+ }).unwrap();
89
+ const isSuccess = homeResp.statusCode === '200' && homeResp.status?.toLowerCase() === 'success';
90
+ if (!isSuccess) {
91
+ const code = homeResp.statusCode;
92
+ if (!isRetry && code && (code === '1008' || code === '401' || code === '403')) {
93
+ await clearPersistedTokens();
94
+ setRuntimeTokens({
95
+ token: null,
96
+ accessToken: null
97
+ });
98
+ await loadHomeData(true);
99
+ return;
100
+ }
101
+ throw new Error(homeResp?.message || 'Failed to load home data');
102
+ }
103
+ setHomeData(homeResp.response);
104
+ setLoading(false);
105
+ } catch (e) {
106
+ const statusCode = e?.status || e?.data?.statusCode;
107
+ if (statusCode === 401 || statusCode === 403) {
108
+ setError(null);
109
+ return;
110
+ }
111
+ setError(e?.data?.message || e?.message || 'Failed to load home data. Please try again.');
112
+ setLoading(false);
113
+ }
114
+ }, [authenticate, spssoLogin, triggerHome]);
115
+ React.useEffect(() => {
116
+ loadHomeData();
117
+ }, [loadHomeData]);
40
118
  React.useEffect(() => {
41
119
  const id = setInterval(() => {
42
120
  setActiveIndex(prev => {
43
- const next = (prev + 1) % images.length;
121
+ const next = bannerItems.length > 0 ? (prev + 1) % bannerItems.length : 0;
44
122
  if (flatListRef.current) {
45
123
  try {
46
124
  flatListRef.current.scrollToIndex({
@@ -54,8 +132,10 @@ const HomeScreen = () => {
54
132
  return next;
55
133
  });
56
134
  }, 2500);
57
- return () => clearInterval(id);
58
- }, [images.length]);
135
+ return () => {
136
+ clearInterval(id);
137
+ };
138
+ }, [bannerItems.length]);
59
139
  return /*#__PURE__*/_jsx(SafeAreaView, {
60
140
  style: styles.safeArea,
61
141
  edges: ['top', 'bottom'],
@@ -63,23 +143,30 @@ const HomeScreen = () => {
63
143
  style: styles.container,
64
144
  children: [/*#__PURE__*/_jsx(TabsHeader, {
65
145
  title: "Home"
66
- }), /*#__PURE__*/_jsxs(ScrollView, {
67
- style: styles.scrollView,
68
- children: [/*#__PURE__*/_jsxs(View, {
146
+ }), /*#__PURE__*/_jsxs(View, {
147
+ style: styles.contentWrapper,
148
+ children: [loading || isHomeFetching || !homeData ? /*#__PURE__*/_jsx(Loader, {
149
+ overlay: true,
150
+ message: "Loading home data..."
151
+ }) : null, /*#__PURE__*/_jsxs(View, {
69
152
  style: styles.carouselContainer,
70
153
  children: [/*#__PURE__*/_jsx(FlatList, {
71
154
  ref: flatListRef,
72
- data: images,
73
- keyExtractor: (_, idx) => `${idx}`,
155
+ data: bannerItems,
156
+ keyExtractor: (item, idx) => `${item.title || 'banner'}-${idx}`,
74
157
  renderItem: ({
75
158
  item
76
- }) => /*#__PURE__*/_jsx(Image, {
77
- source: {
78
- uri: item
79
- },
80
- style: [styles.carouselImage, {
81
- width: screenWidth
82
- }]
159
+ }) => /*#__PURE__*/_jsx(TouchableOpacity, {
160
+ activeOpacity: 0.9,
161
+ onPress: () => {},
162
+ children: /*#__PURE__*/_jsx(Image, {
163
+ source: {
164
+ uri: item.image
165
+ },
166
+ style: [styles.carouselImage, {
167
+ width: screenWidth
168
+ }]
169
+ })
83
170
  }),
84
171
  horizontal: true,
85
172
  pagingEnabled: true,
@@ -92,58 +179,31 @@ const HomeScreen = () => {
92
179
  })
93
180
  }), /*#__PURE__*/_jsx(View, {
94
181
  style: styles.carouselIndicatorsOverlay,
95
- children: images.map((_, idx) => /*#__PURE__*/_jsx(View, {
182
+ children: bannerItems.map((_, idx) => /*#__PURE__*/_jsx(View, {
96
183
  style: [styles.indicator, idx === activeIndex ? styles.activeIndicator : null]
97
184
  }, idx))
98
185
  })]
99
- }), /*#__PURE__*/_jsxs(View, {
100
- style: styles.menuGrid,
101
- children: [/*#__PURE__*/_jsx(MenuItem, {
102
- title: "Content Library",
103
- icon: "\uD83D\uDCDA"
104
- }), /*#__PURE__*/_jsx(MenuItem, {
105
- title: "DigiCard",
106
- icon: "\uFFFD"
107
- }), /*#__PURE__*/_jsx(MenuItem, {
108
- title: "Leads",
109
- icon: "\uD83C\uDFAF"
110
- }), /*#__PURE__*/_jsx(MenuItem, {
111
- title: "Email Campaign",
112
- icon: "\uD83D\uDCE7"
113
- }), /*#__PURE__*/_jsx(MenuItem, {
114
- title: "Cadence",
115
- icon: "\u23F0"
116
- }), /*#__PURE__*/_jsx(MenuItem, {
117
- title: "Social Setup",
118
- icon: "\uFFFD"
119
- }), /*#__PURE__*/_jsx(MenuItem, {
120
- title: "Quiz,Calculator & Referrals",
121
- icon: "\u2753"
122
- }), /*#__PURE__*/_jsx(MenuItem, {
123
- title: "My Profile",
124
- icon: "\uFFFD"
125
- }), /*#__PURE__*/_jsx(MenuItem, {
126
- title: "Microsite Setup",
127
- icon: "\u2699\uFE0F"
128
- }), /*#__PURE__*/_jsx(MenuItem, {
129
- title: "My Activity",
130
- icon: "\uD83D\uDCCA"
131
- }), /*#__PURE__*/_jsx(MenuItem, {
132
- title: "Internal Communication",
133
- icon: "\uD83D\uDCAC"
134
- }), /*#__PURE__*/_jsx(MenuItem, {
135
- title: "Help Videos",
136
- icon: "\uD83C\uDFA5"
137
- }), /*#__PURE__*/_jsx(MenuItem, {
138
- title: "Import Gmail",
139
- icon: "\uFFFD"
140
- }), /*#__PURE__*/_jsx(MenuItem, {
141
- title: "Proposal",
142
- icon: "\uD83D\uDCCB"
143
- }), /*#__PURE__*/_jsx(MenuItem, {
144
- title: "Courses",
145
- icon: "\uD83C\uDF93"
146
- })]
186
+ }), /*#__PURE__*/_jsxs(ScrollView, {
187
+ style: styles.scrollView,
188
+ contentContainerStyle: styles.scrollContent,
189
+ children: [error ? /*#__PURE__*/_jsxs(_Fragment, {
190
+ children: [/*#__PURE__*/_jsx(Text, {
191
+ style: styles.errorText,
192
+ children: error
193
+ }), /*#__PURE__*/_jsx(TouchableOpacity, {
194
+ onPress: () => loadHomeData(),
195
+ children: /*#__PURE__*/_jsx(Text, {
196
+ style: styles.retryText,
197
+ children: "Tap to retry"
198
+ })
199
+ })]
200
+ }) : null, menuItems.length > 0 ? /*#__PURE__*/_jsx(View, {
201
+ style: styles.menuGrid,
202
+ children: menuItems.map(item => /*#__PURE__*/_jsx(MenuItem, {
203
+ title: item.title,
204
+ imageUrl: item.image
205
+ }, item.title))
206
+ }) : null]
147
207
  })]
148
208
  })]
149
209
  })
@@ -163,21 +223,24 @@ const styles = StyleSheet.create({
163
223
  flex: 1,
164
224
  backgroundColor: Colors.white
165
225
  },
226
+ scrollContent: {
227
+ paddingBottom: verticalScale(24)
228
+ },
166
229
  carouselContainer: {
167
230
  width: '100%',
168
231
  backgroundColor: Colors.white,
169
- // subtle backplate for image load
170
232
  position: 'relative'
171
233
  },
172
234
  carouselImage: {
173
- height: verticalScale(200),
174
- resizeMode: 'cover'
235
+ height: verticalScale(155),
236
+ resizeMode: 'contain',
237
+ backgroundColor: Colors.white
175
238
  },
176
239
  carouselIndicatorsOverlay: {
177
240
  position: 'absolute',
178
241
  left: 0,
179
242
  right: 0,
180
- bottom: verticalScale(12),
243
+ bottom: verticalScale(20),
181
244
  flexDirection: 'row',
182
245
  justifyContent: 'center',
183
246
  alignItems: 'center'
@@ -196,33 +259,23 @@ const styles = StyleSheet.create({
196
259
  menuGrid: {
197
260
  flexDirection: 'row',
198
261
  flexWrap: 'wrap',
199
- padding: scale(8),
200
- justifyContent: 'space-between'
262
+ paddingTop: scale(8),
263
+ paddingBottom: verticalScale(16),
264
+ justifyContent: 'flex-start',
265
+ alignSelf: 'center',
266
+ width: '100%'
201
267
  },
202
268
  menuItem: {
203
- width: '31%',
269
+ width: '29.5%',
204
270
  aspectRatio: 1,
205
- backgroundColor: Colors.lightblue,
206
271
  borderRadius: moderateScale(16),
207
- padding: scale(12),
208
- marginBottom: verticalScale(12),
209
- alignItems: 'center',
210
- justifyContent: 'center',
211
- shadowColor: Colors.black,
212
- shadowOffset: {
213
- width: 0,
214
- height: 0
215
- },
216
- shadowOpacity: 0.1,
217
- shadowRadius: 0.5,
218
- borderWidth: 1,
219
- borderColor: Colors.border
272
+ marginBottom: moderateVerticalScale(8),
273
+ marginHorizontal: scale(6),
274
+ overflow: 'hidden'
220
275
  },
221
276
  iconContainer: {
222
277
  width: scale(50),
223
278
  height: scale(50),
224
- borderRadius: moderateScale(25),
225
- backgroundColor: Colors.divider,
226
279
  justifyContent: 'center',
227
280
  alignItems: 'center',
228
281
  marginBottom: verticalScale(8)
@@ -230,11 +283,38 @@ const styles = StyleSheet.create({
230
283
  iconText: {
231
284
  fontSize: moderateScale(24)
232
285
  },
286
+ menuItemImage: {
287
+ width: '100%',
288
+ height: '100%',
289
+ resizeMode: 'cover'
290
+ },
233
291
  menuItemText: {
234
292
  fontSize: moderateScale(11),
235
293
  textAlign: 'center',
236
294
  color: Colors.black,
237
295
  fontWeight: '500'
296
+ },
297
+ statusText: {
298
+ fontSize: moderateScale(12),
299
+ color: Colors.black,
300
+ paddingHorizontal: scale(12),
301
+ paddingTop: verticalScale(8)
302
+ },
303
+ errorText: {
304
+ fontSize: moderateScale(12),
305
+ color: 'red',
306
+ paddingHorizontal: scale(12),
307
+ paddingTop: verticalScale(4)
308
+ },
309
+ retryText: {
310
+ fontSize: moderateScale(12),
311
+ color: Colors.primary,
312
+ paddingHorizontal: scale(12),
313
+ paddingTop: verticalScale(6)
314
+ },
315
+ contentWrapper: {
316
+ flex: 1,
317
+ position: 'relative'
238
318
  }
239
319
  });
240
320
  //# sourceMappingURL=HomeScreen.js.map
@@ -1 +1 @@
1
- {"version":3,"names":["React","View","Text","StyleSheet","TouchableOpacity","ScrollView","Image","FlatList","Dimensions","scale","verticalScale","moderateScale","Colors","SafeAreaView","TabsHeader","jsx","_jsx","jsxs","_jsxs","MenuItem","title","icon","onPress","style","styles","menuItem","children","iconContainer","iconText","menuItemText","HomeScreen","images","screenWidth","get","width","activeIndex","setActiveIndex","useState","flatListRef","useRef","handleMomentumScrollEnd","e","offsetX","nativeEvent","contentOffset","x","index","Math","round","useEffect","id","setInterval","prev","next","length","current","scrollToIndex","animated","clearInterval","safeArea","edges","container","scrollView","carouselContainer","ref","data","keyExtractor","_","idx","renderItem","item","source","uri","carouselImage","horizontal","pagingEnabled","showsHorizontalScrollIndicator","onMomentumScrollEnd","getItemLayout","offset","carouselIndicatorsOverlay","map","indicator","activeIndicator","menuGrid","create","flex","backgroundColor","white","position","height","resizeMode","left","right","bottom","flexDirection","justifyContent","alignItems","borderRadius","divider","marginHorizontal","flexWrap","padding","aspectRatio","lightblue","marginBottom","shadowColor","black","shadowOffset","shadowOpacity","shadowRadius","borderWidth","borderColor","border","fontSize","textAlign","color","fontWeight"],"sourceRoot":"../../../../src","sources":["screens/Tabs/HomeScreen.tsx"],"mappings":"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","ignoreList":[]}
1
+ {"version":3,"names":["React","View","Text","StyleSheet","TouchableOpacity","ScrollView","Image","FlatList","Dimensions","scale","verticalScale","moderateScale","moderateVerticalScale","SafeAreaView","Loader","TabsHeader","Colors","useAuthenticateMutation","useLazyGetHomeQuery","useSpssoLoginMutation","loadPersistedTokens","persistTokens","setRuntimeTokens","clearPersistedTokens","jsx","_jsx","jsxs","_jsxs","Fragment","_Fragment","MenuItem","imageUrl","onPress","style","styles","menuItem","activeOpacity","children","source","uri","menuItemImage","message","HomeScreen","loading","setLoading","useState","error","setError","homeData","setHomeData","authenticate","spssoLogin","triggerHome","isFetching","isHomeFetching","bannerItems","useMemo","home_banner","length","map","item","image","title","undefined","link","menuItems","menu","screenWidth","get","width","activeIndex","setActiveIndex","flatListRef","useRef","handleMomentumScrollEnd","e","offsetX","nativeEvent","contentOffset","x","index","Math","round","loadHomeData","useCallback","isRetry","storedTokens","accessToken","token","authResp","unwrap","access_token","ssoResp","Error","tokenHeader","homeResp","tokenOverride","isSuccess","statusCode","status","toLowerCase","code","response","data","useEffect","id","setInterval","prev","next","current","scrollToIndex","animated","clearInterval","safeArea","edges","container","contentWrapper","overlay","carouselContainer","ref","keyExtractor","idx","renderItem","carouselImage","horizontal","pagingEnabled","showsHorizontalScrollIndicator","onMomentumScrollEnd","getItemLayout","_","offset","carouselIndicatorsOverlay","indicator","activeIndicator","scrollView","contentContainerStyle","scrollContent","errorText","retryText","menuGrid","create","flex","backgroundColor","white","paddingBottom","position","height","resizeMode","left","right","bottom","flexDirection","justifyContent","alignItems","borderRadius","divider","marginHorizontal","flexWrap","paddingTop","alignSelf","aspectRatio","marginBottom","overflow","iconContainer","iconText","fontSize","menuItemText","textAlign","color","black","fontWeight","statusText","paddingHorizontal","primary"],"sourceRoot":"../../../../src","sources":["screens/Tabs/HomeScreen.tsx"],"mappings":"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","ignoreList":[]}
@@ -0,0 +1,132 @@
1
+ "use strict";
2
+
3
+ import AsyncStorage from '@react-native-async-storage/async-storage';
4
+ import { createApi, fetchBaseQuery } from '@reduxjs/toolkit/query/react';
5
+ const BASE_URL = 'https://app.sptestmfp.com/';
6
+ const DEFAULT_CLIENT_ID = 'vPUz1fFucjlNAV8rujFg7AfGbS3Ay/4=';
7
+ const DEFAULT_AGENT_ID = '3pYw3fp0iTwOge6wjf4i+Fm7QBbx';
8
+ const TOKENS_KEY = '@salespanda/sdk/tokens';
9
+ let runtimeTokens = {
10
+ token: null,
11
+ accessToken: null
12
+ };
13
+ export const setRuntimeTokens = tokens => {
14
+ runtimeTokens = {
15
+ ...runtimeTokens,
16
+ ...tokens
17
+ };
18
+ };
19
+ export const getRuntimeTokens = () => runtimeTokens;
20
+ export const loadPersistedTokens = async () => {
21
+ try {
22
+ const stored = await AsyncStorage.getItem(TOKENS_KEY);
23
+ if (stored) {
24
+ const parsed = JSON.parse(stored);
25
+ runtimeTokens = {
26
+ token: parsed.token || null,
27
+ accessToken: parsed.accessToken || null
28
+ };
29
+ return runtimeTokens;
30
+ }
31
+ } catch {
32
+ // ignore storage failures
33
+ }
34
+ return {
35
+ token: null,
36
+ accessToken: null
37
+ };
38
+ };
39
+ export const persistTokens = async tokens => {
40
+ const next = {
41
+ ...runtimeTokens,
42
+ ...tokens
43
+ };
44
+ runtimeTokens = next;
45
+ try {
46
+ await AsyncStorage.setItem(TOKENS_KEY, JSON.stringify(next));
47
+ } catch {
48
+ // ignore storage failures
49
+ }
50
+ };
51
+ export const clearPersistedTokens = async () => {
52
+ runtimeTokens = {
53
+ token: null,
54
+ accessToken: null
55
+ };
56
+ try {
57
+ await AsyncStorage.removeItem(TOKENS_KEY);
58
+ } catch {
59
+ // ignore storage failures
60
+ }
61
+ };
62
+ const baseQuery = fetchBaseQuery({
63
+ baseUrl: BASE_URL,
64
+ prepareHeaders: headers => {
65
+ if (runtimeTokens.token) {
66
+ headers.set('Token', runtimeTokens.token);
67
+ }
68
+ return headers;
69
+ }
70
+ });
71
+ export const salespandaApi = createApi({
72
+ reducerPath: 'salespandaApi',
73
+ baseQuery,
74
+ endpoints: builder => ({
75
+ authenticate: builder.mutation({
76
+ query: ({
77
+ agent_id = DEFAULT_AGENT_ID,
78
+ clientId
79
+ }) => ({
80
+ url: 'framework/api/authenticate',
81
+ method: 'POST',
82
+ headers: {
83
+ 'Content-Type': 'application/json',
84
+ 'Client-Id': clientId || DEFAULT_CLIENT_ID
85
+ },
86
+ body: {
87
+ agent_id
88
+ }
89
+ })
90
+ }),
91
+ spssoLogin: builder.mutation({
92
+ query: ({
93
+ access_token,
94
+ app_version = '1.0'
95
+ }) => ({
96
+ url: 'framework/api/spssologin',
97
+ method: 'POST',
98
+ headers: {
99
+ 'Content-Type': 'application/json'
100
+ },
101
+ body: {
102
+ app_version,
103
+ access_token
104
+ }
105
+ })
106
+ }),
107
+ getHome: builder.query({
108
+ query: ({
109
+ app_version = '5.0.1',
110
+ tokenOverride
111
+ } = {}) => ({
112
+ url: 'manager/apis/V2/app-home-screen.php',
113
+ method: 'POST',
114
+ headers: tokenOverride ? {
115
+ 'Token': tokenOverride,
116
+ 'Content-Type': 'application/json'
117
+ } : {
118
+ 'Content-Type': 'application/json'
119
+ },
120
+ body: {
121
+ app_version
122
+ }
123
+ })
124
+ })
125
+ })
126
+ });
127
+ export const {
128
+ useAuthenticateMutation,
129
+ useSpssoLoginMutation,
130
+ useLazyGetHomeQuery
131
+ } = salespandaApi;
132
+ //# sourceMappingURL=api.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AsyncStorage","createApi","fetchBaseQuery","BASE_URL","DEFAULT_CLIENT_ID","DEFAULT_AGENT_ID","TOKENS_KEY","runtimeTokens","token","accessToken","setRuntimeTokens","tokens","getRuntimeTokens","loadPersistedTokens","stored","getItem","parsed","JSON","parse","persistTokens","next","setItem","stringify","clearPersistedTokens","removeItem","baseQuery","baseUrl","prepareHeaders","headers","set","salespandaApi","reducerPath","endpoints","builder","authenticate","mutation","query","agent_id","clientId","url","method","body","spssoLogin","access_token","app_version","getHome","tokenOverride","useAuthenticateMutation","useSpssoLoginMutation","useLazyGetHomeQuery"],"sourceRoot":"../../../src","sources":["services/api.ts"],"mappings":";;AAAA,OAAOA,YAAY,MAAM,2CAA2C;AACpE,SAASC,SAAS,EAAEC,cAAc,QAAQ,8BAA8B;AAExE,MAAMC,QAAQ,GAAG,4BAA4B;AAC7C,MAAMC,iBAAiB,GAAG,kCAAkC;AAC5D,MAAMC,gBAAgB,GAAG,8BAA8B;AACvD,MAAMC,UAAU,GAAG,wBAAwB;AAqD3C,IAAIC,aAA4B,GAAG;EACjCC,KAAK,EAAE,IAAI;EACXC,WAAW,EAAE;AACf,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAIC,MAA8B,IAAK;EAClEJ,aAAa,GAAG;IAAE,GAAGA,aAAa;IAAE,GAAGI;EAAO,CAAC;AACjD,CAAC;AAED,OAAO,MAAMC,gBAAgB,GAAGA,CAAA,KAAqBL,aAAa;AAElE,OAAO,MAAMM,mBAAmB,GAAG,MAAAA,CAAA,KAAoC;EACrE,IAAI;IACF,MAAMC,MAAM,GAAG,MAAMd,YAAY,CAACe,OAAO,CAACT,UAAU,CAAC;IACrD,IAAIQ,MAAM,EAAE;MACV,MAAME,MAAM,GAAGC,IAAI,CAACC,KAAK,CAACJ,MAAM,CAAkB;MAClDP,aAAa,GAAG;QACdC,KAAK,EAAEQ,MAAM,CAACR,KAAK,IAAI,IAAI;QAC3BC,WAAW,EAAEO,MAAM,CAACP,WAAW,IAAI;MACrC,CAAC;MACD,OAAOF,aAAa;IACtB;EACF,CAAC,CAAC,MAAM;IACN;EAAA;EAEF,OAAO;IAAEC,KAAK,EAAE,IAAI;IAAEC,WAAW,EAAE;EAAK,CAAC;AAC3C,CAAC;AAED,OAAO,MAAMU,aAAa,GAAG,MAAOR,MAA8B,IAAK;EACrE,MAAMS,IAAI,GAAG;IAAE,GAAGb,aAAa;IAAE,GAAGI;EAAO,CAAC;EAC5CJ,aAAa,GAAGa,IAAI;EACpB,IAAI;IACF,MAAMpB,YAAY,CAACqB,OAAO,CAACf,UAAU,EAAEW,IAAI,CAACK,SAAS,CAACF,IAAI,CAAC,CAAC;EAC9D,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ,CAAC;AAED,OAAO,MAAMG,oBAAoB,GAAG,MAAAA,CAAA,KAAY;EAC9ChB,aAAa,GAAG;IAAEC,KAAK,EAAE,IAAI;IAAEC,WAAW,EAAE;EAAK,CAAC;EAClD,IAAI;IACF,MAAMT,YAAY,CAACwB,UAAU,CAAClB,UAAU,CAAC;EAC3C,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ,CAAC;AAED,MAAMmB,SAAS,GAAGvB,cAAc,CAAC;EAC/BwB,OAAO,EAAEvB,QAAQ;EACjBwB,cAAc,EAAGC,OAAO,IAAK;IAC3B,IAAIrB,aAAa,CAACC,KAAK,EAAE;MACvBoB,OAAO,CAACC,GAAG,CAAC,OAAO,EAAEtB,aAAa,CAACC,KAAK,CAAC;IAC3C;IACA,OAAOoB,OAAO;EAChB;AACF,CAAC,CAAC;AAEF,OAAO,MAAME,aAAa,GAAG7B,SAAS,CAAC;EACrC8B,WAAW,EAAE,eAAe;EAC5BN,SAAS;EACTO,SAAS,EAAGC,OAAO,KAAM;IACvBC,YAAY,EAAED,OAAO,CAACE,QAAQ,CAG5B;MACAC,KAAK,EAAEA,CAAC;QAAEC,QAAQ,GAAGhC,gBAAgB;QAAEiC;MAAS,CAAC,MAAM;QACrDC,GAAG,EAAE,4BAA4B;QACjCC,MAAM,EAAE,MAAM;QACdZ,OAAO,EAAE;UACP,cAAc,EAAE,kBAAkB;UAClC,WAAW,EAAEU,QAAQ,IAAIlC;QAC3B,CAAC;QACDqC,IAAI,EAAE;UAAEJ;QAAS;MACnB,CAAC;IACH,CAAC,CAAC;IACFK,UAAU,EAAET,OAAO,CAACE,QAAQ,CAG1B;MACAC,KAAK,EAAEA,CAAC;QAAEO,YAAY;QAAEC,WAAW,GAAG;MAAM,CAAC,MAAM;QACjDL,GAAG,EAAE,0BAA0B;QAC/BC,MAAM,EAAE,MAAM;QACdZ,OAAO,EAAE;UACP,cAAc,EAAE;QAClB,CAAC;QACDa,IAAI,EAAE;UAAEG,WAAW;UAAED;QAAa;MACpC,CAAC;IACH,CAAC,CAAC;IACFE,OAAO,EAAEZ,OAAO,CAACG,KAAK,CAGpB;MACAA,KAAK,EAAEA,CAAC;QAAEQ,WAAW,GAAG,OAAO;QAAEE;MAAc,CAAC,GAAG,CAAC,CAAC,MAAM;QACzDP,GAAG,EAAE,qCAAqC;QAC1CC,MAAM,EAAE,MAAM;QACdZ,OAAO,EAAEkB,aAAa,GAClB;UACE,OAAO,EAAEA,aAAa;UACtB,cAAc,EAAE;QAClB,CAAC,GACD;UACE,cAAc,EAAE;QAClB,CAAC;QACLL,IAAI,EAAE;UAAEG;QAAY;MACtB,CAAC;IACH,CAAC;EACH,CAAC;AACH,CAAC,CAAC;AAEF,OAAO,MAAM;EACXG,uBAAuB;EACvBC,qBAAqB;EACrBC;AACF,CAAC,GAAGnB,aAAa","ignoreList":[]}
@@ -0,0 +1,59 @@
1
+ "use strict";
2
+
3
+ import AsyncStorage from '@react-native-async-storage/async-storage';
4
+ import { clearPersistedTokens, getRuntimeTokens, setRuntimeTokens } from "./api.js";
5
+ const USER_KEY = '@salespanda/sdk/user';
6
+ let runtimeUser = null;
7
+ export const login = async (user, token, accessToken) => {
8
+ if (token) {
9
+ setRuntimeTokens({
10
+ token
11
+ });
12
+ }
13
+ if (accessToken) {
14
+ setRuntimeTokens({
15
+ accessToken
16
+ });
17
+ }
18
+ if (user) {
19
+ runtimeUser = user;
20
+ try {
21
+ await AsyncStorage.setItem(USER_KEY, JSON.stringify(user));
22
+ } catch {
23
+ // ignore storage failures
24
+ }
25
+ }
26
+ };
27
+ export const logout = async () => {
28
+ runtimeUser = null;
29
+ await clearPersistedTokens();
30
+ try {
31
+ await AsyncStorage.removeItem(USER_KEY);
32
+ } catch {
33
+ // ignore storage failures
34
+ }
35
+ };
36
+ export const isAuthenticated = () => {
37
+ const tokens = getRuntimeTokens();
38
+ return Boolean(tokens.token || tokens.accessToken);
39
+ };
40
+ export const getCurrentUser = async () => {
41
+ if (runtimeUser) {
42
+ return runtimeUser;
43
+ }
44
+ try {
45
+ const stored = await AsyncStorage.getItem(USER_KEY);
46
+ if (stored) {
47
+ runtimeUser = JSON.parse(stored);
48
+ return runtimeUser;
49
+ }
50
+ } catch {
51
+ // ignore storage failures
52
+ }
53
+ return null;
54
+ };
55
+ export const getCurrentToken = () => {
56
+ const tokens = getRuntimeTokens();
57
+ return tokens.token || tokens.accessToken;
58
+ };
59
+ //# sourceMappingURL=authService.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["AsyncStorage","clearPersistedTokens","getRuntimeTokens","setRuntimeTokens","USER_KEY","runtimeUser","login","user","token","accessToken","setItem","JSON","stringify","logout","removeItem","isAuthenticated","tokens","Boolean","getCurrentUser","stored","getItem","parse","getCurrentToken"],"sourceRoot":"../../../src","sources":["services/authService.ts"],"mappings":";;AAAA,OAAOA,YAAY,MAAM,2CAA2C;AACpE,SACEC,oBAAoB,EACpBC,gBAAgB,EAChBC,gBAAgB,QACX,UAAO;AAEd,MAAMC,QAAQ,GAAG,sBAAsB;AAUvC,IAAIC,WAA4B,GAAG,IAAI;AAEvC,OAAO,MAAMC,KAAK,GAAG,MAAAA,CACnBC,IAAe,EACfC,KAAc,EACdC,WAAoB,KACjB;EACH,IAAID,KAAK,EAAE;IACTL,gBAAgB,CAAC;MAAEK;IAAM,CAAC,CAAC;EAC7B;EACA,IAAIC,WAAW,EAAE;IACfN,gBAAgB,CAAC;MAAEM;IAAY,CAAC,CAAC;EACnC;EACA,IAAIF,IAAI,EAAE;IACRF,WAAW,GAAGE,IAAI;IAClB,IAAI;MACF,MAAMP,YAAY,CAACU,OAAO,CAACN,QAAQ,EAAEO,IAAI,CAACC,SAAS,CAACL,IAAI,CAAC,CAAC;IAC5D,CAAC,CAAC,MAAM;MACN;IAAA;EAEJ;AACF,CAAC;AAED,OAAO,MAAMM,MAAM,GAAG,MAAAA,CAAA,KAAY;EAChCR,WAAW,GAAG,IAAI;EAClB,MAAMJ,oBAAoB,CAAC,CAAC;EAC5B,IAAI;IACF,MAAMD,YAAY,CAACc,UAAU,CAACV,QAAQ,CAAC;EACzC,CAAC,CAAC,MAAM;IACN;EAAA;AAEJ,CAAC;AAED,OAAO,MAAMW,eAAe,GAAGA,CAAA,KAAe;EAC5C,MAAMC,MAAM,GAAGd,gBAAgB,CAAC,CAAC;EACjC,OAAOe,OAAO,CAACD,MAAM,CAACR,KAAK,IAAIQ,MAAM,CAACP,WAAW,CAAC;AACpD,CAAC;AAED,OAAO,MAAMS,cAAc,GAAG,MAAAA,CAAA,KAAsC;EAClE,IAAIb,WAAW,EAAE;IACf,OAAOA,WAAW;EACpB;EACA,IAAI;IACF,MAAMc,MAAM,GAAG,MAAMnB,YAAY,CAACoB,OAAO,CAAChB,QAAQ,CAAC;IACnD,IAAIe,MAAM,EAAE;MACVd,WAAW,GAAGM,IAAI,CAACU,KAAK,CAACF,MAAM,CAAa;MAC5C,OAAOd,WAAW;IACpB;EACF,CAAC,CAAC,MAAM;IACN;EAAA;EAEF,OAAO,IAAI;AACb,CAAC;AAED,OAAO,MAAMiB,eAAe,GAAGA,CAAA,KAAqB;EAClD,MAAMN,MAAM,GAAGd,gBAAgB,CAAC,CAAC;EACjC,OAAOc,MAAM,CAACR,KAAK,IAAIQ,MAAM,CAACP,WAAW;AAC3C,CAAC","ignoreList":[]}
@@ -0,0 +1,13 @@
1
+ "use strict";
2
+
3
+ import { configureStore } from '@reduxjs/toolkit';
4
+ import { setupListeners } from '@reduxjs/toolkit/query';
5
+ import { salespandaApi } from "../services/api.js";
6
+ export const store = configureStore({
7
+ reducer: {
8
+ [salespandaApi.reducerPath]: salespandaApi.reducer
9
+ },
10
+ middleware: getDefaultMiddleware => getDefaultMiddleware().concat(salespandaApi.middleware)
11
+ });
12
+ setupListeners(store.dispatch);
13
+ //# sourceMappingURL=index.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"names":["configureStore","setupListeners","salespandaApi","store","reducer","reducerPath","middleware","getDefaultMiddleware","concat","dispatch"],"sourceRoot":"../../../src","sources":["store/index.ts"],"mappings":";;AAAA,SAASA,cAAc,QAAQ,kBAAkB;AACjD,SAASC,cAAc,QAAQ,wBAAwB;AACvD,SAASC,aAAa,QAAQ,oBAAiB;AAE/C,OAAO,MAAMC,KAAK,GAAGH,cAAc,CAAC;EAClCI,OAAO,EAAE;IACP,CAACF,aAAa,CAACG,WAAW,GAAGH,aAAa,CAACE;EAC7C,CAAC;EACDE,UAAU,EAAGC,oBAAoB,IAC/BA,oBAAoB,CAAC,CAAC,CAACC,MAAM,CAACN,aAAa,CAACI,UAAU;AAC1D,CAAC,CAAC;AAEFL,cAAc,CAACE,KAAK,CAACM,QAAQ,CAAC","ignoreList":[]}