@infrab4a/connect 5.3.0-beta.3 → 5.3.0-beta.31
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/index.cjs.js +3018 -435
- package/index.esm.js +2980 -419
- package/package.json +3 -2
- package/src/domain/catalog/models/category-brand.d.ts +17 -0
- package/src/domain/catalog/models/category.d.ts +12 -0
- package/src/domain/catalog/models/enums/shops.enum.d.ts +2 -0
- package/src/domain/catalog/models/index.d.ts +4 -0
- package/src/domain/catalog/models/product-base.d.ts +10 -0
- package/src/domain/catalog/models/product-group.d.ts +12 -0
- package/src/domain/catalog/models/product-price-log.d.ts +25 -0
- package/src/domain/catalog/models/product-review.d.ts +2 -0
- package/src/domain/catalog/models/product-stock-entry.d.ts +16 -0
- package/src/domain/catalog/models/product.d.ts +1 -0
- package/src/domain/catalog/models/types/brands-shop-menu.type.d.ts +13 -0
- package/src/domain/catalog/models/types/index.d.ts +2 -0
- package/src/domain/catalog/models/types/product-competitors-price.d.ts +6 -0
- package/src/domain/catalog/repositories/category-brand.repository.d.ts +4 -0
- package/src/domain/catalog/repositories/category-product.repository.d.ts +2 -0
- package/src/domain/catalog/repositories/category.repository.d.ts +1 -0
- package/src/domain/catalog/repositories/index.d.ts +5 -0
- package/src/domain/catalog/repositories/product-catalog.repository.d.ts +17 -0
- package/src/domain/catalog/repositories/product-group.repository.d.ts +4 -0
- package/src/domain/catalog/repositories/product-price-log.repository.d.ts +4 -0
- package/src/domain/catalog/repositories/product-stock-entry.repository.d.ts +4 -0
- package/src/domain/shop-settings/enums/shop-page-name.enum.d.ts +2 -1
- package/src/domain/shop-settings/models/home.d.ts +2 -1
- package/src/domain/shop-settings/models/index.d.ts +2 -1
- package/src/domain/shop-settings/models/shop-configs.d.ts +18 -0
- package/src/domain/shop-settings/models/{shop-settings.d.ts → shop-page-settings.d.ts} +4 -1
- package/src/domain/shop-settings/models/types/index.d.ts +3 -0
- package/src/domain/shop-settings/models/types/limit-orders.type.d.ts +7 -0
- package/src/domain/shop-settings/models/types/shipping-thresholds.type.d.ts +17 -0
- package/src/domain/shop-settings/models/types/shop-error-messages.type.d.ts +10 -0
- package/src/domain/shop-settings/models/types/shop-page-section.type.d.ts +140 -0
- package/src/domain/shop-settings/repositories/index.d.ts +1 -0
- package/src/domain/shop-settings/repositories/shop-configs.repository.d.ts +4 -0
- package/src/domain/shop-settings/repositories/shop-settings.repository.d.ts +1 -1
- package/src/domain/shopping/enums/index.d.ts +3 -0
- package/src/domain/shopping/enums/order-payment-status.enum.d.ts +10 -0
- package/src/domain/shopping/enums/pagarme-v5-payment-status.enum.d.ts +24 -0
- package/src/domain/shopping/enums/payment-providers.enum.d.ts +2 -1
- package/src/domain/shopping/enums/transaction-payment-methods.enum.d.ts +5 -0
- package/src/domain/shopping/factories/index.d.ts +1 -0
- package/src/domain/shopping/factories/mercado-pago-payment-method.factory.d.ts +11 -0
- package/src/domain/shopping/factories/payment-provider.factory.d.ts +2 -0
- package/src/domain/shopping/interfaces/payment-provider-card.interface.d.ts +10 -2
- package/src/domain/shopping/models/checkout.d.ts +2 -0
- package/src/domain/shopping/models/enums/index.d.ts +3 -0
- package/src/domain/shopping/models/enums/order-status.enum.d.ts +2 -1
- package/src/domain/shopping/models/enums/shopping-recurrence-cycle.enum.d.ts +5 -0
- package/src/domain/shopping/models/enums/shopping-recurrence-edition-status.enum.d.ts +11 -0
- package/src/domain/shopping/models/enums/shopping-recurrence-status.enum.d.ts +7 -0
- package/src/domain/shopping/models/index.d.ts +1 -0
- package/src/domain/shopping/models/line-item.d.ts +5 -0
- package/src/domain/shopping/models/order-blocked.d.ts +5 -0
- package/src/domain/shopping/models/order.d.ts +20 -0
- package/src/domain/shopping/models/payment-transaction.d.ts +19 -2
- package/src/domain/shopping/models/payment.d.ts +3 -1
- package/src/domain/shopping/models/recurrence/index.d.ts +3 -0
- package/src/domain/shopping/models/recurrence/shopping-recurrence-edition.d.ts +18 -0
- package/src/domain/shopping/models/recurrence/shopping-recurrence-error-log.d.ts +9 -0
- package/src/domain/shopping/models/recurrence/shopping-recurrence.d.ts +45 -0
- package/src/domain/shopping/models/shipping-method.d.ts +2 -0
- package/src/domain/shopping/models/types/index.d.ts +1 -0
- package/src/domain/shopping/models/types/line-item-recurrence.type.d.ts +2 -0
- package/src/domain/shopping/repositories/index.d.ts +1 -0
- package/src/domain/shopping/repositories/order-blocked.repository.d.ts +5 -0
- package/src/domain/shopping/repositories/recurrence/index.d.ts +3 -0
- package/src/domain/shopping/repositories/recurrence/shopping-recurrence-edition.repository.d.ts +4 -0
- package/src/domain/shopping/repositories/recurrence/shopping-recurrence-error-log.repository.d.ts +4 -0
- package/src/domain/shopping/repositories/recurrence/shopping-recurrence.repository.d.ts +9 -0
- package/src/domain/shopping/services/antifraud-card.service.d.ts +2 -0
- package/src/domain/shopping/types/card-info.type.d.ts +1 -0
- package/src/domain/shopping/types/checkout-paylod-request.type.d.ts +2 -7
- package/src/domain/shopping/types/create-recurrency-payload.type.d.ts +6 -0
- package/src/domain/shopping/types/index.d.ts +5 -0
- package/src/domain/shopping/types/mercado-pago-card.type.d.ts +14 -0
- package/src/domain/shopping/types/mercado-pago-credentials.type.d.ts +5 -0
- package/src/domain/shopping/types/pagarme-card.type.d.ts +9 -3
- package/src/domain/shopping/types/pagarme-credentials-v5.type.d.ts +4 -0
- package/src/domain/shopping/types/pagarme-credentials.type.d.ts +9 -3
- package/src/domain/shopping/types/payment-card-info.type.d.ts +6 -1
- package/src/domain/shopping/types/shopping-recurrence-update-payloads.type.d.ts +35 -0
- package/src/domain/users/models/user-payment-method.d.ts +2 -0
- package/src/domain/users/models/user.d.ts +1 -0
- package/src/errors/enum/error.enum.d.ts +14 -0
- package/src/errors/enum/index.d.ts +1 -0
- package/src/errors/fraud-validation.error.d.ts +1 -1
- package/src/errors/index.d.ts +2 -0
- package/src/errors/invalid-checkout.error.d.ts +7 -0
- package/src/errors/not-found.error.d.ts +1 -0
- package/src/errors/payment.error.d.ts +1 -1
- package/src/infra/cache/index.d.ts +1 -0
- package/src/infra/cache/resolve-cache-config.d.ts +2 -0
- package/src/infra/cache/restcache.adapter.d.ts +3 -0
- package/src/infra/firebase/firestore/repositories/catalog/category-brand-firestore.repository.d.ts +7 -0
- package/src/infra/firebase/firestore/repositories/catalog/category-firestore.repository.d.ts +1 -0
- package/src/infra/firebase/firestore/repositories/catalog/index.d.ts +1 -0
- package/src/infra/firebase/firestore/repositories/shop-settings/index.d.ts +1 -0
- package/src/infra/firebase/firestore/repositories/shop-settings/shop-configs-firestore.repository.d.ts +7 -0
- package/src/infra/firebase/firestore/repositories/shopping/index.d.ts +3 -0
- package/src/infra/firebase/firestore/repositories/shopping/order-blocked-firestore.repository.d.ts +1 -0
- package/src/infra/firebase/firestore/repositories/shopping/shopping-recurrence-edition-firestore.repository.d.ts +7 -0
- package/src/infra/firebase/firestore/repositories/shopping/shopping-recurrence-error-log-firestore.repository.d.ts +7 -0
- package/src/infra/firebase/firestore/repositories/shopping/shopping-recurrence-firestore.repository.d.ts +10 -0
- package/src/infra/hasura-graphql/models/index.d.ts +2 -0
- package/src/infra/hasura-graphql/models/product-catalog-hasura-graphql.d.ts +16 -0
- package/src/infra/hasura-graphql/models/product-stock-entry-hasura-graphql.d.ts +3 -0
- package/src/infra/hasura-graphql/models/variant-hasura-graphql.d.ts +7 -0
- package/src/infra/hasura-graphql/repositories/catalog/category-hasura-graphql.repository.d.ts +1 -0
- package/src/infra/hasura-graphql/repositories/catalog/category-product-hasura-graphql.repository.d.ts +2 -0
- package/src/infra/hasura-graphql/repositories/catalog/index.d.ts +4 -0
- package/src/infra/hasura-graphql/repositories/catalog/product-catalog-hasura-graphql.repository.d.ts +22 -0
- package/src/infra/hasura-graphql/repositories/catalog/product-group-hasura-graphql.repository.d.ts +7 -0
- package/src/infra/hasura-graphql/repositories/catalog/product-price-log-hasura-graphql.repository.d.ts +7 -0
- package/src/infra/hasura-graphql/repositories/catalog/product-stock-entry-hasura-graphql.repository.d.ts +8 -0
- package/src/infra/hasura-graphql/repositories/catalog/variant-hasura-graphql.repository.d.ts +1 -0
- package/src/infra/hasura-graphql/repositories/catalog/wishlist-hasura-graphql.repository.d.ts +1 -0
- package/src/infra/index.d.ts +1 -0
- package/src/infra/mercado-pago/adapters/index.d.ts +3 -0
- package/src/infra/mercado-pago/adapters/mercado-pago-base-axios.d.ts +11 -0
- package/src/infra/mercado-pago/adapters/mercado-pago-boleto-payment-axios.adapter.d.ts +8 -0
- package/src/infra/mercado-pago/adapters/mercado-pago-card-payment-axios.adapter.d.ts +22 -0
- package/src/infra/mercado-pago/adapters/mercado-pago-pix-payment-axios.adapter.d.ts +8 -0
- package/src/infra/mercado-pago/enums/index.d.ts +2 -0
- package/src/infra/mercado-pago/enums/mercado-pago-status-detail.enum.d.ts +33 -0
- package/src/infra/mercado-pago/enums/mercado-pago-status.enum.d.ts +10 -0
- package/src/infra/mercado-pago/helpers/index.d.ts +3 -0
- package/src/infra/mercado-pago/helpers/mercado-pago-errors.helper.d.ts +3 -0
- package/src/infra/mercado-pago/helpers/mercado-pago-request.helper.d.ts +60 -0
- package/src/infra/mercado-pago/helpers/mercado-pago-response.helper.d.ts +10 -0
- package/src/infra/mercado-pago/index.d.ts +4 -0
- package/src/infra/mercado-pago/types/index.d.ts +3 -0
- package/src/infra/mercado-pago/types/mercado-pago-request.type.d.ts +1 -0
- package/src/infra/mercado-pago/types/mercado-pago-response.type.d.ts +211 -0
- package/src/infra/mercado-pago/types/mercado-pago-status-detail.type.d.ts +2 -0
- package/src/infra/mercado-pago/types/mercado-pago-status.type.d.ts +2 -0
- package/src/infra/pagarme/adapters/helpers/index.d.ts +3 -0
- package/src/infra/pagarme/adapters/helpers/pagarme-blocked-order.helper.d.ts +7 -2
- package/src/infra/pagarme/adapters/helpers/pagarme-errors.helper.d.ts +3 -0
- package/src/infra/pagarme/adapters/helpers/pagarme-v5-request.helper.d.ts +13 -0
- package/src/infra/pagarme/adapters/helpers/pagarme-v5-response.helper.d.ts +10 -0
- package/src/infra/pagarme/adapters/index.d.ts +2 -3
- package/src/infra/pagarme/adapters/v4/index.d.ts +3 -0
- package/src/infra/pagarme/adapters/{pagarme-bank-slip-payment-axios.adapter.d.ts → v4/pagarme-bank-slip-payment-axios.adapter.d.ts} +4 -4
- package/src/infra/pagarme/adapters/{pagarme-card-payment-axios.adapter.d.ts → v4/pagarme-card-payment-axios.adapter.d.ts} +7 -6
- package/src/infra/pagarme/adapters/{pagarme-pix-payment-axios.adapter.d.ts → v4/pagarme-pix-payment-axios.adapter.d.ts} +4 -4
- package/src/infra/pagarme/adapters/v5/index.d.ts +4 -0
- package/src/infra/pagarme/adapters/v5/pagarmev5-bank-slip-payment-axios.adapter.d.ts +11 -0
- package/src/infra/pagarme/adapters/v5/pagarmev5-base-axios.d.ts +11 -0
- package/src/infra/pagarme/adapters/v5/pagarmev5-card-payment-axios.adapter.d.ts +25 -0
- package/src/infra/pagarme/adapters/v5/pagarmev5-pix-payment-axios.adapter.d.ts +11 -0
- package/src/infra/pagarme/index.d.ts +1 -0
- package/src/infra/pagarme/types/index.d.ts +1 -0
- package/src/infra/pagarme/types/v5/index.d.ts +4 -0
- package/src/infra/pagarme/types/v5/pagarmev5-customer.type.d.ts +19 -0
- package/src/infra/pagarme/types/v5/pagarmev5-order-request-payload.type.d.ts +91 -0
- package/src/infra/pagarme/types/v5/pagarmev5-order-response.type.d.ts +241 -0
- package/src/infra/pagarme/types/v5/pagarmev5-postback-response.type.d.ts +11 -0
- package/src/utils/index.d.ts +4 -2
- package/src/utils/to-cents.d.ts +5 -0
package/package.json
CHANGED
|
@@ -1,6 +1,6 @@
|
|
|
1
1
|
{
|
|
2
2
|
"name": "@infrab4a/connect",
|
|
3
|
-
"version": "5.3.0-beta.
|
|
3
|
+
"version": "5.3.0-beta.31",
|
|
4
4
|
"publishConfig": {
|
|
5
5
|
"registry": "https://registry.npmjs.org"
|
|
6
6
|
},
|
|
@@ -11,7 +11,8 @@
|
|
|
11
11
|
"dependencies": {
|
|
12
12
|
"axios": "^0.27.2",
|
|
13
13
|
"class-transformer": "^0.5.1",
|
|
14
|
-
"date-fns": "
|
|
14
|
+
"date-fns": "2.28.0",
|
|
15
|
+
"date-fns-tz": "2.0.1",
|
|
15
16
|
"debug": "^4.3.4",
|
|
16
17
|
"firebase": "^10.12.0",
|
|
17
18
|
"gql-query-builder": "3.7.0",
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { BaseModel, GenericIdentifier } from '../../generic/model/base.model';
|
|
2
|
+
import { Shops } from './enums';
|
|
3
|
+
export declare class BrandCategory extends BaseModel<BrandCategory> {
|
|
4
|
+
id: string;
|
|
5
|
+
name: string;
|
|
6
|
+
slug: string;
|
|
7
|
+
brand_category: boolean;
|
|
8
|
+
published: boolean;
|
|
9
|
+
images?: string[];
|
|
10
|
+
brand_logo?: string;
|
|
11
|
+
brand_banner?: string;
|
|
12
|
+
brand_banner_mobile?: string;
|
|
13
|
+
shops: Shops[];
|
|
14
|
+
get glamImages(): any;
|
|
15
|
+
get mensImages(): any;
|
|
16
|
+
static get identifiersFields(): GenericIdentifier[];
|
|
17
|
+
}
|
|
@@ -46,7 +46,19 @@ export declare class Category extends BaseModel<Category> {
|
|
|
46
46
|
brandBanner: string;
|
|
47
47
|
brandBannerMobile: string;
|
|
48
48
|
};
|
|
49
|
+
get glamBeautyImages(): {
|
|
50
|
+
image: string;
|
|
51
|
+
brandBanner: string;
|
|
52
|
+
brandBannerMobile: string;
|
|
53
|
+
};
|
|
54
|
+
get ellaImages(): {
|
|
55
|
+
image: string;
|
|
56
|
+
brandBanner: string;
|
|
57
|
+
brandBannerMobile: string;
|
|
58
|
+
};
|
|
49
59
|
get glamMetadata(): CategoryMetadata;
|
|
50
60
|
get mensMetadata(): CategoryMetadata;
|
|
61
|
+
get glamBeautyMetadata(): CategoryMetadata;
|
|
62
|
+
get ellaMetadata(): CategoryMetadata;
|
|
51
63
|
getMostRelevantByShop(shop: Shops): string[];
|
|
52
64
|
}
|
|
@@ -1,4 +1,5 @@
|
|
|
1
1
|
export * from './category';
|
|
2
|
+
export * from './category-brand';
|
|
2
3
|
export * from './category-collection-children';
|
|
3
4
|
export * from './category-filter';
|
|
4
5
|
export * from './category-product';
|
|
@@ -9,7 +10,10 @@ export * from './group';
|
|
|
9
10
|
export * from './kit-product';
|
|
10
11
|
export * from './product';
|
|
11
12
|
export * from './product-errors';
|
|
13
|
+
export * from './product-group';
|
|
14
|
+
export * from './product-price-log';
|
|
12
15
|
export * from './product-review';
|
|
16
|
+
export * from './product-stock-entry';
|
|
13
17
|
export * from './product-stock-notification';
|
|
14
18
|
export * from './types';
|
|
15
19
|
export * from './variant';
|
|
@@ -19,12 +19,14 @@ export declare class ProductBase<T extends ProductBase<T, I>, I = ProductIdentif
|
|
|
19
19
|
costPrice: number;
|
|
20
20
|
images?: string[];
|
|
21
21
|
miniatures?: string[];
|
|
22
|
+
imagesCard?: string[];
|
|
22
23
|
published: boolean;
|
|
23
24
|
createdAt?: Date;
|
|
24
25
|
updatedAt?: Date;
|
|
25
26
|
brand: string;
|
|
26
27
|
tagsCollection?: string[];
|
|
27
28
|
tagsProfile?: string[];
|
|
29
|
+
tagsSupply?: string[];
|
|
28
30
|
filters?: string[];
|
|
29
31
|
type?: string;
|
|
30
32
|
categories?: string[];
|
|
@@ -37,8 +39,16 @@ export declare class ProductBase<T extends ProductBase<T, I>, I = ProductIdentif
|
|
|
37
39
|
outlet?: boolean;
|
|
38
40
|
label?: ProductLabel;
|
|
39
41
|
group?: number;
|
|
42
|
+
groupId?: number;
|
|
40
43
|
validity: boolean;
|
|
41
44
|
daysOfUse?: number;
|
|
45
|
+
variantSlug?: string;
|
|
46
|
+
caixariaMinima?: number;
|
|
47
|
+
suppliers?: {
|
|
48
|
+
clientId: number;
|
|
49
|
+
name: string;
|
|
50
|
+
}[];
|
|
51
|
+
curve?: string;
|
|
42
52
|
category: Category;
|
|
43
53
|
kitProducts?: KitProduct[];
|
|
44
54
|
reviews?: ProductReview[];
|
|
@@ -0,0 +1,12 @@
|
|
|
1
|
+
import { BaseModel, GenericIdentifier } from '../../generic';
|
|
2
|
+
export declare class ProductGroup extends BaseModel<ProductGroup> {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
description?: string;
|
|
6
|
+
markupMin: number;
|
|
7
|
+
markupWithoutCompetitor?: number;
|
|
8
|
+
discountCompetitor?: number;
|
|
9
|
+
subscriberDiscountPercentage?: number;
|
|
10
|
+
dynamicPrecification: boolean;
|
|
11
|
+
static get identifiersFields(): GenericIdentifier[];
|
|
12
|
+
}
|
|
@@ -0,0 +1,25 @@
|
|
|
1
|
+
import { BaseModel, GenericIdentifier } from '../../generic';
|
|
2
|
+
import { ProductCompetitorsPrice } from './types';
|
|
3
|
+
export declare class ProductPriceLog extends BaseModel<ProductPriceLog> {
|
|
4
|
+
id: string;
|
|
5
|
+
productId: string;
|
|
6
|
+
productEAN: string;
|
|
7
|
+
productSKU: string;
|
|
8
|
+
productName: string;
|
|
9
|
+
productCostPrice: number;
|
|
10
|
+
productPrice: number;
|
|
11
|
+
productSubscriberPrice: number;
|
|
12
|
+
productSubscriberDiscountPercentage: number;
|
|
13
|
+
markupMin: number;
|
|
14
|
+
markupWithoutCompetitor: number;
|
|
15
|
+
discountCompetitor: number;
|
|
16
|
+
minViablePrice: number;
|
|
17
|
+
targetPrice: number;
|
|
18
|
+
groupId?: string;
|
|
19
|
+
competitorsAndPrices?: ProductCompetitorsPrice[];
|
|
20
|
+
competitorsPrices?: number[];
|
|
21
|
+
competitorsMinPrice?: number;
|
|
22
|
+
competitorsSellerMinPrice?: string;
|
|
23
|
+
statusPrecificacao: string;
|
|
24
|
+
static get identifiersFields(): GenericIdentifier[];
|
|
25
|
+
}
|
|
@@ -1,5 +1,6 @@
|
|
|
1
1
|
import { BaseModel, GenericIdentifier } from '../../generic/model';
|
|
2
2
|
import { Shops } from './enums';
|
|
3
|
+
import type { Product } from './product';
|
|
3
4
|
export declare class ProductReview extends BaseModel<ProductReview> {
|
|
4
5
|
id: number;
|
|
5
6
|
productId: string;
|
|
@@ -16,5 +17,6 @@ export declare class ProductReview extends BaseModel<ProductReview> {
|
|
|
16
17
|
orderId?: string;
|
|
17
18
|
createdAt?: Date;
|
|
18
19
|
updatedAt?: Date;
|
|
20
|
+
product: Product;
|
|
19
21
|
static get identifiersFields(): GenericIdentifier[];
|
|
20
22
|
}
|
|
@@ -0,0 +1,16 @@
|
|
|
1
|
+
import { BaseModel, GenericIdentifier } from '../../generic/model';
|
|
2
|
+
export declare class ProductStockEntry extends BaseModel<ProductStockEntry> {
|
|
3
|
+
id: number;
|
|
4
|
+
productId: string;
|
|
5
|
+
codProduct: string;
|
|
6
|
+
productDescription: string;
|
|
7
|
+
eventDescription: string;
|
|
8
|
+
invoiceValue: number;
|
|
9
|
+
price: number;
|
|
10
|
+
quantity: number;
|
|
11
|
+
invoiceId: number;
|
|
12
|
+
nfeKey: string;
|
|
13
|
+
batch: string;
|
|
14
|
+
createdAt: Date;
|
|
15
|
+
static get identifiersFields(): GenericIdentifier[];
|
|
16
|
+
}
|
|
@@ -0,0 +1,13 @@
|
|
|
1
|
+
import { CategoryImages } from './category-images.type';
|
|
2
|
+
export type BrandsShopMenu = {
|
|
3
|
+
id: string;
|
|
4
|
+
name: string;
|
|
5
|
+
slug: string;
|
|
6
|
+
brand_category: boolean;
|
|
7
|
+
published: boolean;
|
|
8
|
+
images: CategoryImages;
|
|
9
|
+
shops?: string[];
|
|
10
|
+
brand_logo?: string;
|
|
11
|
+
brand_banner?: string;
|
|
12
|
+
brand_banner_mobile?: string;
|
|
13
|
+
};
|
|
@@ -1,8 +1,10 @@
|
|
|
1
1
|
export * from './brand-equity-option.type';
|
|
2
|
+
export * from './brands-shop-menu.type';
|
|
2
3
|
export * from './category-condition.type';
|
|
3
4
|
export * from './category-images.type';
|
|
4
5
|
export * from './category-metadata.type';
|
|
5
6
|
export * from './category-most-relevant.type';
|
|
7
|
+
export * from './product-competitors-price';
|
|
6
8
|
export * from './product-evaluation.type';
|
|
7
9
|
export * from './product-gender.type';
|
|
8
10
|
export * from './product-label.type';
|
|
@@ -8,4 +8,6 @@ export interface CategoryProductRepository extends CrudRepository<CategoryProduc
|
|
|
8
8
|
order: number;
|
|
9
9
|
}[]): Promise<void>;
|
|
10
10
|
addProductToCategories(productId: string, categoryIds: string[]): Promise<void>;
|
|
11
|
+
removeProductFromAllCategories(productId: string): Promise<void>;
|
|
12
|
+
removeCategoryFromAllProducts(categoryId: string): Promise<void>;
|
|
11
13
|
}
|
|
@@ -38,5 +38,6 @@ export interface CategoryRepository<T extends Category = Category> extends CrudR
|
|
|
38
38
|
cache?: RepositoryCacheOptions;
|
|
39
39
|
}): Promise<Category[]>;
|
|
40
40
|
isChild(id: number, parentId: number): Promise<boolean>;
|
|
41
|
+
getBrandsWithProducts(): Promise<Category[]>;
|
|
41
42
|
}
|
|
42
43
|
export {};
|
|
@@ -1,3 +1,4 @@
|
|
|
1
|
+
export * from './category-brand.repository';
|
|
1
2
|
export * from './category-collection-children.repository';
|
|
2
3
|
export * from './category-filter.repository';
|
|
3
4
|
export * from './category-product.repository';
|
|
@@ -5,8 +6,12 @@ export * from './category.repository';
|
|
|
5
6
|
export * from './filter-option.repository';
|
|
6
7
|
export * from './filter.repository';
|
|
7
8
|
export * from './group.repository';
|
|
9
|
+
export * from './product-catalog.repository';
|
|
8
10
|
export * from './product-errors.repository';
|
|
11
|
+
export * from './product-group.repository';
|
|
12
|
+
export * from './product-price-log.repository';
|
|
9
13
|
export * from './product-reviews.repository';
|
|
14
|
+
export * from './product-stock-entry.repository';
|
|
10
15
|
export * from './product-stock-notification.repository';
|
|
11
16
|
export * from './product.repository';
|
|
12
17
|
export * from './subscription-product.repository';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
import { ProductHasuraGraphQL } from '../../../infra';
|
|
2
|
+
import { FindRepositoryParams, RepositoryCacheOptions, RepositoryFindResult } from '../../generic';
|
|
3
|
+
import { Product, ProductGender } from '../models';
|
|
4
|
+
export interface ProductCatalogRepository {
|
|
5
|
+
get({ id }: {
|
|
6
|
+
id: string;
|
|
7
|
+
}): Promise<Product>;
|
|
8
|
+
find(params?: FindRepositoryParams<ProductHasuraGraphQL>, optionsParams?: {
|
|
9
|
+
cache?: RepositoryCacheOptions;
|
|
10
|
+
}): Promise<RepositoryFindResult<ProductHasuraGraphQL>>;
|
|
11
|
+
getByEAN(EAN: string, options?: {
|
|
12
|
+
cache?: RepositoryCacheOptions;
|
|
13
|
+
}): Promise<Product>;
|
|
14
|
+
findCatalog(params: FindRepositoryParams<Product>, mainGender?: Extract<ProductGender, 'female' | 'male' | 'unisex'>, options?: {
|
|
15
|
+
cache?: RepositoryCacheOptions;
|
|
16
|
+
}): Promise<RepositoryFindResult<Product>>;
|
|
17
|
+
}
|
|
@@ -1,5 +1,5 @@
|
|
|
1
1
|
import { BaseModel, GenericIdentifier } from '../../generic/model';
|
|
2
|
-
import { Banner, Benefit, HomeDataStructure, ShopSameDayNotAvailable } from './types';
|
|
2
|
+
import { Banner, Benefit, HomeDataStructure, ShopSameDayNotAvailable, ShippingThresholds } from './types';
|
|
3
3
|
export declare class Home extends BaseModel<Home> {
|
|
4
4
|
benefitsSection: Benefit[];
|
|
5
5
|
blockBanners: Banner[];
|
|
@@ -15,5 +15,6 @@ export declare class Home extends BaseModel<Home> {
|
|
|
15
15
|
data: HomeDataStructure;
|
|
16
16
|
minValueForFreeShipping: number;
|
|
17
17
|
sameDayNotAvaliable: ShopSameDayNotAvailable;
|
|
18
|
+
shippingThresholds?: ShippingThresholds;
|
|
18
19
|
static get identifiersFields(): GenericIdentifier[];
|
|
19
20
|
}
|
|
@@ -0,0 +1,18 @@
|
|
|
1
|
+
import { BaseModel, GenericIdentifier } from '../../generic/model';
|
|
2
|
+
import { LimitOrders, ShopErrorMessages, ShopSameDayNotAvailable } from './types';
|
|
3
|
+
export declare class ShopConfigs extends BaseModel<ShopConfigs> {
|
|
4
|
+
errors?: ShopErrorMessages[];
|
|
5
|
+
antifraude?: {
|
|
6
|
+
enabled: boolean;
|
|
7
|
+
week: {
|
|
8
|
+
subscriber: LimitOrders;
|
|
9
|
+
nonSubscriber: LimitOrders;
|
|
10
|
+
};
|
|
11
|
+
day: {
|
|
12
|
+
subscriber: LimitOrders;
|
|
13
|
+
nonSubscriber: LimitOrders;
|
|
14
|
+
};
|
|
15
|
+
};
|
|
16
|
+
sameDayNotAvaliable?: ShopSameDayNotAvailable;
|
|
17
|
+
static get identifiersFields(): GenericIdentifier[];
|
|
18
|
+
}
|
|
@@ -1,15 +1,18 @@
|
|
|
1
1
|
import { BaseModel, GenericIdentifier } from '../../generic/model';
|
|
2
2
|
import { ShopPageName } from '../enums';
|
|
3
3
|
import { Section } from './types';
|
|
4
|
+
import { DisplayRules, SectionUnion, ShopPageSection } from './types/shop-page-section.type';
|
|
4
5
|
export declare class ShopSettings extends BaseModel<ShopSettings> {
|
|
5
6
|
id: string | ShopPageName;
|
|
6
7
|
name: string;
|
|
7
8
|
shop: string;
|
|
8
|
-
|
|
9
|
+
preview?: string;
|
|
10
|
+
sections: Section<any> | ShopPageSection[];
|
|
9
11
|
descriptionMeta?: string;
|
|
10
12
|
titleMeta?: string;
|
|
11
13
|
imageMeta?: string;
|
|
12
14
|
hasMultiples?: boolean;
|
|
13
15
|
pagePath?: string;
|
|
14
16
|
static get identifiersFields(): GenericIdentifier[];
|
|
17
|
+
getPageSections(displayRules: DisplayRules): SectionUnion[];
|
|
15
18
|
}
|
|
@@ -4,15 +4,18 @@ export * from './brands-carousel.type';
|
|
|
4
4
|
export * from './campaign-page';
|
|
5
5
|
export * from './home-data.type';
|
|
6
6
|
export * from './landing-page';
|
|
7
|
+
export * from './limit-orders.type';
|
|
7
8
|
export * from './menu-nav.type';
|
|
8
9
|
export * from './sections.type';
|
|
9
10
|
export * from './shop-banner.type';
|
|
10
11
|
export * from './shop-brands.type';
|
|
11
12
|
export * from './shop-carousel.type';
|
|
12
13
|
export * from './shop-collection.type';
|
|
14
|
+
export * from './shop-error-messages.type';
|
|
13
15
|
export * from './shop-gift.type';
|
|
14
16
|
export * from './shop-home';
|
|
15
17
|
export * from './shop-post.type';
|
|
16
18
|
export * from './shop-sameday-not-available';
|
|
17
19
|
export * from './shop-section.type';
|
|
20
|
+
export * from './shipping-thresholds.type';
|
|
18
21
|
export * from './sub-menu.type';
|
|
@@ -0,0 +1,17 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* Thresholds de frete grátis configurados no documento Home (Firestore `dms/glamshop`).
|
|
3
|
+
*
|
|
4
|
+
* - `edition`: valor mínimo para frete grátis "junto com a edição" (assinante com
|
|
5
|
+
* edição pendente).
|
|
6
|
+
* - `avulsoSp`: valor mínimo para frete grátis avulso no estado de São Paulo.
|
|
7
|
+
* - `avulsoOutro`: valor mínimo para frete grátis avulso nos demais estados
|
|
8
|
+
* (`null` quando não há frete grátis fora de SP).
|
|
9
|
+
*
|
|
10
|
+
* Todos os campos são opcionais para preservar compatibilidade com documentos
|
|
11
|
+
* Home que ainda não possuam essa estrutura.
|
|
12
|
+
*/
|
|
13
|
+
export interface ShippingThresholds {
|
|
14
|
+
edition?: number;
|
|
15
|
+
avulsoSp?: number;
|
|
16
|
+
avulsoOutro?: number | null;
|
|
17
|
+
}
|
|
@@ -0,0 +1,140 @@
|
|
|
1
|
+
export type ShopPageSection = Array<SectionUnion>;
|
|
2
|
+
export type SectionUnion = SectionLive | SectionCarousel | SectionBanner | SectionInfobars | SectionHighlights | SectionSubscriberInfo | SectionCollection | SectionBeautyProfileCollection | SectionPlans | SectionSinglePlan | SectionBrands | SectionNewsletter;
|
|
3
|
+
export declare enum ShopPageSectionType {
|
|
4
|
+
LIVE = "LIVE",
|
|
5
|
+
CAROUSEL = "CAROUSEL",
|
|
6
|
+
BANNER = "BANNER",
|
|
7
|
+
INFOBARS = "INFOBARS",
|
|
8
|
+
HIGHLIGHTS = "HIGHLIGHTS",
|
|
9
|
+
SUBSCRIBER_INFO = "SUBSCRIBER_INFO",
|
|
10
|
+
COLLECTION = "COLLECTION",
|
|
11
|
+
BEAUTY_PROFILE_COLLECTION = "BEAUTY_PROFILE_COLLECTION",
|
|
12
|
+
PLANS = "PLANS",
|
|
13
|
+
SINGLE_PLAN = "SINGLE_PLAN",
|
|
14
|
+
BRANDS = "BRANDS",
|
|
15
|
+
NEWSLETTER = "NEWSLETTER"
|
|
16
|
+
}
|
|
17
|
+
export type SectionLive = {
|
|
18
|
+
id: string;
|
|
19
|
+
type: ShopPageSectionType.LIVE;
|
|
20
|
+
fixed: boolean;
|
|
21
|
+
editable: boolean;
|
|
22
|
+
title: string;
|
|
23
|
+
link: string;
|
|
24
|
+
active: boolean;
|
|
25
|
+
};
|
|
26
|
+
export type SectionCarousel = {
|
|
27
|
+
id: string;
|
|
28
|
+
type: ShopPageSectionType.CAROUSEL;
|
|
29
|
+
fixed: boolean;
|
|
30
|
+
editable: boolean;
|
|
31
|
+
banners: Banner[];
|
|
32
|
+
};
|
|
33
|
+
export type SectionInfobars = {
|
|
34
|
+
id: string;
|
|
35
|
+
type: ShopPageSectionType.INFOBARS;
|
|
36
|
+
fixed: boolean;
|
|
37
|
+
editable: boolean;
|
|
38
|
+
infobars: Infobar[];
|
|
39
|
+
};
|
|
40
|
+
export type Infobar = {
|
|
41
|
+
id: string;
|
|
42
|
+
link: string;
|
|
43
|
+
text: string;
|
|
44
|
+
active: boolean;
|
|
45
|
+
};
|
|
46
|
+
export type SectionHighlights = {
|
|
47
|
+
id: string;
|
|
48
|
+
type: ShopPageSectionType.HIGHLIGHTS;
|
|
49
|
+
fixed: boolean;
|
|
50
|
+
editable: boolean;
|
|
51
|
+
highlights: Highlight[];
|
|
52
|
+
};
|
|
53
|
+
export type Highlight = {
|
|
54
|
+
id: string;
|
|
55
|
+
title: string;
|
|
56
|
+
subtitle: string;
|
|
57
|
+
link: string;
|
|
58
|
+
image: string;
|
|
59
|
+
altText: string;
|
|
60
|
+
highlighted: boolean;
|
|
61
|
+
starred: boolean;
|
|
62
|
+
displayRules?: Array<Partial<DisplayRules>>;
|
|
63
|
+
};
|
|
64
|
+
export type SectionSubscriberInfo = {
|
|
65
|
+
id: string;
|
|
66
|
+
type: ShopPageSectionType.SUBSCRIBER_INFO;
|
|
67
|
+
fixed: boolean;
|
|
68
|
+
editable: boolean;
|
|
69
|
+
};
|
|
70
|
+
export type Banner = {
|
|
71
|
+
id: string;
|
|
72
|
+
mobileImage: string;
|
|
73
|
+
desktopImage: string;
|
|
74
|
+
link: string;
|
|
75
|
+
altText: string;
|
|
76
|
+
countdown?: string;
|
|
77
|
+
displayRules?: Array<Partial<DisplayRules>>;
|
|
78
|
+
publishDate?: Date;
|
|
79
|
+
expirationDate?: Date;
|
|
80
|
+
};
|
|
81
|
+
export type SectionBanner = Banner & {
|
|
82
|
+
type: ShopPageSectionType.BANNER;
|
|
83
|
+
fixed: boolean;
|
|
84
|
+
editable: boolean;
|
|
85
|
+
};
|
|
86
|
+
export type SectionCollection = {
|
|
87
|
+
id: string;
|
|
88
|
+
type: ShopPageSectionType.COLLECTION;
|
|
89
|
+
fixed: boolean;
|
|
90
|
+
editable: boolean;
|
|
91
|
+
slug: string;
|
|
92
|
+
title: string;
|
|
93
|
+
categoryId: number;
|
|
94
|
+
displayRules?: Array<Partial<DisplayRules>>;
|
|
95
|
+
publishDate?: Date;
|
|
96
|
+
expirationDate?: Date;
|
|
97
|
+
};
|
|
98
|
+
export type SectionBeautyProfileCollection = {
|
|
99
|
+
id: string;
|
|
100
|
+
type: ShopPageSectionType.BEAUTY_PROFILE_COLLECTION;
|
|
101
|
+
fixed: boolean;
|
|
102
|
+
editable: boolean;
|
|
103
|
+
};
|
|
104
|
+
export type DisplayRules = {
|
|
105
|
+
subscriberBuyer: boolean;
|
|
106
|
+
notSubscriber: boolean;
|
|
107
|
+
subscriberNotBuyer: boolean;
|
|
108
|
+
topBadgeSubscriber: boolean;
|
|
109
|
+
beautyProfile?: boolean;
|
|
110
|
+
};
|
|
111
|
+
export type SectionPlans = {
|
|
112
|
+
id: string;
|
|
113
|
+
type: ShopPageSectionType.PLANS;
|
|
114
|
+
fixed: boolean;
|
|
115
|
+
editable: boolean;
|
|
116
|
+
};
|
|
117
|
+
export type SectionSinglePlan = {
|
|
118
|
+
id: string;
|
|
119
|
+
type: ShopPageSectionType.SINGLE_PLAN;
|
|
120
|
+
fixed: boolean;
|
|
121
|
+
editable: boolean;
|
|
122
|
+
};
|
|
123
|
+
export type Brand = {
|
|
124
|
+
slug: string;
|
|
125
|
+
image: string;
|
|
126
|
+
brandName: string;
|
|
127
|
+
};
|
|
128
|
+
export type SectionBrands = {
|
|
129
|
+
id: string;
|
|
130
|
+
type: ShopPageSectionType.BRANDS;
|
|
131
|
+
fixed: boolean;
|
|
132
|
+
editable: boolean;
|
|
133
|
+
brands: Brand[];
|
|
134
|
+
};
|
|
135
|
+
export type SectionNewsletter = {
|
|
136
|
+
id: string;
|
|
137
|
+
type: ShopPageSectionType.NEWSLETTER;
|
|
138
|
+
fixed: boolean;
|
|
139
|
+
editable: boolean;
|
|
140
|
+
};
|
|
@@ -1,6 +1,9 @@
|
|
|
1
1
|
export * from './antifraud-providers.enum';
|
|
2
2
|
export * from './business-unit.enum';
|
|
3
3
|
export * from './order-blocked.enum';
|
|
4
|
+
export * from './order-payment-status.enum';
|
|
4
5
|
export * from './pagarme-payment-status.enum';
|
|
6
|
+
export * from './pagarme-v5-payment-status.enum';
|
|
5
7
|
export * from './payment-methods.enum';
|
|
6
8
|
export * from './payment-providers.enum';
|
|
9
|
+
export * from './transaction-payment-methods.enum';
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
export declare enum OrderPaymentStatus {
|
|
2
|
+
'Em processamento' = "processing",
|
|
3
|
+
'Autorizada' = "authorized",
|
|
4
|
+
'Pago' = "paid",
|
|
5
|
+
'Estornada' = "refunded",
|
|
6
|
+
'Aguardando pagamento' = "waiting_payment",
|
|
7
|
+
'Aguardando estorno' = "pending_refund",
|
|
8
|
+
'Recusada/Não autorizada' = "refused",
|
|
9
|
+
'Chargedback' = "chargedback"
|
|
10
|
+
}
|
|
@@ -0,0 +1,24 @@
|
|
|
1
|
+
export declare enum PagarMeV5PaymentStatus {
|
|
2
|
+
'Em processamento' = "processing",
|
|
3
|
+
'Gerado' = "generated",
|
|
4
|
+
'Visualizado' = "viewed",
|
|
5
|
+
'Pago a menor' = "underpaid",
|
|
6
|
+
'Pago a maior' = "overpaid",
|
|
7
|
+
'Aguardando pagamento' = "waiting_payment",
|
|
8
|
+
'Pago' = "paid",
|
|
9
|
+
'Aguardando estorno' = "pending_refund",
|
|
10
|
+
'Autorizada pendente de captura' = "authorized_pending_capture",
|
|
11
|
+
'Não autorizada' = "not_authorized",
|
|
12
|
+
'Capturada' = "captured",
|
|
13
|
+
'Aguardando captura' = "waiting_capture",
|
|
14
|
+
'Com erro' = "with_error",
|
|
15
|
+
'Estornado' = "refunded",
|
|
16
|
+
'Cancelado' = "voided",
|
|
17
|
+
'Falha' = "failed"
|
|
18
|
+
}
|
|
19
|
+
export declare enum PagarMeV5OrderStatus {
|
|
20
|
+
'Pendente' = "pending",
|
|
21
|
+
'Pago' = "paid",
|
|
22
|
+
'Cancelado' = "canceled",
|
|
23
|
+
'Falha' = "failed"
|
|
24
|
+
}
|