@infrab4a/connect-angular 5.2.1-beta.7 → 5.2.2-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/esm2020/services/catalog/strategies/category-search.strategy.mjs +12 -4
- package/esm2020/services/catalog/strategies/term-search.strategy.mjs +1 -22
- package/fesm2015/infrab4a-connect-angular.mjs +11 -24
- package/fesm2015/infrab4a-connect-angular.mjs.map +1 -1
- package/fesm2020/infrab4a-connect-angular.mjs +11 -24
- package/fesm2020/infrab4a-connect-angular.mjs.map +1 -1
- package/package.json +2 -2
|
@@ -7,7 +7,7 @@ import { provideAppCheck, initializeAppCheck } from '@angular/fire/app-check';
|
|
|
7
7
|
import * as i3$1 from '@angular/fire/storage';
|
|
8
8
|
import { Storage, provideStorage, getStorage } from '@angular/fire/storage';
|
|
9
9
|
import * as i3 from '@infrab4a/connect';
|
|
10
|
-
import { ProductsIndex, AxiosAdapter, Authentication, AuthenticationFirebaseAuthService, Register, RegisterFirebaseAuthService, SignOut, RecoveryPassword, ConnectFirestoreService, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, CampaignHashtagFirestoreRepository, CampaignDashboardFirestoreRepository, SubscriptionEditionFirestoreRepository, GroupFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, ShopSettingsFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, SubscriptionMaterializationFirestoreRepository, SubscriptionSummaryFirestoreRepository, ProductVariantFirestoreRepository, OrderBlockedFirestoreRepository, LogFirestoreRepository, SequenceFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewHasuraGraphQLRepository, VariantHasuraGraphQLRepository, ProductStockNotificationHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, CategoryProductHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, ProductErrorsHasuraGraphQLRepository, ProductsVertexSearch, VertexAxiosAdapter, isNil, NotFoundError, Checkout, pick, LineItem, Where,
|
|
10
|
+
import { ProductsIndex, AxiosAdapter, Authentication, AuthenticationFirebaseAuthService, Register, RegisterFirebaseAuthService, SignOut, RecoveryPassword, ConnectFirestoreService, UserBeautyProfileFirestoreRepository, Buy2WinFirestoreRepository, CategoryFirestoreRepository, CheckoutFirestoreRepository, CheckoutSubscriptionFirestoreRepository, CouponFirestoreRepository, CampaignHashtagFirestoreRepository, CampaignDashboardFirestoreRepository, SubscriptionEditionFirestoreRepository, GroupFirestoreRepository, HomeFirestoreRepository, LeadFirestoreRepository, LegacyOrderFirestoreRepository, ShopMenuFirestoreRepository, OrderFirestoreRepository, PaymentFirestoreRepository, ProductFirestoreRepository, ShopSettingsFirestoreRepository, SubscriptionPaymentFirestoreRepository, SubscriptionPlanFirestoreRepository, SubscriptionProductFirestoreRepository, SubscriptionFirestoreRepository, UserFirestoreRepository, UserAddressFirestoreRepository, UserPaymentMethodFirestoreRepository, SubscriptionMaterializationFirestoreRepository, SubscriptionSummaryFirestoreRepository, ProductVariantFirestoreRepository, OrderBlockedFirestoreRepository, LogFirestoreRepository, SequenceFirestoreRepository, CategoryHasuraGraphQLRepository, ProductHasuraGraphQLRepository, CategoryFilterHasuraGraphQLRepository, ProductReviewHasuraGraphQLRepository, VariantHasuraGraphQLRepository, ProductStockNotificationHasuraGraphQLRepository, FilterOptionHasuraGraphQLRepository, FilterHasuraGraphQLRepository, CategoryCollectionChildrenHasuraGraphQLRepository, CategoryProductHasuraGraphQLRepository, WishlistHasuraGraphQLRepository, ProductErrorsHasuraGraphQLRepository, ProductsVertexSearch, VertexAxiosAdapter, isNil, NotFoundError, Checkout, pick, LineItem, Where, isEmpty, Shops, set, InvalidArgumentError, RoundProductPricesHelper, Category, WishlistLogType, PersonTypes, Wishlist, CheckoutTypes, CouponTypes, Exclusivities, OrderStatus, CheckoutSubscription, Product, RequiredArgumentError, add, Order, UpdateUserImage, FirebaseFileUploaderService } from '@infrab4a/connect';
|
|
11
11
|
import * as i1 from '@angular/fire/auth';
|
|
12
12
|
import { Auth, provideAuth, initializeAuth, indexedDBLocalPersistence, browserLocalPersistence, browserSessionPersistence, getAuth, getIdToken, authState } from '@angular/fire/auth';
|
|
13
13
|
import { isPlatformBrowser, isPlatformServer } from '@angular/common';
|
|
@@ -1501,6 +1501,8 @@ class CategorySearchStrategy {
|
|
|
1501
1501
|
fields,
|
|
1502
1502
|
});
|
|
1503
1503
|
}
|
|
1504
|
+
// eslint-disable-next-line no-console
|
|
1505
|
+
console.log('return searchDefault');
|
|
1504
1506
|
return this.searchDefault({
|
|
1505
1507
|
category,
|
|
1506
1508
|
filters,
|
|
@@ -1528,7 +1530,7 @@ class CategorySearchStrategy {
|
|
|
1528
1530
|
});
|
|
1529
1531
|
}
|
|
1530
1532
|
async searchDefault(params) {
|
|
1531
|
-
const { category, filters, limits,
|
|
1533
|
+
const { category, filters, limits, sort, optionsCache, fields } = params;
|
|
1532
1534
|
const productCatalog = this.repositoryService.getProductCatalog();
|
|
1533
1535
|
const filterHelper = this.helpersService.getFilterHelper();
|
|
1534
1536
|
const sortHelper = this.helpersService.getSortHelper();
|
|
@@ -1546,7 +1548,9 @@ class CategorySearchStrategy {
|
|
|
1546
1548
|
distinct: ['brand'],
|
|
1547
1549
|
},
|
|
1548
1550
|
};
|
|
1549
|
-
|
|
1551
|
+
// eslint-disable-next-line no-console
|
|
1552
|
+
console.log('repoParams', JSON.stringify(repoParams));
|
|
1553
|
+
return productCatalog.productRepository.findCatalog(repoParams, null, optionsCache);
|
|
1550
1554
|
}
|
|
1551
1555
|
async getProductIds(category, filters, optionsCache) {
|
|
1552
1556
|
const productCatalog = this.repositoryService.getProductCatalog();
|
|
@@ -1562,6 +1566,8 @@ class CategorySearchStrategy {
|
|
|
1562
1566
|
.then((products) => products.data.map((product) => product.id));
|
|
1563
1567
|
}
|
|
1564
1568
|
async findAndSortByMostRelevant(params) {
|
|
1569
|
+
// eslint-disable-next-line no-console
|
|
1570
|
+
console.log('shoudl not enter findAndSortByMostRelevant');
|
|
1565
1571
|
const { mostRelevants, productIds, filters, shop, mainGender, optionsCache, fields, limits } = params;
|
|
1566
1572
|
const productCatalog = this.repositoryService.getProductCatalog();
|
|
1567
1573
|
const filterHelper = this.helpersService.getFilterHelper();
|
|
@@ -1583,6 +1589,8 @@ class CategorySearchStrategy {
|
|
|
1583
1589
|
return this.sortProductsByRelevance(totalResult, mostRelevants, limits);
|
|
1584
1590
|
}
|
|
1585
1591
|
sortProductsByRelevance(totalResult, mostRelevants, limits) {
|
|
1592
|
+
// eslint-disable-next-line no-console
|
|
1593
|
+
console.log('shoudl not enter sortProductsByRelevance');
|
|
1586
1594
|
const mostRelevantWithoutStock = totalResult.data.filter((product) => mostRelevants.includes(product.id) && product.stock.quantity <= 0);
|
|
1587
1595
|
const firstProducts = totalResult.data
|
|
1588
1596
|
.filter((product) => mostRelevants.includes(product.id) && product.stock.quantity > 0)
|
|
@@ -1721,30 +1729,13 @@ class TermSearchStrategy {
|
|
|
1721
1729
|
sortByTermRelevance(params) {
|
|
1722
1730
|
const { productIds, totalResult, limits, filters, fieldsHelper } = params;
|
|
1723
1731
|
// const defaultGender = filters?.gender?.at(0) || 'male'
|
|
1724
|
-
// console.log('productIds', productIds)
|
|
1725
1732
|
const stockData = totalResult.data.filter((product) => product.stock.quantity > 0);
|
|
1726
|
-
// console.log('stockData', stockData)
|
|
1727
1733
|
const stockOut = totalResult.data.filter((product) => product.stock.quantity <= 0);
|
|
1728
|
-
// console.log('stockOut', stockOut)
|
|
1729
|
-
// const productIdsStockGender = productIds.filter((product) => stockData.some((result: any) => result.id === product))
|
|
1730
|
-
// && (result.gender?.includes(defaultGender) || result.gender?.includes('unisex'))
|
|
1731
|
-
// const productIdsStockNotGender = productIds.filter((product) =>
|
|
1732
|
-
// stockData.some((result: any) => result.id === product),
|
|
1733
|
-
// )
|
|
1734
|
-
// && !result.gender?.includes(defaultGender) && !result.gender?.includes('unisex')
|
|
1735
|
-
// const productIdsStock = productIdsStockGender.concat(productIdsStockNotGender)
|
|
1736
1734
|
const productIdsStock = productIds.filter((product) => stockData.some((result) => result.id === product));
|
|
1737
|
-
// console.log('productIdsStock', productIdsStock)
|
|
1738
1735
|
const productIdsStockOut = productIds.filter((product) => stockOut.some((result) => result.id === product));
|
|
1739
|
-
// console.log('productIdsStockOut', productIdsStockOut)
|
|
1740
|
-
// console.log('concat', productIdsStock.concat(productIdsStockOut))
|
|
1741
1736
|
const limitedProductId = productIdsStock
|
|
1742
1737
|
.concat(productIdsStockOut)
|
|
1743
1738
|
.slice(limits.offset, limits.offset + limits.limit);
|
|
1744
|
-
// console.log('limitedProductId', limitedProductId)
|
|
1745
|
-
// const orderedId = productIds.filter((product) => limitedProductId.includes(product))
|
|
1746
|
-
// const orderedId = productIds.filter((product) => limitedProductId.some((p) => p === product))
|
|
1747
|
-
// console.log('orderedId', orderedId)
|
|
1748
1739
|
return this.getDetailedProducts(limitedProductId, totalResult, fieldsHelper);
|
|
1749
1740
|
}
|
|
1750
1741
|
async getDetailedProducts(orderedId, totalResult, fieldsHelper) {
|
|
@@ -1756,10 +1747,6 @@ class TermSearchStrategy {
|
|
|
1756
1747
|
},
|
|
1757
1748
|
fields,
|
|
1758
1749
|
});
|
|
1759
|
-
// console.log(
|
|
1760
|
-
// 'detail ordered',
|
|
1761
|
-
// orderedId.map((id) => productResult.data.find((product) => product.id === id)).filter(Boolean),
|
|
1762
|
-
// )
|
|
1763
1750
|
return {
|
|
1764
1751
|
data: orderedId.map((id) => productResult.data.find((product) => product.id === id)).filter(Boolean),
|
|
1765
1752
|
count: totalResult.count,
|