@liquidcommerce/elements-sdk 2.6.0-beta.5 → 2.6.0-beta.7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (29) hide show
  1. package/dist/index.esm.js +9846 -10432
  2. package/dist/types/core/api/api-client.service.d.ts +3 -4
  3. package/dist/types/core/command/common-command.service.d.ts +1 -1
  4. package/dist/types/core/google-tag-manager.service.d.ts +2 -0
  5. package/dist/types/core/pubsub/interfaces/cart.interface.d.ts +2 -14
  6. package/dist/types/core/pubsub/interfaces/checkout.interface.d.ts +2 -1
  7. package/dist/types/core/pubsub/interfaces/product.interface.d.ts +0 -1
  8. package/dist/types/core/store/interfaces/cart.interface.d.ts +16 -55
  9. package/dist/types/core/store/interfaces/checkout.interface.d.ts +2 -2
  10. package/dist/types/core/store/interfaces/core.interface.d.ts +3 -2
  11. package/dist/types/enums/cloud.enum.d.ts +3 -300
  12. package/dist/types/interfaces/api/cart.interface.d.ts +91 -0
  13. package/dist/types/interfaces/cloud/catalog.interface.d.ts +2 -3
  14. package/dist/types/interfaces/cloud/checkout.interface.d.ts +9 -2
  15. package/dist/types/interfaces/cloud/index.d.ts +0 -1
  16. package/dist/types/modules/cart/cart.commands.d.ts +0 -1
  17. package/dist/types/modules/cart/cart.commands.helper.d.ts +1 -6
  18. package/dist/types/modules/cart/components/cart-footer.component.d.ts +0 -1
  19. package/dist/types/modules/cart/components/cart-fulfillment.component.d.ts +0 -2
  20. package/dist/types/modules/product-list/components/product-list-card.component.d.ts +3 -3
  21. package/dist/types/modules/product-list/components/product-list-filters.component.d.ts +1 -1
  22. package/dist/types/modules/product-list/product-list.component.d.ts +2 -3
  23. package/dist/types/modules/product-list/product-list.interface.d.ts +2 -2
  24. package/dist/types/modules/ui-components/purchase-min-alert/index.d.ts +0 -1
  25. package/dist/types/utils/helper.d.ts +2 -1
  26. package/package.json +3 -3
  27. package/umd/elements.js +1 -1
  28. package/dist/types/interfaces/cloud/cart.interface.d.ts +0 -132
  29. package/dist/types/modules/ui-components/purchase-min-alert/helpers.d.ts +0 -7
@@ -1,8 +1,9 @@
1
1
  import type { AuthClientService } from '@/core/api/auth-client.service';
2
2
  import type { IPersistedStore } from '@/core/store/interfaces/core.interface';
3
3
  import type { IAddressAutocompleteResult, IAddressDetailsResult, ILocation } from '@/interfaces/api/address.interface';
4
+ import type { ICart, ICartUpdateParams } from '@/interfaces/api/cart.interface';
4
5
  import type { IProductAvailabilityResponse } from '@/interfaces/api/product.interface';
5
- import type { ICart, ICartUpdateParams, ICatalog, ICatalogParams, ICheckoutCompleteParams, ICheckoutCompleteResponse, ICheckoutPrepareParams, ICheckoutPrepareResponse, ILiquidPaymentToken } from '@/interfaces/cloud';
6
+ import type { ICatalog, ICatalogParams, ICheckoutCompleteParams, ICheckoutCompleteResponse, ICheckoutPrepareParams, ICheckoutPrepareResponse, ILiquidPaymentToken } from '@/interfaces/cloud';
6
7
  import type { IUserPaymentSession, IUserSession } from '@/interfaces/cloud/user.interface';
7
8
  import type { IAllConfigs } from '@/interfaces/configs';
8
9
  export declare class ApiClientService {
@@ -20,9 +21,7 @@ export declare class ApiClientService {
20
21
  getProductsData(identifier: string[], location?: ILocation): Promise<IProductAvailabilityResponse | null>;
21
22
  catalogSearch(params: ICatalogParams): Promise<ICatalog>;
22
23
  getCartData(id: string | null): Promise<ICart>;
23
- updateCart(params: ICartUpdateParams & {
24
- loc?: ILocation;
25
- }): Promise<ICart>;
24
+ updateCart(params: ICartUpdateParams): Promise<ICart>;
26
25
  prepareCheckout(params: ICheckoutPrepareParams): Promise<ICheckoutPrepareResponse>;
27
26
  getPaymentSession(params: IUserPaymentSession): Promise<IUserSession>;
28
27
  confirmPaymentSession(confirmationTokenId: string, setupIntentId: string): Promise<ILiquidPaymentToken>;
@@ -1,4 +1,4 @@
1
- import type { ICart } from '@/interfaces/cloud';
1
+ import type { ICart } from '@/interfaces/api/cart.interface';
2
2
  import { BaseCommand } from './base-command.service';
3
3
  export declare class CommonCommands extends BaseCommand {
4
4
  static getInstance(): CommonCommands;
@@ -6,6 +6,7 @@ declare global {
6
6
  }
7
7
  interface GTMConfig {
8
8
  partnerName: string;
9
+ partnerCode: string;
9
10
  partnerGTMId?: string;
10
11
  enablePartnerGTM: boolean;
11
12
  enableLiquidCommerceGTM: boolean;
@@ -47,6 +48,7 @@ interface PurchaseData {
47
48
  }
48
49
  export declare class GoogleTagManagerService {
49
50
  private partnerName?;
51
+ private partnerCode?;
50
52
  private partnerGTMId?;
51
53
  private liquidCommerceGTMId?;
52
54
  private enablePartnerGTM;
@@ -1,4 +1,4 @@
1
- import type { ICartItemAttributes } from '@/interfaces/cloud';
1
+ import type { ICartItemAttributes } from '@/interfaces/api/cart.interface';
2
2
  export interface ICartItemEventData {
3
3
  id: string;
4
4
  variantId: string;
@@ -45,19 +45,8 @@ export interface IBaseCartEventData {
45
45
  longitude: number;
46
46
  };
47
47
  };
48
- amounts: {
49
- deliveryFee: number;
50
- discounts: number;
51
- engravingFee: number;
52
- giftCardTotal: number;
53
- platformFee: number;
54
- shippingFee: number;
55
- subtotal: number;
56
- total: number;
57
- };
48
+ subtotal: number;
58
49
  itemCount: number;
59
- updatedAt: string;
60
- createdAt: string;
61
50
  }
62
51
  export interface ICartLoadedEventData extends IBaseCartEventData {
63
52
  }
@@ -70,7 +59,6 @@ export interface ICartUpdatedEventData {
70
59
  }
71
60
  export interface ICartItemAddedEventData {
72
61
  id: string;
73
- upc: string;
74
62
  fulfillmentId: string;
75
63
  partNumber: string;
76
64
  quantity: number;
@@ -1,4 +1,5 @@
1
- import type { ICartItemAttributes, ICheckoutTotalAmounts } from '@/interfaces/cloud';
1
+ import type { ICartItemAttributes } from '@/interfaces/api/cart.interface';
2
+ import type { ICheckoutTotalAmounts } from '@/interfaces/cloud';
2
3
  export interface IBaseCheckoutEventData {
3
4
  cartId: string;
4
5
  }
@@ -86,7 +86,6 @@ export interface IProductQuantityChangedEventData {
86
86
  }
87
87
  export interface IProductAddToCartEventData {
88
88
  identifier: string;
89
- upc: string;
90
89
  fulfillmentId: string;
91
90
  partNumber: string;
92
91
  quantity: number;
@@ -1,7 +1,5 @@
1
1
  import type { IElementsCartEvent } from 'utils/helper';
2
- import type { FulfillmentType } from '@/enums';
3
- import type { IAddressAddress } from '@/interfaces/api/address.interface';
4
- import type { ICartItemAttributes, IRetailerExpectation, IRetailerFees } from '@/interfaces/cloud';
2
+ import type { ICartFulfillment, ICartItemAttributes, ICartPromoCode, ICartRetailer } from '@/interfaces/api/cart.interface';
5
3
  export interface ICartItemStore {
6
4
  id: string;
7
5
  variantId: string;
@@ -32,64 +30,27 @@ export interface ICartItemStore {
32
30
  updating: boolean;
33
31
  error: string | null;
34
32
  }
35
- export interface ICartTotalsStore {
36
- subtotal: number;
37
- total: number;
38
- shippingFee: number;
39
- platformFee: number;
40
- giftCardTotal: number;
41
- engravingFee: number;
42
- deliveryFee: number;
43
- discounts: number;
44
- quantity: number;
45
- }
46
- export interface IRetailerFulfillmentStore {
47
- id: string;
48
- canEngrave: boolean;
49
- type: FulfillmentType;
50
- fees: IRetailerFees;
51
- expectation: IRetailerExpectation;
52
- shippingFee: number;
53
- subtotal: number;
54
- items: string[];
55
- engravingFee: number;
56
- deliveryFee: number;
57
- retailerId: string;
58
- loading?: boolean;
59
- error?: string | null;
60
- updating?: boolean;
61
- }
62
- export interface IRetailerStore {
63
- id: string;
64
- name: string;
65
- platformFee: number;
66
- shippingFee: number;
67
- subtotal: number;
68
- address?: IAddressAddress;
69
- deliveryFee: number;
70
- engravingFee: number;
71
- total: number;
72
- fulfillments: string[];
73
- loading?: boolean;
74
- error?: string | null;
75
- updating?: boolean;
33
+ export interface ICartFulfillmentStore extends ICartFulfillment {
34
+ loading: boolean;
35
+ error: string | null;
36
+ updating: boolean;
76
37
  }
77
- export interface ICartPromoCodeStore {
78
- code: string;
79
- discountAmount: number;
38
+ export interface ICartRetailerStore extends ICartRetailer {
39
+ loading: boolean;
40
+ error: string | null;
41
+ updating: boolean;
80
42
  }
81
43
  export interface ICartStore {
82
44
  id: string | null;
45
+ subtotal: number;
46
+ itemsQuantity: number;
47
+ items: Record<string, ICartItemStore>;
48
+ fulfillments: Record<string, ICartFulfillmentStore>;
49
+ retailers: Record<string, ICartRetailerStore>;
50
+ promoCode: ICartPromoCode | null;
51
+ events: IElementsCartEvent[];
83
52
  loading: boolean;
84
53
  error: string | null;
85
- items: Record<string, ICartItemStore>;
86
- totals: ICartTotalsStore;
87
- retailers: Record<string, IRetailerStore>;
88
- promoCode: ICartPromoCodeStore | null;
89
- fulfillments: Record<string, IRetailerFulfillmentStore>;
90
54
  rerender: boolean;
91
55
  shouldReset: boolean;
92
- updatedAt: string;
93
- createdAt: string;
94
- events: IElementsCartEvent[];
95
56
  }
@@ -1,5 +1,5 @@
1
1
  import type { IElementsCheckoutEvents } from 'utils/helper';
2
- import type { ICartItemAttributes, ICheckoutTotalAmounts } from '@/interfaces/cloud';
2
+ import type { ICartItemAttributes } from '@/interfaces/api/cart.interface';
3
3
  export interface ICheckoutMarketingPreferencesStore {
4
4
  canEmail: boolean;
5
5
  canSms: boolean;
@@ -134,7 +134,7 @@ export interface ICheckoutStore {
134
134
  promoCode: ICheckoutPromoCodeStore | null;
135
135
  giftCards: ICheckoutGiftCardStore[];
136
136
  items: Record<string, ICheckoutItemStore>;
137
- amounts: ICheckoutTotalAmounts;
137
+ amounts: any;
138
138
  orderNumber: string | null;
139
139
  onDemandFulfillmentTipInfo: Record<string, IOnDemandFulfillmentTipInfo>;
140
140
  tipSelection: number;
@@ -1,8 +1,9 @@
1
1
  import type { IAddressStore } from '@/core/store/interfaces/address.interface';
2
+ import type { ICartFulfillmentStore, ICartItemStore, ICartRetailerStore, ICartStore } from '@/core/store/interfaces/cart.interface';
2
3
  import type { ICheckoutCustomerFormStore, ICheckoutGiftRecipientFormStore, ICheckoutGiftRecipientStore, ICheckoutItemStore, ICheckoutMarketingPreferencesStore, ICheckoutPaymentFormStore, ICheckoutPaymentMethodStore, ICheckoutPaymentSessionStore, ICheckoutPresaleStore, ICheckoutPromoCodeStore, ICheckoutStore } from '@/core/store/interfaces/checkout.interface';
3
4
  import type { IProductSizeStore, IProductStore } from '@/core/store/interfaces/product.interface';
4
5
  import type { ComponentType } from '@/enums';
5
- import type { ICartItemStore, ICartPromoCodeStore, ICartStore, ICartTotalsStore, IRetailerFulfillmentStore, IRetailerStore } from './cart.interface';
6
+ import type { ICartPromoCode } from '@/interfaces/api/cart.interface';
6
7
  export interface IDrawerContentConfig {
7
8
  type: ComponentType;
8
9
  data?: Record<string, any>;
@@ -25,7 +26,7 @@ export interface IPersistedStore {
25
26
  p?: string;
26
27
  c?: string;
27
28
  }
28
- export type StorePaths = keyof IGlobalStore | `products.${string}` | `products.${string}.${keyof IProductStore}` | `products.${string}.sizes.${string}` | `products.${string}.sizes.${string}.${keyof IProductSizeStore}` | `address.${keyof IAddressStore}` | `cart.${keyof ICartStore}` | `cart.items.${string}` | `cart.items.${string}.${keyof ICartItemStore}` | `cart.totals.${keyof ICartTotalsStore}` | `cart.retailers.${string}` | `cart.items.${string}.${keyof IRetailerStore}` | `cart.fulfillments.${string}` | `cart.fulfillments.${string}.${keyof IRetailerFulfillmentStore}` | `cart.promoCode.${keyof ICartPromoCodeStore}` | `ui.${keyof IUIStore}` | `ui.drawer.${keyof IDrawerStore}` | `checkout.${keyof ICheckoutStore}` | `checkout.customerForm.${keyof ICheckoutCustomerFormStore}` | `checkout.giftRecipientForm.${keyof ICheckoutGiftRecipientFormStore}` | `checkout.paymentForm.${keyof ICheckoutPaymentFormStore}` | `checkout.paymentForm.paymentSession.${keyof ICheckoutPaymentSessionStore}` | `checkout.paymentForm.paymentMethod.${keyof ICheckoutPaymentMethodStore}` | `checkout.presale.${keyof ICheckoutPresaleStore}` | `checkout.marketingPreferences.${keyof ICheckoutMarketingPreferencesStore}` | `checkout.giftRecipient.${keyof ICheckoutGiftRecipientStore}` | `checkout.giftCards.${string}` | `checkout.promoCode.${keyof ICheckoutPromoCodeStore}` | `checkout.items.${string}` | `checkout.items.${string}.${keyof ICheckoutItemStore}` | `checkout.onDemandFulfillmentTipInfo.${string}`;
29
+ export type StorePaths = keyof IGlobalStore | `products.${string}` | `products.${string}.${keyof IProductStore}` | `products.${string}.sizes.${string}` | `products.${string}.sizes.${string}.${keyof IProductSizeStore}` | `address.${keyof IAddressStore}` | `cart.${keyof ICartStore}` | `cart.items.${string}` | `cart.items.${string}.${keyof ICartItemStore}` | `cart.retailers.${string}` | `cart.items.${string}.${keyof ICartRetailerStore}` | `cart.fulfillments.${string}` | `cart.fulfillments.${string}.${keyof ICartFulfillmentStore}` | `cart.promoCode.${keyof ICartPromoCode}` | `ui.${keyof IUIStore}` | `ui.drawer.${keyof IDrawerStore}` | `checkout.${keyof ICheckoutStore}` | `checkout.customerForm.${keyof ICheckoutCustomerFormStore}` | `checkout.giftRecipientForm.${keyof ICheckoutGiftRecipientFormStore}` | `checkout.paymentForm.${keyof ICheckoutPaymentFormStore}` | `checkout.paymentForm.paymentSession.${keyof ICheckoutPaymentSessionStore}` | `checkout.paymentForm.paymentMethod.${keyof ICheckoutPaymentMethodStore}` | `checkout.presale.${keyof ICheckoutPresaleStore}` | `checkout.marketingPreferences.${keyof ICheckoutMarketingPreferencesStore}` | `checkout.giftRecipient.${keyof ICheckoutGiftRecipientStore}` | `checkout.giftCards.${string}` | `checkout.promoCode.${keyof ICheckoutPromoCodeStore}` | `checkout.items.${string}` | `checkout.items.${string}.${keyof ICheckoutItemStore}` | `checkout.onDemandFulfillmentTipInfo.${string}`;
29
30
  interface MiddlewareContext {
30
31
  action: string;
31
32
  payload: any;
@@ -75,291 +75,6 @@ export declare const ENUM_ADDRESS_TYPE: {
75
75
  readonly BILLING: "billing";
76
76
  };
77
77
  export type AddressType = (typeof ENUM_ADDRESS_TYPE)[keyof typeof ENUM_ADDRESS_TYPE];
78
- export declare enum ENUM_BEER {
79
- ALE = "BEER > ALE",
80
- LAGER = "BEER > LAGER",
81
- BASE = "BEER",
82
- NON_ALCOHOLIC = "BEER > NON-ALCOHOLIC",
83
- OTHER_BEER = "BEER > OTHER",
84
- OTHER_BEER_SOUR_BEER = "BEER > SOUR BEER",
85
- OTHER_BEER_FLAVORED_BEER = "BEER > FLAVORED BEER",
86
- OTHER_BEER_FRUIT_BEER = "BEER > FRUIT BEER"
87
- }
88
- export declare enum ENUM_FOOD {
89
- BASE = "FOOD",
90
- PANTRY_OTHER = "FOOD > PANTRY > OTHER",
91
- CANDY = "FOOD > CANDY",
92
- CANDY_OTHER = "FOOD > CANDY > OTHER",
93
- CBD = "FOOD > CBD",
94
- CBD_OTHER = "FOOD > CBD > OTHER",
95
- CHEESE = "FOOD > CHEESE",
96
- CHEESE_OTHER = "FOOD > CHEESE > OTHER",
97
- HOUSEHOLD = "FOOD > HOUSEHOLD",
98
- HOUSEHOLD_SNACKS = "FOOD > HOUSEHOLD > SNACKS",
99
- HOUSEHOLD_OTHER = "FOOD > HOUSEHOLD > OTHER",
100
- PANTRY = "FOOD > PANTRY",
101
- FRUIT = "FOOD > FRUIT",
102
- OTHER = "FOOD > OTHER",
103
- ICE = "FOOD > ICE",
104
- ICE_CREAM = "FOOD > ICE CREAM",
105
- PARTY_SUPPLIES = "FOOD > PARTY SUPPLIES",
106
- PARTY_SUPPLIES_OTHER = "FOOD > PARTY SUPPLIES > OTHER",
107
- SPIRITS_BASED = "FOOD > SPIRITS BASED",
108
- GARNISHES = "FOOD > GARNISHES"
109
- }
110
- export declare enum ENUM_MERCHANDISE {
111
- BASE = "MERCHANDISE",
112
- GLASSWARE = "MERCHANDISE > GLASSWARE",
113
- GLASSWARE_OTHER = "MERCHANDISE > GLASSWARE > OTHER",
114
- HUMIDOR = "MERCHANDISE > HUMIDOR",
115
- ACCESSORY = "MERCHANDISE > ACCESSORY",
116
- ACCESSORY_OTHER = "MERCHANDISE > ACCESSORY > OTHER",
117
- GIFT_SET = "MERCHANDISE > GIFT SET",
118
- GIFT_SET_GIFT_BAG = "MERCHANDISE > GIFT SET > GIFT BAG",
119
- GIFT_SET_GIFT_CARD = "MERCHANDISE > GIFT SET > GIFT CARD",
120
- BAR_TOOLS = "MERCHANDISE > BAR TOOLS",
121
- BAR_TOOLS_ICE_BUCKET = "MERCHANDISE > BAR TOOLS > ICE BUCKET",
122
- BAR_TOOLS_OTHER = "MERCHANDISE > BAR TOOLS > OTHER"
123
- }
124
- export declare enum ENUM_MISCELLANEOUS {
125
- BASE = "MISCELLANEOUS",
126
- GIFT_CARD = "MISCELLANEOUS > GIFT CARDS",
127
- PROMOTIONAL = "MISCELLANEOUS > PROMOTIONAL",
128
- MEMBERSHIP = "MISCELLANEOUS > MEMBERSHIP"
129
- }
130
- export declare enum ENUM_NON_ALCOHOLIC {
131
- BASE = "NON ALCOHOLIC",
132
- BITTERS = "NON ALCOHOLIC > BITTERS",
133
- COCKTAIL_MIX = "NON ALCOHOLIC > COCKTAIL MIX",
134
- COFFEE = "NON ALCOHOLIC > COFFEE",
135
- ENERGY_DRINKS = "NON ALCOHOLIC > ENERGY DRINKS",
136
- JUICE = "NON ALCOHOLIC > JUICE",
137
- SODA = "NON ALCOHOLIC > SODA",
138
- SPECIALTY_ITEM = "NON ALCOHOLIC > SPECIALTY ITEM",
139
- SPECIALTY_ITEM_OTHER = "NON ALCOHOLIC > SPECIALTY ITEM > OTHER",
140
- SPIRITS = "NON ALCOHOLIC > SPIRITS",
141
- TEA = "NON ALCOHOLIC > TEA",
142
- WATER = "NON ALCOHOLIC > WATER",
143
- WINE = "NON ALCOHOLIC > WINE",
144
- SPORTS_DRINKS = "NON ALCOHOLIC > SPORTS DRINKS",
145
- SLURPEES = "NON ALCOHOLIC > SLURPEES",
146
- GINGER_BEER = "NON ALCOHOLIC > GINGER BEER",
147
- DAIRY = "NON ALCOHOLIC > DAIRY",
148
- DAIRY_OTHER = "NON ALCOHOLIC > DAIRY > OTHER",
149
- OTHER = "NON ALCOHOLIC > OTHER"
150
- }
151
- export declare enum ENUM_READY_TO_DRINK {
152
- BASE = "READY TO DRINK",
153
- HARD_CIDER = "READY TO DRINK > HARD CIDER",
154
- HARD_CIDER_PERRY_PEAR_CIDER = "READY TO DRINK > HARD CIDER > PERRY (PEAR CIDER)",
155
- HARD_CIDER_APPLE_CIDER = "READY TO DRINK > HARD CIDER > APPLE CIDER",
156
- HARD_CIDER_OTHER_FRUIT_CIDER = "READY TO DRINK > HARD CIDER > FRUIT CIDER",
157
- HARD_TEA = "READY TO DRINK > HARD TEA",
158
- HARD_SELTZER = "READY TO DRINK > HARD SELTZER",
159
- MALT_BASED = "READY TO DRINK > MALT BASED",
160
- SPIRITS_BASED_RTDS = "READY TO DRINK > SPIRITS-BASED RTDS",
161
- SPIRITS_BASED_RTDS_AGAVE_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > AGAVE COCKTAILS",
162
- SPIRITS_BASED_RTDS_GIN_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > GIN COCKTAILS",
163
- SPIRITS_BASED_RTDS_RUM_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > RUM COCKTAILS",
164
- SPIRITS_BASED_RTDS_TEQUILA_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > TEQUILA COCKTAILS",
165
- SPIRITS_BASED_RTDS_VODKA_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > VODKA COCKTAILS",
166
- SPIRITS_BASED_RTDS_WHISKEY_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > WHISKEY COCKTAILS",
167
- SPIRITS_BASED_RTDS_OTHER = "READY TO DRINK > SPIRITS-BASED RTDS > OTHER",
168
- SPIRITS_BASED_RTDS_FROZEN_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > FROZEN COCKTAILS",
169
- SPIRITS_BASED_RTDS_APERITIF_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > APERITIF COCKTAILS",
170
- SPIRITS_BASED_RTDS_DESSERT_COFFEE_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > DESSERT & COFFEE COCKTAILS",
171
- SPIRITS_BASED_RTDS_TEA_COCKTAILS = "READY TO DRINK > SPIRITS-BASED RTDS > TEA COCKTAILS",
172
- WINE_COCKTAILS = "READY TO DRINK > WINE COCKTAILS",
173
- OTHER = "READY TO DRINK > OTHER"
174
- }
175
- export declare enum ENUM_SPIRITS {
176
- BASE = "SPIRITS",
177
- AMARO_APERITIF_VERMOUTH = "SPIRITS > AMARO APERITIF & VERMOUTH",
178
- AMARO_APERITIF_VERMOUTH_OTHER = "SPIRITS > AMARO APERITIF & VERMOUTH > OTHER",
179
- BAIJIU = "SPIRITS > BAIJIU",
180
- BITTERS = "SPIRITS > BITTERS",
181
- BRANDY = "SPIRITS > BRANDY",
182
- BRANDY_COGNAC = "SPIRITS > BRANDY > COGNAC",
183
- CACHACA = "SPIRITS > CACHACA",
184
- GIN = "SPIRITS > GIN",
185
- GIN_DRY_GIN = "SPIRITS > GIN > DRY GIN",
186
- GIN_FLAVORED_GIN = "SPIRITS > GIN > FLAVORED GIN",
187
- GIN_OLD_TOM_GIN = "SPIRITS > GIN > OLD TOM GIN",
188
- GIN_OTHER = "SPIRITS > GIN > OTHER",
189
- GRAIN_ALCOHOL = "SPIRITS > GRAIN ALCOHOL",
190
- LIQUEUR = "SPIRITS > LIQUEUR",
191
- MEZCAL = "SPIRITS > MEZCAL",
192
- OTHER_SPIRITS = "SPIRITS > OTHER SPIRITS",
193
- RUM = "SPIRITS > RUM",
194
- RUM_AGED_RUM = "SPIRITS > RUM > AGED RUM",
195
- RUM_DARK_RUM = "SPIRITS > RUM > DARK RUM",
196
- RUM_FLAVORED_RUM = "SPIRITS > RUM > FLAVORED RUM",
197
- RUM_GOLD_RUM = "SPIRITS > RUM > GOLD RUM",
198
- RUM_OTHER = "SPIRITS > RUM > OTHER",
199
- RUM_SPICED = "SPIRITS > RUM > SPICED",
200
- RUM_WHITE_RUM = "SPIRITS > RUM > WHITE RUM",
201
- SHOCHU = "SPIRITS > SHOCHU",
202
- SOJU = "SPIRITS > SOJU",
203
- SOTOL = "SPIRITS > SOTOL",
204
- TEQUILA = "SPIRITS > TEQUILA",
205
- TEQUILA_ANEJO = "SPIRITS > TEQUILA > A\u00D1EJO",
206
- TEQUILA_BLANCO = "SPIRITS > TEQUILA > BLANCO",
207
- TEQUILA_CRISTALINO = "SPIRITS > TEQUILA > CRISTALINO",
208
- TEQUILA_EXTRA_ANEJO = "SPIRITS > TEQUILA > EXTRA A\u00D1EJO",
209
- TEQUILA_OTHER = "SPIRITS > TEQUILA > OTHER",
210
- TEQUILA_REPOSADO = "SPIRITS > TEQUILA > REPOSADO",
211
- VODKA = "SPIRITS > VODKA",
212
- VODKA_FLAVORED_VODKA = "SPIRITS > VODKA > FLAVORED VODKA",
213
- VODKA_OTHER = "SPIRITS > VODKA > OTHER",
214
- VODKA_REGULAR_VODKA = "SPIRITS > VODKA > REGULAR VODKA",
215
- WHISKEY = "SPIRITS > WHISKEY",
216
- WHISKEY_AMERICAN_WHISKEY = "SPIRITS > WHISKEY > AMERICAN WHISKEY",
217
- WHISKEY_BOURBON = "SPIRITS > WHISKEY > BOURBON",
218
- WHISKEY_CANADIAN_WHISKEY = "SPIRITS > WHISKEY > CANADIAN WHISKEY",
219
- WHISKEY_IRISH_WHISKEY = "SPIRITS > WHISKEY > IRISH WHISKEY",
220
- WHISKEY_MOONSHINE = "SPIRITS > WHISKEY > MOONSHINE",
221
- WHISKEY_FLAVORED = "SPIRITS > WHISKEY > FLAVORED WHISKEY",
222
- WHISKEY_OTHER = "SPIRITS > WHISKEY > OTHER",
223
- WHISKEY_SCOTCH = "SPIRITS > WHISKEY > SCOTCH"
224
- }
225
- export declare enum ENUM_WINE {
226
- BASE = "WINE",
227
- CHAMPAGNE_SPARKLING = "WINE > CHAMPAGNE & SPARKLING",
228
- CHAMPAGNE_SPARKLING_CAVA = "WINE > CHAMPAGNE & SPARKLING > CAVA",
229
- CHAMPAGNE_SPARKLING_CHAMPAGNE = "WINE > CHAMPAGNE & SPARKLING > CHAMPAGNE",
230
- CHAMPAGNE_SPARKLING_PROSECCO = "WINE > CHAMPAGNE & SPARKLING > PROSECCO",
231
- CHAMPAGNE_SPARKLING_SPARKLING_WINE = "WINE > CHAMPAGNE & SPARKLING > SPARKLING WINE",
232
- CHAMPAGNE_SPARKLING_OTHER = "WINE > CHAMPAGNE & SPARKLING > OTHER",
233
- COOKING = "WINE > COOKING",
234
- DESSERT_FORTIFIED_WINE = "WINE > DESSERT & FORTIFIED WINE",
235
- DESSERT_FORTIFIED_WINE_MEAD = "WINE > DESSERT & FORTIFIED WINE > MEAD",
236
- DESSERT_FORTIFIED_WINE_PORT = "WINE > DESSERT & FORTIFIED WINE > PORT",
237
- DESSERT_FORTIFIED_WINE_SHERRY = "WINE > DESSERT & FORTIFIED WINE > SHERRY",
238
- DESSERT_FORTIFIED_WINE_OTHER = "WINE > DESSERT & FORTIFIED WINE > OTHER",
239
- RED_WINE = "WINE > RED WINE",
240
- RED_WINE_AGIORGITIKO = "WINE > RED WINE > AGIORGITIKO",
241
- RED_WINE_AGLIANICO = "WINE > RED WINE > AGLIANICO",
242
- RED_WINE_ALICANTE_BOUSCHET = "WINE > RED WINE > ALICANTE BOUSCHET",
243
- RED_WINE_BARBERA = "WINE > RED WINE > BARBERA",
244
- RED_WINE_BARBARESCO = "WINE > RED WINE > BARBARESCO",
245
- RED_WINE_BAROLO = "WINE > RED WINE > BAROLO",
246
- RED_WINE_BEAUJOLAIS = "WINE > RED WINE > BEAUJOLAIS",
247
- RED_WINE_BLAUER_ZWEIGELT = "WINE > RED WINE > BLAUER ZWEIGELT",
248
- RED_WINE_BOBAL = "WINE > RED WINE > BOBAL",
249
- RED_WINE_BONARDA = "WINE > RED WINE > BONARDA",
250
- RED_WINE_BORDEAUX = "WINE > RED WINE > BORDEAUX",
251
- RED_WINE_BORDEAUX_BLEND = "WINE > RED WINE > BORDEAUX BLEND",
252
- RED_WINE_BURGUNDY = "WINE > RED WINE > BURGUNDY",
253
- RED_WINE_CABERNET_FRANC = "WINE > RED WINE > CABERNET FRANC",
254
- RED_WINE_CABERNET_SAUVIGNON = "WINE > RED WINE > CABERNET SAUVIGNON",
255
- RED_WINE_CANNONAU = "WINE > RED WINE > CANNONAU",
256
- RED_WINE_CARMENERE = "WINE > RED WINE > CARMENERE",
257
- RED_WINE_CHAMBOURCIN = "WINE > RED WINE > CHAMBOURCIN",
258
- RED_WINE_CHIANTI = "WINE > RED WINE > CHIANTI",
259
- RED_WINE_CINSAULT = "WINE > RED WINE > CINSAULT",
260
- RED_WINE_CORVINA = "WINE > RED WINE > CORVINA",
261
- RED_WINE_DOLCETTO = "WINE > RED WINE > DOLCETTO",
262
- RED_WINE_DORNFELDER = "WINE > RED WINE > DORNFELDER",
263
- RED_WINE_FETEASCA_NEAGRA = "WINE > RED WINE > FETEASCA NEAGRA",
264
- RED_WINE_GAMAY = "WINE > RED WINE > GAMAY",
265
- RED_WINE_GRACIANO = "WINE > RED WINE > GRACIANO",
266
- RED_WINE_GRENACHE = "WINE > RED WINE > GRENACHE",
267
- RED_WINE_LIMNIO = "WINE > RED WINE > LIMNIO",
268
- RED_WINE_MACABEO = "WINE > RED WINE > MACABEO",
269
- RED_WINE_MALBEC = "WINE > RED WINE > MALBEC",
270
- RED_WINE_MENCIA = "WINE > RED WINE > MENCIA",
271
- RED_WINE_MERLOT = "WINE > RED WINE > MERLOT",
272
- RED_WINE_MONICA = "WINE > RED WINE > MONICA",
273
- RED_WINE_MONTEPULCIANO = "WINE > RED WINE > MONTEPULCIANO",
274
- RED_WINE_MOURVEDRE_MONASTRELL = "WINE > RED WINE > MOURVEDRE/MONASTRELL",
275
- RED_WINE_NEBBIOLO = "WINE > RED WINE > NEBBIOLO",
276
- RED_WINE_NEGROAMARO = "WINE > RED WINE > NEGROAMARO",
277
- RED_WINE_NERELLO_MASCALESE = "WINE > RED WINE > NERELLO MASCALESE",
278
- RED_WINE_NERO_DAVOLA = "WINE > RED WINE > NERO D'AVOLA",
279
- RED_WINE_PETIT_VERDOT = "WINE > RED WINE > PETIT VERDOT",
280
- RED_WINE_PETITE_SIRAH = "WINE > RED WINE > PETITE SIRAH",
281
- RED_WINE_PINOT_NOIR = "WINE > RED WINE > PINOT NOIR",
282
- RED_WINE_PINOTAGE = "WINE > RED WINE > PINOTAGE",
283
- RED_WINE_PRIMITIVO = "WINE > RED WINE > PRIMITIVO",
284
- RED_WINE_RED_BLEND = "WINE > RED WINE > RED BLEND",
285
- RED_WINE_RHONE_BLEND = "WINE > RED WINE > RHONE BLEND",
286
- RED_WINE_RIOJA = "WINE > RED WINE > RIOJA",
287
- RED_WINE_SAGRANTINO = "WINE > RED WINE > SAGRANTINO",
288
- RED_WINE_SANGIOVESE = "WINE > RED WINE > SANGIOVESE",
289
- RED_WINE_SAPERAVI = "WINE > RED WINE > SAPERAVI",
290
- RED_WINE_SCHIAVA_TROLLINGER = "WINE > RED WINE > SCHIAVA/TROLLINGER",
291
- RED_WINE_SYRAH_SHIRAZ = "WINE > RED WINE > SYRAH/SHIRAZ",
292
- RED_WINE_TANNAT = "WINE > RED WINE > TANNAT",
293
- RED_WINE_TEMPRANILLO = "WINE > RED WINE > TEMPRANILLO",
294
- RED_WINE_TEROLDEGO = "WINE > RED WINE > TEROLDEGO",
295
- RED_WINE_TINTA_DEL_TORO = "WINE > RED WINE > TINTA DEL TORO",
296
- RED_WINE_TOURIGA_NACIONAL = "WINE > RED WINE > TOURIGA NACIONAL",
297
- RED_WINE_VALPOLICELLA = "WINE > RED WINE > VALPOLICELLA",
298
- RED_WINE_XINOMAVRO = "WINE > RED WINE > XINOMAVRO",
299
- RED_WINE_ZINFANDEL = "WINE > RED WINE > ZINFANDEL",
300
- RED_WINE_ZWEIGELT = "WINE > RED WINE > ZWEIGELT",
301
- RED_WINE_OTHER = "WINE > RED WINE > OTHER",
302
- ROSE_WINE = "WINE > ROSE WINE",
303
- SAKE = "WINE > SAKE",
304
- WHITE_WINE = "WINE > WHITE WINE",
305
- WHITE_WINE_ALBARINO_ALVARINHO = "WINE > WHITE WINE > ALBARINO/ALVARINHO",
306
- WHITE_WINE_ARNEIS = "WINE > WHITE WINE > ARNEIS",
307
- WHITE_WINE_ASTI = "WINE > WHITE WINE > ASTI",
308
- WHITE_WINE_ASSYRTIKO = "WINE > WHITE WINE > ASSYRTIKO",
309
- WHITE_WINE_BURGUNDY = "WINE > WHITE WINE > BURGUNDY",
310
- WHITE_WINE_CARRICANTE = "WINE > WHITE WINE > CARRICANTE",
311
- WHITE_WINE_CATARRATTO = "WINE > WHITE WINE > CATARRATTO",
312
- WHITE_WINE_CHABLIS = "WINE > WHITE WINE > CHABLIS",
313
- WHITE_WINE_CHARDONNAY = "WINE > WHITE WINE > CHARDONNAY",
314
- WHITE_WINE_CHENIN_BLANC = "WINE > WHITE WINE > CHENIN BLANC",
315
- WHITE_WINE_CORTESE = "WINE > WHITE WINE > CORTESE",
316
- WHITE_WINE_FALANGHINA = "WINE > WHITE WINE > FALANGHINA",
317
- WHITE_WINE_FIANO = "WINE > WHITE WINE > FIANO",
318
- WHITE_WINE_FRIULANO = "WINE > WHITE WINE > FRIULANO",
319
- WHITE_WINE_FURMINT = "WINE > WHITE WINE > FURMINT",
320
- WHITE_WINE_GARGANEGA = "WINE > WHITE WINE > GARGANEGA",
321
- WHITE_WINE_GAVI = "WINE > WHITE WINE > GAVI",
322
- WHITE_WINE_GEWURZTRAMINER = "WINE > WHITE WINE > GEWURZTRAMINER",
323
- WHITE_WINE_GRECO_DI_TUFO = "WINE > WHITE WINE > GRECO DI TUFO",
324
- WHITE_WINE_GRENACHE_BLANC = "WINE > WHITE WINE > GRENACHE BLANC",
325
- WHITE_WINE_GRUNER_VELTLINER = "WINE > WHITE WINE > GRUNER VELTLINER",
326
- WHITE_WINE_HUXELREBE = "WINE > WHITE WINE > HUXELREBE",
327
- WHITE_WINE_INZOLIA = "WINE > WHITE WINE > INZOLIA",
328
- WHITE_WINE_MALVASIA = "WINE > WHITE WINE > MALVASIA",
329
- WHITE_WINE_MELON_DE_BOURGOGNE = "WINE > WHITE WINE > MELON DE BOURGOGNE",
330
- WHITE_WINE_MOSCATO_BIANCO = "WINE > WHITE WINE > MOSCATO BIANCO",
331
- WHITE_WINE_MOSCHOFILERO_FILERI = "WINE > WHITE WINE > MOSCHOFILERO/FILERI",
332
- WHITE_WINE_MULLER_THURGAU_RIVANER = "WINE > WHITE WINE > MULLER-THURGAU/RIVANER",
333
- WHITE_WINE_MUSCAT_MOSCATO = "WINE > WHITE WINE > MUSCAT/MOSCATO",
334
- WHITE_WINE_PECORINO = "WINE > WHITE WINE > PECORINO",
335
- WHITE_WINE_PICPOUL = "WINE > WHITE WINE > PICPOUL",
336
- WHITE_WINE_PINOT_BLANC = "WINE > WHITE WINE > PINOT BLANC",
337
- WHITE_WINE_PINOT_GRIGIO_PINOT_GRIS = "WINE > WHITE WINE > PINOT GRIGIO/PINOT GRIS",
338
- WHITE_WINE_POUILLY_FUISSE = "WINE > WHITE WINE > POUILLY-FUISSE",
339
- WHITE_WINE_POUILLY_FUME = "WINE > WHITE WINE > POUILLY-FUME",
340
- WHITE_WINE_RIESLING = "WINE > WHITE WINE > RIESLING",
341
- WHITE_WINE_RIOJA = "WINE > WHITE WINE > RIOJA",
342
- WHITE_WINE_RODITIS = "WINE > WHITE WINE > RODITIS",
343
- WHITE_WINE_SANCERRE = "WINE > WHITE WINE > SANCERRE",
344
- WHITE_WINE_SAUVIGNON_BLANC = "WINE > WHITE WINE > SAUVIGNON BLANC",
345
- WHITE_WINE_SEMILLON = "WINE > WHITE WINE > SEMILLON",
346
- WHITE_WINE_SOAVE = "WINE > WHITE WINE > SOAVE",
347
- WHITE_WINE_SYLVANER = "WINE > WHITE WINE > SYLVANER",
348
- WHITE_WINE_TORRONTES = "WINE > WHITE WINE > TORRONTES",
349
- WHITE_WINE_TREBBIANO_UGNI_BLANC = "WINE > WHITE WINE > TREBBIANO/UGNI BLANC",
350
- WHITE_WINE_TURBIANA = "WINE > WHITE WINE > TURBIANA",
351
- WHITE_WINE_TXAKOLINA = "WINE > WHITE WINE > TXAKOLINA",
352
- WHITE_WINE_VERDEJO = "WINE > WHITE WINE > VERDEJO",
353
- WHITE_WINE_VERDICCHIO = "WINE > WHITE WINE > VERDICCHIO",
354
- WHITE_WINE_VERMENTINO = "WINE > WHITE WINE > VERMENTINO",
355
- WHITE_WINE_VERNACCIA = "WINE > WHITE WINE > VERNACCIA",
356
- WHITE_WINE_VIDIANO = "WINE > WHITE WINE > VIDIANO",
357
- WHITE_WINE_VINHO_VERDE = "WINE > WHITE WINE > VINHO VERDE",
358
- WHITE_WINE_VIOGNIER = "WINE > WHITE WINE > VIOGNIER",
359
- WHITE_WINE_VIURA = "WINE > WHITE WINE > VIURA",
360
- WHITE_WINE_OTHER = "WINE > WHITE WINE > OTHER",
361
- WINE_OTHER = "WINE > OTHER"
362
- }
363
78
  export declare enum ENUM_FILTER_KEYS {
364
79
  BRANDS = "brands",
365
80
  FLAVOR = "flavor",
@@ -380,24 +95,12 @@ export declare enum ENUM_FILTER_KEYS {
380
95
  MATERIALS = "materials",
381
96
  COLLECTION_TAGS = "collectionTags"
382
97
  }
383
- export declare enum ENUM_AVAILABILITY_VALUE {
384
- UNSPECIFIED = "AVAILABILITY_UNSPECIFIED",
385
- IN_STOCK = "IN_STOCK",
386
- OUT_OF_STOCK = "OUT_OF_STOCK",
387
- PREORDER = "PREORDER",
388
- BACKORDER = "BACKORDER"
389
- }
390
- export declare enum ENUM_BINARY_FILTER {
391
- YES = "YES",
392
- NO = "NO"
393
- }
394
- export type LiquidTaxonomy = ENUM_BEER | ENUM_FOOD | ENUM_MERCHANDISE | ENUM_MISCELLANEOUS | ENUM_NON_ALCOHOLIC | ENUM_READY_TO_DRINK | ENUM_SPIRITS | ENUM_WINE;
395
98
  export interface IFilterValue {
396
- value: LiquidTaxonomy | ENUM_AVAILABILITY_VALUE | ENUM_BINARY_FILTER | string;
99
+ value: string;
397
100
  count: number;
398
101
  }
399
102
  export type FacetFilterKeys = ENUM_FILTER_KEYS.BRANDS | ENUM_FILTER_KEYS.FLAVOR | ENUM_FILTER_KEYS.REGION | ENUM_FILTER_KEYS.VARIETY | ENUM_FILTER_KEYS.ENGRAVING | ENUM_FILTER_KEYS.PRESALE | ENUM_FILTER_KEYS.PRICE | ENUM_FILTER_KEYS.AVAILABILITY | ENUM_FILTER_KEYS.CATEGORIES | ENUM_FILTER_KEYS.SIZES | ENUM_FILTER_KEYS.COLORS | ENUM_FILTER_KEYS.APPELLATION | ENUM_FILTER_KEYS.COUNTRY | ENUM_FILTER_KEYS.VINTAGE | ENUM_FILTER_KEYS.MATERIALS | ENUM_FILTER_KEYS.TAGS;
400
103
  export interface IFilterSchema {
401
- bucket: FacetFilterKeys;
402
- values: IFilterValue[];
104
+ filterCategory: FacetFilterKeys;
105
+ filterValues: IFilterValue[];
403
106
  }
@@ -0,0 +1,91 @@
1
+ import type { CartEventEnum, FulfillmentType } from '@/enums';
2
+ import type { ILocation } from '@/interfaces/api/address.interface';
3
+ import type { IProductPresale } from '@/interfaces/api/product.interface';
4
+ export interface ICartUpdateItem {
5
+ id?: string;
6
+ partNumber: string;
7
+ quantity: number;
8
+ fulfillmentId: string;
9
+ engravingLines?: string[];
10
+ }
11
+ export interface ICartUpdateParams {
12
+ id: string;
13
+ items: ICartUpdateItem[];
14
+ promoCode?: string;
15
+ location?: ILocation;
16
+ }
17
+ export interface ICartFulfillment {
18
+ id: string;
19
+ canEngrave: boolean;
20
+ type: FulfillmentType;
21
+ expectation: string;
22
+ itemIds: string[];
23
+ subtotal: number;
24
+ hasUnmetMinimumPurchaseAmount: boolean;
25
+ minimumPurchaseAmount: number;
26
+ }
27
+ export interface ICartRetailer {
28
+ id: string;
29
+ name: string;
30
+ subtotal: number;
31
+ itemsQuantity: number;
32
+ fulfillments: Record<string, ICartFulfillment>;
33
+ }
34
+ export interface ICartItemAttributes {
35
+ engraving: ICartItemEngraving;
36
+ presale: IProductPresale;
37
+ }
38
+ export interface ICartItem {
39
+ id: string;
40
+ variantId: string;
41
+ liquidId: string;
42
+ retailerId: string;
43
+ partNumber: string;
44
+ fulfillmentId: string;
45
+ upc: string;
46
+ sku: string;
47
+ salsifyGrouping: string;
48
+ catPath: string;
49
+ volume: string;
50
+ uom: string;
51
+ pack: boolean;
52
+ packDesc: string;
53
+ container: string;
54
+ containerType: string;
55
+ name: string;
56
+ brand: string;
57
+ size: string;
58
+ price: number;
59
+ quantity: number;
60
+ maxQuantity: number;
61
+ unitPrice: number;
62
+ mainImage: string;
63
+ attributes: ICartItemAttributes;
64
+ }
65
+ export interface ICartPromoCode {
66
+ code: string;
67
+ discountAmount: number;
68
+ }
69
+ export interface ICart {
70
+ id: string;
71
+ subtotal: number;
72
+ itemsQuantity: number;
73
+ items: Record<string, ICartItem>;
74
+ retailers: Record<string, ICartRetailer>;
75
+ promoCode: ICartPromoCode | null;
76
+ events: any[];
77
+ }
78
+ export interface ICartItemEngraving {
79
+ isEngravable: boolean;
80
+ hasEngraving: boolean;
81
+ fee: number;
82
+ maxCharsPerLine: number;
83
+ maxLines: number;
84
+ location: string;
85
+ lines: string[];
86
+ }
87
+ export interface ICartEvent {
88
+ type: CartEventEnum;
89
+ message: string;
90
+ items?: Array<Partial<ICartItem>>;
91
+ }
@@ -1,5 +1,4 @@
1
- import type { IProduct } from '@/interfaces/api/product.interface';
2
- import type { IRetailer } from './retailer.interface';
1
+ import type { IProduct, IRetailer } from '@/interfaces/api/product.interface';
3
2
  export declare enum ENUM_NAVIGATION_ORDER_DIRECTION_TYPE {
4
3
  ASC = "asc",
5
4
  DESC = "desc"
@@ -21,7 +20,7 @@ export interface ICatalogParams {
21
20
  [key: string]: any;
22
21
  }
23
22
  export interface ICatalog {
24
- retailers?: IRetailer[];
23
+ retailers: Record<string, IRetailer>;
25
24
  products?: IProduct[];
26
25
  navigation?: INavigationSchema;
27
26
  }