@infrab4a/connect-angular 0.13.3 → 0.14.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/{lib/angular-connect.module.d.ts → angular-connect.module.d.ts} +5 -2
- package/angular-elastic-search.module.d.ts +9 -0
- package/{lib/angular-firestore.module.d.ts → angular-firestore.module.d.ts} +7 -2
- package/bundles/infrab4a-connect-angular.umd.js +52 -12
- package/bundles/infrab4a-connect-angular.umd.js.map +1 -1
- package/consts/es-config.const.d.ts +1 -0
- package/{lib/consts → consts}/index.d.ts +1 -0
- package/esm2015/angular-connect.module.js +47 -0
- package/esm2015/angular-elastic-search.module.js +38 -0
- package/esm2015/angular-firebase-auth.module.js +113 -0
- package/esm2015/angular-firestore.module.js +340 -0
- package/esm2015/consts/default-shop.const.js +2 -0
- package/esm2015/consts/es-config.const.js +2 -0
- package/esm2015/consts/index.js +3 -0
- package/esm2015/index.js +5 -0
- package/esm2015/infrab4a-connect-angular.js +2 -2
- package/esm2015/services/auth.service.js +42 -0
- package/esm2015/services/cart.service.js +166 -0
- package/esm2015/services/checkout-subscription.service.js +68 -0
- package/esm2015/services/checkout.service.js +79 -0
- package/esm2015/services/coupon.service.js +70 -0
- package/esm2015/services/errors/group-invalid-coupon.error.js +7 -0
- package/esm2015/services/errors/index.js +3 -0
- package/esm2015/services/errors/invalid-coupon.error.js +7 -0
- package/esm2015/services/home-shop.service.js +108 -0
- package/esm2015/services/index.js +8 -0
- package/esm2015/services/order.service.js +32 -0
- package/esm2015/services/types/index.js +3 -0
- package/esm2015/services/types/required-checkout-data.type.js +2 -0
- package/esm2015/services/types/required-checkout-subscription-data.type.js +2 -0
- package/fesm2015/infrab4a-connect-angular.js +52 -14
- package/fesm2015/infrab4a-connect-angular.js.map +1 -1
- package/infrab4a-connect-angular.d.ts +1 -1
- package/package.json +2 -2
- package/esm2015/lib/angular-connect.module.js +0 -46
- package/esm2015/lib/angular-firebase-auth.module.js +0 -113
- package/esm2015/lib/angular-firestore.module.js +0 -337
- package/esm2015/lib/consts/default-shop.const.js +0 -2
- package/esm2015/lib/consts/index.js +0 -2
- package/esm2015/lib/index.js +0 -5
- package/esm2015/lib/services/auth.service.js +0 -42
- package/esm2015/lib/services/cart.service.js +0 -166
- package/esm2015/lib/services/checkout-subscription.service.js +0 -68
- package/esm2015/lib/services/checkout.service.js +0 -79
- package/esm2015/lib/services/coupon.service.js +0 -70
- package/esm2015/lib/services/errors/group-invalid-coupon.error.js +0 -7
- package/esm2015/lib/services/errors/index.js +0 -3
- package/esm2015/lib/services/errors/invalid-coupon.error.js +0 -7
- package/esm2015/lib/services/home-shop.service.js +0 -108
- package/esm2015/lib/services/index.js +0 -8
- package/esm2015/lib/services/order.service.js +0 -32
- package/esm2015/lib/services/types/index.js +0 -3
- package/esm2015/lib/services/types/required-checkout-data.type.js +0 -2
- package/esm2015/lib/services/types/required-checkout-subscription-data.type.js +0 -2
- package/esm2015/public-api.js +0 -2
- package/public-api.d.ts +0 -1
- /package/{lib/angular-firebase-auth.module.d.ts → angular-firebase-auth.module.d.ts} +0 -0
- /package/{lib/consts → consts}/default-shop.const.d.ts +0 -0
- /package/{lib/index.d.ts → index.d.ts} +0 -0
- /package/{lib/services → services}/auth.service.d.ts +0 -0
- /package/{lib/services → services}/cart.service.d.ts +0 -0
- /package/{lib/services → services}/checkout-subscription.service.d.ts +0 -0
- /package/{lib/services → services}/checkout.service.d.ts +0 -0
- /package/{lib/services → services}/coupon.service.d.ts +0 -0
- /package/{lib/services → services}/errors/group-invalid-coupon.error.d.ts +0 -0
- /package/{lib/services → services}/errors/index.d.ts +0 -0
- /package/{lib/services → services}/errors/invalid-coupon.error.d.ts +0 -0
- /package/{lib/services → services}/home-shop.service.d.ts +0 -0
- /package/{lib/services → services}/index.d.ts +0 -0
- /package/{lib/services → services}/order.service.d.ts +0 -0
- /package/{lib/services → services}/types/index.d.ts +0 -0
- /package/{lib/services → services}/types/required-checkout-data.type.d.ts +0 -0
- /package/{lib/services → services}/types/required-checkout-subscription-data.type.d.ts +0 -0
|
@@ -0,0 +1,108 @@
|
|
|
1
|
+
import { Injectable, Inject } from '@angular/core';
|
|
2
|
+
import { add, Category, pick, Product, RequiredArgumentError, Shops, Where, } from '@infrab4a/connect';
|
|
3
|
+
import { forkJoin, from, of, throwError } from 'rxjs';
|
|
4
|
+
import { concatMap, map, tap } from 'rxjs/operators';
|
|
5
|
+
import { DEFAULT_SHOP } from '../consts';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@infrab4a/connect";
|
|
8
|
+
export class HomeShopService {
|
|
9
|
+
constructor(categoryRepository, homeRepository, productRepository, defaultShop) {
|
|
10
|
+
this.categoryRepository = categoryRepository;
|
|
11
|
+
this.homeRepository = homeRepository;
|
|
12
|
+
this.productRepository = productRepository;
|
|
13
|
+
this.defaultShop = defaultShop;
|
|
14
|
+
this.buildCategoryGroupWithRequiredData = (group) => ({
|
|
15
|
+
category: Category.toInstance(pick(group.category.toPlain(), ['id', 'name', 'slug', 'conditions'])),
|
|
16
|
+
products: group.products.map((product) => Product.toInstance(pick(product.toPlain(), [
|
|
17
|
+
'id',
|
|
18
|
+
'price',
|
|
19
|
+
'reviews',
|
|
20
|
+
'hasVariants',
|
|
21
|
+
'slug',
|
|
22
|
+
'sku',
|
|
23
|
+
'stock',
|
|
24
|
+
'costPrice',
|
|
25
|
+
'images',
|
|
26
|
+
'miniatures',
|
|
27
|
+
'name',
|
|
28
|
+
'weight',
|
|
29
|
+
]))),
|
|
30
|
+
});
|
|
31
|
+
}
|
|
32
|
+
get homeId() {
|
|
33
|
+
if (this.defaultShop === Shops.GLAMSHOP)
|
|
34
|
+
return 'glamshop';
|
|
35
|
+
if (this.defaultShop === Shops.MENSMARKET)
|
|
36
|
+
return 'mens_market';
|
|
37
|
+
return null;
|
|
38
|
+
}
|
|
39
|
+
getHomeData() {
|
|
40
|
+
return this.getHomeConfiguration().pipe(tap((home) => { var _a; return console.log((_a = home === null || home === void 0 ? void 0 : home.data) === null || _a === void 0 ? void 0 : _a.expiresAt); }), map((home) => { var _a; return (((_a = home === null || home === void 0 ? void 0 : home.data) === null || _a === void 0 ? void 0 : _a.expiresAt) > new Date() ? home : null); }), concatMap((home) => home
|
|
41
|
+
? of(home)
|
|
42
|
+
: forkJoin([this.getDiscoverProducts(), this.getFeaturedProducts(), this.getVerticalProducts()]).pipe(map(([discoverProducts, featuredProducts, verticalProducts]) => ({
|
|
43
|
+
discoverProducts,
|
|
44
|
+
featuredProducts,
|
|
45
|
+
verticalProducts,
|
|
46
|
+
})), concatMap((data) => this.saveHomeData(data)))));
|
|
47
|
+
}
|
|
48
|
+
getBanners(type) {
|
|
49
|
+
return this.getHomeConfiguration().pipe(map((home) => {
|
|
50
|
+
if (type === 'brand')
|
|
51
|
+
return home.brandsCarousel;
|
|
52
|
+
if (type === 'buyToWin')
|
|
53
|
+
return [home.buyToWinBanner];
|
|
54
|
+
if (type === 'block')
|
|
55
|
+
return home.blockBanners;
|
|
56
|
+
if (type === 'blog')
|
|
57
|
+
return [home.blogBanner];
|
|
58
|
+
}));
|
|
59
|
+
}
|
|
60
|
+
getDiscoverProducts() {
|
|
61
|
+
return this.getHomeConfiguration().pipe(concatMap((home) => from(this.categoryRepository.getCategoriesForHome(home.discoverCategories)).pipe(map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)))));
|
|
62
|
+
}
|
|
63
|
+
getFeaturedProducts() {
|
|
64
|
+
return this.getHomeConfiguration().pipe(concatMap((home) => from(this.categoryRepository.getCategoriesForHome(home.featuredCategories)).pipe(map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)))));
|
|
65
|
+
}
|
|
66
|
+
getVerticalProducts() {
|
|
67
|
+
return this.getHomeConfiguration().pipe(concatMap((home) => forkJoin(home.verticalCarousels.map((id) => forkJoin([
|
|
68
|
+
this.categoryRepository.get({ id }),
|
|
69
|
+
this.productRepository.find([{ categories: { operator: Where.LIKE, value: [id] } }], { limit: 12 }),
|
|
70
|
+
]).pipe(map(([category, products]) => ({ category, products: products.data })), map(this.buildCategoryGroupWithRequiredData))))));
|
|
71
|
+
}
|
|
72
|
+
getHomeConfiguration() {
|
|
73
|
+
return of(this.homeConfiguration).pipe(concatMap((home) => home
|
|
74
|
+
? of(home)
|
|
75
|
+
: !this.homeId
|
|
76
|
+
? throwError(new RequiredArgumentError(['homeId']))
|
|
77
|
+
: from(this.homeRepository.get({ id: this.homeId })).pipe(tap((homeLoaded) => (this.homeConfiguration = homeLoaded)))));
|
|
78
|
+
}
|
|
79
|
+
saveHomeData(homeData) {
|
|
80
|
+
const data = {
|
|
81
|
+
createdAt: new Date(),
|
|
82
|
+
expiresAt: add(new Date(), { hours: 1 }),
|
|
83
|
+
data: homeData,
|
|
84
|
+
};
|
|
85
|
+
return from(this.homeRepository.update({
|
|
86
|
+
id: this.homeId,
|
|
87
|
+
data,
|
|
88
|
+
})).pipe(tap(() => (this.homeConfiguration.data = data)), map(() => this.homeConfiguration));
|
|
89
|
+
}
|
|
90
|
+
}
|
|
91
|
+
HomeShopService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: HomeShopService, deps: [{ token: 'CategoryRepository' }, { token: 'HomeRepository' }, { token: 'ProductRepository' }, { token: DEFAULT_SHOP }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
92
|
+
HomeShopService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: HomeShopService });
|
|
93
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: HomeShopService, decorators: [{
|
|
94
|
+
type: Injectable
|
|
95
|
+
}], ctorParameters: function () { return [{ type: undefined, decorators: [{
|
|
96
|
+
type: Inject,
|
|
97
|
+
args: ['CategoryRepository']
|
|
98
|
+
}] }, { type: undefined, decorators: [{
|
|
99
|
+
type: Inject,
|
|
100
|
+
args: ['HomeRepository']
|
|
101
|
+
}] }, { type: undefined, decorators: [{
|
|
102
|
+
type: Inject,
|
|
103
|
+
args: ['ProductRepository']
|
|
104
|
+
}] }, { type: i1.Shops, decorators: [{
|
|
105
|
+
type: Inject,
|
|
106
|
+
args: [DEFAULT_SHOP]
|
|
107
|
+
}] }]; } });
|
|
108
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaG9tZS1zaG9wLnNlcnZpY2UuanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2hvbWUtc2hvcC5zZXJ2aWNlLnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLE9BQU8sRUFBRSxVQUFVLEVBQUUsTUFBTSxFQUFFLE1BQU0sZUFBZSxDQUFBO0FBQ2xELE9BQU8sRUFDTCxHQUFHLEVBRUgsUUFBUSxFQU1SLElBQUksRUFDSixPQUFPLEVBRVAscUJBQXFCLEVBQ3JCLEtBQUssRUFDTCxLQUFLLEdBQ04sTUFBTSxtQkFBbUIsQ0FBQTtBQUMxQixPQUFPLEVBQUUsUUFBUSxFQUFFLElBQUksRUFBYyxFQUFFLEVBQUUsVUFBVSxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2pFLE9BQU8sRUFBRSxTQUFTLEVBQUUsR0FBRyxFQUFFLEdBQUcsRUFBRSxNQUFNLGdCQUFnQixDQUFBO0FBRXBELE9BQU8sRUFBRSxZQUFZLEVBQUUsTUFBTSxXQUFXLENBQUE7OztBQU14QyxNQUFNLE9BQU8sZUFBZTtJQVUxQixZQUNpRCxrQkFBc0MsRUFDMUMsY0FBOEIsRUFDM0IsaUJBQW9DLEVBQzNDLFdBQWtCO1FBSFYsdUJBQWtCLEdBQWxCLGtCQUFrQixDQUFvQjtRQUMxQyxtQkFBYyxHQUFkLGNBQWMsQ0FBZ0I7UUFDM0Isc0JBQWlCLEdBQWpCLGlCQUFpQixDQUFtQjtRQUMzQyxnQkFBVyxHQUFYLFdBQVcsQ0FBTztRQXVHbkQsdUNBQWtDLEdBQUcsQ0FBQyxLQUF3QixFQUFxQixFQUFFLENBQUMsQ0FBQztZQUM3RixRQUFRLEVBQUUsUUFBUSxDQUFDLFVBQVUsQ0FBQyxJQUFJLENBQUMsS0FBSyxDQUFDLFFBQVEsQ0FBQyxPQUFPLEVBQUUsRUFBRSxDQUFDLElBQUksRUFBRSxNQUFNLEVBQUUsTUFBTSxFQUFFLFlBQVksQ0FBQyxDQUFDLENBQUM7WUFDbkcsUUFBUSxFQUFFLEtB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O1lBQ3pCLEVBQUUsRUFBRSxJQUFJLENBQUMsTUFBTTtZQUNmLElBQUk7U0FDTCxDQUFDLENBQ0gsQ0FBQyxJQUFJLENBQ0osR0FBRyxDQUFDLEdBQUcsRUFBRSxDQUFDLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLElBQUksR0FBRyxJQUFJLENBQUMsQ0FBQyxFQUMvQyxHQUFHLENBQUMsR0FBRyxFQUFFLENBQUMsSUFBSSxDQUFDLGlCQUFpQixDQUFDLENBQ2xDLENBQUE7SUFDSCxDQUFDOzs2R0FuSFUsZUFBZSxrQkFXaEIsb0JBQW9CLGFBQ3BCLGdCQUFnQixhQUNoQixtQkFBbUIsYUFDbkIsWUFBWTtpSEFkWCxlQUFlOzRGQUFmLGVBQWU7a0JBRDNCLFVBQVU7OzBCQVlOLE1BQU07MkJBQUMsb0JBQW9COzswQkFDM0IsTUFBTTsyQkFBQyxnQkFBZ0I7OzBCQUN2QixNQUFNOzJCQUFDLG1CQUFtQjs7MEJBQzFCLE1BQU07MkJBQUMsWUFBWSIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQge1xuICBhZGQsXG4gIEJhbm5lcixcbiAgQ2F0ZWdvcnksXG4gIENhdGVnb3J5UmVwb3NpdG9yeSxcbiAgSG9tZSxcbiAgSG9tZUNhdGVnb3J5R3JvdXAsXG4gIEhvbWVEYXRhLFxuICBIb21lUmVwb3NpdG9yeSxcbiAgcGljayxcbiAgUHJvZHVjdCxcbiAgUHJvZHVjdFJlcG9zaXRvcnksXG4gIFJlcXVpcmVkQXJndW1lbnRFcnJvcixcbiAgU2hvcHMsXG4gIFdoZXJlLFxufSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcbmltcG9ydCB7IGZvcmtKb2luLCBmcm9tLCBPYnNlcnZhYmxlLCBvZiwgdGhyb3dFcnJvciB9IGZyb20gJ3J4anMnXG5pbXBvcnQgeyBjb25jYXRNYXAsIG1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbmltcG9ydCB7IERFRkFVTFRfU0hPUCB9IGZyb20gJy4uL2NvbnN0cydcblxudHlwZSBIb21lQ29uZmlndXJhdGlvbklkID0gJ2dsYW1zaG9wJyB8ICdtZW5zX21hcmtldCdcbnR5cGUgQmFubmVyVHlwZSA9ICdicmFuZCcgfCAnYnV5VG9XaW4nIHwgJ2Jsb2NrJyB8ICdibG9nJ1xuXG5ASW5qZWN0YWJsZSgpXG5leHBvcnQgY2xhc3MgSG9tZVNob3BTZXJ2aWNlIHtcbiAgcHJpdmF0ZSBob21lQ29uZmlndXJhdGlvbjogSG9tZVxuXG4gIHByaXZhdGUgZ2V0IGhvbWVJZCgpOiBIb21lQ29uZmlndXJhdGlvbklkIHtcbiAgICBpZiAodGhpcy5kZWZhdWx0U2hvcCA9PT0gU2hvcHMuR0xBTVNIT1ApIHJldHVybiAnZ2xhbXNob3AnXG4gICAgaWYgKHRoaXMuZGVmYXVsdFNob3AgPT09IFNob3BzLk1FTlNNQVJLRVQpIHJldHVybiAnbWVuc19tYXJrZXQnXG5cbiAgICByZXR1cm4gbnVsbFxuICB9XG5cbiAgY29uc3RydWN0b3IoXG4gICAgQEluamVjdCgnQ2F0ZWdvcnlSZXBvc2l0b3J5JykgcHJpdmF0ZSByZWFkb25seSBjYXRlZ29yeVJlcG9zaXRvcnk6IENhdGVnb3J5UmVwb3NpdG9yeSxcbiAgICBASW5qZWN0KCdIb21lUmVwb3NpdG9yeScpIHByaXZhdGUgcmVhZG9ubHkgaG9tZVJlcG9zaXRvcnk6IEhvbWVSZXBvc2l0b3J5LFxuICAgIEBJbmplY3QoJ1Byb2R1Y3RSZXBvc2l0b3J5JykgcHJpdmF0ZSByZWFkb25seSBwcm9kdWN0UmVwb3NpdG9yeTogUHJvZHVjdFJlcG9zaXRvcnksXG4gICAgQEluamVjdChERUZBVUxUX1NIT1ApIHByaXZhdGUgcmVhZG9ubHkgZGVmYXVsdFNob3A6IFNob3BzLFxuICApIHt9XG5cbiAgZ2V0SG9tZURhdGEoKTogT2JzZXJ2YWJsZTxIb21lPiB7XG4gICAgcmV0dXJuIHRoaXMuZ2V0SG9tZUNvbmZpZ3VyYXRpb24oKS5waXBlKFxuICAgICAgdGFwKChob21lKSA9PiBjb25zb2xlLmxvZyhob21lPy5kYXRhPy5leHBpcmVzQXQpKSxcbiAgICAgIG1hcCgoaG9tZSkgPT4gKGhvbWU/LmRhdGE/LmV4cGlyZXNBdCA+IG5ldyBEYXRlKCkgPyBob21lIDogbnVsbCkpLFxuICAgICAgY29uY2F0TWFwKChob21lKSA9PlxuICAgICAgICBob21lXG4gICAgICAgICAgPyBvZihob21lKVxuICAgICAgICAgIDogZm9ya0pvaW4oW3RoaXMuZ2V0RGlzY292ZXJQcm9kdWN0cygpLCB0aGlzLmdldEZlYXR1cmVkUHJvZHVjdHMoKSwgdGhpcy5nZXRWZXJ0aWNhbFByb2R1Y3RzKCldKS5waXBlKFxuICAgICAgICAgICAgICBtYXAoKFtkaXNjb3ZlclByb2R1Y3RzLCBmZWF0dXJlZFByb2R1Y3RzLCB2ZXJ0aWNhbFByb2R1Y3RzXSkgPT4gKHtcbiAgICAgICAgICAgICAgICBkaXNjb3ZlclByb2R1Y3RzLFxuICAgICAgICAgICAgICAgIGZlYXR1cmVkUHJvZHVjdHMsXG4gICAgICAgICAgICAgICAgdmVydGljYWxQcm9kdWN0cyxcbiAgICAgICAgICAgICAgfSkpLFxuICAgICAgICAgICAgICBjb25jYXRNYXAoKGRhdGEpID0+IHRoaXMuc2F2ZUhvbWVEYXRhKGRhdGEpKSxcbiAgICAgICAgICAgICksXG4gICAgICApLFxuICAgIClcbiAgfVxuXG4gIGdldEJhbm5lcnModHlwZTogQmFubmVyVHlwZSk6IE9ic2VydmFibGU8QmFubmVyW10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRIb21lQ29uZmlndXJhdGlvbigpLnBpcGUoXG4gICAgICBtYXAoKGhvbWUpID0+IHtcbiAgICAgICAgaWYgKHR5cGUgPT09ICdicmFuZCcpIHJldHVybiBob21lLmJyYW5kc0Nhcm91c2VsXG4gICAgICAgIGlmICh0eXBlID09PSAnYnV5VG9XaW4nKSByZXR1cm4gW2hvbWUuYnV5VG9XaW5CYW5uZXJdXG4gICAgICAgIGlmICh0eXBlID09PSAnYmxvY2snKSByZXR1cm4gaG9tZS5ibG9ja0Jhbm5lcnNcbiAgICAgICAgaWYgKHR5cGUgPT09ICdibG9nJykgcmV0dXJuIFtob21lLmJsb2dCYW5uZXJdXG4gICAgICB9KSxcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGdldERpc2NvdmVyUHJvZHVjdHMoKTogT2JzZXJ2YWJsZTx7IGNhdGVnb3J5OiBDYXRlZ29yeTsgcHJvZHVjdHM6IFByb2R1Y3RbXSB9W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRIb21lQ29uZmlndXJhdGlvbigpLnBpcGUoXG4gICAgICBjb25jYXRNYXAoKGhvbWUpID0+XG4gICAgICAgIGZyb20odGhpcy5jYXRlZ29yeVJlcG9zaXRvcnkuZ2V0Q2F0ZWdvcmllc0ZvckhvbWUoaG9tZS5kaXNjb3ZlckNhdGVnb3JpZXMpKS5waXBlKFxuICAgICAgICAgIG1hcCgoZ3JvdXBzKSA9PiBncm91cHMubWFwKHRoaXMuYnVpbGRDYXRlZ29yeUdyb3VwV2l0aFJlcXVpcmVkRGF0YSkpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGdldEZlYXR1cmVkUHJvZHVjdHMoKTogT2JzZXJ2YWJsZTx7IGNhdGVnb3J5OiBDYXRlZ29yeTsgcHJvZHVjdHM6IFByb2R1Y3RbXSB9W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRIb21lQ29uZmlndXJhdGlvbigpLnBpcGUoXG4gICAgICBjb25jYXRNYXAoKGhvbWUpID0+XG4gICAgICAgIGZyb20odGhpcy5jYXRlZ29yeVJlcG9zaXRvcnkuZ2V0Q2F0ZWdvcmllc0ZvckhvbWUoaG9tZS5mZWF0dXJlZENhdGVnb3JpZXMpKS5waXBlKFxuICAgICAgICAgIG1hcCgoZ3JvdXBzKSA9PiBncm91cHMubWFwKHRoaXMuYnVpbGRDYXRlZ29yeUdyb3VwV2l0aFJlcXVpcmVkRGF0YSkpLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGdldFZlcnRpY2FsUHJvZHVjdHMoKTogT2JzZXJ2YWJsZTx7IGNhdGVnb3J5OiBDYXRlZ29yeTsgcHJvZHVjdHM6IFByb2R1Y3RbXSB9W10+IHtcbiAgICByZXR1cm4gdGhpcy5nZXRIb21lQ29uZmlndXJhdGlvbigpLnBpcGUoXG4gICAgICBjb25jYXRNYXAoKGhvbWUpID0+XG4gICAgICAgIGZvcmtKb2luKFxuICAgICAgICAgIGhvbWUudmVydGljYWxDYXJvdXNlbHMubWFwKChpZCkgPT5cbiAgICAgICAgICAgIGZvcmtKb2luKFtcbiAgICAgICAgICAgICAgdGhpcy5jYXRlZ29yeVJlcG9zaXRvcnkuZ2V0KHsgaWQgfSksXG4gICAgICAgICAgICAgIHRoaXMucHJvZHVjdFJlcG9zaXRvcnkuZmluZChbeyBjYXRlZ29yaWVzOiB7IG9wZXJhdG9yOiBXaGVyZS5MSUtFLCB2YWx1ZTogW2lkXSB9IH1dLCB7IGxpbWl0OiAxMiB9KSxcbiAgICAgICAgICAgIF0pLnBpcGUoXG4gICAgICAgICAgICAgIG1hcCgoW2NhdGVnb3J5LCBwcm9kdWN0c10pID0+ICh7IGNhdGVnb3J5LCBwcm9kdWN0czogcHJvZHVjdHMuZGF0YSB9KSksXG4gICAgICAgICAgICAgIG1hcCh0aGlzLmJ1aWxkQ2F0ZWdvcnlHcm91cFdpdGhSZXF1aXJlZERhdGEpLFxuICAgICAgICAgICAgKSxcbiAgICAgICAgICApLFxuICAgICAgICApLFxuICAgICAgKSxcbiAgICApXG4gIH1cblxuICBwcml2YXRlIGdldEhvbWVDb25maWd1cmF0aW9uKCk6IE9ic2VydmFibGU8SG9tZT4ge1xuICAgIHJldHVybiBvZih0aGlzLmhvbWVDb25maWd1cmF0aW9uKS5waXBlKFxuICAgICAgY29uY2F0TWFwKChob21lKSA9PlxuICAgICAgICBob21lXG4gICAgICAgICAgPyBvZihob21lKVxuICAgICAgICAgIDogIXRoaXMuaG9tZUlkXG4gICAgICAgICAgPyB0aHJvd0Vycm9yKG5ldyBSZXF1aXJlZEFyZ3VtZW50RXJyb3IoWydob21lSWQnXSkpXG4gICAgICAgICAgOiBmcm9tKHRoaXMuaG9tZVJlcG9zaXRvcnkuZ2V0KHsgaWQ6IHRoaXMuaG9tZUlkIH0pKS5waXBlKFxuICAgICAgICAgICAgICB0YXAoKGhvbWVMb2FkZWQpID0+ICh0aGlzLmhvbWVDb25maWd1cmF0aW9uID0gaG9tZUxvYWRlZCkpLFxuICAgICAgICAgICAgKSxcbiAgICAgICksXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBzYXZlSG9tZURhdGEoaG9tZURhdGE6IEhvbWVEYXRhKTogT2JzZXJ2YWJsZTxIb21lPiB7XG4gICAgY29uc3QgZGF0YSA9IHtcbiAgICAgIGNyZWF0ZWRBdDogbmV3IERhdGUoKSxcbiAgICAgIGV4cGlyZXNBdDogYWRkKG5ldyBEYXRlKCksIHsgaG91cnM6IDEgfSksXG4gICAgICBkYXRhOiBob21lRGF0YSxcbiAgICB9XG5cbiAgICByZXR1cm4gZnJvbShcbiAgICAgIHRoaXMuaG9tZVJlcG9zaXRvcnkudXBkYXRlKHtcbiAgICAgICAgaWQ6IHRoaXMuaG9tZUlkLFxuICAgICAgICBkYXRhLFxuICAgICAgfSksXG4gICAgKS5waXBlKFxuICAgICAgdGFwKCgpID0+ICh0aGlzLmhvbWVDb25maWd1cmF0aW9uLmRhdGEgPSBkYXRhKSksXG4gICAgICBtYXAoKCkgPT4gdGhpcy5ob21lQ29uZmlndXJhdGlvbiksXG4gICAgKVxuICB9XG5cbiAgcHJpdmF0ZSBidWlsZENhdGVnb3J5R3JvdXBXaXRoUmVxdWlyZWREYXRhID0gKGdyb3VwOiBIb21lQ2F0ZWdvcnlHcm91cCk6IEhvbWVDYXRlZ29yeUdyb3VwID0+ICh7XG4gICAgY2F0ZWdvcnk6IENhdGVnb3J5LnRvSW5zdGFuY2UocGljayhncm91cC5jYXRlZ29yeS50b1BsYWluKCksIFsnaWQnLCAnbmFtZScsICdzbHVnJywgJ2NvbmRpdGlvbnMnXSkpLFxuICAgIHByb2R1Y3RzOiBncm91cC5wcm9kdWN0cy5tYXAoKHByb2R1Y3QpID0+XG4gICAgICBQcm9kdWN0LnRvSW5zdGFuY2UoXG4gICAgICAgIHBpY2socHJvZHVjdC50b1BsYWluKCksIFtcbiAgICAgICAgICAnaWQnLFxuICAgICAgICAgICdwcmljZScsXG4gICAgICAgICAgJ3Jldmlld3MnLFxuICAgICAgICAgICdoYXNWYXJpYW50cycsXG4gICAgICAgICAgJ3NsdWcnLFxuICAgICAgICAgICdza3UnLFxuICAgICAgICAgICdzdG9jaycsXG4gICAgICAgICAgJ2Nvc3RQcmljZScsXG4gICAgICAgICAgJ2ltYWdlcycsXG4gICAgICAgICAgJ21pbmlhdHVyZXMnLFxuICAgICAgICAgICduYW1lJyxcbiAgICAgICAgICAnd2VpZ2h0JyxcbiAgICAgICAgXSksXG4gICAgICApLFxuICAgICksXG4gIH0pXG59XG4iXX0=
|
|
@@ -0,0 +1,8 @@
|
|
|
1
|
+
export * from './auth.service';
|
|
2
|
+
export * from './cart.service';
|
|
3
|
+
export * from './checkout.service';
|
|
4
|
+
export * from './checkout-subscription.service';
|
|
5
|
+
export * from './order.service';
|
|
6
|
+
export * from './coupon.service';
|
|
7
|
+
export * from './home-shop.service';
|
|
8
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsZ0JBQWdCLENBQUE7QUFDOUIsY0FBYyxnQkFBZ0IsQ0FBQTtBQUM5QixjQUFjLG9CQUFvQixDQUFBO0FBQ2xDLGNBQWMsaUNBQWlDLENBQUE7QUFDL0MsY0FBYyxpQkFBaUIsQ0FBQTtBQUMvQixjQUFjLGtCQUFrQixDQUFBO0FBQ2hDLGNBQWMscUJBQXFCLENBQUEiLCJzb3VyY2VzQ29udGVudCI6WyJleHBvcnQgKiBmcm9tICcuL2F1dGguc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vY2FydC5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja291dC5zZXJ2aWNlJ1xuZXhwb3J0ICogZnJvbSAnLi9jaGVja291dC1zdWJzY3JpcHRpb24uc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vb3JkZXIuc2VydmljZSdcbmV4cG9ydCAqIGZyb20gJy4vY291cG9uLnNlcnZpY2UnXG5leHBvcnQgKiBmcm9tICcuL2hvbWUtc2hvcC5zZXJ2aWNlJ1xuIl19
|
|
@@ -0,0 +1,32 @@
|
|
|
1
|
+
import { Injectable, Inject } from '@angular/core';
|
|
2
|
+
import { AngularFirestore } from '@angular/fire/firestore';
|
|
3
|
+
import { Order, OrderFirestoreRepository } from '@infrab4a/connect';
|
|
4
|
+
import { Subject } from 'rxjs';
|
|
5
|
+
import { map } from 'rxjs/operators';
|
|
6
|
+
import * as i0 from "@angular/core";
|
|
7
|
+
import * as i1 from "@angular/fire/firestore";
|
|
8
|
+
import * as i2 from "@infrab4a/connect";
|
|
9
|
+
export class OrderService {
|
|
10
|
+
constructor(angularFirestore, orderRepository) {
|
|
11
|
+
this.angularFirestore = angularFirestore;
|
|
12
|
+
this.orderRepository = orderRepository;
|
|
13
|
+
this.orderSubject = new Subject();
|
|
14
|
+
}
|
|
15
|
+
getOrder(id) {
|
|
16
|
+
this.angularFirestore
|
|
17
|
+
.doc(`${this.orderRepository.collectionName}/${id}`)
|
|
18
|
+
.valueChanges()
|
|
19
|
+
.pipe(map((doc) => Order.toInstance(doc)))
|
|
20
|
+
.subscribe((doc) => this.orderSubject.next(doc));
|
|
21
|
+
return this.orderSubject;
|
|
22
|
+
}
|
|
23
|
+
}
|
|
24
|
+
OrderService.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: OrderService, deps: [{ token: i1.AngularFirestore }, { token: 'OrderRepository' }], target: i0.ɵɵFactoryTarget.Injectable });
|
|
25
|
+
OrderService.ɵprov = i0.ɵɵngDeclareInjectable({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: OrderService });
|
|
26
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: OrderService, decorators: [{
|
|
27
|
+
type: Injectable
|
|
28
|
+
}], ctorParameters: function () { return [{ type: i1.AngularFirestore }, { type: i2.OrderFirestoreRepository, decorators: [{
|
|
29
|
+
type: Inject,
|
|
30
|
+
args: ['OrderRepository']
|
|
31
|
+
}] }]; } });
|
|
32
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoib3JkZXIuc2VydmljZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvb3JkZXIuc2VydmljZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiQUFBQSxPQUFPLEVBQUUsVUFBVSxFQUFFLE1BQU0sRUFBRSxNQUFNLGVBQWUsQ0FBQTtBQUNsRCxPQUFPLEVBQUUsZ0JBQWdCLEVBQXlCLE1BQU0seUJBQXlCLENBQUE7QUFDakYsT0FBTyxFQUFFLEtBQUssRUFBRSx3QkFBd0IsRUFBRSxNQUFNLG1CQUFtQixDQUFBO0FBQ25FLE9BQU8sRUFBb0IsT0FBTyxFQUFFLE1BQU0sTUFBTSxDQUFBO0FBQ2hELE9BQU8sRUFBRSxHQUFHLEVBQWlCLE1BQU0sZ0JBQWdCLENBQUE7Ozs7QUFHbkQsTUFBTSxPQUFPLFlBQVk7SUFHdkIsWUFDbUIsZ0JBQWtDLEVBQ1AsZUFBeUM7UUFEcEUscUJBQWdCLEdBQWhCLGdCQUFnQixDQUFrQjtRQUNQLG9CQUFlLEdBQWYsZUFBZSxDQUEwQjtRQUp2RixpQkFBWSxHQUFHLElBQUksT0FBTyxFQUFTLENBQUE7SUFLaEMsQ0FBQztJQUVKLFFBQVEsQ0FBQyxFQUFVO1FBQ2pCLElBQUksQ0FBQyxnQkFBZ0I7YUFDbEIsR0FBRyxDQUErQixHQUFHLElBQUksQ0FBQyxlQUFlLENBQUMsY0FBYyxJQUFJLEVBQUUsRUFBRSxDQUFDO2FBQ2pGLFlBQVksRUFBRTthQUNkLElBQUksQ0FBQyxHQUFHLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLEtBQUssQ0FBQyxVQUFVLENBQUMsR0FBRyxDQUFDLENBQUMsQ0FBQzthQUN6QyxTQUFTLENBQUMsQ0FBQyxHQUFHLEVBQUUsRUFBRSxDQUFDLElBQUksQ0FBQyxZQUFZLENBQUMsSUFBSSxDQUFDLEdBQUcsQ0FBQyxDQUFDLENBQUE7UUFFbEQsT0FBTyxJQUFJLENBQUMsWUFBWSxDQUFBO0lBQzFCLENBQUM7OzBHQWhCVSxZQUFZLGtEQUtiLGlCQUFpQjs4R0FMaEIsWUFBWTs0RkFBWixZQUFZO2tCQUR4QixVQUFVOzswQkFNTixNQUFNOzJCQUFDLGlCQUFpQiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IEluamVjdGFibGUsIEluamVjdCB9IGZyb20gJ0Bhbmd1bGFyL2NvcmUnXG5pbXBvcnQgeyBBbmd1bGFyRmlyZXN0b3JlLCBRdWVyeURvY3VtZW50U25hcHNob3QgfSBmcm9tICdAYW5ndWxhci9maXJlL2ZpcmVzdG9yZSdcbmltcG9ydCB7IE9yZGVyLCBPcmRlckZpcmVzdG9yZVJlcG9zaXRvcnkgfSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcbmltcG9ydCB7IGZyb20sIE9ic2VydmFibGUsIFN1YmplY3QgfSBmcm9tICdyeGpzJ1xuaW1wb3J0IHsgbWFwLCBtZXJnZU1hcCwgdGFwIH0gZnJvbSAncnhqcy9vcGVyYXRvcnMnXG5cbkBJbmplY3RhYmxlKClcbmV4cG9ydCBjbGFzcyBPcmRlclNlcnZpY2Uge1xuICBvcmRlclN1YmplY3QgPSBuZXcgU3ViamVjdDxPcmRlcj4oKVxuXG4gIGNvbnN0cnVjdG9yKFxuICAgIHByaXZhdGUgcmVhZG9ubHkgYW5ndWxhckZpcmVzdG9yZTogQW5ndWxhckZpcmVzdG9yZSxcbiAgICBASW5qZWN0KCdPcmRlclJlcG9zaXRvcnknKSBwcml2YXRlIHJlYWRvbmx5IG9yZGVyUmVwb3NpdG9yeTogT3JkZXJGaXJlc3RvcmVSZXBvc2l0b3J5LFxuICApIHt9XG5cbiAgZ2V0T3JkZXIoaWQ6IHN0cmluZyk6IFN1YmplY3Q8T3JkZXI+IHtcbiAgICB0aGlzLmFuZ3VsYXJGaXJlc3RvcmVcbiAgICAgIC5kb2M8UXVlcnlEb2N1bWVudFNuYXBzaG90PE9yZGVyPj4oYCR7dGhpcy5vcmRlclJlcG9zaXRvcnkuY29sbGVjdGlvbk5hbWV9LyR7aWR9YClcbiAgICAgIC52YWx1ZUNoYW5nZXMoKVxuICAgICAgLnBpcGUobWFwKChkb2MpID0+IE9yZGVyLnRvSW5zdGFuY2UoZG9jKSkpXG4gICAgICAuc3Vic2NyaWJlKChkb2MpID0+IHRoaXMub3JkZXJTdWJqZWN0Lm5leHQoZG9jKSlcblxuICAgIHJldHVybiB0aGlzLm9yZGVyU3ViamVjdFxuICB9XG59XG4iXX0=
|
|
@@ -0,0 +1,3 @@
|
|
|
1
|
+
export * from './required-checkout-data.type';
|
|
2
|
+
export * from './required-checkout-subscription-data.type';
|
|
3
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoiaW5kZXguanMiLCJzb3VyY2VSb290IjoiIiwic291cmNlcyI6WyIuLi8uLi8uLi8uLi8uLi9wcm9qZWN0cy9jb25uZWN0LWFuZ3VsYXIvc3JjL3NlcnZpY2VzL3R5cGVzL2luZGV4LnRzIl0sIm5hbWVzIjpbXSwibWFwcGluZ3MiOiJBQUFBLGNBQWMsK0JBQStCLENBQUE7QUFDN0MsY0FBYyw0Q0FBNEMsQ0FBQSIsInNvdXJjZXNDb250ZW50IjpbImV4cG9ydCAqIGZyb20gJy4vcmVxdWlyZWQtY2hlY2tvdXQtZGF0YS50eXBlJ1xuZXhwb3J0ICogZnJvbSAnLi9yZXF1aXJlZC1jaGVja291dC1zdWJzY3JpcHRpb24tZGF0YS50eXBlJ1xuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQtY2hlY2tvdXQtZGF0YS50eXBlLmpzIiwic291cmNlUm9vdCI6IiIsInNvdXJjZXMiOlsiLi4vLi4vLi4vLi4vLi4vcHJvamVjdHMvY29ubmVjdC1hbmd1bGFyL3NyYy9zZXJ2aWNlcy90eXBlcy9yZXF1aXJlZC1jaGVja291dC1kYXRhLnR5cGUudHMiXSwibmFtZXMiOltdLCJtYXBwaW5ncyI6IiIsInNvdXJjZXNDb250ZW50IjpbImltcG9ydCB7IENoZWNrb3V0IH0gZnJvbSAnQGluZnJhYjRhL2Nvbm5lY3QnXG5cbmV4cG9ydCB0eXBlIFJlcXVpcmVkQ2hlY2tvdXREYXRhID0gUGFydGlhbDxQaWNrPENoZWNrb3V0LCAnaWQnIHwgJ3VzZXInIHwgJ3Nob3AnIHwgJ2xpbmVJdGVtcyc+PlxuIl19
|
|
@@ -0,0 +1,2 @@
|
|
|
1
|
+
export {};
|
|
2
|
+
//# sourceMappingURL=data:application/json;base64,eyJ2ZXJzaW9uIjozLCJmaWxlIjoicmVxdWlyZWQtY2hlY2tvdXQtc3Vic2NyaXB0aW9uLWRhdGEudHlwZS5qcyIsInNvdXJjZVJvb3QiOiIiLCJzb3VyY2VzIjpbIi4uLy4uLy4uLy4uLy4uL3Byb2plY3RzL2Nvbm5lY3QtYW5ndWxhci9zcmMvc2VydmljZXMvdHlwZXMvcmVxdWlyZWQtY2hlY2tvdXQtc3Vic2NyaXB0aW9uLWRhdGEudHlwZS50cyJdLCJuYW1lcyI6W10sIm1hcHBpbmdzIjoiIiwic291cmNlc0NvbnRlbnQiOlsiaW1wb3J0IHsgQ2hlY2tvdXRTdWJzY3JpcHRpb24gfSBmcm9tICdAaW5mcmFiNGEvY29ubmVjdCdcblxuZXhwb3J0IHR5cGUgUmVxdWlyZWRDaGVja291dFN1YnNjcmlwdGlvbkRhdGEgPSBQYXJ0aWFsPFBpY2s8Q2hlY2tvdXRTdWJzY3JpcHRpb24sICdpZCc+PlxuIl19
|
|
@@ -5,7 +5,7 @@ import { AngularFireAuth } from '@angular/fire/auth';
|
|
|
5
5
|
import { of, combineLatest, from, throwError, Subject, iif, forkJoin } from 'rxjs';
|
|
6
6
|
import { catchError, map, mergeMap, concatMap, tap } from 'rxjs/operators';
|
|
7
7
|
import * as i2 from '@infrab4a/connect';
|
|
8
|
-
import { FinancialCoupon, Where, NotFoundError, Exclusivities, isNil, Checkout, CheckoutTypes, pick, LineItem, CouponTypes, CouponSubtypes, CheckoutSubscription, Order, Category, Product, Shops, RequiredArgumentError, add, Authentication, AuthenticationFirebaseAuthService, Register, RegisterFirebaseAuthService, SignOut, RecoveryPassword, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, SubscriptionEditionFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, ProductVariantFirestoreRepository } from '@infrab4a/connect';
|
|
8
|
+
import { FinancialCoupon, Where, NotFoundError, Exclusivities, isNil, Checkout, CheckoutTypes, pick, LineItem, CouponTypes, CouponSubtypes, CheckoutSubscription, Order, Category, Product, Shops, RequiredArgumentError, add, Authentication, AuthenticationFirebaseAuthService, Register, RegisterFirebaseAuthService, SignOut, RecoveryPassword, ProductsIndex, AxiosAdapter, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, SubscriptionEditionFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, ProductVariantFirestoreRepository } from '@infrab4a/connect';
|
|
9
9
|
import { __awaiter } from 'tslib';
|
|
10
10
|
import cookie from 'js-cookie';
|
|
11
11
|
import * as i1$1 from '@angular/fire/firestore';
|
|
@@ -50,6 +50,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImpo
|
|
|
50
50
|
|
|
51
51
|
const DEFAULT_SHOP = 'DEFAULT_SHOP';
|
|
52
52
|
|
|
53
|
+
const ES_CONFIG = 'ES_CONFIG';
|
|
54
|
+
|
|
53
55
|
class InvalidCouponError extends Error {
|
|
54
56
|
constructor(message) {
|
|
55
57
|
super(message);
|
|
@@ -490,7 +492,7 @@ class HomeShopService {
|
|
|
490
492
|
return this.getHomeConfiguration().pipe(concatMap((home) => from(this.categoryRepository.getCategoriesForHome(home.featuredCategories)).pipe(map((groups) => groups.map(this.buildCategoryGroupWithRequiredData)))));
|
|
491
493
|
}
|
|
492
494
|
getVerticalProducts() {
|
|
493
|
-
return this.getHomeConfiguration().pipe(concatMap((home) => forkJoin(home.verticalCarousels.
|
|
495
|
+
return this.getHomeConfiguration().pipe(concatMap((home) => forkJoin(home.verticalCarousels.map((id) => forkJoin([
|
|
494
496
|
this.categoryRepository.get({ id }),
|
|
495
497
|
this.productRepository.find([{ categories: { operator: Where.LIKE, value: [id] } }], { limit: 12 }),
|
|
496
498
|
]).pipe(map(([category, products]) => ({ category, products: products.data })), map(this.buildCategoryGroupWithRequiredData))))));
|
|
@@ -640,19 +642,54 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImpo
|
|
|
640
642
|
}]
|
|
641
643
|
}] });
|
|
642
644
|
|
|
645
|
+
class AngularElasticSeachModule {
|
|
646
|
+
static initializeApp(options) {
|
|
647
|
+
return {
|
|
648
|
+
ngModule: AngularElasticSeachModule,
|
|
649
|
+
providers: [{ provide: ES_CONFIG, useValue: options }],
|
|
650
|
+
};
|
|
651
|
+
}
|
|
652
|
+
}
|
|
653
|
+
AngularElasticSeachModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularElasticSeachModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
654
|
+
AngularElasticSeachModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularElasticSeachModule });
|
|
655
|
+
AngularElasticSeachModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularElasticSeachModule, providers: [
|
|
656
|
+
{
|
|
657
|
+
provide: ProductsIndex,
|
|
658
|
+
useFactory: (configuration) => {
|
|
659
|
+
return new ProductsIndex(new AxiosAdapter(configuration));
|
|
660
|
+
},
|
|
661
|
+
deps: [ES_CONFIG],
|
|
662
|
+
},
|
|
663
|
+
] });
|
|
664
|
+
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularElasticSeachModule, decorators: [{
|
|
665
|
+
type: NgModule,
|
|
666
|
+
args: [{
|
|
667
|
+
providers: [
|
|
668
|
+
{
|
|
669
|
+
provide: ProductsIndex,
|
|
670
|
+
useFactory: (configuration) => {
|
|
671
|
+
return new ProductsIndex(new AxiosAdapter(configuration));
|
|
672
|
+
},
|
|
673
|
+
deps: [ES_CONFIG],
|
|
674
|
+
},
|
|
675
|
+
],
|
|
676
|
+
}]
|
|
677
|
+
}] });
|
|
678
|
+
|
|
643
679
|
class AngularFirestoreModule {
|
|
644
680
|
static initializeApp(options, nameOrConfig) {
|
|
645
681
|
return {
|
|
646
682
|
ngModule: AngularFirestoreModule,
|
|
647
683
|
providers: [
|
|
648
|
-
{ provide: FIREBASE_OPTIONS, useValue: options },
|
|
684
|
+
{ provide: FIREBASE_OPTIONS, useValue: options.firebase },
|
|
649
685
|
{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig },
|
|
686
|
+
{ provide: ES_CONFIG, useValue: options.elasticSearch },
|
|
650
687
|
],
|
|
651
688
|
};
|
|
652
689
|
}
|
|
653
690
|
}
|
|
654
691
|
AngularFirestoreModule.ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, deps: [], target: i0.ɵɵFactoryTarget.NgModule });
|
|
655
|
-
AngularFirestoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, imports: [AngularFireModule] });
|
|
692
|
+
AngularFirestoreModule.ɵmod = i0.ɵɵngDeclareNgModule({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, imports: [AngularFireModule, AngularElasticSeachModule] });
|
|
656
693
|
AngularFirestoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, providers: [
|
|
657
694
|
{
|
|
658
695
|
provide: 'BeautyProfileRepository',
|
|
@@ -670,10 +707,10 @@ AngularFirestoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
|
|
|
670
707
|
},
|
|
671
708
|
{
|
|
672
709
|
provide: 'CategoryRepository',
|
|
673
|
-
useFactory: (firestore) => {
|
|
674
|
-
return new CategoryFirestoreRepository(firestore.firestore);
|
|
710
|
+
useFactory: (firestore, productsIndex) => {
|
|
711
|
+
return new CategoryFirestoreRepository(firestore.firestore, productsIndex);
|
|
675
712
|
},
|
|
676
|
-
deps: [AngularFirestore],
|
|
713
|
+
deps: [AngularFirestore, ProductsIndex],
|
|
677
714
|
},
|
|
678
715
|
{
|
|
679
716
|
provide: 'CheckoutRepository',
|
|
@@ -808,11 +845,11 @@ AngularFirestoreModule.ɵinj = i0.ɵɵngDeclareInjector({ minVersion: "12.0.0",
|
|
|
808
845
|
},
|
|
809
846
|
deps: [AngularFirestore, 'ProductRepository'],
|
|
810
847
|
},
|
|
811
|
-
], imports: [[AngularFireModule]] });
|
|
848
|
+
], imports: [[AngularFireModule, AngularElasticSeachModule]] });
|
|
812
849
|
i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImport: i0, type: AngularFirestoreModule, decorators: [{
|
|
813
850
|
type: NgModule,
|
|
814
851
|
args: [{
|
|
815
|
-
imports: [AngularFireModule],
|
|
852
|
+
imports: [AngularFireModule, AngularElasticSeachModule],
|
|
816
853
|
providers: [
|
|
817
854
|
{
|
|
818
855
|
provide: 'BeautyProfileRepository',
|
|
@@ -830,10 +867,10 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "12.2.12", ngImpo
|
|
|
830
867
|
},
|
|
831
868
|
{
|
|
832
869
|
provide: 'CategoryRepository',
|
|
833
|
-
useFactory: (firestore) => {
|
|
834
|
-
return new CategoryFirestoreRepository(firestore.firestore);
|
|
870
|
+
useFactory: (firestore, productsIndex) => {
|
|
871
|
+
return new CategoryFirestoreRepository(firestore.firestore, productsIndex);
|
|
835
872
|
},
|
|
836
|
-
deps: [AngularFirestore],
|
|
873
|
+
deps: [AngularFirestore, ProductsIndex],
|
|
837
874
|
},
|
|
838
875
|
{
|
|
839
876
|
provide: 'CheckoutRepository',
|
|
@@ -978,8 +1015,9 @@ class AngularConnectModule {
|
|
|
978
1015
|
ngModule: AngularConnectModule,
|
|
979
1016
|
providers: [
|
|
980
1017
|
...(isNil(defaultShop) ? [] : [{ provide: DEFAULT_SHOP, useValue: defaultShop }]),
|
|
981
|
-
...(isNil(options) ? [] : [{ provide: FIREBASE_OPTIONS, useValue: options }]),
|
|
982
|
-
...(isNil(options) ? [] : [{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }]),
|
|
1018
|
+
...(isNil(options === null || options === void 0 ? void 0 : options.firebase) ? [] : [{ provide: FIREBASE_OPTIONS, useValue: options === null || options === void 0 ? void 0 : options.firebase }]),
|
|
1019
|
+
...(isNil(options === null || options === void 0 ? void 0 : options.firebase) ? [] : [{ provide: FIREBASE_APP_NAME, useValue: nameOrConfig }]),
|
|
1020
|
+
...(isNil(options === null || options === void 0 ? void 0 : options.elasticSearch) ? [] : [{ provide: ES_CONFIG, useValue: options.elasticSearch }]),
|
|
983
1021
|
],
|
|
984
1022
|
};
|
|
985
1023
|
}
|