@infrab4a/connect-angular 5.0.0-alpha.9 → 5.0.0-beta.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/angular-connect.module.d.ts +9 -22
- package/angular-hasura-graphql.module.d.ts +6 -4
- package/consts/firebase-const.d.ts +0 -1
- package/consts/index.d.ts +0 -2
- package/esm2022/angular-connect.module.mjs +97 -0
- package/esm2022/angular-elastic-search.module.mjs +34 -0
- package/esm2022/angular-firebase-auth.module.mjs +115 -0
- package/esm2022/angular-firestore.module.mjs +483 -0
- package/esm2022/angular-hasura-graphql.module.mjs +265 -0
- package/{esm2020 → esm2022}/consts/backend-url.const.mjs +1 -1
- package/{esm2020 → esm2022}/consts/firebase-const.mjs +1 -2
- package/{esm2020 → esm2022}/consts/index.mjs +1 -3
- package/{esm2020 → esm2022}/index.mjs +1 -2
- package/{esm2020 → esm2022}/services/auth.service.mjs +6 -6
- package/esm2022/services/cart.service.mjs +281 -0
- package/esm2022/services/catalog/adapters/new-category-structure.adapter.mjs +41 -0
- package/{esm2020 → esm2022}/services/catalog/adapters/old-category-structure.adapter.mjs +6 -6
- package/esm2022/services/catalog/catalog.service.mjs +170 -0
- package/esm2022/services/catalog/category.service.mjs +51 -0
- package/{esm2020 → esm2022}/services/catalog/models/category-with-tree.model.mjs +1 -1
- package/esm2022/services/catalog/types/index.mjs +2 -0
- package/esm2022/services/catalog/wishlist.service.mjs +116 -0
- package/esm2022/services/checkout-subscription.service.mjs +53 -0
- package/esm2022/services/checkout.service.mjs +71 -0
- package/esm2022/services/coupon.service.mjs +218 -0
- package/{esm2020 → esm2022}/services/helpers/util.helper.mjs +3 -3
- package/esm2022/services/home-shop.service.mjs +115 -0
- package/{esm2020 → esm2022}/services/index.mjs +2 -1
- package/{esm2020 → esm2022}/services/order.service.mjs +6 -6
- package/esm2022/services/shipping.service.mjs +96 -0
- package/esm2022/services/types/shipping-methods.type.mjs +2 -0
- package/fesm2022/infrab4a-connect-angular.mjs +2247 -0
- package/fesm2022/infrab4a-connect-angular.mjs.map +1 -0
- package/index.d.ts +0 -1
- package/package.json +10 -18
- package/services/cart.service.d.ts +24 -8
- package/services/catalog/catalog.service.d.ts +73 -14
- package/services/catalog/category.service.d.ts +9 -16
- package/services/catalog/types/index.d.ts +0 -4
- package/services/catalog/wishlist.service.d.ts +5 -24
- package/services/checkout-subscription.service.d.ts +5 -6
- package/services/checkout.service.d.ts +10 -17
- package/services/coupon.service.d.ts +9 -17
- package/services/home-shop.service.d.ts +6 -7
- package/services/index.d.ts +1 -0
- package/services/shipping.service.d.ts +19 -0
- package/services/types/shipping-methods.type.d.ts +12 -0
- package/angular-vertex-search.module.d.ts +0 -9
- package/consts/persistence.const.d.ts +0 -1
- package/consts/storage-base-url.const.d.ts +0 -1
- package/consts/vertex-config.const.d.ts +0 -1
- package/esm2020/angular-connect.module.mjs +0 -289
- package/esm2020/angular-elastic-search.module.mjs +0 -34
- package/esm2020/angular-firebase-auth.module.mjs +0 -141
- package/esm2020/angular-firestore.module.mjs +0 -541
- package/esm2020/angular-hasura-graphql.module.mjs +0 -333
- package/esm2020/angular-vertex-search.module.mjs +0 -34
- package/esm2020/consts/persistence.const.mjs +0 -2
- package/esm2020/consts/storage-base-url.const.mjs +0 -2
- package/esm2020/consts/vertex-config.const.mjs +0 -2
- package/esm2020/interfaces/catalog-strategies.interface.mjs +0 -2
- package/esm2020/interfaces/category-facades.interface.mjs +0 -2
- package/esm2020/interfaces/index.mjs +0 -3
- package/esm2020/persistence/cookie-data-persistence.mjs +0 -22
- package/esm2020/persistence/data-persistence.mjs +0 -2
- package/esm2020/persistence/index.mjs +0 -3
- package/esm2020/services/cart/cart-services.facade.mjs +0 -21
- package/esm2020/services/cart/index.mjs +0 -2
- package/esm2020/services/cart.service.mjs +0 -73
- package/esm2020/services/catalog/adapters/new-category-structure.adapter.mjs +0 -43
- package/esm2020/services/catalog/catalog.service.mjs +0 -111
- package/esm2020/services/catalog/category.service.mjs +0 -39
- package/esm2020/services/catalog/context/catalog-search.context.mjs +0 -40
- package/esm2020/services/catalog/facades/catalog-service.facade.mjs +0 -32
- package/esm2020/services/catalog/facades/catalog-strategies.facade.mjs +0 -17
- package/esm2020/services/catalog/facades/category-repository.facade.mjs +0 -20
- package/esm2020/services/catalog/facades/category-service.facade.mjs +0 -30
- package/esm2020/services/catalog/facades/index.mjs +0 -6
- package/esm2020/services/catalog/facades/product-catalog.facade.mjs +0 -21
- package/esm2020/services/catalog/helpers/brand-manager.helper.mjs +0 -57
- package/esm2020/services/catalog/helpers/catalog-filter.helper.mjs +0 -44
- package/esm2020/services/catalog/helpers/catalog-sort.helper.mjs +0 -52
- package/esm2020/services/catalog/helpers/index.mjs +0 -5
- package/esm2020/services/catalog/helpers/product-fields.helper.mjs +0 -39
- package/esm2020/services/catalog/services/catalog-helpers.service.mjs +0 -33
- package/esm2020/services/catalog/services/catalog-operations.facade.mjs +0 -26
- package/esm2020/services/catalog/services/catalog-repository.service.mjs +0 -25
- package/esm2020/services/catalog/services/index.mjs +0 -5
- package/esm2020/services/catalog/services/product-management.facade.mjs +0 -25
- package/esm2020/services/catalog/strategies/category-search.strategy.mjs +0 -133
- package/esm2020/services/catalog/strategies/index.mjs +0 -4
- package/esm2020/services/catalog/strategies/profile-search.strategy.mjs +0 -42
- package/esm2020/services/catalog/strategies/term-search.strategy.mjs +0 -126
- package/esm2020/services/catalog/strategies/types/strategy-params.type.mjs +0 -2
- package/esm2020/services/catalog/types/fetch-products-options.type.mjs +0 -2
- package/esm2020/services/catalog/types/fetch-products-params.type.mjs +0 -2
- package/esm2020/services/catalog/types/fetch-products-response.type.mjs +0 -2
- package/esm2020/services/catalog/types/index.mjs +0 -6
- package/esm2020/services/catalog/types/method-params.type.mjs +0 -2
- package/esm2020/services/catalog/wishlist.service.mjs +0 -256
- package/esm2020/services/checkout/checkout-dependencies.facade.mjs +0 -20
- package/esm2020/services/checkout/checkout-repositories.facade.mjs +0 -20
- package/esm2020/services/checkout/index.mjs +0 -3
- package/esm2020/services/checkout-subscription.service.mjs +0 -55
- package/esm2020/services/checkout.service.mjs +0 -106
- package/esm2020/services/coupon/coupon-repositories.facade.mjs +0 -24
- package/esm2020/services/coupon/index.mjs +0 -2
- package/esm2020/services/coupon/types/coupon-params.type.mjs +0 -2
- package/esm2020/services/coupon.service.mjs +0 -248
- package/esm2020/services/home-shop/home-shop-repositories.facade.mjs +0 -24
- package/esm2020/services/home-shop/index.mjs +0 -2
- package/esm2020/services/home-shop.service.mjs +0 -119
- package/esm2020/services/shared/configuration.facade.mjs +0 -29
- package/esm2020/services/shared/index.mjs +0 -2
- package/fesm2015/infrab4a-connect-angular.mjs +0 -3373
- package/fesm2015/infrab4a-connect-angular.mjs.map +0 -1
- package/fesm2020/infrab4a-connect-angular.mjs +0 -3278
- package/fesm2020/infrab4a-connect-angular.mjs.map +0 -1
- package/interfaces/catalog-strategies.interface.d.ts +0 -31
- package/interfaces/category-facades.interface.d.ts +0 -6
- package/interfaces/index.d.ts +0 -2
- package/persistence/cookie-data-persistence.d.ts +0 -10
- package/persistence/data-persistence.d.ts +0 -6
- package/persistence/index.d.ts +0 -2
- package/services/cart/cart-services.facade.d.ts +0 -12
- package/services/cart/index.d.ts +0 -1
- package/services/catalog/context/catalog-search.context.d.ts +0 -14
- package/services/catalog/facades/catalog-service.facade.d.ts +0 -15
- package/services/catalog/facades/catalog-strategies.facade.d.ts +0 -10
- package/services/catalog/facades/category-repository.facade.d.ts +0 -9
- package/services/catalog/facades/category-service.facade.d.ts +0 -15
- package/services/catalog/facades/index.d.ts +0 -5
- package/services/catalog/facades/product-catalog.facade.d.ts +0 -10
- package/services/catalog/helpers/brand-manager.helper.d.ts +0 -14
- package/services/catalog/helpers/catalog-filter.helper.d.ts +0 -8
- package/services/catalog/helpers/catalog-sort.helper.d.ts +0 -7
- package/services/catalog/helpers/index.d.ts +0 -4
- package/services/catalog/helpers/product-fields.helper.d.ts +0 -7
- package/services/catalog/services/catalog-helpers.service.d.ts +0 -17
- package/services/catalog/services/catalog-operations.facade.d.ts +0 -13
- package/services/catalog/services/catalog-repository.service.d.ts +0 -12
- package/services/catalog/services/index.d.ts +0 -4
- package/services/catalog/services/product-management.facade.d.ts +0 -12
- package/services/catalog/strategies/category-search.strategy.d.ts +0 -19
- package/services/catalog/strategies/index.d.ts +0 -3
- package/services/catalog/strategies/profile-search.strategy.d.ts +0 -14
- package/services/catalog/strategies/term-search.strategy.d.ts +0 -20
- package/services/catalog/strategies/types/strategy-params.type.d.ts +0 -58
- package/services/catalog/types/fetch-products-options.type.d.ts +0 -8
- package/services/catalog/types/fetch-products-params.type.d.ts +0 -25
- package/services/catalog/types/fetch-products-response.type.d.ts +0 -19
- package/services/catalog/types/method-params.type.d.ts +0 -17
- package/services/checkout/checkout-dependencies.facade.d.ts +0 -10
- package/services/checkout/checkout-repositories.facade.d.ts +0 -9
- package/services/checkout/index.d.ts +0 -2
- package/services/coupon/coupon-repositories.facade.d.ts +0 -10
- package/services/coupon/index.d.ts +0 -1
- package/services/coupon/types/coupon-params.type.d.ts +0 -13
- package/services/home-shop/home-shop-repositories.facade.d.ts +0 -10
- package/services/home-shop/index.d.ts +0 -1
- package/services/shared/configuration.facade.d.ts +0 -12
- package/services/shared/index.d.ts +0 -1
- /package/{esm2020 → esm2022}/consts/category-structure.mjs +0 -0
- /package/{esm2020 → esm2022}/consts/default-shop.const.mjs +0 -0
- /package/{esm2020 → esm2022}/consts/es-config.const.mjs +0 -0
- /package/{esm2020 → esm2022}/consts/hasura-options.const.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/helpers/mobile-operation-system-checker.helper.mjs +0 -0
- /package/{esm2020 → esm2022}/infrab4a-connect-angular.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/adapters/category-structure.adapter.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/adapters/index.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/enums/index.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/enums/product-sorts.enum.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/index.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/models/index.mjs +0 -0
- /package/{esm2020 → esm2022}/services/catalog/types/product-sort.type.mjs +0 -0
- /package/{esm2020 → esm2022}/services/helpers/index.mjs +0 -0
- /package/{esm2020 → esm2022}/services/types/index.mjs +0 -0
- /package/{esm2020 → esm2022}/services/types/required-checkout-data.type.mjs +0 -0
- /package/{esm2020 → esm2022}/services/types/required-checkout-subscription-data.type.mjs +0 -0
- /package/{esm2020 → esm2022}/types/firebase-app-config.type.mjs +0 -0
- /package/{esm2020 → esm2022}/types/index.mjs +0 -0
|
@@ -1,20 +1,78 @@
|
|
|
1
|
-
import { Category,
|
|
2
|
-
import {
|
|
3
|
-
import {
|
|
4
|
-
import { FetchProductsParams, FetchProductsResponse, StockNotificationParams } from './types';
|
|
1
|
+
import { Category, Product, ProductGender, ProductRepository, ProductsIndex, Shops } from '@infrab4a/connect';
|
|
2
|
+
import { CategoryStructureAdapter } from './adapters';
|
|
3
|
+
import { ProductSort } from './types/product-sort.type';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
5
|
+
type FetchProductsFilters = {
|
|
6
|
+
clubDiscount?: number[];
|
|
7
|
+
brands?: string[];
|
|
8
|
+
prices?: {
|
|
9
|
+
min?: number;
|
|
10
|
+
max?: number;
|
|
11
|
+
subscriberPrice?: boolean;
|
|
12
|
+
};
|
|
13
|
+
gender?: ProductGender[];
|
|
14
|
+
rate?: number;
|
|
15
|
+
customOptions?: string[];
|
|
16
|
+
tags?: string[];
|
|
17
|
+
};
|
|
18
|
+
type FetchProductsOptions = {
|
|
19
|
+
page?: number;
|
|
20
|
+
perPage?: number;
|
|
21
|
+
sort?: ProductSort;
|
|
22
|
+
mainGender?: ProductGender;
|
|
23
|
+
};
|
|
24
|
+
type FetchProductsMainParams<T extends Category> = {
|
|
25
|
+
category?: T;
|
|
26
|
+
profile?: string[];
|
|
27
|
+
term?: string;
|
|
28
|
+
};
|
|
29
|
+
type FetchProductsParams<T extends Category> = FetchProductsOptions & ({
|
|
30
|
+
category: FetchProductsMainParams<T>['category'];
|
|
31
|
+
filters?: FetchProductsFilters;
|
|
32
|
+
} | {
|
|
33
|
+
profile: FetchProductsMainParams<T>['profile'];
|
|
34
|
+
filters?: FetchProductsFilters & {
|
|
35
|
+
customOptions?: never;
|
|
36
|
+
tags?: never;
|
|
37
|
+
};
|
|
38
|
+
} | {
|
|
39
|
+
term: FetchProductsMainParams<T>['term'];
|
|
40
|
+
filters?: FetchProductsFilters & {
|
|
41
|
+
customOptions?: never;
|
|
42
|
+
};
|
|
43
|
+
});
|
|
44
|
+
type FetchProductsResponse = {
|
|
45
|
+
products: {
|
|
46
|
+
data: Product[];
|
|
47
|
+
total: number;
|
|
48
|
+
};
|
|
49
|
+
pages: number;
|
|
50
|
+
prices: {
|
|
51
|
+
price: {
|
|
52
|
+
min: number;
|
|
53
|
+
max: number;
|
|
54
|
+
};
|
|
55
|
+
subscriberPrice: {
|
|
56
|
+
min: number;
|
|
57
|
+
max: number;
|
|
58
|
+
};
|
|
59
|
+
};
|
|
60
|
+
brands?: string[];
|
|
61
|
+
};
|
|
6
62
|
export declare class CatalogService<T extends Category = Category> {
|
|
7
|
-
private readonly
|
|
8
|
-
private readonly
|
|
63
|
+
private readonly productRepository;
|
|
64
|
+
private readonly categoryStructureAdapter;
|
|
9
65
|
private readonly shop;
|
|
10
|
-
|
|
11
|
-
|
|
12
|
-
|
|
13
|
-
|
|
14
|
-
|
|
15
|
-
private
|
|
16
|
-
private
|
|
17
|
-
private
|
|
66
|
+
private readonly productIndex;
|
|
67
|
+
private productsByTerm;
|
|
68
|
+
constructor(productRepository: ProductRepository, categoryStructureAdapter: CategoryStructureAdapter, shop: Shops, productIndex: ProductsIndex);
|
|
69
|
+
fetchProducts(options: FetchProductsParams<T>): Promise<FetchProductsResponse>;
|
|
70
|
+
private findCatalog;
|
|
71
|
+
private buildMainFilter;
|
|
72
|
+
private findCatalogByTermAndSortByMostRevelant;
|
|
73
|
+
private findCatalogIdsByElasticSearch;
|
|
74
|
+
private buildFilterQuery;
|
|
75
|
+
private buildSortQuery;
|
|
18
76
|
private buildLimitQuery;
|
|
19
77
|
private hasProfile;
|
|
20
78
|
private hasTerm;
|
|
@@ -22,3 +80,4 @@ export declare class CatalogService<T extends Category = Category> {
|
|
|
22
80
|
static ɵfac: i0.ɵɵFactoryDeclaration<CatalogService<any>, never>;
|
|
23
81
|
static ɵprov: i0.ɵɵInjectableDeclaration<CatalogService<any>>;
|
|
24
82
|
}
|
|
83
|
+
export {};
|
|
@@ -1,22 +1,15 @@
|
|
|
1
|
-
import { Category, Filter, ProductGender,
|
|
2
|
-
import {
|
|
1
|
+
import { Category, CategoryFilterRepository, CategoryRepository, Filter, ProductGender, ProductRepository, Shops } from '@infrab4a/connect';
|
|
2
|
+
import { CategoryStructureAdapter } from './adapters';
|
|
3
3
|
import * as i0 from "@angular/core";
|
|
4
|
-
type FetchBrandsOptions = {
|
|
5
|
-
mainGender?: ProductGender;
|
|
6
|
-
shop?: Shops;
|
|
7
|
-
};
|
|
8
4
|
export declare class CategoryService {
|
|
9
|
-
private readonly
|
|
10
|
-
private readonly
|
|
5
|
+
private readonly productRepository;
|
|
6
|
+
private readonly categoryRepository;
|
|
7
|
+
private readonly categoryFilterRepository;
|
|
8
|
+
private readonly categoryStructureAdapter;
|
|
11
9
|
private readonly shop;
|
|
12
|
-
constructor(
|
|
13
|
-
fetchBrands(category: Category,
|
|
14
|
-
|
|
15
|
-
}): Promise<Category[]>;
|
|
16
|
-
fetchFilterOptions(category: Category, optionsCache?: {
|
|
17
|
-
cache?: RepositoryCacheOptions;
|
|
18
|
-
}): Promise<Filter[]>;
|
|
10
|
+
constructor(productRepository: ProductRepository, categoryRepository: CategoryRepository, categoryFilterRepository: CategoryFilterRepository, categoryStructureAdapter: CategoryStructureAdapter, shop: Shops);
|
|
11
|
+
fetchBrands(category: Category, mainGender?: ProductGender): Promise<Category[]>;
|
|
12
|
+
fetchFilterOptions(category: Category): Promise<Filter[]>;
|
|
19
13
|
static ɵfac: i0.ɵɵFactoryDeclaration<CategoryService, never>;
|
|
20
14
|
static ɵprov: i0.ɵɵInjectableDeclaration<CategoryService>;
|
|
21
15
|
}
|
|
22
|
-
export {};
|
|
@@ -1,58 +1,39 @@
|
|
|
1
|
-
import {
|
|
1
|
+
import { CategoryFilterRepository, CategoryRepository, ProductRepository, ProductsIndex, Shops, Wishlist, WishlistRepository } from '@infrab4a/connect';
|
|
2
2
|
import { CatalogService } from './catalog.service';
|
|
3
3
|
import { CategoryService } from './category.service';
|
|
4
|
-
import { CatalogServiceFacade, CategoryServiceFacade } from './facades';
|
|
5
4
|
import * as i0 from "@angular/core";
|
|
6
5
|
export declare class WishlistService {
|
|
7
6
|
private readonly wishlistRepository;
|
|
7
|
+
private readonly categoryRepository;
|
|
8
8
|
private readonly shop;
|
|
9
|
-
private readonly logRepository;
|
|
10
9
|
private catalogService;
|
|
11
10
|
private categoryService;
|
|
12
|
-
constructor(wishlistRepository: WishlistRepository, shop: Shops,
|
|
13
|
-
initializeServices(catalogServiceFacade: CatalogServiceFacade, categoryServiceFacade: CategoryServiceFacade): void;
|
|
11
|
+
constructor(wishlistRepository: WishlistRepository, categoryRepository: CategoryRepository, shop: Shops, productRepository: ProductRepository, categoryFilterRepository: CategoryFilterRepository, productIndex: ProductsIndex);
|
|
14
12
|
getCatalogService(): CatalogService<import("@infrab4a/connect").Category>;
|
|
15
13
|
getCategoryService(): CategoryService;
|
|
16
|
-
create({ personId, title, description,
|
|
14
|
+
create({ personId, title, description, userFullName, userPhoto, theme, bannerUrl, }: {
|
|
17
15
|
personId: string;
|
|
18
16
|
title: string;
|
|
19
17
|
description: string;
|
|
20
|
-
published: boolean;
|
|
21
18
|
userFullName: string;
|
|
22
19
|
userPhoto?: string;
|
|
23
20
|
theme?: string;
|
|
24
21
|
bannerUrl?: string;
|
|
25
|
-
personType?: PersonType;
|
|
26
|
-
personIsSubscriber?: boolean;
|
|
27
22
|
}): Promise<Wishlist>;
|
|
28
|
-
|
|
29
|
-
private findExistingWishlistByPersonId;
|
|
30
|
-
private createNewWishlist;
|
|
31
|
-
update({ id, title, description, published, userFullName, userPhoto, theme, bannerUrl, personType, personIsSubscriber, }: {
|
|
23
|
+
update({ id, title, description, userFullName, userPhoto, theme, bannerUrl, }: {
|
|
32
24
|
id: string;
|
|
33
25
|
title: string;
|
|
34
26
|
description: string;
|
|
35
|
-
published: boolean;
|
|
36
27
|
userFullName: string;
|
|
37
28
|
userPhoto?: string;
|
|
38
29
|
theme?: string;
|
|
39
30
|
bannerUrl?: string;
|
|
40
|
-
personType?: PersonType;
|
|
41
|
-
personIsSubscriber?: boolean;
|
|
42
31
|
}): Promise<Wishlist>;
|
|
43
32
|
delete(wishlistId: string): Promise<void>;
|
|
44
33
|
getWishlistBySlug(slug: string): Promise<Wishlist>;
|
|
45
34
|
getWishlistsByPerson(personId: string): Promise<Wishlist[]>;
|
|
46
35
|
addProduct(wishlistId: string, productId: string): Promise<Wishlist>;
|
|
47
36
|
removeProduct(wishlistId: string, productId: string): Promise<Wishlist>;
|
|
48
|
-
private findById;
|
|
49
|
-
private findProductById;
|
|
50
|
-
private createWishlistLog;
|
|
51
|
-
private createWishlistOperationLog;
|
|
52
|
-
private createWishlistProductLog;
|
|
53
|
-
private getOperationTypeFromWishlistLogType;
|
|
54
|
-
private buildWishlistLogDocument;
|
|
55
|
-
private buildProductLogData;
|
|
56
37
|
static ɵfac: i0.ɵɵFactoryDeclaration<WishlistService, never>;
|
|
57
38
|
static ɵprov: i0.ɵɵInjectableDeclaration<WishlistService>;
|
|
58
39
|
}
|
|
@@ -1,19 +1,18 @@
|
|
|
1
|
-
import { CheckoutSubscription, CheckoutSubscriptionRepository, Coupon } from '@infrab4a/connect';
|
|
1
|
+
import { CheckoutSubscription, CheckoutSubscriptionRepository, Coupon, SubscriptionRepository } from '@infrab4a/connect';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { DataPersistence } from '../persistence';
|
|
4
3
|
import { RequiredCheckoutSubscriptionData } from './types';
|
|
5
4
|
import { CouponService } from './coupon.service';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class CheckoutSubscriptionService {
|
|
8
7
|
private readonly checkoutSubscriptionRepository;
|
|
9
|
-
private readonly
|
|
8
|
+
private readonly subscriptionRepository;
|
|
10
9
|
private readonly couponService;
|
|
11
|
-
constructor(checkoutSubscriptionRepository: CheckoutSubscriptionRepository,
|
|
10
|
+
constructor(checkoutSubscriptionRepository: CheckoutSubscriptionRepository, subscriptionRepository: SubscriptionRepository, couponService: CouponService);
|
|
12
11
|
getCheckoutSubscription(checkoutData?: RequiredCheckoutSubscriptionData): Observable<CheckoutSubscription>;
|
|
12
|
+
private createCheckoutSubscription;
|
|
13
13
|
clearCheckoutSubscriptionFromSession(): Observable<void>;
|
|
14
|
-
checkCoupon(nickname: string,
|
|
14
|
+
checkCoupon(nickname: string, userEmail: string): Observable<Coupon>;
|
|
15
15
|
calcDiscountSubscription(coupon: Coupon): Observable<number>;
|
|
16
|
-
private createCheckoutSubscription;
|
|
17
16
|
static ɵfac: i0.ɵɵFactoryDeclaration<CheckoutSubscriptionService, never>;
|
|
18
17
|
static ɵprov: i0.ɵɵInjectableDeclaration<CheckoutSubscriptionService>;
|
|
19
18
|
}
|
|
@@ -1,29 +1,22 @@
|
|
|
1
|
-
import { Checkout,
|
|
1
|
+
import { Checkout, CheckoutRepository, CheckoutTypes, Coupon, OrderRepository, Shops, User, UserRepository } from '@infrab4a/connect';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
+
import { CouponService } from './coupon.service';
|
|
3
4
|
import { RequiredCheckoutData } from './types';
|
|
4
|
-
import { CheckoutDependenciesFacade, CheckoutRepositoriesFacade } from './checkout';
|
|
5
|
-
import { ConfigurationFacade } from './shared';
|
|
6
5
|
import * as i0 from "@angular/core";
|
|
7
6
|
export declare class CheckoutService {
|
|
8
|
-
private readonly
|
|
9
|
-
private readonly
|
|
10
|
-
private readonly
|
|
11
|
-
private
|
|
12
|
-
|
|
7
|
+
private readonly couponService;
|
|
8
|
+
private readonly checkoutRepository;
|
|
9
|
+
private readonly orderRepository;
|
|
10
|
+
private readonly userRepository;
|
|
11
|
+
private readonly defaultShop;
|
|
12
|
+
constructor(couponService: CouponService, checkoutRepository: CheckoutRepository, orderRepository: OrderRepository, userRepository: UserRepository, defaultShop: Shops);
|
|
13
13
|
getCheckout(checkoutData?: RequiredCheckoutData): Observable<Checkout>;
|
|
14
14
|
getUserByCheckout(checkoutId: string): Observable<User>;
|
|
15
15
|
updateCheckoutLineItems(checkout: Partial<Checkout>): Observable<Checkout>;
|
|
16
16
|
updateCheckoutUser(checkout: Partial<Checkout>): Observable<Checkout>;
|
|
17
17
|
clearCheckoutFromSession(): Observable<void>;
|
|
18
|
-
|
|
19
|
-
|
|
20
|
-
removeCouponDiscount(): Observable<Checkout>;
|
|
21
|
-
validateStockProducts(): Observable<CheckoutStockValidation>;
|
|
22
|
-
selectShippingAddress(address: UserAddress): Observable<Checkout>;
|
|
23
|
-
getAvailableShippingForProduct(productShipping: ShippingProductRequest): Observable<ShippingMethodResponse[]>;
|
|
24
|
-
getAvailableShippingForCheckout(): Observable<ShippingMethodResponse[]>;
|
|
25
|
-
selectShipping(option: string): Observable<Checkout>;
|
|
26
|
-
createOrder(checkoutPayload: CheckoutPayloadRequest, paymentProvider: string, applicationVersion: string): Observable<CheckoutResponse>;
|
|
18
|
+
calcDiscount(coupon: Coupon): Observable<number>;
|
|
19
|
+
checkCoupon(nickname: string, checkoutType: CheckoutTypes): Observable<Coupon>;
|
|
27
20
|
private createCheckout;
|
|
28
21
|
static ɵfac: i0.ɵɵFactoryDeclaration<CheckoutService, never>;
|
|
29
22
|
static ɵprov: i0.ɵɵInjectableDeclaration<CheckoutService>;
|
|
@@ -1,25 +1,18 @@
|
|
|
1
|
-
import { CheckoutSubscription, Coupon } from '@infrab4a/connect';
|
|
1
|
+
import { CategoryRepository, Checkout, CheckoutSubscription, CheckoutTypes, Coupon, CouponRepository, OrderRepository, Shops } from '@infrab4a/connect';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { CouponRepositoriesFacade } from './coupon';
|
|
4
|
-
import { CheckCouponParams } from './coupon/types/coupon-params.type';
|
|
5
|
-
import { ConfigurationFacade } from './shared';
|
|
6
3
|
import * as i0 from "@angular/core";
|
|
7
4
|
export declare class CouponService {
|
|
8
|
-
private readonly
|
|
9
|
-
private readonly
|
|
10
|
-
|
|
11
|
-
|
|
5
|
+
private readonly couponRepository;
|
|
6
|
+
private readonly defaultShop;
|
|
7
|
+
private readonly orderRepository;
|
|
8
|
+
private readonly categoryRepository;
|
|
9
|
+
constructor(couponRepository: CouponRepository, defaultShop: Shops, orderRepository: OrderRepository, categoryRepository: CategoryRepository);
|
|
10
|
+
checkCoupon(nickname: string, checkoutType: CheckoutTypes, checkout: Partial<Checkout>, plan: string): Observable<Coupon>;
|
|
12
11
|
private couponValidation;
|
|
13
12
|
private couponRulesValidation;
|
|
14
|
-
private validateSubscriptionCoupon;
|
|
15
|
-
private validateEcommerceCoupon;
|
|
16
|
-
private validateUserEligibility;
|
|
17
|
-
private validateUsageLimits;
|
|
18
|
-
private validateFirstOrderLimit;
|
|
19
|
-
private validateCouponUsageLimits;
|
|
20
|
-
private validateProductEligibility;
|
|
21
|
-
private throwMinSubTotalError;
|
|
22
13
|
calcDiscountSubscription(coupon: Coupon, checkout: Partial<CheckoutSubscription>): Observable<number>;
|
|
14
|
+
calcDiscountShopping(coupon: Coupon, checkout: Partial<Checkout>): Promise<number>;
|
|
15
|
+
private calcDiscountByType;
|
|
23
16
|
private hasMinSubTotal;
|
|
24
17
|
private hasProductCategories;
|
|
25
18
|
private coupomUserValidation;
|
|
@@ -28,7 +21,6 @@ export declare class CouponService {
|
|
|
28
21
|
private getLineItensEligebleForDiscount;
|
|
29
22
|
private calcCheckoutSubtotal;
|
|
30
23
|
private getOrdersWithCoupon;
|
|
31
|
-
private getOrdersFromUser;
|
|
32
24
|
private countOrdersWithUser;
|
|
33
25
|
private getCouponUseLimits;
|
|
34
26
|
static ɵfac: i0.ɵɵFactoryDeclaration<CouponService, never>;
|
|
@@ -1,15 +1,15 @@
|
|
|
1
|
-
import { Banner, Home } from '@infrab4a/connect';
|
|
1
|
+
import { Banner, CategoryRepository, Home, HomeRepository, ProductRepository, Shops } from '@infrab4a/connect';
|
|
2
2
|
import { Observable } from 'rxjs';
|
|
3
|
-
import { HomeShopRepositoriesFacade } from './home-shop';
|
|
4
|
-
import { ConfigurationFacade } from './shared';
|
|
5
3
|
import * as i0 from "@angular/core";
|
|
6
4
|
type BannerType = 'brand' | 'buyToWin' | 'block' | 'blog';
|
|
7
5
|
export declare class HomeShopService {
|
|
8
|
-
private readonly
|
|
9
|
-
private readonly
|
|
6
|
+
private readonly categoryRepository;
|
|
7
|
+
private readonly homeRepository;
|
|
8
|
+
private readonly productRepository;
|
|
9
|
+
private readonly defaultShop;
|
|
10
10
|
private homeConfiguration;
|
|
11
11
|
private get homeId();
|
|
12
|
-
constructor(
|
|
12
|
+
constructor(categoryRepository: CategoryRepository, homeRepository: HomeRepository, productRepository: ProductRepository, defaultShop: Shops);
|
|
13
13
|
getHomeData(): Observable<Home>;
|
|
14
14
|
getBanners(type: BannerType): Observable<Banner[]>;
|
|
15
15
|
getMinValueForFreeShipping(): Observable<number>;
|
|
@@ -19,7 +19,6 @@ export declare class HomeShopService {
|
|
|
19
19
|
private getHomeConfiguration;
|
|
20
20
|
private saveHomeData;
|
|
21
21
|
private buildCategoryGroupWithRequiredData;
|
|
22
|
-
private get gender();
|
|
23
22
|
static ɵfac: i0.ɵɵFactoryDeclaration<HomeShopService, never>;
|
|
24
23
|
static ɵprov: i0.ɵɵInjectableDeclaration<HomeShopService>;
|
|
25
24
|
}
|
package/services/index.d.ts
CHANGED
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
import { HttpClient } from '@angular/common/http';
|
|
2
|
+
import { Observable } from 'rxjs';
|
|
3
|
+
import { HomeShopService } from './home-shop.service';
|
|
4
|
+
import { ShippingMethodResponse } from './types/shipping-methods.type';
|
|
5
|
+
import * as i0 from "@angular/core";
|
|
6
|
+
export declare class ShippingService {
|
|
7
|
+
private http;
|
|
8
|
+
private apiUrl;
|
|
9
|
+
private homeService;
|
|
10
|
+
constructor(http: HttpClient, apiUrl: string, homeService: HomeShopService);
|
|
11
|
+
getShippingMethods(shop: string, zip: string, weightGrams: number, totalPrice: number, personId: string, subscriptionPlan?: string): Observable<Array<ShippingMethodResponse & {
|
|
12
|
+
ShippingCompanyName?: string;
|
|
13
|
+
}>>;
|
|
14
|
+
private isFreeShippingBySubscription;
|
|
15
|
+
private isHalfShippingBySubscription;
|
|
16
|
+
private isHolidays;
|
|
17
|
+
static ɵfac: i0.ɵɵFactoryDeclaration<ShippingService, never>;
|
|
18
|
+
static ɵprov: i0.ɵɵInjectableDeclaration<ShippingService>;
|
|
19
|
+
}
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
export interface ShippingMethodResponse {
|
|
2
|
+
daysToDelivery: number;
|
|
3
|
+
currency: string;
|
|
4
|
+
description: string;
|
|
5
|
+
maxDeliveryDate: string;
|
|
6
|
+
minDeliveryDate: string;
|
|
7
|
+
serviceCode: string;
|
|
8
|
+
serviceName: string;
|
|
9
|
+
totalPrice: number;
|
|
10
|
+
additionalDescription: string;
|
|
11
|
+
cnpj: string;
|
|
12
|
+
}
|
|
@@ -1,9 +0,0 @@
|
|
|
1
|
-
import { ModuleWithProviders } from '@angular/core';
|
|
2
|
-
import { VertexSearchConfig } from '@infrab4a/connect';
|
|
3
|
-
import * as i0 from "@angular/core";
|
|
4
|
-
export declare class AngularVertexSeachModule {
|
|
5
|
-
static initializeApp(options: VertexSearchConfig): ModuleWithProviders<AngularVertexSeachModule>;
|
|
6
|
-
static ɵfac: i0.ɵɵFactoryDeclaration<AngularVertexSeachModule, never>;
|
|
7
|
-
static ɵmod: i0.ɵɵNgModuleDeclaration<AngularVertexSeachModule, never, never, never>;
|
|
8
|
-
static ɵinj: i0.ɵɵInjectorDeclaration<AngularVertexSeachModule>;
|
|
9
|
-
}
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const PERSISTENCE_PROVIDER = "PERSISTENCE_PROVIDER";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const STORAGE_BASE_URL = "STORAGE_BASE_URL";
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare const VERTEX_CONFIG = "VERTEX_CONFIG";
|