@esolve/ng-esolve-connect 0.64.2 → 0.65.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.
Files changed (43) hide show
  1. package/esm2022/index.mjs +3 -1
  2. package/esm2022/lib/deliveries/classes/esolve-delivery-status.model.mjs +21 -0
  3. package/esm2022/lib/deliveries/classes/esolve-delivery.model.mjs +28 -0
  4. package/esm2022/lib/deliveries/classes/index.mjs +3 -0
  5. package/esm2022/lib/deliveries/esolve-deliveries.service.mjs +117 -0
  6. package/esm2022/lib/deliveries/index.mjs +4 -0
  7. package/esm2022/lib/deliveries/interfaces/esolve-deliveries-options.interface.mjs +2 -0
  8. package/esm2022/lib/deliveries/interfaces/esolve-delivery-record.interface.mjs +2 -0
  9. package/esm2022/lib/deliveries/interfaces/esolve-delivery-status-record.interface.mjs +2 -0
  10. package/esm2022/lib/deliveries/interfaces/index.mjs +4 -0
  11. package/esm2022/lib/deliveries/types/esolve-deliveries-sort-field.type.mjs +2 -0
  12. package/esm2022/lib/deliveries/types/esolve-delivery-status.type.mjs +2 -0
  13. package/esm2022/lib/deliveries/types/esolve-delivery-type.type.mjs +2 -0
  14. package/esm2022/lib/deliveries/types/index.mjs +4 -0
  15. package/esm2022/lib/news/classes/esolve-newsletter-result.model.mjs +9 -0
  16. package/esm2022/lib/news/classes/index.mjs +2 -1
  17. package/esm2022/lib/news/esolve-news.service.mjs +21 -4
  18. package/esm2022/lib/news/index.mjs +2 -1
  19. package/esm2022/lib/news/types/esolve-newsletter-response.type.mjs +2 -0
  20. package/esm2022/lib/news/types/index.mjs +2 -0
  21. package/fesm2022/esolve-ng-esolve-connect.mjs +180 -1
  22. package/fesm2022/esolve-ng-esolve-connect.mjs.map +1 -1
  23. package/index.d.ts +1 -0
  24. package/lib/deliveries/classes/esolve-delivery-status.model.d.ts +18 -0
  25. package/lib/deliveries/classes/esolve-delivery.model.d.ts +30 -0
  26. package/lib/deliveries/classes/index.d.ts +2 -0
  27. package/lib/deliveries/esolve-deliveries.service.d.ts +17 -0
  28. package/lib/deliveries/index.d.ts +3 -0
  29. package/lib/deliveries/interfaces/esolve-deliveries-options.interface.d.ts +17 -0
  30. package/lib/deliveries/interfaces/esolve-delivery-record.interface.d.ts +25 -0
  31. package/lib/deliveries/interfaces/esolve-delivery-status-record.interface.d.ts +16 -0
  32. package/lib/deliveries/interfaces/index.d.ts +3 -0
  33. package/lib/deliveries/types/esolve-deliveries-sort-field.type.d.ts +1 -0
  34. package/lib/deliveries/types/esolve-delivery-status.type.d.ts +1 -0
  35. package/lib/deliveries/types/esolve-delivery-type.type.d.ts +1 -0
  36. package/lib/deliveries/types/index.d.ts +3 -0
  37. package/lib/news/classes/esolve-newsletter-result.model.d.ts +6 -0
  38. package/lib/news/classes/index.d.ts +1 -0
  39. package/lib/news/esolve-news.service.d.ts +4 -1
  40. package/lib/news/index.d.ts +1 -0
  41. package/lib/news/types/esolve-newsletter-response.type.d.ts +2 -0
  42. package/lib/news/types/index.d.ts +1 -0
  43. package/package.json +1 -1
@@ -5142,10 +5142,20 @@ class EsolveNewsArticle {
5142
5142
  }
5143
5143
  }
5144
5144
 
5145
+ class EsolveNewsletterResult extends EsolveResponseResult {
5146
+ constructor(response) {
5147
+ super(response);
5148
+ this.id = 0;
5149
+ this.id = +response.esolve_id;
5150
+ }
5151
+ }
5152
+
5145
5153
  class EsolveNewsService {
5146
5154
  constructor() {
5147
5155
  this.config = inject(EsolveConfigService);
5148
5156
  this.http = inject(HttpClient);
5157
+ this.errorHandler = inject(EsolveErrorHandlerService);
5158
+ this.responseHandler = inject(EsolveResponseHandlerService);
5149
5159
  }
5150
5160
  getNewsArticle(identifier) {
5151
5161
  const params = new HttpParams({
@@ -5239,6 +5249,19 @@ class EsolveNewsService {
5239
5249
  }
5240
5250
  return params;
5241
5251
  }
5252
+ subscribeToNewsletter(form_data) {
5253
+ if (!form_data.has('email')) {
5254
+ return this.errorHandler.emitError('email_required', 'Email is required');
5255
+ }
5256
+ return this.http
5257
+ .post(`${this.config.api_url}/set-newsletter.php`, form_data, {
5258
+ responseType: 'json',
5259
+ observe: 'body',
5260
+ })
5261
+ .pipe(map$1((http_response) => this.responseHandler.validateSingleHttpResponse(http_response, (response) => new EsolveNewsletterResult(response))), catchError((errorRes) => {
5262
+ return this.errorHandler.handleHttpPostError('set-newsletter', errorRes);
5263
+ }));
5264
+ }
5242
5265
  static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: EsolveNewsService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
5243
5266
  static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: EsolveNewsService, providedIn: 'root' }); }
5244
5267
  }
@@ -7519,6 +7542,162 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.4", ngImpor
7519
7542
  }]
7520
7543
  }], ctorParameters: function () { return []; } });
7521
7544
 
7545
+ class EsolveDelivery {
7546
+ constructor(record) {
7547
+ this.id = +record.id;
7548
+ this.version = +record.version;
7549
+ this.cart_id = +record.cart_id;
7550
+ this.shipping_id = +record.shipping_id;
7551
+ this.location_id = +record.location_id;
7552
+ this.cart_pick_id = +record.cart_pick_id;
7553
+ this.txdate = new Date(+record.txdate * 1000);
7554
+ this.type = record.type;
7555
+ this.status = record.status;
7556
+ this.courier_quote_error = record.courier_delivery_error;
7557
+ this.courier_delivery_error = record.courier_quote_error;
7558
+ this.courier_delivery_id = record.courier_delivery_id;
7559
+ this.courier_status = record.courier_status;
7560
+ this.quoted_cost = +record.quoted_cost;
7561
+ this.delivery_started = new Date(+record.delivery_started * 1000);
7562
+ this.delivery_completed = new Date(+record.delivery_completed * 1000);
7563
+ this.delivery_cancelled = new Date(+record.delivery_cancelled * 1000);
7564
+ this.delivery_resumed = new Date(+record.delivery_resumed * 1000);
7565
+ this.proof = record.proof;
7566
+ this.tracking = record.tracking;
7567
+ this.last_tracked = new Date(+record.last_tracked * 1000);
7568
+ this.last_latitude = +record.last_latitude;
7569
+ this.last_longitude = +record.last_longitude;
7570
+ }
7571
+ }
7572
+
7573
+ class EsolveDeliveryStatus {
7574
+ constructor(record) {
7575
+ this.delivery_id = +record.delivery_id;
7576
+ this.last_update = new Date(+record.last_update * 1000);
7577
+ this.latitude = +record.latitude;
7578
+ this.longitude = +record.longitude;
7579
+ this.pickup_eta = new Date(+record.pickup_eta * 1000);
7580
+ this.pickup_status = record.pickup_status;
7581
+ this.dropoff_eta = new Date(+record.dropoff_eta * 1000);
7582
+ if (record.driver_picture_href != "") {
7583
+ this.driver_picture_href = new URL(record.driver_picture_href);
7584
+ }
7585
+ this.driver_name = record.driver_name;
7586
+ this.driver_phone_number = record.driver_phone_number;
7587
+ this.vehicle_color = record.vehicle_color;
7588
+ this.vehicle_make = record.vehicle_make;
7589
+ this.vehicle_model = record.vehicle_model;
7590
+ this.vehicle_type = record.vehicle_type;
7591
+ }
7592
+ }
7593
+
7594
+ class EsolveDeliveriesService {
7595
+ constructor() {
7596
+ this.config = inject(EsolveConfigService);
7597
+ this.http = inject(HttpClient);
7598
+ this.errorHandler = inject(EsolveErrorHandlerService);
7599
+ this.responseHandler = inject(EsolveResponseHandlerService);
7600
+ }
7601
+ getDeliveryStatus(cart_id) {
7602
+ let params = new HttpParams();
7603
+ if (cart_id > 0) {
7604
+ params = params.set('cart_id', cart_id);
7605
+ }
7606
+ try {
7607
+ return this.http
7608
+ .get(`${this.config.api_url}/get-delivery-status.php`, { params })
7609
+ .pipe(map((response) => {
7610
+ if (response.records === undefined ||
7611
+ Array.isArray(response.records)) {
7612
+ throw response;
7613
+ }
7614
+ return new EsolveDeliveryStatus(response.records);
7615
+ }));
7616
+ }
7617
+ catch (error) {
7618
+ return throwError(() => error);
7619
+ }
7620
+ }
7621
+ getDeliveries(options) {
7622
+ let params = new HttpParams();
7623
+ if (options) {
7624
+ if (options.page) {
7625
+ params = params.set('page', options.page);
7626
+ }
7627
+ if (options.rows) {
7628
+ params = params.set('rows', options.rows);
7629
+ }
7630
+ if (options.deliveries_id) {
7631
+ params = params.set('deliveries_id', +options.deliveries_id);
7632
+ }
7633
+ if (options.version) {
7634
+ params = params.set('version', +options.version);
7635
+ }
7636
+ if (options.cart_id) {
7637
+ params = params.set('cart_id', +options.cart_id);
7638
+ }
7639
+ if (options.location_id) {
7640
+ params = params.set('location_id', +options.location_id);
7641
+ }
7642
+ if (options.status) {
7643
+ params = params.set('status', +options.status);
7644
+ }
7645
+ if (options.from_date) {
7646
+ params = params.set('from_date', +options.from_date);
7647
+ }
7648
+ if (options.to_date) {
7649
+ params = params.set('from_date', +options.to_date);
7650
+ }
7651
+ if (options.sort) {
7652
+ const sort = options.sort;
7653
+ if (sort.field) {
7654
+ params = params.set('sort', sort.field);
7655
+ }
7656
+ if (sort.order) {
7657
+ params = params.set('order', sort.order);
7658
+ }
7659
+ }
7660
+ if (options.filters) {
7661
+ let filters = options.filters;
7662
+ if (!Array.isArray(filters)) {
7663
+ filters = covertFromObj(filters);
7664
+ }
7665
+ params = convertToHttpParams(filters, params);
7666
+ }
7667
+ }
7668
+ return this.getDeliveriesRecords(params).pipe(map((response) => {
7669
+ if (response.records === undefined ||
7670
+ response.records.length <= 0) {
7671
+ throw response;
7672
+ }
7673
+ const deliveries = [];
7674
+ response.records.forEach((deviceRecord) => {
7675
+ deliveries.push(this.processDelivery(deviceRecord));
7676
+ });
7677
+ return deliveries;
7678
+ }));
7679
+ }
7680
+ getDeliveriesRecords(params) {
7681
+ try {
7682
+ return this.http.get(`${this.config.api_url}/get-deliveries.php`, { params });
7683
+ }
7684
+ catch (error) {
7685
+ return throwError(() => error);
7686
+ }
7687
+ }
7688
+ processDelivery(record) {
7689
+ return new EsolveDelivery(record);
7690
+ }
7691
+ static { this.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: EsolveDeliveriesService, deps: [], target: i0.ɵɵFactoryTarget.Injectable }); }
7692
+ static { this.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: EsolveDeliveriesService, providedIn: 'root' }); }
7693
+ }
7694
+ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.4", ngImport: i0, type: EsolveDeliveriesService, decorators: [{
7695
+ type: Injectable,
7696
+ args: [{
7697
+ providedIn: 'root',
7698
+ }]
7699
+ }] });
7700
+
7522
7701
  /*
7523
7702
  * Public API Surface of ng-esolve-connect
7524
7703
  */
@@ -7527,5 +7706,5 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "16.2.4", ngImpor
7527
7706
  * Generated bundle index. Do not edit.
7528
7707
  */
7529
7708
 
7530
- export { ESOLVE_CONNECT_CONFIG, ESOLVE_EURUS_AUTO_LOGIN, EsolveAccountConfirmationResult, EsolveAccountService, EsolveAdditionalStockImage, EsolveAddress, EsolveAddressResult, EsolveAsset, EsolveAssetsService, EsolveAuthInterceptorService, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveCartAlternative, EsolveCartItem, EsolveCartService, EsolveCartStockItem, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveCdnSrcDirective, EsolveChangePasswordResult, EsolveCheckoutResult, EsolveColour, EsolveConfigService, EsolveCookieService, EsolveCoupon, EsolveCouponsService, EsolveDependantItem, EsolveDeviceService, EsolveEmptyCartResult, EsolveEmptyWishlistResult, EsolveEnquiryResult, EsolveEnquiryService, EsolveErrorHandlerService, esolveFilterFactory as EsolveFilterFactory, EsolveGenericFilter, EsolveGeocodeAddressResult, EsolveGeocodeCoordsResult, EsolveGeocodeResult, EsolveGeocoderService, EsolveHttpError, EsolveLinkedAsset, EsolveLinkedStockItem, EsolveList, EsolveLocation, EsolveLocationAddress, EsolveLocationContactInfo, EsolveLocationGEO, EsolveLocationList, EsolveLocationPOBoxAddress, EsolveLocationTradingDay, EsolveLocationTradingTimes, EsolveLocationUpdateResult, EsolveLocationsService, EsolveManufacturer, EsolveManufacturersService, EsolveMediaStockItem, EsolveMenuItem, EsolveMenuService, EsolveMultipleSelectFilter, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolveOtp, EsolveOtpService, EsolveOtpValidation, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRange, EsolveRangeFilter, EsolveRangesService, EsolveRecipeStockItem, EsolveRegistrationResult, EsolveResetPasswordResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveResult, EsolveSeoInfo, EsolveSeoService, EsolveSessionAddressUpdateResult, EsolveSessionMetadataService, EsolveSessionService, EsolveSessionShippingUpdateResult, EsolveSetDeviceResult, EsolveSetNotifyResult, EsolveShippingCost, EsolveShippingMethod, EsolveShippingService, EsolveShippingTotals, EsolveSingleSelectFilter, EsolveSpecial, EsolveSpecialDates, EsolveSpecialImage, EsolveSpecialImageCollection, EsolveSpecialsService, EsolveStatement, EsolveStatementAgeing, EsolveStatementBalances, EsolveStatementTransaction, EsolveStockBadge, EsolveStockGroup, EsolveStockGroupItem, EsolveStockImage, EsolveStockImageCollection, EsolveStockItem, EsolveStockItemBase, EsolveStockItemList, EsolveStockLeadTimes, EsolveStockPrice, EsolveStockService, EsolveSupplier, EsolveSuppliersService, EsolveTag, EsolveTagsService, EsolveTimeSlot, EsolveTimeSlotConfig, EsolveTimeSlotDate, EsolveTimeSlotDays, EsolveTimeSlotTimes, EsolveToggleFilter, EsolveTopic, EsolveTopicService, EsolveTransaction, EsolveTransactionAddress, EsolveTransactionAnalyticsData, EsolveTransactionClient, EsolveTransactionItem, EsolveTransactionItemPrice, EsolveTransactionList, EsolveTransactionLocation, EsolveTransactionPaymentMethod, EsolveTransactionPick, EsolveTransactionShippingMethod, EsolveTransactionUser, EsolveTransactionsService, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveUserClientAccount, EsolveUserClientAccountBalances, EsolveUserDevice, EsolveVaultItem, EsolveVaultItemResult, EsolveVoucher, EsolveVouchersService, EsolveWalletBalances, EsolveWalletService, EsolveWalletTransaction, EsolveWalletTransactionsList, EsolveWishlistItem, EsolveWishlistService, NgEsolveConnectModule, esolveHexHash, isEsolveCdnPath, isFtgCdnPath, isLegacyEsolveCdnPath, processEsolveImageSrc, provideEsolveImageLoader, provideNgEsolveConnect };
7709
+ export { ESOLVE_CONNECT_CONFIG, ESOLVE_EURUS_AUTO_LOGIN, EsolveAccountConfirmationResult, EsolveAccountService, EsolveAdditionalStockImage, EsolveAddress, EsolveAddressResult, EsolveAsset, EsolveAssetsService, EsolveAuthInterceptorService, EsolveAuthService, EsolveBankingDetails, EsolveBanner, EsolveBannerImage, EsolveBannerImageHotspot, EsolveBannerService, EsolveCartAlternative, EsolveCartItem, EsolveCartService, EsolveCartStockItem, EsolveCartTotals, EsolveCategoryTreeItem, EsolveCategoryTreeService, EsolveCdnSrcDirective, EsolveChangePasswordResult, EsolveCheckoutResult, EsolveColour, EsolveConfigService, EsolveCookieService, EsolveCoupon, EsolveCouponsService, EsolveDeliveriesService, EsolveDelivery, EsolveDeliveryStatus, EsolveDependantItem, EsolveDeviceService, EsolveEmptyCartResult, EsolveEmptyWishlistResult, EsolveEnquiryResult, EsolveEnquiryService, EsolveErrorHandlerService, esolveFilterFactory as EsolveFilterFactory, EsolveGenericFilter, EsolveGeocodeAddressResult, EsolveGeocodeCoordsResult, EsolveGeocodeResult, EsolveGeocoderService, EsolveHttpError, EsolveLinkedAsset, EsolveLinkedStockItem, EsolveList, EsolveLocation, EsolveLocationAddress, EsolveLocationContactInfo, EsolveLocationGEO, EsolveLocationList, EsolveLocationPOBoxAddress, EsolveLocationTradingDay, EsolveLocationTradingTimes, EsolveLocationUpdateResult, EsolveLocationsService, EsolveManufacturer, EsolveManufacturersService, EsolveMediaStockItem, EsolveMenuItem, EsolveMenuService, EsolveMultipleSelectFilter, EsolveNewsArticle, EsolveNewsArticleAuthor, EsolveNewsArticleList, EsolveNewsGroup, EsolveNewsService, EsolveNewsletterResult, EsolveOtp, EsolveOtpService, EsolveOtpValidation, EsolvePaymentMethod, EsolvePaymentResult, EsolvePaymentService, EsolveRange, EsolveRangeFilter, EsolveRangesService, EsolveRecipeStockItem, EsolveRegistrationResult, EsolveResetPasswordResult, EsolveResponseHandlerService, EsolveResponseResult, EsolveResult, EsolveSeoInfo, EsolveSeoService, EsolveSessionAddressUpdateResult, EsolveSessionMetadataService, EsolveSessionService, EsolveSessionShippingUpdateResult, EsolveSetDeviceResult, EsolveSetNotifyResult, EsolveShippingCost, EsolveShippingMethod, EsolveShippingService, EsolveShippingTotals, EsolveSingleSelectFilter, EsolveSpecial, EsolveSpecialDates, EsolveSpecialImage, EsolveSpecialImageCollection, EsolveSpecialsService, EsolveStatement, EsolveStatementAgeing, EsolveStatementBalances, EsolveStatementTransaction, EsolveStockBadge, EsolveStockGroup, EsolveStockGroupItem, EsolveStockImage, EsolveStockImageCollection, EsolveStockItem, EsolveStockItemBase, EsolveStockItemList, EsolveStockLeadTimes, EsolveStockPrice, EsolveStockService, EsolveSupplier, EsolveSuppliersService, EsolveTag, EsolveTagsService, EsolveTimeSlot, EsolveTimeSlotConfig, EsolveTimeSlotDate, EsolveTimeSlotDays, EsolveTimeSlotTimes, EsolveToggleFilter, EsolveTopic, EsolveTopicService, EsolveTransaction, EsolveTransactionAddress, EsolveTransactionAnalyticsData, EsolveTransactionClient, EsolveTransactionItem, EsolveTransactionItemPrice, EsolveTransactionList, EsolveTransactionLocation, EsolveTransactionPaymentMethod, EsolveTransactionPick, EsolveTransactionShippingMethod, EsolveTransactionUser, EsolveTransactionsService, EsolveUserAccount, EsolveUserAccountBusiness, EsolveUserAccountContact, EsolveUserAccountResult, EsolveUserClientAccount, EsolveUserClientAccountBalances, EsolveUserDevice, EsolveVaultItem, EsolveVaultItemResult, EsolveVoucher, EsolveVouchersService, EsolveWalletBalances, EsolveWalletService, EsolveWalletTransaction, EsolveWalletTransactionsList, EsolveWishlistItem, EsolveWishlistService, NgEsolveConnectModule, esolveHexHash, isEsolveCdnPath, isFtgCdnPath, isLegacyEsolveCdnPath, processEsolveImageSrc, provideEsolveImageLoader, provideNgEsolveConnect };
7531
7710
  //# sourceMappingURL=esolve-ng-esolve-connect.mjs.map