@esolve/ng-esolve-connect 0.8.0 → 0.9.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/esm2020/lib/account/esolve-account.service.mjs +81 -1
- package/esm2020/lib/account/esolve-change-password-result.mjs +8 -0
- package/esm2020/lib/account/esolve-forgot-password-response.mjs +2 -0
- package/esm2020/lib/account/esolve-reset-password-result.mjs +11 -0
- package/esm2020/lib/payment/esolve-payment.service.mjs +21 -1
- package/esm2020/lib/shared/error-handler/esolve-error-handler.service.mjs +56 -25
- package/esm2020/lib/shared/esolve-response.mjs +1 -1
- package/esm2020/lib/shared/esolve-result.mjs +8 -0
- package/esm2020/public-api.mjs +4 -1
- package/fesm2015/esolve-ng-esolve-connect.mjs +178 -25
- package/fesm2015/esolve-ng-esolve-connect.mjs.map +1 -1
- package/fesm2020/esolve-ng-esolve-connect.mjs +178 -25
- package/fesm2020/esolve-ng-esolve-connect.mjs.map +1 -1
- package/lib/account/esolve-account.service.d.ts +10 -3
- package/lib/account/esolve-change-password-result.d.ts +6 -0
- package/lib/account/esolve-forgot-password-response.d.ts +7 -0
- package/lib/account/esolve-reset-password-result.d.ts +9 -0
- package/lib/payment/esolve-payment.service.d.ts +2 -0
- package/lib/shared/error-handler/esolve-error-handler.service.d.ts +7 -2
- package/lib/shared/esolve-response.d.ts +15 -9
- package/lib/shared/esolve-result.d.ts +6 -0
- package/package.json +1 -1
- package/public-api.d.ts +3 -0
|
@@ -195,6 +195,14 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
|
|
|
195
195
|
}]
|
|
196
196
|
}] });
|
|
197
197
|
|
|
198
|
+
class EsolveResult {
|
|
199
|
+
constructor(status, code, message) {
|
|
200
|
+
this.status = status;
|
|
201
|
+
this.code = code;
|
|
202
|
+
this.message = message;
|
|
203
|
+
}
|
|
204
|
+
}
|
|
205
|
+
|
|
198
206
|
class EsolveHttpError {
|
|
199
207
|
constructor(type, message, error_code) {
|
|
200
208
|
this.type = type;
|
|
@@ -205,11 +213,62 @@ class EsolveHttpError {
|
|
|
205
213
|
|
|
206
214
|
class EsolveErrorHandlerService {
|
|
207
215
|
constructor() { }
|
|
216
|
+
handleHttpPostError(service_type, errorRes) {
|
|
217
|
+
if (!(errorRes instanceof HttpErrorResponse) &&
|
|
218
|
+
!('service_type' in errorRes) &&
|
|
219
|
+
(('id' in errorRes) &&
|
|
220
|
+
('esolve_id' in errorRes) &&
|
|
221
|
+
('transaction_type' in errorRes) &&
|
|
222
|
+
('status' in errorRes) &&
|
|
223
|
+
('log' in errorRes))) {
|
|
224
|
+
return throwError(this.parsePostErrors(errorRes));
|
|
225
|
+
}
|
|
226
|
+
return this.handleHttpError(service_type, errorRes);
|
|
227
|
+
}
|
|
228
|
+
handleHttpDeleteError(service_type, errorRes) {
|
|
229
|
+
const is_not_base = (!(errorRes instanceof HttpErrorResponse) &&
|
|
230
|
+
!('service_type' in errorRes) &&
|
|
231
|
+
(('id' in errorRes) &&
|
|
232
|
+
('status' in errorRes) &&
|
|
233
|
+
('message' in errorRes) &&
|
|
234
|
+
('code' in errorRes)));
|
|
235
|
+
if (is_not_base) {
|
|
236
|
+
return throwError(this.parseDeleteError(errorRes));
|
|
237
|
+
}
|
|
238
|
+
return this.handleHttpError(service_type, errorRes);
|
|
239
|
+
}
|
|
240
|
+
handleHttpError(service_type, errorRes) {
|
|
241
|
+
if (errorRes instanceof HttpErrorResponse) {
|
|
242
|
+
if (errorRes.status === 500) {
|
|
243
|
+
const server_error = errorRes.error;
|
|
244
|
+
if (('service_type' in server_error) &&
|
|
245
|
+
(server_error.service_type === service_type)) {
|
|
246
|
+
return throwError(this.parseException(server_error));
|
|
247
|
+
}
|
|
248
|
+
}
|
|
249
|
+
}
|
|
250
|
+
else {
|
|
251
|
+
if (('service_type' in errorRes) &&
|
|
252
|
+
(errorRes.service_type === service_type)) {
|
|
253
|
+
if (errorRes.type === 'exception') {
|
|
254
|
+
return throwError(this.parseException(errorRes));
|
|
255
|
+
}
|
|
256
|
+
else if (errorRes.type === 'error') {
|
|
257
|
+
return throwError(this.parseResponseError(errorRes));
|
|
258
|
+
}
|
|
259
|
+
}
|
|
260
|
+
}
|
|
261
|
+
return throwError(errorRes);
|
|
262
|
+
}
|
|
208
263
|
parseException(exception) {
|
|
209
264
|
const error = new EsolveHttpError('exception', exception.message || 'Unknown exception has occurred', exception.additional_data.exception_type || 'unknown');
|
|
210
265
|
return error;
|
|
211
266
|
}
|
|
212
|
-
|
|
267
|
+
parseResponseError(exception) {
|
|
268
|
+
const error = new EsolveHttpError('error', exception.message || 'Unknown error has occurred', exception.code || 'unknown');
|
|
269
|
+
return error;
|
|
270
|
+
}
|
|
271
|
+
parsePostErrors(response) {
|
|
213
272
|
const error = new EsolveHttpError('error', 'Unknown error has occurred', 'unknown');
|
|
214
273
|
if ((response.status.state === 'none') && (response.log.length > 0)) {
|
|
215
274
|
error.error_code = 'no_response';
|
|
@@ -222,29 +281,9 @@ class EsolveErrorHandlerService {
|
|
|
222
281
|
}
|
|
223
282
|
return error;
|
|
224
283
|
}
|
|
225
|
-
|
|
226
|
-
|
|
227
|
-
|
|
228
|
-
const server_error = errorRes.error;
|
|
229
|
-
if ((server_error.service_type === service_type) ||
|
|
230
|
-
(server_error.type !== undefined) ||
|
|
231
|
-
(server_error.message !== undefined) ||
|
|
232
|
-
(server_error.additional_data !== undefined)) {
|
|
233
|
-
return throwError(this.parseException(server_error));
|
|
234
|
-
}
|
|
235
|
-
}
|
|
236
|
-
}
|
|
237
|
-
else {
|
|
238
|
-
if (errorRes.type !== undefined) {
|
|
239
|
-
if ((errorRes.type === 'exception') || (errorRes.type === 'error')) {
|
|
240
|
-
return throwError(this.parseException(errorRes));
|
|
241
|
-
}
|
|
242
|
-
}
|
|
243
|
-
else if (errorRes.transaction_type !== undefined) {
|
|
244
|
-
return throwError(this.parseErrors(errorRes));
|
|
245
|
-
}
|
|
246
|
-
}
|
|
247
|
-
return throwError(errorRes);
|
|
284
|
+
parseDeleteError(result) {
|
|
285
|
+
const error = new EsolveHttpError('error', result.message, result.code);
|
|
286
|
+
return error;
|
|
248
287
|
}
|
|
249
288
|
}
|
|
250
289
|
EsolveErrorHandlerService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: EsolveErrorHandlerService, deps: [], target: i0.ɵɵFactoryTarget.Injectable });
|
|
@@ -644,6 +683,23 @@ class EsolveRegistrationResult extends EsolveResponseResult {
|
|
|
644
683
|
}
|
|
645
684
|
}
|
|
646
685
|
|
|
686
|
+
class EsolveChangePasswordResult extends EsolveResponseResult {
|
|
687
|
+
constructor(response) {
|
|
688
|
+
super(response);
|
|
689
|
+
this.password_updated = (response.status.state === 'success');
|
|
690
|
+
}
|
|
691
|
+
}
|
|
692
|
+
|
|
693
|
+
class EsolveResetPasswordResult extends EsolveResponseResult {
|
|
694
|
+
constructor(response) {
|
|
695
|
+
super(response);
|
|
696
|
+
this.id = response.esolve_id;
|
|
697
|
+
this.reset_success = response.reset_success;
|
|
698
|
+
this.password_matches_old = response.password_matches_old;
|
|
699
|
+
this.login_required = response.login_required;
|
|
700
|
+
}
|
|
701
|
+
}
|
|
702
|
+
|
|
647
703
|
class EsolveAccountService {
|
|
648
704
|
constructor(config, http, sessionService, errorHandler, responseHandler) {
|
|
649
705
|
this.config = config;
|
|
@@ -756,6 +812,25 @@ class EsolveAccountService {
|
|
|
756
812
|
return this.processUserAddress(response.records);
|
|
757
813
|
}));
|
|
758
814
|
}
|
|
815
|
+
deleteAddress(id) {
|
|
816
|
+
return this.http.delete(`${this.config.api_url}/service/delete-address.php`, {
|
|
817
|
+
params: {
|
|
818
|
+
ws_id: this.config.wsid,
|
|
819
|
+
id: id
|
|
820
|
+
},
|
|
821
|
+
responseType: 'json',
|
|
822
|
+
observe: 'body'
|
|
823
|
+
}).pipe(map(http_response => {
|
|
824
|
+
if ((http_response.result === undefined) ||
|
|
825
|
+
(http_response.result === null) ||
|
|
826
|
+
(http_response.result.status !== 'success')) {
|
|
827
|
+
throw http_response;
|
|
828
|
+
}
|
|
829
|
+
return new EsolveResult(http_response.result.status, http_response.result.code, http_response.result.message);
|
|
830
|
+
}), catchError((errorRes) => {
|
|
831
|
+
return this.errorHandler.handleHttpPostError('delete-address', errorRes);
|
|
832
|
+
}));
|
|
833
|
+
}
|
|
759
834
|
register(user_registration) {
|
|
760
835
|
const body = {
|
|
761
836
|
user: user_registration
|
|
@@ -778,6 +853,64 @@ class EsolveAccountService {
|
|
|
778
853
|
return this.errorHandler.handleHttpPostError('set-registration', errorRes);
|
|
779
854
|
}));
|
|
780
855
|
}
|
|
856
|
+
changePassword(password, confirm_password) {
|
|
857
|
+
const body = {
|
|
858
|
+
password,
|
|
859
|
+
confirm_password
|
|
860
|
+
};
|
|
861
|
+
return this.http.post(`${this.config.api_url}/service/set-change-password.php`, body, {
|
|
862
|
+
headers: {
|
|
863
|
+
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;'
|
|
864
|
+
},
|
|
865
|
+
params: {
|
|
866
|
+
ws_id: this.config.wsid
|
|
867
|
+
},
|
|
868
|
+
responseType: 'json',
|
|
869
|
+
observe: 'body'
|
|
870
|
+
}).pipe(map(http_response => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
|
|
871
|
+
return new EsolveChangePasswordResult(response);
|
|
872
|
+
})), catchError((errorRes) => {
|
|
873
|
+
return this.errorHandler.handleHttpPostError('set-change-password', errorRes);
|
|
874
|
+
}));
|
|
875
|
+
}
|
|
876
|
+
sendForgotPasswordRequest(email) {
|
|
877
|
+
return this.http.get(`${this.config.api_url}/service/get-forgot-password.php`, {
|
|
878
|
+
params: {
|
|
879
|
+
ws_id: this.config.wsid,
|
|
880
|
+
email: email
|
|
881
|
+
}
|
|
882
|
+
}).pipe(map(response => {
|
|
883
|
+
if ((response.records === undefined) ||
|
|
884
|
+
!('reset_link_sent' in response.records)) {
|
|
885
|
+
throw response;
|
|
886
|
+
}
|
|
887
|
+
return response.records.reset_link_sent;
|
|
888
|
+
}));
|
|
889
|
+
}
|
|
890
|
+
resetPassword(reset_key, password, confirm_password, auto_login = true) {
|
|
891
|
+
return this.http.post(`${this.config.api_url}/service/set-forgot-password.php`, {
|
|
892
|
+
reset_key,
|
|
893
|
+
password,
|
|
894
|
+
confirm_password,
|
|
895
|
+
auto_login
|
|
896
|
+
}, {
|
|
897
|
+
headers: {
|
|
898
|
+
'Content-Type': 'application/x-www-form-urlencoded;charset=utf-8;'
|
|
899
|
+
},
|
|
900
|
+
params: {
|
|
901
|
+
ws_id: this.config.wsid
|
|
902
|
+
},
|
|
903
|
+
responseType: 'json',
|
|
904
|
+
observe: 'body'
|
|
905
|
+
}).pipe(map(http_response => this.responseHandler.validateSingleHttpResponse(http_response, (response) => {
|
|
906
|
+
if (!response.login_required) {
|
|
907
|
+
this.sessionService.handleUpdateSession(response.esolve_id);
|
|
908
|
+
}
|
|
909
|
+
return new EsolveResetPasswordResult(response);
|
|
910
|
+
})), catchError((errorRes) => {
|
|
911
|
+
return this.errorHandler.handleHttpPostError('set-forgot-password', errorRes);
|
|
912
|
+
}));
|
|
913
|
+
}
|
|
781
914
|
}
|
|
782
915
|
EsolveAccountService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: EsolveAccountService, deps: [{ token: ESOLVE_CONNECT_CONFIG }, { token: i1$1.HttpClient }, { token: EsolveSessionService }, { token: EsolveErrorHandlerService }, { token: EsolveResponseHandlerService }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
783
916
|
EsolveAccountService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "13.0.0", ngImport: i0, type: EsolveAccountService, providedIn: 'root' });
|
|
@@ -2290,6 +2423,25 @@ class EsolvePaymentService {
|
|
|
2290
2423
|
return this.errorHandler.handleHttpPostError('set-vault', errorRes);
|
|
2291
2424
|
}));
|
|
2292
2425
|
}
|
|
2426
|
+
deleteVaultItem(id) {
|
|
2427
|
+
return this.http.delete(`${this.config.api_url}/service/delete-vault.php`, {
|
|
2428
|
+
params: {
|
|
2429
|
+
ws_id: this.config.wsid,
|
|
2430
|
+
id: id
|
|
2431
|
+
},
|
|
2432
|
+
responseType: 'json',
|
|
2433
|
+
observe: 'body'
|
|
2434
|
+
}).pipe(map(http_response => {
|
|
2435
|
+
if ((http_response.result === undefined) ||
|
|
2436
|
+
(http_response.result === null) ||
|
|
2437
|
+
(http_response.result.status !== 'success')) {
|
|
2438
|
+
throw http_response;
|
|
2439
|
+
}
|
|
2440
|
+
return new EsolveResult(http_response.result.status, http_response.result.code, http_response.result.message);
|
|
2441
|
+
}), catchError((errorRes) => {
|
|
2442
|
+
return this.errorHandler.handleHttpPostError('delete-vault', errorRes);
|
|
2443
|
+
}));
|
|
2444
|
+
}
|
|
2293
2445
|
/**
|
|
2294
2446
|
* Sets the payment for the specified transaction using selected payment method.
|
|
2295
2447
|
* @param transaction_id eSolve ID to the transaction
|
|
@@ -2621,4 +2773,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "13.0.0", ngImpor
|
|
|
2621
2773
|
* Generated bundle index. Do not edit.
|
|
2622
2774
|
*/
|
|
2623
2775
|
|
|
2624
|
-
export { EsolveAccountService, EsolveAddress, EsolveAddressResult, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveCartItem, EsolveCartService, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveCheckoutResult, EsolveErrorHandlerService, EsolveHttpError, EsolveLocationsService, EsolveMediaArticle, EsolveMediaService, EsolveMenuItem, EsolveMenuService, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRegistrationResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveSEOInfo, EsolveSeoService, EsolveSession, EsolveSessionService, EsolveShippingCost, EsolveShippingMethod, EsolveShippingService, EsolveStockBadge, EsolveStockItem, EsolveStockItemList, EsolveStockLocation, EsolveStockPrice, EsolveStockService, EsolveTag, EsolveTopic, EsolveTopicService, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveVaultItem, EsolveVaultItemResult, NgEsolveConnectModule };
|
|
2776
|
+
export { EsolveAccountService, EsolveAddress, EsolveAddressResult, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveCartItem, EsolveCartService, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveChangePasswordResult, EsolveCheckoutResult, EsolveErrorHandlerService, EsolveHttpError, EsolveLocationsService, EsolveMediaArticle, EsolveMediaService, EsolveMenuItem, EsolveMenuService, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRegistrationResult, EsolveResetPasswordResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveResult, EsolveSEOInfo, EsolveSeoService, EsolveSession, EsolveSessionService, EsolveShippingCost, EsolveShippingMethod, EsolveShippingService, EsolveStockBadge, EsolveStockItem, EsolveStockItemList, EsolveStockLocation, EsolveStockPrice, EsolveStockService, EsolveTag, EsolveTopic, EsolveTopicService, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveVaultItem, EsolveVaultItemResult, NgEsolveConnectModule };
|
|
2777
|
+
//# sourceMappingURL=esolve-ng-esolve-connect.mjs.map
|