@revrag-ai/embed-react-native 1.0.13 → 1.0.15
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/dist/commonjs/api/api.error.js +233 -0
- package/dist/commonjs/api/api.error.js.map +1 -0
- package/dist/commonjs/api/api.js +38 -85
- package/dist/commonjs/api/api.js.map +1 -1
- package/dist/commonjs/components/Embed/EmbedButton.js +41 -20
- package/dist/commonjs/components/Embed/EmbedButton.js.map +1 -1
- package/dist/commonjs/components/styles/EmbedButton.style.js +181 -63
- package/dist/commonjs/components/styles/EmbedButton.style.js.map +1 -1
- package/dist/commonjs/events/embed.event.js +2 -1
- package/dist/commonjs/events/embed.event.js.map +1 -1
- package/dist/commonjs/hooks/initialize.js +2 -2
- package/dist/commonjs/hooks/initialize.js.map +1 -1
- package/dist/commonjs/hooks/voiceagent.js +12 -2
- package/dist/commonjs/hooks/voiceagent.js.map +1 -1
- package/dist/commonjs/index.js +7 -0
- package/dist/commonjs/index.js.map +1 -1
- package/dist/module/api/api.error.js +226 -0
- package/dist/module/api/api.error.js.map +1 -0
- package/dist/module/api/api.js +36 -84
- package/dist/module/api/api.js.map +1 -1
- package/dist/module/components/Embed/EmbedButton.js +41 -20
- package/dist/module/components/Embed/EmbedButton.js.map +1 -1
- package/dist/module/components/styles/EmbedButton.style.js +180 -62
- package/dist/module/components/styles/EmbedButton.style.js.map +1 -1
- package/dist/module/events/embed.event.js +2 -1
- package/dist/module/events/embed.event.js.map +1 -1
- package/dist/module/hooks/initialize.js +2 -2
- package/dist/module/hooks/initialize.js.map +1 -1
- package/dist/module/hooks/voiceagent.js +12 -2
- package/dist/module/hooks/voiceagent.js.map +1 -1
- package/dist/module/index.js +2 -1
- package/dist/module/index.js.map +1 -1
- package/dist/typescript/src/api/api.d.ts +6 -0
- package/dist/typescript/src/api/api.d.ts.map +1 -1
- package/dist/typescript/src/api/api.error.d.ts +107 -0
- package/dist/typescript/src/api/api.error.d.ts.map +1 -0
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts +7 -0
- package/dist/typescript/src/components/Embed/EmbedButton.d.ts.map +1 -1
- package/dist/typescript/src/components/styles/EmbedButton.style.d.ts +50 -0
- package/dist/typescript/src/components/styles/EmbedButton.style.d.ts.map +1 -1
- package/dist/typescript/src/events/embed.event.d.ts +2 -1
- package/dist/typescript/src/events/embed.event.d.ts.map +1 -1
- package/dist/typescript/src/hooks/initialize.d.ts.map +1 -1
- package/dist/typescript/src/hooks/types/voiceAgent.types.d.ts +1 -0
- package/dist/typescript/src/hooks/types/voiceAgent.types.d.ts.map +1 -1
- package/dist/typescript/src/hooks/voiceagent.d.ts.map +1 -1
- package/dist/typescript/src/index.d.ts +2 -1
- package/dist/typescript/src/index.d.ts.map +1 -1
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_livekitClient","require","_react","_embedEvent","_api","_storeKey","roomInstance","isConnecting","isDisconnecting","hasListeners","connectionAttempts","stableConnectionTimerId","MAX_CONNECTION_ATTEMPTS","getRoomInstance","Room","adaptiveStream","dynacast","publishDefaults","simulcast","resetConnectionAttempts","clearTimeout","resetRoomState","state","ConnectionState","Disconnected","disconnect","finally","e","
|
|
1
|
+
{"version":3,"names":["_livekitClient","require","_react","_embedEvent","_api","_storeKey","roomInstance","isConnecting","isDisconnecting","hasListeners","connectionAttempts","stableConnectionTimerId","MAX_CONNECTION_ATTEMPTS","getRoomInstance","Room","adaptiveStream","dynacast","publishDefaults","simulcast","resetConnectionAttempts","clearTimeout","resetRoomState","state","ConnectionState","Disconnected","disconnect","finally","e","useVoiceAgent","isLoading","setIsLoading","useState","error","setError","tokenDetails","setTokenDetails","isMicMuted","setIsMicMuted","connectionState","setConnectionState","room","setupRoomListeners","handleConnectionChange","Connected","handleTrackSubscribed","track","kind","setVolume","on","Error","message","useEffect","connectToRoom","Connecting","connect","server_url","token","autoSubscribe","err","includes","generateVoiceToken","userData","getAgentData","EventKeys","USER_DATA","apiService","APIService","getInstance","response","getTokenDetails","app_user_id","call_type","data","endCall","muteMic","localParticipant","setMicrophoneEnabled","unmuteMic","cleanup","getPopupDescription","initializeVoiceAgent","roomRef","current","exports"],"sourceRoot":"../../../src","sources":["hooks/voiceagent.ts"],"mappings":"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","ignoreList":[]}
|
package/dist/commonjs/index.js
CHANGED
|
@@ -21,6 +21,12 @@ Object.defineProperty(exports, "EmbedEventKeys", {
|
|
|
21
21
|
return _embedEvent.EventKeys;
|
|
22
22
|
}
|
|
23
23
|
});
|
|
24
|
+
Object.defineProperty(exports, "checkPermissions", {
|
|
25
|
+
enumerable: true,
|
|
26
|
+
get: function () {
|
|
27
|
+
return _permision.checkPermissions;
|
|
28
|
+
}
|
|
29
|
+
});
|
|
24
30
|
Object.defineProperty(exports, "useInitialize", {
|
|
25
31
|
enumerable: true,
|
|
26
32
|
get: function () {
|
|
@@ -30,5 +36,6 @@ Object.defineProperty(exports, "useInitialize", {
|
|
|
30
36
|
var _EmbedButton = require("./components/Embed/EmbedButton.js");
|
|
31
37
|
var _initialize = require("./hooks/initialize.js");
|
|
32
38
|
var _embedEvent = _interopRequireWildcard(require("./events/embed.event.js"));
|
|
39
|
+
var _permision = require("./utils/permision.js");
|
|
33
40
|
function _interopRequireWildcard(e, t) { if ("function" == typeof WeakMap) var r = new WeakMap(), n = new WeakMap(); return (_interopRequireWildcard = function (e, t) { if (!t && e && e.__esModule) return e; var o, i, f = { __proto__: null, default: e }; if (null === e || "object" != typeof e && "function" != typeof e) return f; if (o = t ? n : r) { if (o.has(e)) return o.get(e); o.set(e, f); } for (const t in e) "default" !== t && {}.hasOwnProperty.call(e, t) && ((i = (o = Object.defineProperty) && Object.getOwnPropertyDescriptor(e, t)) && (i.get || i.set) ? o(f, t, i) : f[t] = e[t]); return f; })(e, t); }
|
|
34
41
|
//# sourceMappingURL=index.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["_EmbedButton","require","_initialize","_embedEvent","_interopRequireWildcard","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":"
|
|
1
|
+
{"version":3,"names":["_EmbedButton","require","_initialize","_embedEvent","_interopRequireWildcard","_permision","e","t","WeakMap","r","n","__esModule","o","i","f","__proto__","default","has","get","set","hasOwnProperty","call","Object","defineProperty","getOwnPropertyDescriptor"],"sourceRoot":"../../src","sources":["index.tsx"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;AAAA,IAAAA,YAAA,GAAAC,OAAA;AACA,IAAAC,WAAA,GAAAD,OAAA;AACA,IAAAE,WAAA,GAAAC,uBAAA,CAAAH,OAAA;AAOA,IAAAI,UAAA,GAAAJ,OAAA;AAAqD,SAAAG,wBAAAE,CAAA,EAAAC,CAAA,6BAAAC,OAAA,MAAAC,CAAA,OAAAD,OAAA,IAAAE,CAAA,OAAAF,OAAA,YAAAJ,uBAAA,YAAAA,CAAAE,CAAA,EAAAC,CAAA,SAAAA,CAAA,IAAAD,CAAA,IAAAA,CAAA,CAAAK,UAAA,SAAAL,CAAA,MAAAM,CAAA,EAAAC,CAAA,EAAAC,CAAA,KAAAC,SAAA,QAAAC,OAAA,EAAAV,CAAA,iBAAAA,CAAA,uBAAAA,CAAA,yBAAAA,CAAA,SAAAQ,CAAA,MAAAF,CAAA,GAAAL,CAAA,GAAAG,CAAA,GAAAD,CAAA,QAAAG,CAAA,CAAAK,GAAA,CAAAX,CAAA,UAAAM,CAAA,CAAAM,GAAA,CAAAZ,CAAA,GAAAM,CAAA,CAAAO,GAAA,CAAAb,CAAA,EAAAQ,CAAA,gBAAAP,CAAA,IAAAD,CAAA,gBAAAC,CAAA,OAAAa,cAAA,CAAAC,IAAA,CAAAf,CAAA,EAAAC,CAAA,OAAAM,CAAA,IAAAD,CAAA,GAAAU,MAAA,CAAAC,cAAA,KAAAD,MAAA,CAAAE,wBAAA,CAAAlB,CAAA,EAAAC,CAAA,OAAAM,CAAA,CAAAK,GAAA,IAAAL,CAAA,CAAAM,GAAA,IAAAP,CAAA,CAAAE,CAAA,EAAAP,CAAA,EAAAM,CAAA,IAAAC,CAAA,CAAAP,CAAA,IAAAD,CAAA,CAAAC,CAAA,WAAAO,CAAA,KAAAR,CAAA,EAAAC,CAAA","ignoreList":[]}
|
|
@@ -0,0 +1,226 @@
|
|
|
1
|
+
"use strict";
|
|
2
|
+
|
|
3
|
+
/**
|
|
4
|
+
* API Error handling system
|
|
5
|
+
* Centralizes all error handling logic with status codes and definitions
|
|
6
|
+
*/
|
|
7
|
+
|
|
8
|
+
/**
|
|
9
|
+
* HTTP Status Code definitions
|
|
10
|
+
*/
|
|
11
|
+
export const HTTP_STATUS_CODES = {
|
|
12
|
+
// 2xx Success
|
|
13
|
+
200: 'OK',
|
|
14
|
+
201: 'Created',
|
|
15
|
+
204: 'No Content',
|
|
16
|
+
// 4xx Client Errors
|
|
17
|
+
400: 'Bad Request',
|
|
18
|
+
401: 'Unauthorized',
|
|
19
|
+
403: 'Forbidden',
|
|
20
|
+
404: 'Not Found',
|
|
21
|
+
408: 'Request Timeout',
|
|
22
|
+
422: 'Unprocessable Entity',
|
|
23
|
+
429: 'Too Many Requests',
|
|
24
|
+
// 5xx Server Errors
|
|
25
|
+
500: 'Internal Server Error',
|
|
26
|
+
502: 'Bad Gateway',
|
|
27
|
+
503: 'Service Unavailable',
|
|
28
|
+
504: 'Gateway Timeout'
|
|
29
|
+
};
|
|
30
|
+
|
|
31
|
+
/**
|
|
32
|
+
* Predefined error types and their definitions
|
|
33
|
+
*/
|
|
34
|
+
export const ERROR_TYPES = {
|
|
35
|
+
NETWORK: {
|
|
36
|
+
code: 'NETWORK_ERROR',
|
|
37
|
+
message: 'Network request failed. Please check your internet connection and try again.',
|
|
38
|
+
type: 'NETWORK'
|
|
39
|
+
},
|
|
40
|
+
ATS: {
|
|
41
|
+
code: 'ATS_ERROR',
|
|
42
|
+
message: 'Network request blocked by iOS App Transport Security. Please configure ATS exceptions in Info.plist for HTTP endpoints, or use HTTPS instead.',
|
|
43
|
+
type: 'ATS'
|
|
44
|
+
},
|
|
45
|
+
TIMEOUT: {
|
|
46
|
+
code: 'TIMEOUT_ERROR',
|
|
47
|
+
message: 'Request timeout. The API server may be slow to respond or unreachable.',
|
|
48
|
+
type: 'TIMEOUT'
|
|
49
|
+
},
|
|
50
|
+
AUTH: {
|
|
51
|
+
code: 'AUTH_ERROR',
|
|
52
|
+
message: 'Authentication failed. Please check your API credentials.',
|
|
53
|
+
type: 'AUTH'
|
|
54
|
+
},
|
|
55
|
+
SERVER: {
|
|
56
|
+
code: 'SERVER_ERROR',
|
|
57
|
+
message: 'Server error occurred. Please try again later.',
|
|
58
|
+
type: 'SERVER'
|
|
59
|
+
},
|
|
60
|
+
VALIDATION: {
|
|
61
|
+
code: 'VALIDATION_ERROR',
|
|
62
|
+
message: 'Invalid request data. Please check your input.',
|
|
63
|
+
type: 'VALIDATION'
|
|
64
|
+
},
|
|
65
|
+
UNKNOWN: {
|
|
66
|
+
code: 'UNKNOWN_ERROR',
|
|
67
|
+
message: 'An unknown error occurred. Please try again.',
|
|
68
|
+
type: 'UNKNOWN'
|
|
69
|
+
}
|
|
70
|
+
};
|
|
71
|
+
|
|
72
|
+
/**
|
|
73
|
+
* Enhanced error handler that categorizes and formats errors
|
|
74
|
+
*/
|
|
75
|
+
export class ApiErrorHandler {
|
|
76
|
+
/**
|
|
77
|
+
* Handle HTTP response errors
|
|
78
|
+
*/
|
|
79
|
+
static handleHttpError(response, responseData) {
|
|
80
|
+
const statusCode = response.status;
|
|
81
|
+
const statusText = HTTP_STATUS_CODES[statusCode] || 'Unknown Status';
|
|
82
|
+
|
|
83
|
+
// Extract error message from response data if available
|
|
84
|
+
const serverMessage = responseData?.error || responseData?.message || '';
|
|
85
|
+
|
|
86
|
+
// Determine error type based on status code
|
|
87
|
+
let errorType = 'SERVER';
|
|
88
|
+
let code;
|
|
89
|
+
let baseMessage;
|
|
90
|
+
if (statusCode >= 400 && statusCode < 500) {
|
|
91
|
+
if (statusCode === 401 || statusCode === 403) {
|
|
92
|
+
errorType = 'AUTH';
|
|
93
|
+
code = ERROR_TYPES.AUTH.code;
|
|
94
|
+
baseMessage = ERROR_TYPES.AUTH.message;
|
|
95
|
+
} else if (statusCode === 408) {
|
|
96
|
+
errorType = 'TIMEOUT';
|
|
97
|
+
code = ERROR_TYPES.TIMEOUT.code;
|
|
98
|
+
baseMessage = ERROR_TYPES.TIMEOUT.message;
|
|
99
|
+
} else if (statusCode === 422) {
|
|
100
|
+
errorType = 'VALIDATION';
|
|
101
|
+
code = ERROR_TYPES.VALIDATION.code;
|
|
102
|
+
baseMessage = ERROR_TYPES.VALIDATION.message;
|
|
103
|
+
} else {
|
|
104
|
+
errorType = 'VALIDATION';
|
|
105
|
+
code = ERROR_TYPES.VALIDATION.code;
|
|
106
|
+
baseMessage = ERROR_TYPES.VALIDATION.message;
|
|
107
|
+
}
|
|
108
|
+
} else {
|
|
109
|
+
code = ERROR_TYPES.SERVER.code;
|
|
110
|
+
baseMessage = ERROR_TYPES.SERVER.message;
|
|
111
|
+
}
|
|
112
|
+
return {
|
|
113
|
+
code,
|
|
114
|
+
message: serverMessage || `${baseMessage} (${statusCode}: ${statusText})`,
|
|
115
|
+
statusCode,
|
|
116
|
+
details: serverMessage ? `HTTP ${statusCode}: ${statusText}` : undefined,
|
|
117
|
+
type: errorType
|
|
118
|
+
};
|
|
119
|
+
}
|
|
120
|
+
|
|
121
|
+
/**
|
|
122
|
+
* Handle network and other runtime errors
|
|
123
|
+
*/
|
|
124
|
+
static handleRuntimeError(error, apiBaseUrl) {
|
|
125
|
+
const errorMessage = error.message.toLowerCase();
|
|
126
|
+
|
|
127
|
+
// iOS ATS related errors
|
|
128
|
+
if (errorMessage.includes('the resource could not be loaded') || errorMessage.includes('app transport security')) {
|
|
129
|
+
return {
|
|
130
|
+
...ERROR_TYPES.ATS,
|
|
131
|
+
message: `${ERROR_TYPES.ATS.message} Error: ${error.message}`,
|
|
132
|
+
details: `API endpoint: ${apiBaseUrl}`
|
|
133
|
+
};
|
|
134
|
+
}
|
|
135
|
+
|
|
136
|
+
// Network connectivity errors
|
|
137
|
+
if (errorMessage.includes('network request failed') || errorMessage.includes('failed to fetch') || errorMessage.includes('fetch')) {
|
|
138
|
+
return {
|
|
139
|
+
...ERROR_TYPES.NETWORK,
|
|
140
|
+
message: `${ERROR_TYPES.NETWORK.message} API endpoint: ${apiBaseUrl}. Error: ${error.message}`,
|
|
141
|
+
details: `Endpoint: ${apiBaseUrl}`
|
|
142
|
+
};
|
|
143
|
+
}
|
|
144
|
+
|
|
145
|
+
// Timeout errors
|
|
146
|
+
if (errorMessage.includes('timeout') || errorMessage.includes('aborted')) {
|
|
147
|
+
return {
|
|
148
|
+
...ERROR_TYPES.TIMEOUT,
|
|
149
|
+
message: `${ERROR_TYPES.TIMEOUT.message} Error: ${error.message}`,
|
|
150
|
+
details: `Endpoint: ${apiBaseUrl}`
|
|
151
|
+
};
|
|
152
|
+
}
|
|
153
|
+
|
|
154
|
+
// Authentication errors
|
|
155
|
+
if (errorMessage.includes('unauthorized') || errorMessage.includes('authentication') || errorMessage.includes('api key')) {
|
|
156
|
+
return {
|
|
157
|
+
...ERROR_TYPES.AUTH,
|
|
158
|
+
message: `${ERROR_TYPES.AUTH.message} Error: ${error.message}`
|
|
159
|
+
};
|
|
160
|
+
}
|
|
161
|
+
|
|
162
|
+
// Default to unknown error
|
|
163
|
+
return {
|
|
164
|
+
...ERROR_TYPES.UNKNOWN,
|
|
165
|
+
message: `${ERROR_TYPES.UNKNOWN.message} Error: ${error.message}`
|
|
166
|
+
};
|
|
167
|
+
}
|
|
168
|
+
|
|
169
|
+
/**
|
|
170
|
+
* Format error for API response
|
|
171
|
+
*/
|
|
172
|
+
static formatErrorResponse(apiError) {
|
|
173
|
+
return {
|
|
174
|
+
success: false,
|
|
175
|
+
error: apiError.message,
|
|
176
|
+
errorCode: apiError.code,
|
|
177
|
+
statusCode: apiError.statusCode,
|
|
178
|
+
type: apiError.type
|
|
179
|
+
};
|
|
180
|
+
}
|
|
181
|
+
|
|
182
|
+
/**
|
|
183
|
+
* Main error processing method
|
|
184
|
+
*/
|
|
185
|
+
static async processApiError(error, response, apiBaseUrl) {
|
|
186
|
+
let apiError;
|
|
187
|
+
if (response && !response.ok) {
|
|
188
|
+
// HTTP error - try to get response data
|
|
189
|
+
let responseData;
|
|
190
|
+
try {
|
|
191
|
+
responseData = await response.json();
|
|
192
|
+
} catch (e) {
|
|
193
|
+
// If JSON parsing fails, use response text or status
|
|
194
|
+
responseData = {
|
|
195
|
+
error: response.statusText
|
|
196
|
+
};
|
|
197
|
+
}
|
|
198
|
+
apiError = this.handleHttpError(response, responseData);
|
|
199
|
+
} else if (error instanceof Error) {
|
|
200
|
+
// Runtime error
|
|
201
|
+
apiError = this.handleRuntimeError(error, apiBaseUrl);
|
|
202
|
+
} else {
|
|
203
|
+
// Unknown error type
|
|
204
|
+
apiError = {
|
|
205
|
+
...ERROR_TYPES.UNKNOWN,
|
|
206
|
+
message: `${ERROR_TYPES.UNKNOWN.message} Details: ${String(error)}`
|
|
207
|
+
};
|
|
208
|
+
}
|
|
209
|
+
return this.formatErrorResponse(apiError);
|
|
210
|
+
}
|
|
211
|
+
}
|
|
212
|
+
|
|
213
|
+
/**
|
|
214
|
+
* Convenience function for processing API errors
|
|
215
|
+
*/
|
|
216
|
+
export const processApiError = async (error, response, apiBaseUrl) => {
|
|
217
|
+
return ApiErrorHandler.processApiError(error, response, apiBaseUrl);
|
|
218
|
+
};
|
|
219
|
+
|
|
220
|
+
/**
|
|
221
|
+
* Type guard to check if a response is an error response
|
|
222
|
+
*/
|
|
223
|
+
export const isApiErrorResponse = response => {
|
|
224
|
+
return response && typeof response === 'object' && response.success === false;
|
|
225
|
+
};
|
|
226
|
+
//# sourceMappingURL=api.error.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"names":["HTTP_STATUS_CODES","ERROR_TYPES","NETWORK","code","message","type","ATS","TIMEOUT","AUTH","SERVER","VALIDATION","UNKNOWN","ApiErrorHandler","handleHttpError","response","responseData","statusCode","status","statusText","serverMessage","error","errorType","baseMessage","details","undefined","handleRuntimeError","apiBaseUrl","errorMessage","toLowerCase","includes","formatErrorResponse","apiError","success","errorCode","processApiError","ok","json","e","Error","String","isApiErrorResponse"],"sourceRoot":"../../../src","sources":["api/api.error.ts"],"mappings":"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","ignoreList":[]}
|
package/dist/module/api/api.js
CHANGED
|
@@ -1,6 +1,7 @@
|
|
|
1
1
|
"use strict";
|
|
2
2
|
|
|
3
3
|
import { getAgentData, setAgentData } from "../store/store.key.js";
|
|
4
|
+
import { processApiError } from "./api.error.js";
|
|
4
5
|
|
|
5
6
|
/**
|
|
6
7
|
* APIService class that ensures proper initialization before API calls
|
|
@@ -66,50 +67,25 @@ export class APIService {
|
|
|
66
67
|
* @returns Promise with registration response
|
|
67
68
|
*/
|
|
68
69
|
async registerOnInitialize() {
|
|
70
|
+
let response;
|
|
69
71
|
try {
|
|
70
72
|
await this.ensureInitialized();
|
|
71
73
|
const headers = await this.getHeaders();
|
|
72
|
-
|
|
74
|
+
response = await fetch(`${this.apiBaseUrl}/embedded-agent/initialize`, {
|
|
73
75
|
method: 'GET',
|
|
74
76
|
headers: headers
|
|
75
77
|
});
|
|
76
78
|
const data = await response.json();
|
|
77
|
-
await setAgentData(data, '@config_data');
|
|
78
79
|
if (!response.ok) {
|
|
79
|
-
|
|
80
|
-
throw new Error(data.error || 'Registration failed');
|
|
80
|
+
return await processApiError(null, response, this.apiBaseUrl || undefined);
|
|
81
81
|
}
|
|
82
|
+
await setAgentData(data, '@config_data');
|
|
82
83
|
return {
|
|
83
84
|
success: true,
|
|
84
85
|
data: data
|
|
85
86
|
};
|
|
86
87
|
} catch (error) {
|
|
87
|
-
|
|
88
|
-
|
|
89
|
-
// Enhanced error handling for common iOS network issues
|
|
90
|
-
let errorMessage = 'Unknown error occurred';
|
|
91
|
-
if (error instanceof Error) {
|
|
92
|
-
errorMessage = error.message;
|
|
93
|
-
|
|
94
|
-
// iOS ATS related errors
|
|
95
|
-
if (error.message.includes('The resource could not be loaded') || error.message.includes('App Transport Security')) {
|
|
96
|
-
errorMessage = `Network request blocked by iOS App Transport Security. ` + `Please configure ATS exceptions in Info.plist for HTTP endpoints, ` + `or use HTTPS instead. Error: ${error.message}`;
|
|
97
|
-
}
|
|
98
|
-
|
|
99
|
-
// Network connectivity errors
|
|
100
|
-
if (error.message.includes('Network request failed') || error.message.includes('Failed to fetch')) {
|
|
101
|
-
errorMessage = `Network request failed. Please check your internet connection ` + `and ensure the API endpoint (${this.apiBaseUrl}) is accessible. ` + `Error: ${error.message}`;
|
|
102
|
-
}
|
|
103
|
-
|
|
104
|
-
// Timeout errors
|
|
105
|
-
if (error.message.includes('timeout')) {
|
|
106
|
-
errorMessage = `Request timeout. The API server may be slow to respond or unreachable. ` + `Error: ${error.message}`;
|
|
107
|
-
}
|
|
108
|
-
}
|
|
109
|
-
return {
|
|
110
|
-
success: false,
|
|
111
|
-
error: errorMessage
|
|
112
|
-
};
|
|
88
|
+
return await processApiError(error, response, this.apiBaseUrl || undefined);
|
|
113
89
|
}
|
|
114
90
|
}
|
|
115
91
|
|
|
@@ -119,50 +95,25 @@ export class APIService {
|
|
|
119
95
|
* @returns Promise with update response
|
|
120
96
|
*/
|
|
121
97
|
async updateUserData(params) {
|
|
98
|
+
let response;
|
|
122
99
|
try {
|
|
123
100
|
await this.ensureInitialized();
|
|
124
101
|
const headers = await this.getHeaders();
|
|
125
|
-
|
|
102
|
+
response = await fetch(`${this.apiBaseUrl}/embedded-agent/user-context/update?app_user_id=${params.data.app_user_id}`, {
|
|
126
103
|
method: 'PUT',
|
|
127
104
|
headers,
|
|
128
105
|
body: JSON.stringify({
|
|
129
106
|
[params.eventKey]: params.data
|
|
130
107
|
})
|
|
131
108
|
});
|
|
132
|
-
const data = await response.json();
|
|
133
109
|
if (!response.ok) {
|
|
134
|
-
|
|
110
|
+
return await processApiError(null, response, this.apiBaseUrl || undefined);
|
|
135
111
|
}
|
|
136
112
|
return {
|
|
137
113
|
success: true
|
|
138
114
|
};
|
|
139
115
|
} catch (error) {
|
|
140
|
-
|
|
141
|
-
|
|
142
|
-
// Enhanced error handling for common iOS network issues
|
|
143
|
-
let errorMessage = 'Unknown error occurred';
|
|
144
|
-
if (error instanceof Error) {
|
|
145
|
-
errorMessage = error.message;
|
|
146
|
-
|
|
147
|
-
// iOS ATS related errors
|
|
148
|
-
if (error.message.includes('The resource could not be loaded') || error.message.includes('App Transport Security')) {
|
|
149
|
-
errorMessage = `Network request blocked by iOS App Transport Security. ` + `Please configure ATS exceptions in Info.plist for HTTP endpoints, ` + `or use HTTPS instead. Error: ${error.message}`;
|
|
150
|
-
}
|
|
151
|
-
|
|
152
|
-
// Network connectivity errors
|
|
153
|
-
if (error.message.includes('Network request failed') || error.message.includes('Failed to fetch')) {
|
|
154
|
-
errorMessage = `Network request failed. Please check your internet connection ` + `and ensure the API endpoint (${this.apiBaseUrl}) is accessible. ` + `Error: ${error.message}`;
|
|
155
|
-
}
|
|
156
|
-
|
|
157
|
-
// Timeout errors
|
|
158
|
-
if (error.message.includes('timeout')) {
|
|
159
|
-
errorMessage = `Request timeout. The API server may be slow to respond or unreachable. ` + `Error: ${error.message}`;
|
|
160
|
-
}
|
|
161
|
-
}
|
|
162
|
-
return {
|
|
163
|
-
success: false,
|
|
164
|
-
error: errorMessage
|
|
165
|
-
};
|
|
116
|
+
return await processApiError(error, response, this.apiBaseUrl || undefined);
|
|
166
117
|
}
|
|
167
118
|
}
|
|
168
119
|
|
|
@@ -172,49 +123,46 @@ export class APIService {
|
|
|
172
123
|
* @returns Promise with token details
|
|
173
124
|
*/
|
|
174
125
|
async getTokenDetails(params) {
|
|
126
|
+
let response;
|
|
175
127
|
try {
|
|
176
128
|
await this.ensureInitialized();
|
|
177
129
|
const headers = await this.getHeaders();
|
|
178
|
-
|
|
130
|
+
response = await fetch(`${this.apiBaseUrl}/embedded-agent/token`, {
|
|
179
131
|
method: 'POST',
|
|
180
132
|
headers,
|
|
181
133
|
body: JSON.stringify(params)
|
|
182
134
|
});
|
|
183
135
|
const data = await response.json();
|
|
184
136
|
if (!response.ok) {
|
|
185
|
-
|
|
137
|
+
return await processApiError(null, response, this.apiBaseUrl || undefined);
|
|
186
138
|
}
|
|
187
139
|
return {
|
|
188
140
|
success: true,
|
|
189
141
|
data: data
|
|
190
142
|
};
|
|
191
143
|
} catch (error) {
|
|
192
|
-
|
|
193
|
-
|
|
194
|
-
|
|
195
|
-
|
|
196
|
-
|
|
197
|
-
|
|
198
|
-
|
|
199
|
-
|
|
200
|
-
|
|
201
|
-
|
|
202
|
-
|
|
203
|
-
|
|
204
|
-
|
|
205
|
-
|
|
206
|
-
|
|
207
|
-
}
|
|
208
|
-
|
|
209
|
-
// Timeout errors
|
|
210
|
-
if (error.message.includes('timeout')) {
|
|
211
|
-
errorMessage = `Request timeout. The API server may be slow to respond or unreachable. ` + `Error: ${error.message}`;
|
|
212
|
-
}
|
|
144
|
+
return await processApiError(error, response, this.apiBaseUrl || undefined);
|
|
145
|
+
}
|
|
146
|
+
}
|
|
147
|
+
async getPopupDescription(params) {
|
|
148
|
+
let response;
|
|
149
|
+
try {
|
|
150
|
+
await this.ensureInitialized();
|
|
151
|
+
const headers = await this.getHeaders();
|
|
152
|
+
response = await fetch(`${this.apiBaseUrl}/embedded-agent/dynamic-popup?app_user_id=${params.app_user_id}`, {
|
|
153
|
+
method: 'GET',
|
|
154
|
+
headers
|
|
155
|
+
});
|
|
156
|
+
const data = await response.json();
|
|
157
|
+
if (!response.ok) {
|
|
158
|
+
return await processApiError(null, response, this.apiBaseUrl || undefined);
|
|
213
159
|
}
|
|
214
160
|
return {
|
|
215
|
-
success:
|
|
216
|
-
|
|
161
|
+
success: true,
|
|
162
|
+
data: data
|
|
217
163
|
};
|
|
164
|
+
} catch (error) {
|
|
165
|
+
return await processApiError(error, response, this.apiBaseUrl || undefined);
|
|
218
166
|
}
|
|
219
167
|
}
|
|
220
168
|
}
|
|
@@ -236,4 +184,8 @@ export const getTokenDetails = async params => {
|
|
|
236
184
|
const apiService = APIService.getInstance();
|
|
237
185
|
return await apiService.getTokenDetails(params);
|
|
238
186
|
};
|
|
187
|
+
export const getPopupDescription = async params => {
|
|
188
|
+
const apiService = APIService.getInstance();
|
|
189
|
+
return await apiService.getPopupDescription(params);
|
|
190
|
+
};
|
|
239
191
|
//# sourceMappingURL=api.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"names":["getAgentData","setAgentData","APIService","instance","apiBaseUrl","isInitialized","constructor","getInstance","initialize","AgentData","embedUrl","Error","ensureInitialized","getHeaders","apiKey","registerOnInitialize","
|
|
1
|
+
{"version":3,"names":["getAgentData","setAgentData","processApiError","APIService","instance","apiBaseUrl","isInitialized","constructor","getInstance","initialize","AgentData","embedUrl","Error","ensureInitialized","getHeaders","apiKey","registerOnInitialize","response","headers","fetch","method","data","json","ok","undefined","success","error","updateUserData","params","app_user_id","body","JSON","stringify","eventKey","getTokenDetails","getPopupDescription","initializeApi","apiService"],"sourceRoot":"../../../src","sources":["api/api.ts"],"mappings":"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","ignoreList":[]}
|