ng-easycommerce-v18 0.0.3 → 0.0.5

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 (52) hide show
  1. package/assets/ec-i18n/es.json +3 -0
  2. package/esm2022/lib/classes/filters/PriceRangeFilter.mjs +48 -0
  3. package/esm2022/lib/ec-components/account-ec/order-ec/order-ec.component.mjs +75 -6
  4. package/esm2022/lib/ec-components/account-ec/orders-list-ec/orders-list-ec.component.mjs +3 -3
  5. package/esm2022/lib/ec-components/blocks-ec/block-products-ec/block-products-ec.component.mjs +1 -1
  6. package/esm2022/lib/ec-components/cart-ec/cart-ec.component.mjs +4 -2
  7. package/esm2022/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.mjs +77 -3
  8. package/esm2022/lib/ec-components/filters-ec/filters-ec.component.mjs +111 -5
  9. package/esm2022/lib/ec-components/index.mjs +5 -1
  10. package/esm2022/lib/ec-components/product-detail-ec/product-detail-ec.component.mjs +31 -1
  11. package/esm2022/lib/ec-components/product-ec/product-ec.component.mjs +20 -3
  12. package/esm2022/lib/ec-components/sidebar-ec/sidebar-ec.component.mjs +60 -0
  13. package/esm2022/lib/ec-components/variants-ec/variants-ec.component.mjs +3 -3
  14. package/esm2022/lib/ec-components/widgets-ec/index.mjs +2 -1
  15. package/esm2022/lib/ec-components/widgets-ec/price-ec/price-ec.component.mjs +3 -3
  16. package/esm2022/lib/ec-directive/index.mjs +10 -0
  17. package/esm2022/lib/ec-directive/product-off.directive.mjs +119 -0
  18. package/esm2022/lib/ec-directive/product-stock.directive.mjs +72 -0
  19. package/esm2022/lib/ec-services/auth.service.mjs +17 -6
  20. package/esm2022/lib/ec-services/cart.service.mjs +19 -2
  21. package/esm2022/lib/ec-services/filters.service.mjs +3 -2
  22. package/esm2022/lib/ec-services/ngx-local-storage.service.mjs +7 -7
  23. package/esm2022/lib/ec-services/orders.service.mjs +28 -1
  24. package/esm2022/lib/ec-services/pagination.service.mjs +8 -1
  25. package/esm2022/lib/ec-services/product-detail.service.mjs +1 -1
  26. package/esm2022/lib/ec-services/products.service.mjs +29 -1
  27. package/esm2022/lib/interfaces/filter.mjs +1 -1
  28. package/esm2022/lib/interfaces/product.mjs +1 -1
  29. package/esm2022/public-api.mjs +3 -1
  30. package/fesm2022/ng-easycommerce-v18.mjs +697 -33
  31. package/fesm2022/ng-easycommerce-v18.mjs.map +1 -1
  32. package/lib/classes/filters/PriceRangeFilter.d.ts +23 -0
  33. package/lib/ec-components/account-ec/order-ec/order-ec.component.d.ts +23 -1
  34. package/lib/ec-components/cart-ec/cart-ec.component.d.ts +2 -0
  35. package/lib/ec-components/cart-ec/cart-item-ec/cart-item-ec.component.d.ts +7 -1
  36. package/lib/ec-components/filters-ec/filters-ec.component.d.ts +30 -1
  37. package/lib/ec-components/index.d.ts +1 -0
  38. package/lib/ec-components/product-detail-ec/product-detail-ec.component.d.ts +12 -0
  39. package/lib/ec-components/product-ec/product-ec.component.d.ts +5 -1
  40. package/lib/ec-components/sidebar-ec/sidebar-ec.component.d.ts +29 -0
  41. package/lib/ec-directive/index.d.ts +3 -0
  42. package/lib/ec-directive/product-off.directive.d.ts +28 -0
  43. package/lib/ec-directive/product-stock.directive.d.ts +18 -0
  44. package/lib/ec-services/auth.service.d.ts +3 -1
  45. package/lib/ec-services/cart.service.d.ts +10 -1
  46. package/lib/ec-services/orders.service.d.ts +6 -0
  47. package/lib/ec-services/pagination.service.d.ts +5 -0
  48. package/lib/ec-services/products.service.d.ts +14 -0
  49. package/lib/interfaces/filter.d.ts +2 -2
  50. package/lib/interfaces/product.d.ts +2 -0
  51. package/package.json +1 -1
  52. package/public-api.d.ts +1 -0
@@ -0,0 +1,23 @@
1
+ import { Filter } from "./filter";
2
+ import { FilterType } from "../../interfaces/filter";
3
+ export declare class PriceRangeFilter extends Filter {
4
+ minPrice: number;
5
+ maxPrice: number;
6
+ currentMinPrice: number | null;
7
+ currentMaxPrice: number | null;
8
+ type: () => FilterType;
9
+ setContent: (options: {
10
+ minPrice: number;
11
+ maxPrice: number;
12
+ currentMinPrice: number;
13
+ currentMaxPrice: number;
14
+ }) => void;
15
+ updatePrices(min: number, max: number): void;
16
+ setSelected: (min: number, max: number) => void;
17
+ getSelectedRange: () => {
18
+ min: number;
19
+ max: number;
20
+ };
21
+ toUrlParams: () => string;
22
+ reset: () => void;
23
+ }
@@ -1,8 +1,30 @@
1
1
  import { OnInit } from '@angular/core';
2
+ import { Observable } from 'rxjs';
2
3
  import * as i0 from "@angular/core";
3
4
  export declare class OrderEcComponent implements OnInit {
4
- private _orderService;
5
+ private _ordersService;
6
+ private _consts;
7
+ private _constants;
8
+ private _router;
9
+ private _cartService;
10
+ private _channelConfigService;
11
+ private _activedRoute;
12
+ order$: Observable<any>;
13
+ allowRepeatOrders: boolean;
14
+ loading: boolean;
15
+ showPrice: boolean;
16
+ creditAmountConfigured: boolean;
17
+ hidePrices: boolean;
18
+ hideDiscounts: boolean;
19
+ hideTaxes: boolean;
20
+ channelConfig: any;
21
+ numberOrder: any;
5
22
  ngOnInit(): void;
23
+ getUrlBase(): string;
24
+ back(): void;
25
+ toDate(date: any, format: any): string;
26
+ repeatOrder(order: any): void;
27
+ mediaUrl: () => string;
6
28
  static ɵfac: i0.ɵɵFactoryDeclaration<OrderEcComponent, never>;
7
29
  static ɵcmp: i0.ɵɵComponentDeclaration<OrderEcComponent, "app-order-ec", never, {}, {}, never, never, true, never>;
8
30
  }
@@ -6,6 +6,8 @@ export declare class CartEcComponent {
6
6
  totalPromotionAmount$: import("rxjs").Observable<number>;
7
7
  taxesAmount$: import("rxjs").Observable<number>;
8
8
  totalAmount$: import("rxjs").Observable<any>;
9
+ private _authService;
10
+ isAuthenticated$: boolean;
9
11
  removeCoupon(): void;
10
12
  static ɵfac: i0.ɵɵFactoryDeclaration<CartEcComponent, never>;
11
13
  static ɵcmp: i0.ɵɵComponentDeclaration<CartEcComponent, "lib-cart-ec", never, {}, {}, never, never, true, never>;
@@ -2,16 +2,22 @@ import { OnInit } from '@angular/core';
2
2
  import * as i0 from "@angular/core";
3
3
  export declare class CartItemEcComponent implements OnInit {
4
4
  item: any;
5
+ inSidebar: boolean;
5
6
  private _cartService;
6
7
  private _toastService;
7
8
  private _constants;
8
9
  mediaUrl: string;
9
10
  quantity: number;
11
+ variantsToShow: string[];
12
+ updateStock: boolean;
10
13
  ngOnInit(): void;
11
14
  updateQuantity(stock: number): void;
12
15
  less(stock: number, value?: number): void;
13
16
  plus(stock: number, value?: number): void;
14
17
  deleteCartItem(): void;
18
+ getVariants(product: any): any;
19
+ createDiscountMessage(saleprice: number, price: number): string;
20
+ checkStock(product: any): any;
15
21
  static ɵfac: i0.ɵɵFactoryDeclaration<CartItemEcComponent, never>;
16
- static ɵcmp: i0.ɵɵComponentDeclaration<CartItemEcComponent, "lib-cart-item-ec", never, { "item": { "alias": "item"; "required": true; }; }, {}, never, never, true, never>;
22
+ static ɵcmp: i0.ɵɵComponentDeclaration<CartItemEcComponent, "app-cart-item-ec", never, { "item": { "alias": "item"; "required": true; }; "inSidebar": { "alias": "inSidebar"; "required": false; }; }, {}, never, never, true, never>;
17
23
  }
@@ -1,14 +1,43 @@
1
+ import { ElementRef } from '@angular/core';
1
2
  import { Filter } from '../../classes';
2
3
  import { FilterElement, FilterType } from '../../interfaces';
4
+ import { PriceRangeFilter } from '../../classes/filters/PriceRangeFilter';
3
5
  import * as i0 from "@angular/core";
4
6
  export declare class FiltersEcComponent {
5
7
  private _filtersService;
6
8
  filters: Filter[];
7
9
  filter$: import("rxjs").Observable<Filter[]>;
10
+ setSelect: any;
11
+ rangeMinRef: ElementRef;
12
+ rangeMaxRef: ElementRef;
13
+ priceGapPercentage: number;
8
14
  constructor();
9
15
  getSpecificFilter(type: FilterType): Filter | null;
10
16
  onSelect(event: any, filter: FilterElement[] | null): void;
11
17
  setSelected(filter: Filter | null, selected: FilterElement): void;
18
+ /**
19
+ * Redondea al múltiplo de 'step' respetando el redondeo entero:
20
+ * - Mínimo: redondea hacia abajo.
21
+ * - Máximo: redondea hacia arriba.
22
+ */
23
+ onRangeChange(event: Event, type: 'min' | 'max', filter: {
24
+ minPrice: number;
25
+ maxPrice: number;
26
+ currentMinPrice?: number;
27
+ currentMaxPrice?: number;
28
+ }): void;
29
+ roundToNearest(value: number, step: number, type: 'min' | 'max', filter: any): number;
30
+ uniqueSelection(filter: {
31
+ data: any[];
32
+ }, filterChild: any): void;
33
+ /**
34
+ * Actualiza los valores del filtro permitiendo que un input empuje al otro.
35
+ */
36
+ updateFilterPrices(type: 'min' | 'max', value: number, filter: any, priceGap: number): void;
37
+ updatePriceRange(min: number, max: number, priceFilter: PriceRangeFilter): void;
38
+ calculateLeftPercentage(currentMinPrice: number, minPrice: number, maxPrice: number): number;
39
+ calculateRightPercentage(currentMaxPrice: number, minPrice: number, maxPrice: number): number;
40
+ scrollUp: () => boolean;
12
41
  static ɵfac: i0.ɵɵFactoryDeclaration<FiltersEcComponent, never>;
13
- static ɵcmp: i0.ɵɵComponentDeclaration<FiltersEcComponent, "lib-filters-ec", never, {}, {}, never, never, true, never>;
42
+ static ɵcmp: i0.ɵɵComponentDeclaration<FiltersEcComponent, "lib-filters-ec", never, { "setSelect": { "alias": "setSelect"; "required": false; }; }, {}, never, never, true, never>;
14
43
  }
@@ -22,3 +22,4 @@ export * from './blocks-ec/block-products-ec/block-products-ec.component';
22
22
  export * from './blocks-ec/block-banner-full-ec/block-banner-full-ec.component';
23
23
  export * from './blocks-ec/block-banner-box-ec/block-banner-box-ec.component';
24
24
  export * from './blocks-ec/block-form-contact-ec/block-form-contact-ec.component';
25
+ export * from './sidebar-ec/sidebar-ec.component';
@@ -1,3 +1,5 @@
1
+ import { Injector } from '@angular/core';
2
+ import { Parameter } from '../../interfaces';
1
3
  import { WritableSignal } from '@angular/core';
2
4
  import { Observable } from 'rxjs';
3
5
  import { Product } from '../../interfaces';
@@ -9,6 +11,8 @@ export declare class ProductDetailEcComponent {
9
11
  private _domSanitizer;
10
12
  private _consts;
11
13
  private _toastService;
14
+ private parametersService;
15
+ injector: Injector;
12
16
  private _meta;
13
17
  private _title;
14
18
  private _location;
@@ -17,7 +21,13 @@ export declare class ProductDetailEcComponent {
17
21
  data$: Observable<any>;
18
22
  mediaUrl: string;
19
23
  code: string;
24
+ showFormContact: boolean;
25
+ showReviews: boolean;
26
+ reset: boolean;
27
+ success: boolean;
20
28
  quantity: WritableSignal<number>;
29
+ parameters$: Observable<Parameter[] | null>;
30
+ hasParams: (params: any, code: string) => any;
21
31
  constructor();
22
32
  ngOnInit(): void;
23
33
  updateMetaTags(product: Product): void;
@@ -26,6 +36,8 @@ export declare class ProductDetailEcComponent {
26
36
  plus(stock?: number, multipleQuantity?: number): void;
27
37
  less(multipleQuantity?: any): void;
28
38
  checkStock(stock: number): void;
39
+ goToSection(section: string): void;
40
+ resetForm: () => void;
29
41
  static ɵfac: i0.ɵɵFactoryDeclaration<ProductDetailEcComponent, never>;
30
42
  static ɵcmp: i0.ɵɵComponentDeclaration<ProductDetailEcComponent, "app-product-detail-ec", never, {}, {}, never, never, true, never>;
31
43
  }
@@ -18,6 +18,7 @@ export declare class ProductEcComponent implements OnInit {
18
18
  * Constantes del core
19
19
  */
20
20
  loaded: EventEmitter<number>;
21
+ isCollection: boolean;
21
22
  ngOnInit(): void;
22
23
  private consts;
23
24
  private analyticsService;
@@ -26,6 +27,9 @@ export declare class ProductEcComponent implements OnInit {
26
27
  * URL para las imagenes del producto.
27
28
  */
28
29
  mediaUrl: string;
30
+ openWhatsApp(url: string): void;
31
+ get shouldShowPrice(): boolean;
32
+ get hasDiscount(): boolean;
29
33
  static ɵfac: i0.ɵɵFactoryDeclaration<ProductEcComponent, never>;
30
- static ɵcmp: i0.ɵɵComponentDeclaration<ProductEcComponent, "app-product-ec", never, { "product": { "alias": "product"; "required": true; }; "isProductBox": { "alias": "isProductBox"; "required": false; }; }, { "loaded": "loaded"; }, never, never, true, never>;
34
+ static ɵcmp: i0.ɵɵComponentDeclaration<ProductEcComponent, "app-product-ec", never, { "product": { "alias": "product"; "required": true; }; "isProductBox": { "alias": "isProductBox"; "required": false; }; "isCollection": { "alias": "isCollection"; "required": false; }; }, { "loaded": "loaded"; }, never, never, true, never>;
31
35
  }
@@ -0,0 +1,29 @@
1
+ import { User } from '../../classes';
2
+ import * as i0 from "@angular/core";
3
+ export declare class SidebarEcComponent {
4
+ private _cartService;
5
+ private _consts;
6
+ private _authService;
7
+ private _router;
8
+ private _toastrService;
9
+ private _channelService;
10
+ user: User | null;
11
+ mediaUrl: string;
12
+ promotions: never[];
13
+ variantsToShow: string[];
14
+ hideDiscounts: boolean;
15
+ hideTaxes: boolean;
16
+ cartItems$: import("rxjs").Observable<any[]>;
17
+ subTotalAmount$: import("rxjs").Observable<number>;
18
+ totalPromotionAmount$: import("rxjs").Observable<number>;
19
+ taxesAmount$: import("rxjs").Observable<number>;
20
+ totalAmount$: import("rxjs").Observable<any>;
21
+ ngOnInit(): void;
22
+ actualizarCantidad(_t13: any, arg1?: any, arg2?: any, arg3?: any, arg4?: any): void;
23
+ getVariants(_t8: any): any;
24
+ getTotalAmount(): import("rxjs").Observable<any> | Promise<any> | import("rxjs").Subscribable<any>;
25
+ removeCoupon(): void;
26
+ deleteCartItem(_t8: any, arg1: boolean): void;
27
+ static ɵfac: i0.ɵɵFactoryDeclaration<SidebarEcComponent, never>;
28
+ static ɵcmp: i0.ɵɵComponentDeclaration<SidebarEcComponent, "app-sidebar-ec", never, {}, {}, never, never, true, never>;
29
+ }
@@ -0,0 +1,3 @@
1
+ export declare const directives: any[];
2
+ export * from './product-stock.directive';
3
+ export * from './product-off.directive';
@@ -0,0 +1,28 @@
1
+ import { OnInit, OnDestroy, ElementRef, Renderer2, OnChanges, SimpleChanges } from "@angular/core";
2
+ import * as i0 from "@angular/core";
3
+ export declare class ParamsContext {
4
+ [key: string]: any;
5
+ }
6
+ export declare class ProductOffDirective implements OnChanges, OnInit, OnDestroy {
7
+ private document;
8
+ private elementRef;
9
+ private renderer;
10
+ private product;
11
+ private classStr;
12
+ private customMessageStr;
13
+ set ecProductOff(value: any);
14
+ set classStrSpacing(value: any);
15
+ set customMessage(value: string);
16
+ constructor(document: Document, elementRef: ElementRef, renderer: Renderer2);
17
+ ngOnInit(): void;
18
+ hasDiscount: (product: {
19
+ price: string | number;
20
+ saleprice: string | number;
21
+ }) => string | null | undefined;
22
+ generateDiscount: (price: string | number, saleprice: string | number) => number | null;
23
+ ngOnChanges(changes: SimpleChanges): void;
24
+ createImage: (discount: string) => HTMLElement;
25
+ ngOnDestroy(): void;
26
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductOffDirective, never>;
27
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ProductOffDirective, "[ecProductOff]", never, { "ecProductOff": { "alias": "ecProductOff"; "required": false; }; "classStrSpacing": { "alias": "classStrSpacing"; "required": false; }; "customMessage": { "alias": "customMessage"; "required": false; }; }, {}, never, never, false, never>;
28
+ }
@@ -0,0 +1,18 @@
1
+ import { TemplateRef, ViewContainerRef } from '@angular/core';
2
+ import { Product } from '../interfaces/product';
3
+ import * as i0 from "@angular/core";
4
+ export declare class ProductStockDirective {
5
+ private templateRef;
6
+ private viewContainer;
7
+ private productDirective;
8
+ ecProductStockElse: TemplateRef<any>;
9
+ set ecProductStock(product: Product);
10
+ constructor(templateRef: TemplateRef<any>, viewContainer: ViewContainerRef);
11
+ ngOnInit(): void;
12
+ ngOnDestroy(): void;
13
+ ngOnChanges(): void;
14
+ validateStock: () => boolean;
15
+ checkValuesForStock: () => boolean;
16
+ static ɵfac: i0.ɵɵFactoryDeclaration<ProductStockDirective, never>;
17
+ static ɵdir: i0.ɵɵDirectiveDeclaration<ProductStockDirective, "[ecProductStock]", never, { "ecProductStockElse": { "alias": "ecProductStockElse"; "required": false; }; "ecProductStock": { "alias": "ecProductStock"; "required": false; }; }, {}, never, never, false, never>;
18
+ }
@@ -185,7 +185,7 @@ export declare class AuthService {
185
185
  * Chequea si un usuario esta habilitado a comprar o no.
186
186
  * @returns
187
187
  */
188
- isAbleToBuy(): boolean;
188
+ isAbleToBuy: () => boolean;
189
189
  /**
190
190
  * Retorna un usuario de tipo cliente.
191
191
  * @returns
@@ -224,6 +224,8 @@ export declare class AuthService {
224
224
  * @param channelConfig debe ser un objeto que contenga al menos las keys channel y locale.
225
225
  */
226
226
  private changeChannel;
227
+ getUserProfile(): Observable<User | null>;
228
+ private getCurrentUser;
227
229
  static ɵfac: i0.ɵɵFactoryDeclaration<AuthService, never>;
228
230
  static ɵprov: i0.ɵɵInjectableDeclaration<AuthService>;
229
231
  }
@@ -1,4 +1,4 @@
1
- import { CartItem, Product } from '../interfaces';
1
+ import { BalanceCustomer, CartItem, Product } from '../interfaces';
2
2
  import { Observable } from 'rxjs';
3
3
  import * as i0 from "@angular/core";
4
4
  export declare class CartService {
@@ -29,6 +29,13 @@ export declare class CartService {
29
29
  cart$: Observable<any>;
30
30
  loading$: Observable<boolean>;
31
31
  private _haveToUpdate;
32
+ balanceCustomer$: Observable<BalanceCustomer>;
33
+ allowAnyPaymentMethod$: Observable<boolean | undefined>;
34
+ allowExceedBalance$: Observable<boolean | undefined>;
35
+ creditAmount$: Observable<number | null | undefined>;
36
+ showMax$: Observable<boolean | undefined>;
37
+ showPrice$: Observable<boolean | undefined>;
38
+ promotions$: Observable<any>;
32
39
  private _cartBaseUrl;
33
40
  updateItemQuantityApi(item_id: any): string;
34
41
  addItemApi(): string;
@@ -206,6 +213,8 @@ export declare class CartService {
206
213
  clearAndResetCart(): void;
207
214
  updateBalanceAttributes(cartData: any): void;
208
215
  addToLot(product: Product, quantity: number, variant_id: any, id?: number, order_item_id?: any, lot_quantity?: any, unit_price?: any, unit_total?: any, ajustement_total?: any, total_lot?: number, lot_status?: string, date_request?: string, notes?: string, shipping_address_id?: number, shipping_address_name?: string, action?: string): void;
216
+ getCreditAmount: () => Observable<number | null>;
217
+ getRemainingCredits: () => Observable<number | undefined>;
209
218
  static ɵfac: i0.ɵɵFactoryDeclaration<CartService, never>;
210
219
  static ɵprov: i0.ɵɵInjectableDeclaration<CartService>;
211
220
  }
@@ -2,13 +2,19 @@ import * as i0 from "@angular/core";
2
2
  export declare class OrdersService {
3
3
  private _connection;
4
4
  private _apiConsts;
5
+ private _cartService;
5
6
  private _ordersSubject;
6
7
  private _errorSubject;
8
+ private _selectedOrderSubject;
7
9
  orders$: import("rxjs").Observable<any>;
10
+ selectedOrder$: import("rxjs").Observable<any>;
8
11
  loading: boolean;
12
+ channelConfig: any;
9
13
  ordersListapi(): string;
10
14
  updateOrders(): void;
11
15
  mapOrdersAndAddInfo(orders: any): any;
16
+ setSelectedOrder(order: any): void;
17
+ getOrderByNumber(number: any): void;
12
18
  static ɵfac: i0.ɵɵFactoryDeclaration<OrdersService, never>;
13
19
  static ɵprov: i0.ɵɵInjectableDeclaration<OrdersService>;
14
20
  }
@@ -19,6 +19,11 @@ export declare class PaginationService {
19
19
  nextProducts$: Observable<Product[]>;
20
20
  private _resetSubject;
21
21
  reset$: Observable<boolean>;
22
+ private priceRangeSubject;
23
+ priceRange$: Observable<{
24
+ price_min: number;
25
+ price_max: number;
26
+ }>;
22
27
  constructor();
23
28
  /**
24
29
  * Inicializa la configuración para el Servicio de Paginación.
@@ -1,5 +1,6 @@
1
1
  import { Observable } from 'rxjs';
2
2
  import { PaginationSettings, ParamsProductsWithUniqueVariant, Product } from '../interfaces';
3
+ import { Filter } from '../classes';
3
4
  import * as i0 from "@angular/core";
4
5
  export declare class ProductsService {
5
6
  private _connection;
@@ -10,10 +11,14 @@ export declare class ProductsService {
10
11
  private _productsSubject;
11
12
  products$: Observable<Product[]>;
12
13
  private _filtersService;
14
+ private filtersSubject;
15
+ filters$: Observable<Filter[]>;
13
16
  private searchValue;
14
17
  constructor();
15
18
  private _shopApiUrl;
16
19
  productByCodeApi(code: string, variant: boolean): string;
20
+ saveProductReviewsApi(code: string): string;
21
+ relatedProductsApi: (key: string) => string;
17
22
  /**
18
23
  * Setea los filtros para obtener los productos.
19
24
  * @param paginationSettings
@@ -31,6 +36,13 @@ export declare class ProductsService {
31
36
  * @returns
32
37
  */
33
38
  getProductByCode(code: string, variant: boolean): Observable<Product>;
39
+ /**
40
+ * @description Guarda la reseña de un producto.
41
+ * @param code
42
+ * @param form_data
43
+ * @returns
44
+ */
45
+ saveReviews: (code: string, form_data: any) => Observable<any>;
34
46
  /**
35
47
  * Recibe una lista de productos y retorna los mismos productos tantas veces como variantes tenga.
36
48
  * cada producto retornado tendrá una única variante.
@@ -43,6 +55,8 @@ export declare class ProductsService {
43
55
  getProductsWithUniqueVariant: (products: Product[], withOption?: ParamsProductsWithUniqueVariant) => any[];
44
56
  productWithVariantValues: (product: Product, variant: any, optionValue: any) => Product;
45
57
  private getObjectWithVariant;
58
+ private updatePriceRangeFilter;
59
+ getRelatedProducts: (key: string) => Observable<any>;
46
60
  static ɵfac: i0.ɵɵFactoryDeclaration<ProductsService, never>;
47
61
  static ɵprov: i0.ɵɵInjectableDeclaration<ProductsService>;
48
62
  }
@@ -1,5 +1,5 @@
1
- export type FilterType = 'categories' | 'attributes' | 'sort' | 'dynamics' | 'all';
2
- export type ElementType = 'sub' | 'child';
1
+ export type FilterType = 'categories' | 'attributes' | 'sort' | 'dynamics' | 'price_range' | 'all';
2
+ export type ElementType = 'sub' | 'child' | 'range';
3
3
  export type FilterShape = 'color' | 'text' | 'size';
4
4
  /**
5
5
  * @description Interfaz utilizada para aplicar filtros por defecto.
@@ -70,4 +70,6 @@ export interface BalanceCustomer {
70
70
  showMax?: boolean;
71
71
  showPrice?: boolean;
72
72
  remainingCredits?: number;
73
+ applyMaxOrders?: boolean;
74
+ maxOrders?: number;
73
75
  }
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ng-easycommerce-v18",
3
- "version": "0.0.3",
3
+ "version": "0.0.5",
4
4
  "peerDependencies": {
5
5
  "@angular/common": "^18.2.0",
6
6
  "@angular/core": "^18.2.0"
package/public-api.d.ts CHANGED
@@ -6,3 +6,4 @@ export * from './lib/constants/core.constants.service';
6
6
  export * from './lib/ec-pipe';
7
7
  export * from './lib/interceptors';
8
8
  export * from './lib/ec-services';
9
+ export * from './lib/ec-directive/index';