@savers_app/react-native-sdk 1.1.0
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.
- package/LICENSE +20 -0
- package/README.md +508 -0
- package/lib/module/@types/@react-native-async-storage__async-storage.d.js +2 -0
- package/lib/module/@types/@react-native-async-storage__async-storage.d.js.map +1 -0
- package/lib/module/@types/@react-native-community__geolocation.d.js +2 -0
- package/lib/module/@types/@react-native-community__geolocation.d.js.map +1 -0
- package/lib/module/@types/react-native-aes-gcm-crypto.d.js +2 -0
- package/lib/module/@types/react-native-aes-gcm-crypto.d.js.map +1 -0
- package/lib/module/@types/react-native-device-info.d.js +2 -0
- package/lib/module/@types/react-native-device-info.d.js.map +1 -0
- package/lib/module/core/runtime.js +67 -0
- package/lib/module/core/runtime.js.map +1 -0
- package/lib/module/data/models/apiResponse.js +19 -0
- package/lib/module/data/models/apiResponse.js.map +1 -0
- package/lib/module/data/models/onboardingModel.js +67 -0
- package/lib/module/data/models/onboardingModel.js.map +1 -0
- package/lib/module/data/network/apiClient.js +109 -0
- package/lib/module/data/network/apiClient.js.map +1 -0
- package/lib/module/data/network/apiEndpoints.js +6 -0
- package/lib/module/data/network/apiEndpoints.js.map +1 -0
- package/lib/module/data/network/apiExceptionHandler.js +16 -0
- package/lib/module/data/network/apiExceptionHandler.js.map +1 -0
- package/lib/module/data/network/apiRepository.js +70 -0
- package/lib/module/data/network/apiRepository.js.map +1 -0
- package/lib/module/data/network/apiService.js +66 -0
- package/lib/module/data/network/apiService.js.map +1 -0
- package/lib/module/data/network/dataTypeUtils.js +77 -0
- package/lib/module/data/network/dataTypeUtils.js.map +1 -0
- package/lib/module/data/network/interceptors/authInterceptor.js +69 -0
- package/lib/module/data/network/interceptors/authInterceptor.js.map +1 -0
- package/lib/module/data/network/interceptors/errorInterceptor.js +15 -0
- package/lib/module/data/network/interceptors/errorInterceptor.js.map +1 -0
- package/lib/module/data/network/interceptors/loggingInterceptor.js +17 -0
- package/lib/module/data/network/interceptors/loggingInterceptor.js.map +1 -0
- package/lib/module/data/network/interceptors/networkInterceptor.js +22 -0
- package/lib/module/data/network/interceptors/networkInterceptor.js.map +1 -0
- package/lib/module/data/network/interceptors/retryInterceptor.js +22 -0
- package/lib/module/data/network/interceptors/retryInterceptor.js.map +1 -0
- package/lib/module/data/storage/asyncStorageManager.js +50 -0
- package/lib/module/data/storage/asyncStorageManager.js.map +1 -0
- package/lib/module/data/storage/deviceIdManager.js +45 -0
- package/lib/module/data/storage/deviceIdManager.js.map +1 -0
- package/lib/module/data/storage/keysManager.js +70 -0
- package/lib/module/data/storage/keysManager.js.map +1 -0
- package/lib/module/data/storage/locationManager.js +30 -0
- package/lib/module/data/storage/locationManager.js.map +1 -0
- package/lib/module/data/storage/sessionManager.js +12 -0
- package/lib/module/data/storage/sessionManager.js.map +1 -0
- package/lib/module/data/storage/storageKeys.js +7 -0
- package/lib/module/data/storage/storageKeys.js.map +1 -0
- package/lib/module/data/storage/storageManager.js +76 -0
- package/lib/module/data/storage/storageManager.js.map +1 -0
- package/lib/module/index.js +20 -0
- package/lib/module/index.js.map +1 -0
- package/lib/module/package.json +1 -0
- package/lib/module/services/device/location.js +47 -0
- package/lib/module/services/device/location.js.map +1 -0
- package/lib/module/services/navigation/dialPad.js +29 -0
- package/lib/module/services/navigation/dialPad.js.map +1 -0
- package/lib/module/services/navigation/goBackNavigation.js +22 -0
- package/lib/module/services/navigation/goBackNavigation.js.map +1 -0
- package/lib/module/services/navigation/openBrowser.js +8 -0
- package/lib/module/services/navigation/openBrowser.js.map +1 -0
- package/lib/module/services/navigation/openMap.js +26 -0
- package/lib/module/services/navigation/openMap.js.map +1 -0
- package/lib/module/services/permissions/permissionManager.js +28 -0
- package/lib/module/services/permissions/permissionManager.js.map +1 -0
- package/lib/module/services/url/urlGenerator.js +90 -0
- package/lib/module/services/url/urlGenerator.js.map +1 -0
- package/lib/module/services/webview/messageHandler.js +69 -0
- package/lib/module/services/webview/messageHandler.js.map +1 -0
- package/lib/module/utils/dependencyManager.js +51 -0
- package/lib/module/utils/dependencyManager.js.map +1 -0
- package/lib/module/utils/encryption.js +43 -0
- package/lib/module/utils/encryption.js.map +1 -0
- package/lib/module/utils/errors.js +9 -0
- package/lib/module/utils/errors.js.map +1 -0
- package/lib/module/utils/logger.js +14 -0
- package/lib/module/utils/logger.js.map +1 -0
- package/lib/module/utils/platformManager.js +14 -0
- package/lib/module/utils/platformManager.js.map +1 -0
- package/lib/module/utils/validator.js +26 -0
- package/lib/module/utils/validator.js.map +1 -0
- package/lib/typescript/package.json +1 -0
- package/lib/typescript/src/core/runtime.d.ts +10 -0
- package/lib/typescript/src/core/runtime.d.ts.map +1 -0
- package/lib/typescript/src/data/models/apiResponse.d.ts +9 -0
- package/lib/typescript/src/data/models/apiResponse.d.ts.map +1 -0
- package/lib/typescript/src/data/models/onboardingModel.d.ts +24 -0
- package/lib/typescript/src/data/models/onboardingModel.d.ts.map +1 -0
- package/lib/typescript/src/data/network/apiClient.d.ts +17 -0
- package/lib/typescript/src/data/network/apiClient.d.ts.map +1 -0
- package/lib/typescript/src/data/network/apiEndpoints.d.ts +4 -0
- package/lib/typescript/src/data/network/apiEndpoints.d.ts.map +1 -0
- package/lib/typescript/src/data/network/apiExceptionHandler.d.ts +3 -0
- package/lib/typescript/src/data/network/apiExceptionHandler.d.ts.map +1 -0
- package/lib/typescript/src/data/network/apiRepository.d.ts +19 -0
- package/lib/typescript/src/data/network/apiRepository.d.ts.map +1 -0
- package/lib/typescript/src/data/network/apiService.d.ts +19 -0
- package/lib/typescript/src/data/network/apiService.d.ts.map +1 -0
- package/lib/typescript/src/data/network/dataTypeUtils.d.ts +10 -0
- package/lib/typescript/src/data/network/dataTypeUtils.d.ts.map +1 -0
- package/lib/typescript/src/data/network/interceptors/authInterceptor.d.ts +13 -0
- package/lib/typescript/src/data/network/interceptors/authInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/data/network/interceptors/errorInterceptor.d.ts +4 -0
- package/lib/typescript/src/data/network/interceptors/errorInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/data/network/interceptors/loggingInterceptor.d.ts +5 -0
- package/lib/typescript/src/data/network/interceptors/loggingInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/data/network/interceptors/networkInterceptor.d.ts +4 -0
- package/lib/typescript/src/data/network/interceptors/networkInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/data/network/interceptors/retryInterceptor.d.ts +7 -0
- package/lib/typescript/src/data/network/interceptors/retryInterceptor.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/asyncStorageManager.d.ts +13 -0
- package/lib/typescript/src/data/storage/asyncStorageManager.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/deviceIdManager.d.ts +2 -0
- package/lib/typescript/src/data/storage/deviceIdManager.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/keysManager.d.ts +29 -0
- package/lib/typescript/src/data/storage/keysManager.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/locationManager.d.ts +21 -0
- package/lib/typescript/src/data/storage/locationManager.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/sessionManager.d.ts +3 -0
- package/lib/typescript/src/data/storage/sessionManager.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/storageKeys.d.ts +5 -0
- package/lib/typescript/src/data/storage/storageKeys.d.ts.map +1 -0
- package/lib/typescript/src/data/storage/storageManager.d.ts +16 -0
- package/lib/typescript/src/data/storage/storageManager.d.ts.map +1 -0
- package/lib/typescript/src/index.d.ts +18 -0
- package/lib/typescript/src/index.d.ts.map +1 -0
- package/lib/typescript/src/services/device/location.d.ts +8 -0
- package/lib/typescript/src/services/device/location.d.ts.map +1 -0
- package/lib/typescript/src/services/navigation/dialPad.d.ts +3 -0
- package/lib/typescript/src/services/navigation/dialPad.d.ts.map +1 -0
- package/lib/typescript/src/services/navigation/goBackNavigation.d.ts +4 -0
- package/lib/typescript/src/services/navigation/goBackNavigation.d.ts.map +1 -0
- package/lib/typescript/src/services/navigation/openBrowser.d.ts +2 -0
- package/lib/typescript/src/services/navigation/openBrowser.d.ts.map +1 -0
- package/lib/typescript/src/services/navigation/openMap.d.ts +2 -0
- package/lib/typescript/src/services/navigation/openMap.d.ts.map +1 -0
- package/lib/typescript/src/services/permissions/permissionManager.d.ts +4 -0
- package/lib/typescript/src/services/permissions/permissionManager.d.ts.map +1 -0
- package/lib/typescript/src/services/url/urlGenerator.d.ts +43 -0
- package/lib/typescript/src/services/url/urlGenerator.d.ts.map +1 -0
- package/lib/typescript/src/services/webview/messageHandler.d.ts +2 -0
- package/lib/typescript/src/services/webview/messageHandler.d.ts.map +1 -0
- package/lib/typescript/src/utils/dependencyManager.d.ts +31 -0
- package/lib/typescript/src/utils/dependencyManager.d.ts.map +1 -0
- package/lib/typescript/src/utils/encryption.d.ts +5 -0
- package/lib/typescript/src/utils/encryption.d.ts.map +1 -0
- package/lib/typescript/src/utils/errors.d.ts +4 -0
- package/lib/typescript/src/utils/errors.d.ts.map +1 -0
- package/lib/typescript/src/utils/logger.d.ts +6 -0
- package/lib/typescript/src/utils/logger.d.ts.map +1 -0
- package/lib/typescript/src/utils/platformManager.d.ts +4 -0
- package/lib/typescript/src/utils/platformManager.d.ts.map +1 -0
- package/lib/typescript/src/utils/validator.d.ts +4 -0
- package/lib/typescript/src/utils/validator.d.ts.map +1 -0
- package/package.json +176 -0
- package/src/@types/@react-native-async-storage__async-storage.d.ts +7 -0
- package/src/@types/@react-native-community__geolocation.d.ts +18 -0
- package/src/@types/react-native-aes-gcm-crypto.d.ts +22 -0
- package/src/@types/react-native-device-info.d.ts +3 -0
- package/src/core/runtime.ts +80 -0
- package/src/data/models/apiResponse.ts +28 -0
- package/src/data/models/onboardingModel.ts +99 -0
- package/src/data/network/apiClient.ts +148 -0
- package/src/data/network/apiEndpoints.ts +3 -0
- package/src/data/network/apiExceptionHandler.ts +16 -0
- package/src/data/network/apiRepository.ts +106 -0
- package/src/data/network/apiService.ts +72 -0
- package/src/data/network/dataTypeUtils.ts +78 -0
- package/src/data/network/interceptors/authInterceptor.ts +77 -0
- package/src/data/network/interceptors/errorInterceptor.ts +13 -0
- package/src/data/network/interceptors/loggingInterceptor.ts +16 -0
- package/src/data/network/interceptors/networkInterceptor.ts +20 -0
- package/src/data/network/interceptors/retryInterceptor.ts +24 -0
- package/src/data/storage/asyncStorageManager.ts +56 -0
- package/src/data/storage/deviceIdManager.ts +46 -0
- package/src/data/storage/keysManager.ts +89 -0
- package/src/data/storage/locationManager.ts +39 -0
- package/src/data/storage/sessionManager.ts +11 -0
- package/src/data/storage/storageKeys.ts +4 -0
- package/src/data/storage/storageManager.ts +83 -0
- package/src/index.tsx +17 -0
- package/src/services/device/location.ts +51 -0
- package/src/services/navigation/dialPad.ts +39 -0
- package/src/services/navigation/goBackNavigation.ts +22 -0
- package/src/services/navigation/openBrowser.ts +6 -0
- package/src/services/navigation/openMap.ts +39 -0
- package/src/services/permissions/permissionManager.ts +33 -0
- package/src/services/url/urlGenerator.ts +132 -0
- package/src/services/webview/messageHandler.ts +48 -0
- package/src/utils/dependencyManager.ts +82 -0
- package/src/utils/encryption.ts +58 -0
- package/src/utils/errors.ts +6 -0
- package/src/utils/logger.ts +11 -0
- package/src/utils/platformManager.ts +14 -0
- package/src/utils/validator.ts +29 -0
|
@@ -0,0 +1,90 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// Utilities / Helpers
|
|
4
|
+
import { SDKError } from "../../utils/errors.js";
|
|
5
|
+
import { aesEncrypt } from "../../utils/encryption.js";
|
|
6
|
+
|
|
7
|
+
// Storage / Session
|
|
8
|
+
import { getDeviceId } from "../../data/storage/deviceIdManager.js";
|
|
9
|
+
import { getSessionId } from "../../data/storage/sessionManager.js";
|
|
10
|
+
import { getLocationCoordinates } from "../../data/storage/locationManager.js";
|
|
11
|
+
import { getEncryptionKey, getPRefCode } from "../../data/storage/keysManager.js";
|
|
12
|
+
export function validateInput(input) {
|
|
13
|
+
const errors = [];
|
|
14
|
+
const auth = input.authType ?? 'PHONE';
|
|
15
|
+
if (!input.profile) errors.push('profile is mandatory');
|
|
16
|
+
if (!input.profile?.userId) errors.push('userId is mandatory');
|
|
17
|
+
if (!input.profile?.email) errors.push('email is mandatory');
|
|
18
|
+
const pv = input.profile?.pv;
|
|
19
|
+
const ev = input.profile?.ev;
|
|
20
|
+
if (typeof pv !== 'undefined' && pv !== '0' && pv !== '1') {
|
|
21
|
+
errors.push('pv must be 0 or 1');
|
|
22
|
+
}
|
|
23
|
+
if (typeof ev !== 'undefined' && ev !== '0' && ev !== '1') {
|
|
24
|
+
errors.push('ev must be 0 or 1');
|
|
25
|
+
}
|
|
26
|
+
if (!auth) errors.push('authType is mandatory');
|
|
27
|
+
if (auth === 'USERNAME' && !input.profile?.username) {
|
|
28
|
+
errors.push('username is mandatory for USERNAME authType');
|
|
29
|
+
}
|
|
30
|
+
if (auth === 'PHONE' && !input.profile?.phone) {
|
|
31
|
+
errors.push('phone is mandatory for PHONE authType');
|
|
32
|
+
}
|
|
33
|
+
const screenName = input.screen?.name;
|
|
34
|
+
if (screenName === 'OfrDetails') {
|
|
35
|
+
const attrs = input.screen?.attributes ?? [];
|
|
36
|
+
if (!attrs.length) {
|
|
37
|
+
errors.push('screen.attributes is mandatory when screen.name is OfrDetails');
|
|
38
|
+
}
|
|
39
|
+
}
|
|
40
|
+
return {
|
|
41
|
+
ok: errors.length === 0,
|
|
42
|
+
errors
|
|
43
|
+
};
|
|
44
|
+
}
|
|
45
|
+
export async function generateUrl(input) {
|
|
46
|
+
const deviceId = await getDeviceId();
|
|
47
|
+
const storedLocation = await getLocationCoordinates();
|
|
48
|
+
const sessionId = await getSessionId();
|
|
49
|
+
const deviceInfo = storedLocation != null ? {
|
|
50
|
+
dId: deviceId,
|
|
51
|
+
location: storedLocation
|
|
52
|
+
} : {
|
|
53
|
+
dId: deviceId
|
|
54
|
+
};
|
|
55
|
+
const normalized = {
|
|
56
|
+
profile: input.profile,
|
|
57
|
+
screen: input.screen,
|
|
58
|
+
authType: input.authType ?? 'PHONE',
|
|
59
|
+
sessionId: sessionId ?? '',
|
|
60
|
+
deviceInfo
|
|
61
|
+
};
|
|
62
|
+
const validation = validateInput({
|
|
63
|
+
...normalized,
|
|
64
|
+
deviceInfo: normalized.deviceInfo
|
|
65
|
+
});
|
|
66
|
+
if (!validation.ok) {
|
|
67
|
+
throw new SDKError(`Validation failed: ${validation.errors.join(', ')}`);
|
|
68
|
+
}
|
|
69
|
+
const payload = {
|
|
70
|
+
screen: normalized.screen ?? {
|
|
71
|
+
name: 'Explore'
|
|
72
|
+
},
|
|
73
|
+
profile: normalized.profile,
|
|
74
|
+
authType: normalized.authType,
|
|
75
|
+
deviceInfo: normalized.deviceInfo,
|
|
76
|
+
sessionId: normalized.sessionId
|
|
77
|
+
};
|
|
78
|
+
const json = JSON.stringify(payload);
|
|
79
|
+
const key = await getEncryptionKey();
|
|
80
|
+
if (!key || key === '-') {
|
|
81
|
+
throw new SDKError('Encryption key is mandatory. Initialize SDK with encryptionKey.');
|
|
82
|
+
}
|
|
83
|
+
const encoded = await aesEncrypt(json, key);
|
|
84
|
+
const programCode = await getPRefCode();
|
|
85
|
+
if (!programCode || programCode === '-') {
|
|
86
|
+
throw new SDKError('pRefCode is mandatory. Initialize SDK with pRefCode.');
|
|
87
|
+
}
|
|
88
|
+
return `https://m.saversapp.com/?pRefCode=${encodeURIComponent(programCode)}&qP=${encodeURIComponent(encoded)}`;
|
|
89
|
+
}
|
|
90
|
+
//# sourceMappingURL=urlGenerator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SDKError","aesEncrypt","getDeviceId","getSessionId","getLocationCoordinates","getEncryptionKey","getPRefCode","validateInput","input","errors","auth","authType","profile","push","userId","email","pv","ev","username","phone","screenName","screen","name","attrs","attributes","length","ok","generateUrl","deviceId","storedLocation","sessionId","deviceInfo","dId","location","normalized","validation","join","payload","json","JSON","stringify","key","encoded","programCode","encodeURIComponent"],"sourceRoot":"../../../../src","sources":["services/url/urlGenerator.ts"],"mappings":"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","ignoreList":[]}
|
|
@@ -0,0 +1,69 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// Screens / SDKs / External packages
|
|
4
|
+
import { openMap, openDialPad, openBrowser, closeCurrentScreenSafe, setSessionId } from '@saversapp/react-native-sdk';
|
|
5
|
+
export function handleWebMessage(raw, postBack) {
|
|
6
|
+
let msg;
|
|
7
|
+
try {
|
|
8
|
+
msg = JSON.parse(raw);
|
|
9
|
+
} catch {
|
|
10
|
+
return;
|
|
11
|
+
}
|
|
12
|
+
const action = msg?.action;
|
|
13
|
+
const payload = msg?.payload;
|
|
14
|
+
const reply = data => postBack?.(data);
|
|
15
|
+
(async () => {
|
|
16
|
+
try {
|
|
17
|
+
if (action === 'OPEN_MAP') {
|
|
18
|
+
const {
|
|
19
|
+
lat,
|
|
20
|
+
lng,
|
|
21
|
+
label
|
|
22
|
+
} = payload || {};
|
|
23
|
+
await openMap(lat, lng, label);
|
|
24
|
+
reply({
|
|
25
|
+
ok: true,
|
|
26
|
+
action
|
|
27
|
+
});
|
|
28
|
+
} else if (action === 'SHOW_DIAL_PAD') {
|
|
29
|
+
await openDialPad(payload?.number);
|
|
30
|
+
reply({
|
|
31
|
+
ok: true,
|
|
32
|
+
action
|
|
33
|
+
});
|
|
34
|
+
} else if (action === 'MERCHANT_PORTAL_REDIRECT') {
|
|
35
|
+
await openBrowser(payload?.url);
|
|
36
|
+
reply({
|
|
37
|
+
ok: true,
|
|
38
|
+
action
|
|
39
|
+
});
|
|
40
|
+
} else if (action === 'SESSION_ID') {
|
|
41
|
+
const {
|
|
42
|
+
sessionId
|
|
43
|
+
} = payload || {};
|
|
44
|
+
const id = await setSessionId(sessionId);
|
|
45
|
+
reply({
|
|
46
|
+
ok: true,
|
|
47
|
+
action,
|
|
48
|
+
sessionId: id
|
|
49
|
+
});
|
|
50
|
+
} else if (action === 'END_SESSION') {
|
|
51
|
+
closeCurrentScreenSafe();
|
|
52
|
+
// reply({ ok: true, action, closed });
|
|
53
|
+
} else {
|
|
54
|
+
reply({
|
|
55
|
+
ok: false,
|
|
56
|
+
error: 'UNKNOWN_ACTION',
|
|
57
|
+
action
|
|
58
|
+
});
|
|
59
|
+
}
|
|
60
|
+
} catch (e) {
|
|
61
|
+
reply({
|
|
62
|
+
ok: false,
|
|
63
|
+
error: e?.message ?? String(e),
|
|
64
|
+
action
|
|
65
|
+
});
|
|
66
|
+
}
|
|
67
|
+
})();
|
|
68
|
+
}
|
|
69
|
+
//# sourceMappingURL=messageHandler.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["openMap","openDialPad","openBrowser","closeCurrentScreenSafe","setSessionId","handleWebMessage","raw","postBack","msg","JSON","parse","action","payload","reply","data","lat","lng","label","ok","number","url","sessionId","id","error","e","message","String"],"sourceRoot":"../../../../src","sources":["services/webview/messageHandler.ts"],"mappings":";;AAAA;AACA,SACEA,OAAO,EACPC,WAAW,EACXC,WAAW,EACXC,sBAAsB,EACtBC,YAAY,QACP,6BAA6B;AAEpC,OAAO,SAASC,gBAAgBA,CAACC,GAAW,EAAEC,QAA8B,EAAE;EAC5E,IAAIC,GAAuC;EAC3C,IAAI;IACFA,GAAG,GAAGC,IAAI,CAACC,KAAK,CAACJ,GAAG,CAAC;EACvB,CAAC,CAAC,MAAM;IACN;EACF;EACA,MAAMK,MAAM,GAAGH,GAAG,EAAEG,MAAM;EAC1B,MAAMC,OAAO,GAAGJ,GAAG,EAAEI,OAAO;EAE5B,MAAMC,KAAK,GAAIC,IAAS,IAAKP,QAAQ,GAAGO,IAAI,CAAC;EAE7C,CAAC,YAAY;IACX,IAAI;MACF,IAAIH,MAAM,KAAK,UAAU,EAAE;QACzB,MAAM;UAAEI,GAAG;UAAEC,GAAG;UAAEC;QAAM,CAAC,GAAGL,OAAO,IAAI,CAAC,CAAC;QACzC,MAAMZ,OAAO,CAACe,GAAG,EAAEC,GAAG,EAAEC,KAAK,CAAC;QAC9BJ,KAAK,CAAC;UAAEK,EAAE,EAAE,IAAI;UAAEP;QAAO,CAAC,CAAC;MAC7B,CAAC,MAAM,IAAIA,MAAM,KAAK,eAAe,EAAE;QACrC,MAAMV,WAAW,CAACW,OAAO,EAAEO,MAAM,CAAC;QAClCN,KAAK,CAAC;UAAEK,EAAE,EAAE,IAAI;UAAEP;QAAO,CAAC,CAAC;MAC7B,CAAC,MAAM,IAAIA,MAAM,KAAK,0BAA0B,EAAE;QAChD,MAAMT,WAAW,CAACU,OAAO,EAAEQ,GAAG,CAAC;QAC/BP,KAAK,CAAC;UAAEK,EAAE,EAAE,IAAI;UAAEP;QAAO,CAAC,CAAC;MAC7B,CAAC,MAAM,IAAIA,MAAM,KAAK,YAAY,EAAE;QAClC,MAAM;UAAEU;QAAU,CAAC,GAAGT,OAAO,IAAI,CAAC,CAAC;QACnC,MAAMU,EAAE,GAAG,MAAMlB,YAAY,CAACiB,SAAS,CAAC;QACxCR,KAAK,CAAC;UAAEK,EAAE,EAAE,IAAI;UAAEP,MAAM;UAAEU,SAAS,EAAEC;QAAG,CAAC,CAAC;MAC5C,CAAC,MAAM,IAAIX,MAAM,KAAK,aAAa,EAAE;QACnCR,sBAAsB,CAAC,CAAC;QACxB;MACF,CAAC,MAAM;QACLU,KAAK,CAAC;UAAEK,EAAE,EAAE,KAAK;UAAEK,KAAK,EAAE,gBAAgB;UAAEZ;QAAO,CAAC,CAAC;MACvD;IACF,CAAC,CAAC,OAAOa,CAAM,EAAE;MACfX,KAAK,CAAC;QAAEK,EAAE,EAAE,KAAK;QAAEK,KAAK,EAAEC,CAAC,EAAEC,OAAO,IAAIC,MAAM,CAACF,CAAC,CAAC;QAAEb;MAAO,CAAC,CAAC;IAC9D;EACF,CAAC,EAAE,CAAC;AACN","ignoreList":[]}
|
|
@@ -0,0 +1,51 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
let AsyncStorage;
|
|
4
|
+
let Geolocation;
|
|
5
|
+
let DeviceInfo;
|
|
6
|
+
function loadAsyncStorage() {
|
|
7
|
+
try {
|
|
8
|
+
const mod = require('@react-native-async-storage/async-storage');
|
|
9
|
+
return mod?.default ?? mod;
|
|
10
|
+
} catch {
|
|
11
|
+
return undefined;
|
|
12
|
+
}
|
|
13
|
+
}
|
|
14
|
+
function loadGeolocation() {
|
|
15
|
+
try {
|
|
16
|
+
const mod = require('@react-native-community/geolocation');
|
|
17
|
+
return mod?.default ?? mod;
|
|
18
|
+
} catch {
|
|
19
|
+
return undefined;
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
function loadDeviceInfo() {
|
|
23
|
+
try {
|
|
24
|
+
const mod = require('react-native-device-info');
|
|
25
|
+
return mod?.default ?? mod;
|
|
26
|
+
} catch {
|
|
27
|
+
return undefined;
|
|
28
|
+
}
|
|
29
|
+
}
|
|
30
|
+
export function resolveNativeDependencies() {
|
|
31
|
+
if (!AsyncStorage) AsyncStorage = loadAsyncStorage();
|
|
32
|
+
if (!Geolocation) Geolocation = loadGeolocation();
|
|
33
|
+
if (!DeviceInfo) DeviceInfo = loadDeviceInfo();
|
|
34
|
+
return {
|
|
35
|
+
AsyncStorage,
|
|
36
|
+
Geolocation,
|
|
37
|
+
DeviceInfo
|
|
38
|
+
};
|
|
39
|
+
}
|
|
40
|
+
export const SDKRequirements = {
|
|
41
|
+
get asyncStorage() {
|
|
42
|
+
return Boolean(resolveNativeDependencies().AsyncStorage);
|
|
43
|
+
},
|
|
44
|
+
get geolocation() {
|
|
45
|
+
return Boolean(resolveNativeDependencies().Geolocation);
|
|
46
|
+
},
|
|
47
|
+
get deviceInfo() {
|
|
48
|
+
return Boolean(resolveNativeDependencies().DeviceInfo);
|
|
49
|
+
}
|
|
50
|
+
};
|
|
51
|
+
//# sourceMappingURL=dependencyManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AsyncStorage","Geolocation","DeviceInfo","loadAsyncStorage","mod","require","default","undefined","loadGeolocation","loadDeviceInfo","resolveNativeDependencies","SDKRequirements","asyncStorage","Boolean","geolocation","deviceInfo"],"sourceRoot":"../../../src","sources":["utils/dependencyManager.ts"],"mappings":";;AA6BA,IAAIA,YAAgC;AACpC,IAAIC,WAA8B;AAClC,IAAIC,UAA4B;AAEhC,SAASC,gBAAgBA,CAAA,EAAuB;EAC9C,IAAI;IACF,MAAMC,GAAG,GAAGC,OAAO,CAAC,2CAA2C,CAAC;IAChE,OAAOD,GAAG,EAAEE,OAAO,IAAIF,GAAG;EAC5B,CAAC,CAAC,MAAM;IACN,OAAOG,SAAS;EAClB;AACF;AAEA,SAASC,eAAeA,CAAA,EAAsB;EAC5C,IAAI;IACF,MAAMJ,GAAG,GAAGC,OAAO,CAAC,qCAAqC,CAAC;IAC1D,OAAOD,GAAG,EAAEE,OAAO,IAAIF,GAAG;EAC5B,CAAC,CAAC,MAAM;IACN,OAAOG,SAAS;EAClB;AACF;AAEA,SAASE,cAAcA,CAAA,EAAqB;EAC1C,IAAI;IACF,MAAML,GAAG,GAAGC,OAAO,CAAC,0BAA0B,CAAC;IAC/C,OAAOD,GAAG,EAAEE,OAAO,IAAIF,GAAG;EAC5B,CAAC,CAAC,MAAM;IACN,OAAOG,SAAS;EAClB;AACF;AAEA,OAAO,SAASG,yBAAyBA,CAAA,EAAG;EAC1C,IAAI,CAACV,YAAY,EAAEA,YAAY,GAAGG,gBAAgB,CAAC,CAAC;EACpD,IAAI,CAACF,WAAW,EAAEA,WAAW,GAAGO,eAAe,CAAC,CAAC;EACjD,IAAI,CAACN,UAAU,EAAEA,UAAU,GAAGO,cAAc,CAAC,CAAC;EAC9C,OAAO;IACLT,YAAY;IACZC,WAAW;IACXC;EACF,CAAC;AACH;AAEA,OAAO,MAAMS,eAAe,GAAG;EAC7B,IAAIC,YAAYA,CAAA,EAAG;IACjB,OAAOC,OAAO,CAACH,yBAAyB,CAAC,CAAC,CAACV,YAAY,CAAC;EAC1D,CAAC;EACD,IAAIc,WAAWA,CAAA,EAAG;IAChB,OAAOD,OAAO,CAACH,yBAAyB,CAAC,CAAC,CAACT,WAAW,CAAC;EACzD,CAAC;EACD,IAAIc,UAAUA,CAAA,EAAG;IACf,OAAOF,OAAO,CAACH,yBAAyB,CAAC,CAAC,CAACR,UAAU,CAAC;EACxD;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,43 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// Third-party libraries
|
|
4
|
+
import AesGcmCrypto from 'react-native-aes-gcm-crypto';
|
|
5
|
+
function isBase64(input) {
|
|
6
|
+
return /^[A-Za-z0-9+/]+={0,2}$/.test(input);
|
|
7
|
+
}
|
|
8
|
+
function base64ByteLength(b64) {
|
|
9
|
+
const cleaned = b64.replace(/=+$/, '');
|
|
10
|
+
return Math.floor(cleaned.length * 3 / 4);
|
|
11
|
+
}
|
|
12
|
+
export async function aesEncrypt(text, key) {
|
|
13
|
+
if (!isBase64(key) || base64ByteLength(key) !== 32) {
|
|
14
|
+
throw new Error('Encryption key must be base64-encoded 32-byte (256-bit) value');
|
|
15
|
+
}
|
|
16
|
+
const {
|
|
17
|
+
iv,
|
|
18
|
+
tag,
|
|
19
|
+
content
|
|
20
|
+
} = await AesGcmCrypto.encrypt(text, false, key);
|
|
21
|
+
return base64Encrypt(`${iv}:${content}:${tag}`);
|
|
22
|
+
}
|
|
23
|
+
export async function aesDecrypt(ciphertext, key) {
|
|
24
|
+
if (!isBase64(key) || base64ByteLength(key) !== 32) {
|
|
25
|
+
throw new Error('Encryption key must be base64-encoded 32-byte (256-bit) value');
|
|
26
|
+
}
|
|
27
|
+
const parts = ciphertext.split(':');
|
|
28
|
+
const iv = parts[0] ?? '';
|
|
29
|
+
const content = parts[1] ?? '';
|
|
30
|
+
const tag = parts[2] ?? '';
|
|
31
|
+
const decrypted = await AesGcmCrypto.decrypt(content, key, iv, tag, false);
|
|
32
|
+
return decrypted;
|
|
33
|
+
}
|
|
34
|
+
export function base64Encrypt(plain) {
|
|
35
|
+
const utf8 = encodeURIComponent(plain).replace(/%([0-9A-F]{2})/g, (_, p1) => String.fromCharCode(parseInt(p1, 16)));
|
|
36
|
+
return btoa(utf8);
|
|
37
|
+
}
|
|
38
|
+
export function base64Decrypt(encoded) {
|
|
39
|
+
const binary = atob(encoded);
|
|
40
|
+
const utf8 = binary.split('').map(c => '%' + ('00' + c.charCodeAt(0).toString(16)).slice(-2)).join('');
|
|
41
|
+
return decodeURIComponent(utf8);
|
|
42
|
+
}
|
|
43
|
+
//# sourceMappingURL=encryption.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["AesGcmCrypto","isBase64","input","test","base64ByteLength","b64","cleaned","replace","Math","floor","length","aesEncrypt","text","key","Error","iv","tag","content","encrypt","base64Encrypt","aesDecrypt","ciphertext","parts","split","decrypted","decrypt","plain","utf8","encodeURIComponent","_","p1","String","fromCharCode","parseInt","btoa","base64Decrypt","encoded","binary","atob","map","c","charCodeAt","toString","slice","join","decodeURIComponent"],"sourceRoot":"../../../src","sources":["utils/encryption.ts"],"mappings":";;AAAA;AACA,OAAOA,YAAY,MAAM,6BAA6B;AAEtD,SAASC,QAAQA,CAACC,KAAa,EAAW;EACxC,OAAO,wBAAwB,CAACC,IAAI,CAACD,KAAK,CAAC;AAC7C;AAEA,SAASE,gBAAgBA,CAACC,GAAW,EAAU;EAC7C,MAAMC,OAAO,GAAGD,GAAG,CAACE,OAAO,CAAC,KAAK,EAAE,EAAE,CAAC;EACtC,OAAOC,IAAI,CAACC,KAAK,CAAEH,OAAO,CAACI,MAAM,GAAG,CAAC,GAAI,CAAC,CAAC;AAC7C;AAEA,OAAO,eAAeC,UAAUA,CAACC,IAAY,EAAEC,GAAW,EAAmB;EAC3E,IAAI,CAACZ,QAAQ,CAACY,GAAG,CAAC,IAAIT,gBAAgB,CAACS,GAAG,CAAC,KAAK,EAAE,EAAE;IAClD,MAAM,IAAIC,KAAK,CACb,+DACF,CAAC;EACH;EACA,MAAM;IAAEC,EAAE;IAAEC,GAAG;IAAEC;EAAQ,CAAC,GAAG,MAAMjB,YAAY,CAACkB,OAAO,CAACN,IAAI,EAAE,KAAK,EAAEC,GAAG,CAAC;EACzE,OAAOM,aAAa,CAAC,GAAGJ,EAAE,IAAIE,OAAO,IAAID,GAAG,EAAE,CAAC;AACjD;AAEA,OAAO,eAAeI,UAAUA,CAC9BC,UAAkB,EAClBR,GAAW,EACM;EACjB,IAAI,CAACZ,QAAQ,CAACY,GAAG,CAAC,IAAIT,gBAAgB,CAACS,GAAG,CAAC,KAAK,EAAE,EAAE;IAClD,MAAM,IAAIC,KAAK,CACb,+DACF,CAAC;EACH;EACA,MAAMQ,KAAK,GAAGD,UAAU,CAACE,KAAK,CAAC,GAAG,CAAC;EACnC,MAAMR,EAAE,GAAGO,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;EACzB,MAAML,OAAO,GAAGK,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;EAC9B,MAAMN,GAAG,GAAGM,KAAK,CAAC,CAAC,CAAC,IAAI,EAAE;EAC1B,MAAME,SAAS,GAAG,MAAMxB,YAAY,CAACyB,OAAO,CAACR,OAAO,EAAEJ,GAAG,EAAEE,EAAE,EAAEC,GAAG,EAAE,KAAK,CAAC;EAC1E,OAAOQ,SAAS;AAClB;AAKA,OAAO,SAASL,aAAaA,CAACO,KAAa,EAAU;EACnD,MAAMC,IAAI,GAAGC,kBAAkB,CAACF,KAAK,CAAC,CAACnB,OAAO,CAC5C,iBAAiB,EACjB,CAACsB,CAAC,EAAEC,EAAU,KAAKC,MAAM,CAACC,YAAY,CAACC,QAAQ,CAACH,EAAE,EAAE,EAAE,CAAC,CACzD,CAAC;EACD,OAAOI,IAAI,CAACP,IAAI,CAAC;AACnB;AAEA,OAAO,SAASQ,aAAaA,CAACC,OAAe,EAAU;EACrD,MAAMC,MAAM,GAAGC,IAAI,CAACF,OAAO,CAAC;EAC5B,MAAMT,IAAI,GAAGU,MAAM,CAChBd,KAAK,CAAC,EAAE,CAAC,CACTgB,GAAG,CAAEC,CAAC,IAAK,GAAG,GAAG,CAAC,IAAI,GAAGA,CAAC,CAACC,UAAU,CAAC,CAAC,CAAC,CAACC,QAAQ,CAAC,EAAE,CAAC,EAAEC,KAAK,CAAC,CAAC,CAAC,CAAC,CAAC,CACjEC,IAAI,CAAC,EAAE,CAAC;EACX,OAAOC,kBAAkB,CAAClB,IAAI,CAAC;AACjC","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["SDKError","Error","constructor","message","name"],"sourceRoot":"../../../src","sources":["utils/errors.ts"],"mappings":";;AAAA,OAAO,MAAMA,QAAQ,SAASC,KAAK,CAAC;EAClCC,WAAWA,CAACC,OAAe,EAAE;IAC3B,KAAK,CAACA,OAAO,CAAC;IACd,IAAI,CAACC,IAAI,GAAG,UAAU;EACxB;AACF","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["logger","info","args","console","warn","error"],"sourceRoot":"../../../src","sources":["utils/logger.ts"],"mappings":";;AAAA,OAAO,MAAMA,MAAM,GAAG;EACpBC,IAAI,EAAEA,CAAC,GAAGC,IAAe,KAAK;IAC5BC,OAAO,CAACF,IAAI,CAAC,GAAGC,IAAI,CAAC;EACvB,CAAC;EACDE,IAAI,EAAEA,CAAC,GAAGF,IAAe,KAAK;IAC5BC,OAAO,CAACC,IAAI,CAAC,GAAGF,IAAI,CAAC;EACvB,CAAC;EACDG,KAAK,EAAEA,CAAC,GAAGH,IAAe,KAAK;IAC7BC,OAAO,CAACE,KAAK,CAAC,GAAGH,IAAI,CAAC;EACxB;AACF,CAAC","ignoreList":[]}
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// React Native Core
|
|
4
|
+
import { Platform } from 'react-native';
|
|
5
|
+
export function isIOS() {
|
|
6
|
+
return Platform.OS === 'ios';
|
|
7
|
+
}
|
|
8
|
+
export function isAndroid() {
|
|
9
|
+
return Platform.OS === 'android';
|
|
10
|
+
}
|
|
11
|
+
export function platformVersion() {
|
|
12
|
+
return Number(Platform.Version);
|
|
13
|
+
}
|
|
14
|
+
//# sourceMappingURL=platformManager.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Platform","isIOS","OS","isAndroid","platformVersion","Number","Version"],"sourceRoot":"../../../src","sources":["utils/platformManager.ts"],"mappings":";;AAAA;AACA,SAASA,QAAQ,QAAQ,cAAc;AAEvC,OAAO,SAASC,KAAKA,CAAA,EAAY;EAC/B,OAAOD,QAAQ,CAACE,EAAE,KAAK,KAAK;AAC9B;AAEA,OAAO,SAASC,SAASA,CAAA,EAAY;EACnC,OAAOH,QAAQ,CAACE,EAAE,KAAK,SAAS;AAClC;AAEA,OAAO,SAASE,eAAeA,CAAA,EAAW;EACxC,OAAOC,MAAM,CAACL,QAAQ,CAACM,OAAO,CAAC;AACjC","ignoreList":[]}
|
|
@@ -0,0 +1,26 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
// React Native Core
|
|
4
|
+
import { Linking } from 'react-native';
|
|
5
|
+
|
|
6
|
+
// Platform / Environment helpers
|
|
7
|
+
import { isIOS } from "./platformManager.js";
|
|
8
|
+
export function isValidPhoneNumber(input) {
|
|
9
|
+
if (!input) return false;
|
|
10
|
+
return /^\+?[0-9]{8,15}$/.test(input);
|
|
11
|
+
}
|
|
12
|
+
export async function isMapAppAvailable() {
|
|
13
|
+
if (isIOS()) {
|
|
14
|
+
// Apple Maps scheme
|
|
15
|
+
return Linking.canOpenURL('maps:0,0?q=test');
|
|
16
|
+
}
|
|
17
|
+
// Android geo scheme
|
|
18
|
+
return Linking.canOpenURL('geo:0,0?q=0,0');
|
|
19
|
+
}
|
|
20
|
+
export async function isValidCoordinates(lat, lng) {
|
|
21
|
+
if (!Number.isFinite(lat) || !Number.isFinite(lng)) return false;
|
|
22
|
+
if (lat < -90 || lat > 90) return false;
|
|
23
|
+
if (lng < -180 || lng > 180) return false;
|
|
24
|
+
return true;
|
|
25
|
+
}
|
|
26
|
+
//# sourceMappingURL=validator.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["Linking","isIOS","isValidPhoneNumber","input","test","isMapAppAvailable","canOpenURL","isValidCoordinates","lat","lng","Number","isFinite"],"sourceRoot":"../../../src","sources":["utils/validator.ts"],"mappings":";;AAAA;AACA,SAASA,OAAO,QAAQ,cAAc;;AAEtC;AACA,SAASC,KAAK,QAAQ,sBAAmB;AAEzC,OAAO,SAASC,kBAAkBA,CAACC,KAAa,EAAW;EACzD,IAAI,CAACA,KAAK,EAAE,OAAO,KAAK;EACxB,OAAO,kBAAkB,CAACC,IAAI,CAACD,KAAK,CAAC;AACvC;AAEA,OAAO,eAAeE,iBAAiBA,CAAA,EAAqB;EAC1D,IAAIJ,KAAK,CAAC,CAAC,EAAE;IACX;IACA,OAAOD,OAAO,CAACM,UAAU,CAAC,iBAAiB,CAAC;EAC9C;EACA;EACA,OAAON,OAAO,CAACM,UAAU,CAAC,eAAe,CAAC;AAC5C;AAEA,OAAO,eAAeC,kBAAkBA,CACtCC,GAAW,EACXC,GAAW,EACO;EAClB,IAAI,CAACC,MAAM,CAACC,QAAQ,CAACH,GAAG,CAAC,IAAI,CAACE,MAAM,CAACC,QAAQ,CAACF,GAAG,CAAC,EAAE,OAAO,KAAK;EAChE,IAAID,GAAG,GAAG,CAAC,EAAE,IAAIA,GAAG,GAAG,EAAE,EAAE,OAAO,KAAK;EACvC,IAAIC,GAAG,GAAG,CAAC,GAAG,IAAIA,GAAG,GAAG,GAAG,EAAE,OAAO,KAAK;EACzC,OAAO,IAAI;AACb","ignoreList":[]}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"type":"module"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function initializeSDK(providedKeys: {
|
|
2
|
+
apiKey: string;
|
|
3
|
+
encryptionKey: string;
|
|
4
|
+
pRefCode: string;
|
|
5
|
+
authMode: string;
|
|
6
|
+
}): void;
|
|
7
|
+
export declare const SaversAppSDK: {
|
|
8
|
+
initialized: typeof initializeSDK;
|
|
9
|
+
};
|
|
10
|
+
//# sourceMappingURL=runtime.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"runtime.d.ts","sourceRoot":"","sources":["../../../../src/core/runtime.ts"],"names":[],"mappings":"AAgBA,wBAAgB,aAAa,CAAC,YAAY,EAAE;IAC1C,MAAM,EAAE,MAAM,CAAC;IACf,aAAa,EAAE,MAAM,CAAC;IACtB,QAAQ,EAAE,MAAM,CAAC;IACjB,QAAQ,EAAE,MAAM,CAAC;CAClB,QAsDA;AAED,eAAO,MAAM,YAAY;;CAExB,CAAC"}
|
|
@@ -0,0 +1,9 @@
|
|
|
1
|
+
export type ApiResponse<T> = {
|
|
2
|
+
data?: T | null;
|
|
3
|
+
status?: boolean;
|
|
4
|
+
message?: string;
|
|
5
|
+
fromCache: boolean;
|
|
6
|
+
};
|
|
7
|
+
export declare function apiError(message?: string): ApiResponse<null>;
|
|
8
|
+
export declare function apiSuccess<T>(data: T, message?: string, fromCache?: boolean): ApiResponse<T>;
|
|
9
|
+
//# sourceMappingURL=apiResponse.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiResponse.d.ts","sourceRoot":"","sources":["../../../../../src/data/models/apiResponse.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,WAAW,CAAC,CAAC,IAAI;IAC3B,IAAI,CAAC,EAAE,CAAC,GAAG,IAAI,CAAC;IAChB,MAAM,CAAC,EAAE,OAAO,CAAC;IACjB,OAAO,CAAC,EAAE,MAAM,CAAC;IACjB,SAAS,EAAE,OAAO,CAAC;CACpB,CAAC;AAEF,wBAAgB,QAAQ,CAAC,OAAO,CAAC,EAAE,MAAM,GAAG,WAAW,CAAC,IAAI,CAAC,CAO5D;AAED,wBAAgB,UAAU,CAAC,CAAC,EAC1B,IAAI,EAAE,CAAC,EACP,OAAO,CAAC,EAAE,MAAM,EAChB,SAAS,CAAC,EAAE,OAAO,GAClB,WAAW,CAAC,CAAC,CAAC,CAOhB"}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export type OnBoardingImage = {
|
|
2
|
+
id?: number | null;
|
|
3
|
+
url?: string | null;
|
|
4
|
+
};
|
|
5
|
+
export declare function onBoardingImageFromJson(json: Record<string, any>): OnBoardingImage;
|
|
6
|
+
export declare function onBoardingImageListFromJson(list: any[]): OnBoardingImage[];
|
|
7
|
+
export type OnBoardingThemeData = {
|
|
8
|
+
total?: number | null;
|
|
9
|
+
images?: OnBoardingImage[] | null;
|
|
10
|
+
};
|
|
11
|
+
export declare function onBoardingThemeFromJson(json: any): OnBoardingThemeData;
|
|
12
|
+
export type OnBoardingData = {
|
|
13
|
+
day?: OnBoardingThemeData | null;
|
|
14
|
+
night?: OnBoardingThemeData | null;
|
|
15
|
+
};
|
|
16
|
+
export declare function onBoardingDataFromJson(json: any): OnBoardingData;
|
|
17
|
+
export declare const images: (d?: OnBoardingData | null) => OnBoardingImage[] | null;
|
|
18
|
+
export declare const total: (d?: OnBoardingData | null) => number | null;
|
|
19
|
+
export declare const hasTotal: (d?: OnBoardingData | null) => boolean;
|
|
20
|
+
export declare const hasImages: (d?: OnBoardingData | null) => boolean;
|
|
21
|
+
export declare const imageCount: (d?: OnBoardingData | null) => number;
|
|
22
|
+
export declare const isValid: (d?: OnBoardingData | null) => boolean;
|
|
23
|
+
export declare const getImage: (d: OnBoardingData | null | undefined, index: number) => OnBoardingImage | null;
|
|
24
|
+
//# sourceMappingURL=onboardingModel.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"onboardingModel.d.ts","sourceRoot":"","sources":["../../../../../src/data/models/onboardingModel.ts"],"names":[],"mappings":"AAAA,MAAM,MAAM,eAAe,GAAG;IAC5B,EAAE,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACnB,GAAG,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;CACrB,CAAC;AAEF,wBAAgB,uBAAuB,CACrC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACxB,eAAe,CAKjB;AAED,wBAAgB,2BAA2B,CAAC,IAAI,EAAE,GAAG,EAAE,GAAG,eAAe,EAAE,CAU1E;AAED,MAAM,MAAM,mBAAmB,GAAG;IAChC,KAAK,CAAC,EAAE,MAAM,GAAG,IAAI,CAAC;IACtB,MAAM,CAAC,EAAE,eAAe,EAAE,GAAG,IAAI,CAAC;CACnC,CAAC;AAEF,wBAAgB,uBAAuB,CAAC,IAAI,EAAE,GAAG,GAAG,mBAAmB,CAgBtE;AAED,MAAM,MAAM,cAAc,GAAG;IAC3B,GAAG,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;IACjC,KAAK,CAAC,EAAE,mBAAmB,GAAG,IAAI,CAAC;CACpC,CAAC;AAEF,wBAAgB,sBAAsB,CAAC,IAAI,EAAE,GAAG,GAAG,cAAc,CAsBhE;AAED,eAAO,MAAM,MAAM,GAAI,IAAI,cAAc,GAAG,IAAI,KAAG,eAAe,EAAE,GAAG,IAC3B,CAAC;AAC7C,eAAO,MAAM,KAAK,GAAI,IAAI,cAAc,GAAG,IAAI,KAAG,MAAM,GAAG,IACjB,CAAC;AAC3C,eAAO,MAAM,QAAQ,GAAI,IAAI,cAAc,GAAG,IAAI,KAAG,OAClC,CAAC;AACpB,eAAO,MAAM,SAAS,GAAI,IAAI,cAAc,GAAG,IAAI,KAAG,OACT,CAAC;AAC9C,eAAO,MAAM,UAAU,GAAI,IAAI,cAAc,GAAG,IAAI,KAAG,MAC/B,CAAC;AACzB,eAAO,MAAM,OAAO,GAAI,IAAI,cAAc,GAAG,IAAI,KAAG,OAEX,CAAC;AAC1C,eAAO,MAAM,QAAQ,GACnB,GAAG,cAAc,GAAG,IAAI,GAAG,SAAS,EACpC,OAAO,MAAM,KACZ,eAAe,GAAG,IAIpB,CAAC"}
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
export declare enum Environment {
|
|
2
|
+
production = "production",
|
|
3
|
+
staging = "staging"
|
|
4
|
+
}
|
|
5
|
+
export declare class ApiClient {
|
|
6
|
+
private static readonly baseUrls;
|
|
7
|
+
private baseUrl;
|
|
8
|
+
private interceptors;
|
|
9
|
+
constructor(environment?: Environment);
|
|
10
|
+
get(endpoint: string, params?: Record<string, any>): Promise<any>;
|
|
11
|
+
post(endpoint: string, data?: any, params?: Record<string, any>): Promise<any>;
|
|
12
|
+
put(endpoint: string, data?: any, params?: Record<string, any>): Promise<any>;
|
|
13
|
+
delete(endpoint: string, data?: any, params?: Record<string, any>): Promise<any>;
|
|
14
|
+
private request;
|
|
15
|
+
private buildUrl;
|
|
16
|
+
}
|
|
17
|
+
//# sourceMappingURL=apiClient.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiClient.d.ts","sourceRoot":"","sources":["../../../../../src/data/network/apiClient.ts"],"names":[],"mappings":"AAYA,oBAAY,WAAW;IACrB,UAAU,eAAe;IACzB,OAAO,YAAY;CACpB;AAED,qBAAa,SAAS;IACpB,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,QAAQ,CAG9B;IAEF,OAAO,CAAC,OAAO,CAAS;IACxB,OAAO,CAAC,YAAY,CAAa;gBAErB,WAAW,GAAE,WAAoC;IAYvD,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,OAAO,CAAC,GAAG,CAAC;IAIjE,IAAI,CACR,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,OAAO,CAAC,GAAG,CAAC;IAIT,GAAG,CACP,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,OAAO,CAAC,GAAG,CAAC;IAIT,MAAM,CACV,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE,GAAG,EACV,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAC3B,OAAO,CAAC,GAAG,CAAC;YAID,OAAO;IAmErB,OAAO,CAAC,QAAQ;CAcjB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiEndpoints.d.ts","sourceRoot":"","sources":["../../../../../src/data/network/apiEndpoints.ts"],"names":[],"mappings":"AAAA,eAAO,MAAM,YAAY;;CAEf,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiExceptionHandler.d.ts","sourceRoot":"","sources":["../../../../../src/data/network/apiExceptionHandler.ts"],"names":[],"mappings":"AAAA,wBAAgB,eAAe,CAAC,MAAM,CAAC,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,GAAG,MAAM,CAWtE;AAED,wBAAgB,eAAe,IAAI,MAAM,CAExC"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { ApiClient } from './apiClient';
|
|
2
|
+
import type { ApiResponse } from '../models/apiResponse';
|
|
3
|
+
export declare enum CacheStrategy {
|
|
4
|
+
cache = "cache",
|
|
5
|
+
cacheOnly = "cacheOnly",
|
|
6
|
+
network = "network",
|
|
7
|
+
normal = "normal"
|
|
8
|
+
}
|
|
9
|
+
export declare class ApiRepository {
|
|
10
|
+
private readonly apiClient;
|
|
11
|
+
constructor(apiClient: ApiClient);
|
|
12
|
+
getData<T>(endpoint: string, opts?: {
|
|
13
|
+
cacheStrategy?: CacheStrategy;
|
|
14
|
+
params?: Record<string, any>;
|
|
15
|
+
storageKeyPrefix?: string;
|
|
16
|
+
}): AsyncGenerator<ApiResponse<T | null>, void, unknown>;
|
|
17
|
+
private fetchFromNetwork;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=apiRepository.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiRepository.d.ts","sourceRoot":"","sources":["../../../../../src/data/network/apiRepository.ts"],"names":[],"mappings":"AACA,OAAO,EAAE,SAAS,EAAE,MAAM,aAAa,CAAC;AAGxC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AASzD,oBAAY,aAAa;IACvB,KAAK,UAAU;IACf,SAAS,cAAc;IACvB,OAAO,YAAY;IACnB,MAAM,WAAW;CAClB;AAED,qBAAa,aAAa;IACxB,OAAO,CAAC,QAAQ,CAAC,SAAS,CAAY;gBAE1B,SAAS,EAAE,SAAS;IAIzB,OAAO,CAAC,CAAC,EACd,QAAQ,EAAE,MAAM,EAChB,IAAI,CAAC,EAAE;QACL,aAAa,CAAC,EAAE,aAAa,CAAC;QAC9B,MAAM,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,CAAC;QAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;KAC3B,GACA,cAAc,CAAC,WAAW,CAAC,CAAC,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC;YAsDzC,gBAAgB;CAiB/B"}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import type { ApiResponse } from '../models/apiResponse';
|
|
2
|
+
import { type OnBoardingData } from '../models/onboardingModel';
|
|
3
|
+
import { CacheStrategy } from './apiRepository';
|
|
4
|
+
import { Environment } from './apiClient';
|
|
5
|
+
export declare class ApiService {
|
|
6
|
+
private repository;
|
|
7
|
+
constructor(environment?: Environment);
|
|
8
|
+
/**
|
|
9
|
+
* Get onboarding data using GenericRepository with stream
|
|
10
|
+
*/
|
|
11
|
+
getOnBoarding(opts?: {
|
|
12
|
+
cacheStrategy?: CacheStrategy;
|
|
13
|
+
}): AsyncGenerator<ApiResponse<OnBoardingData | null>, void, unknown>;
|
|
14
|
+
/**
|
|
15
|
+
* Clear all cached data
|
|
16
|
+
*/
|
|
17
|
+
clearCache(): Promise<void>;
|
|
18
|
+
}
|
|
19
|
+
//# sourceMappingURL=apiService.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"apiService.d.ts","sourceRoot":"","sources":["../../../../../src/data/network/apiService.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,uBAAuB,CAAC;AACzD,OAAO,EACL,KAAK,cAAc,EAEpB,MAAM,2BAA2B,CAAC;AAOnC,OAAO,EAAiB,aAAa,EAAE,MAAM,iBAAiB,CAAC;AAC/D,OAAO,EAAE,WAAW,EAAa,MAAM,aAAa,CAAC;AAErD,qBAAa,UAAU;IACrB,OAAO,CAAC,UAAU,CAAgB;gBAEtB,WAAW,GAAE,WAAoC;IAM7D;;OAEG;IACI,aAAa,CAAC,IAAI,CAAC,EAAE;QAC1B,aAAa,CAAC,EAAE,aAAa,CAAC;KAC/B,GAAG,cAAc,CAAC,WAAW,CAAC,cAAc,GAAG,IAAI,CAAC,EAAE,IAAI,EAAE,OAAO,CAAC;IAgCrE;;OAEG;IACG,UAAU,IAAI,OAAO,CAAC,IAAI,CAAC;CAIlC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare function parseToString(value: any): string | null;
|
|
2
|
+
export declare function parseToInt(value: any): number | null;
|
|
3
|
+
export declare function parseToDouble(value: any): number | null;
|
|
4
|
+
export declare function parseToBool(value: any): boolean | null;
|
|
5
|
+
export declare function parseToMap(value: any): Record<string, any> | null;
|
|
6
|
+
export declare function parseToList(value: any): any[] | null;
|
|
7
|
+
export declare function parseToStringList(value: any): string[] | null;
|
|
8
|
+
export declare function isNullOrEmpty(value: any): boolean;
|
|
9
|
+
export declare function safeParseForModel(data: any): any;
|
|
10
|
+
//# sourceMappingURL=dataTypeUtils.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"dataTypeUtils.d.ts","sourceRoot":"","sources":["../../../../../src/data/network/dataTypeUtils.ts"],"names":[],"mappings":"AAAA,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI,CAMvD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI,CAQpD;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,GAAG,IAAI,CAQvD;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,GAAG,IAAI,CAUtD;AAED,wBAAgB,UAAU,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GAAG,IAAI,CAMjE;AAED,wBAAgB,WAAW,CAAC,KAAK,EAAE,GAAG,GAAG,GAAG,EAAE,GAAG,IAAI,CAGpD;AAED,wBAAgB,iBAAiB,CAAC,KAAK,EAAE,GAAG,GAAG,MAAM,EAAE,GAAG,IAAI,CAQ7D;AAED,wBAAgB,aAAa,CAAC,KAAK,EAAE,GAAG,GAAG,OAAO,CAMjD;AAED,wBAAgB,iBAAiB,CAAC,IAAI,EAAE,GAAG,GAAG,GAAG,CAMhD"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare class AuthInterceptor {
|
|
2
|
+
private static readonly oauthSubIdKey;
|
|
3
|
+
private static readonly bodyMethods;
|
|
4
|
+
private static readonly excludedApis;
|
|
5
|
+
onRequest(options: any): Promise<any>;
|
|
6
|
+
private addAuthenticationData;
|
|
7
|
+
private addToQueryParameters;
|
|
8
|
+
private addToQueryParametersAndBody;
|
|
9
|
+
private addToRequestBody;
|
|
10
|
+
private shouldExcludeApi;
|
|
11
|
+
private getCurrentUserId;
|
|
12
|
+
}
|
|
13
|
+
//# sourceMappingURL=authInterceptor.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"authInterceptor.d.ts","sourceRoot":"","sources":["../../../../../../src/data/network/interceptors/authInterceptor.ts"],"names":[],"mappings":"AAKA,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,aAAa,CAAgB;IACrD,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,WAAW,CAAqC;IACxE,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAC,YAAY,CAAqB;IAEnD,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAiB3C,OAAO,CAAC,qBAAqB;IAU7B,OAAO,CAAC,oBAAoB;IAK5B,OAAO,CAAC,2BAA2B;IAKnC,OAAO,CAAC,gBAAgB;IAQxB,OAAO,CAAC,gBAAgB;YAUV,gBAAgB;CAW/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"errorInterceptor.d.ts","sourceRoot":"","sources":["../../../../../../src/data/network/interceptors/errorInterceptor.ts"],"names":[],"mappings":"AAGA,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG;CAQ/B"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"loggingInterceptor.d.ts","sourceRoot":"","sources":["../../../../../../src/data/network/interceptors/loggingInterceptor.ts"],"names":[],"mappings":"AAGA,qBAAa,kBAAkB;IAC7B,SAAS,CAAC,OAAO,EAAE,GAAG;IAOtB,UAAU,CAAC,QAAQ,EAAE,GAAG;CAIzB"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"networkInterceptor.d.ts","sourceRoot":"","sources":["../../../../../../src/data/network/interceptors/networkInterceptor.ts"],"names":[],"mappings":"AAMA,qBAAa,kBAAkB;IACvB,SAAS,CAAC,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;CAY5C"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"retryInterceptor.d.ts","sourceRoot":"","sources":["../../../../../../src/data/network/interceptors/retryInterceptor.ts"],"names":[],"mappings":"AAAA,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,QAAQ,CAAC,OAAO,CAAS;gBAErB,OAAO,GAAE,MAAU;IAIzB,OAAO,CAAC,GAAG,EAAE,GAAG,EAAE,OAAO,EAAE,GAAG,GAAG,OAAO,CAAC,GAAG,CAAC;IAWnD,OAAO,CAAC,WAAW;CAKpB"}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
export declare function storageGet(key: string): Promise<string | null>;
|
|
2
|
+
export declare function storageSet(key: string, value: string): Promise<void>;
|
|
3
|
+
export declare function storageRemove(key: string): Promise<void>;
|
|
4
|
+
export declare function storageGetJSON<T>(key: string): Promise<T | undefined>;
|
|
5
|
+
export declare function storageSetJSON(key: string, value: unknown): Promise<void>;
|
|
6
|
+
export declare function createStorageNamespace(ns: string): {
|
|
7
|
+
get: (key: string) => Promise<string | null>;
|
|
8
|
+
set: (key: string, value: string) => Promise<void>;
|
|
9
|
+
remove: (key: string) => Promise<void>;
|
|
10
|
+
getJSON: <T>(key: string) => Promise<T | undefined>;
|
|
11
|
+
setJSON: (key: string, value: unknown) => Promise<void>;
|
|
12
|
+
};
|
|
13
|
+
//# sourceMappingURL=asyncStorageManager.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"asyncStorageManager.d.ts","sourceRoot":"","sources":["../../../../../src/data/storage/asyncStorageManager.ts"],"names":[],"mappings":"AASA,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,GAAG,IAAI,CAAC,CAGpE;AAED,wBAAsB,UAAU,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAG1E;AAED,wBAAsB,aAAa,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAO9D;AAED,wBAAsB,cAAc,CAAC,CAAC,EAAE,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,CAAC,GAAG,SAAS,CAAC,CAQ3E;AAED,wBAAsB,cAAc,CAClC,GAAG,EAAE,MAAM,EACX,KAAK,EAAE,OAAO,GACb,OAAO,CAAC,IAAI,CAAC,CAEf;AAED,wBAAgB,sBAAsB,CAAC,EAAE,EAAE,MAAM;eAGlC,MAAM;eACN,MAAM,SAAS,MAAM;kBAClB,MAAM;cACV,CAAC,OAAO,MAAM;mBACT,MAAM,SAAS,OAAO;EAGxC"}
|