@liquidcommerce/elements-sdk 2.7.0 → 2.7.2

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 (81) hide show
  1. package/README.md +83 -2750
  2. package/dist/index.checkout.esm.js +6898 -6837
  3. package/dist/index.esm.js +11463 -10993
  4. package/dist/types/auto-initialize/shared-utils.d.ts +5 -0
  5. package/dist/types/constants/core.constant.d.ts +0 -4
  6. package/dist/types/core/base-component.service.d.ts +2 -1
  7. package/dist/types/core/pubsub/interfaces/checkout.interface.d.ts +1 -0
  8. package/dist/types/enums/core.enum.d.ts +11 -0
  9. package/dist/types/interfaces/configs/product-list.interface.d.ts +2 -2
  10. package/dist/types/interfaces/core.interface.d.ts +5 -4
  11. package/dist/types/modules/address/address-input.component.d.ts +11 -0
  12. package/dist/types/modules/checkout/components/checkout-stripe-form.component.d.ts +2 -1
  13. package/dist/types/modules/product-list/components/card-components/index.d.ts +3 -0
  14. package/dist/types/modules/product-list/components/card-components/product-badge.d.ts +8 -0
  15. package/dist/types/modules/product-list/components/card-components/product-fulfillments.d.ts +2 -0
  16. package/dist/types/modules/product-list/components/card-components/product-price-and-personalization.d.ts +13 -0
  17. package/dist/types/modules/product-list/components/card-components/product-title.d.ts +6 -0
  18. package/dist/types/modules/product-list/components/index.d.ts +1 -0
  19. package/dist/types/modules/product-list/components/product-list-engraving.component.d.ts +5 -1
  20. package/dist/types/modules/product-list/components/product-list-product-pre-cart.component.d.ts +28 -0
  21. package/dist/types/modules/product-list/components/product-list-retailers.component.d.ts +10 -2
  22. package/dist/types/modules/product-list/product-list-card.component.d.ts +0 -5
  23. package/dist/types/modules/product-list/product-list.commands.d.ts +11 -2
  24. package/dist/types/modules/product-list/product-list.interface.d.ts +1 -0
  25. package/dist/types/modules/ui-components/engraving/engraving-form.component.d.ts +11 -2
  26. package/dist/types/modules/ui-components/lce-element/lce-element.component.d.ts +2 -1
  27. package/dist/types/utils/dom-compat.d.ts +2 -0
  28. package/docs/gitbook/actions.md +964 -0
  29. package/docs/gitbook/address.md +48 -0
  30. package/docs/gitbook/cart.md +65 -0
  31. package/docs/gitbook/checkout.md +131 -0
  32. package/docs/gitbook/events.md +1765 -0
  33. package/docs/gitbook/overview.md +166 -0
  34. package/docs/gitbook/product.md +64 -0
  35. package/docs/gitbook/quick-start-guide.md +393 -0
  36. package/docs/v1/README.md +210 -0
  37. package/docs/v1/api/actions/address-actions.md +281 -0
  38. package/docs/v1/api/actions/cart-actions.md +337 -0
  39. package/docs/v1/api/actions/checkout-actions.md +387 -0
  40. package/docs/v1/api/actions/product-actions.md +115 -0
  41. package/docs/v1/api/client.md +482 -0
  42. package/docs/v1/api/configuration.md +1 -0
  43. package/docs/v1/api/injection-methods.md +247 -0
  44. package/docs/v1/api/typescript-types.md +1 -0
  45. package/docs/v1/api/ui-helpers.md +200 -0
  46. package/docs/v1/examples/advanced-patterns.md +96 -0
  47. package/docs/v1/examples/checkout-flow.md +91 -0
  48. package/docs/v1/examples/custom-theming.md +63 -0
  49. package/docs/v1/examples/multi-product-page.md +90 -0
  50. package/docs/v1/examples/simple-product-page.md +89 -0
  51. package/docs/v1/getting-started/concepts.md +507 -0
  52. package/docs/v1/getting-started/installation.md +328 -0
  53. package/docs/v1/getting-started/quick-start.md +405 -0
  54. package/docs/v1/guides/address-component.md +431 -0
  55. package/docs/v1/guides/best-practices.md +324 -0
  56. package/docs/v1/guides/cart-component.md +737 -0
  57. package/docs/v1/guides/checkout-component.md +672 -0
  58. package/docs/v1/guides/events.md +926 -0
  59. package/docs/v1/guides/product-component.md +686 -0
  60. package/docs/v1/guides/product-list-component.md +598 -0
  61. package/docs/v1/guides/theming.md +216 -0
  62. package/docs/v1/integration/angular.md +39 -0
  63. package/docs/v1/integration/laravel.md +41 -0
  64. package/docs/v1/integration/nextjs.md +60 -0
  65. package/docs/v1/integration/proxy-setup.md +89 -0
  66. package/docs/v1/integration/react.md +64 -0
  67. package/docs/v1/integration/vanilla-js.md +84 -0
  68. package/docs/v1/integration/vue.md +34 -0
  69. package/docs/v1/reference/browser-support.md +44 -0
  70. package/docs/v1/reference/error-handling.md +70 -0
  71. package/docs/v1/reference/performance.md +54 -0
  72. package/docs/v1/reference/troubleshooting.md +64 -0
  73. package/package.json +1 -1
  74. package/docs/ACTIONS.md +0 -1301
  75. package/docs/BROWSER_SUPPORT.md +0 -279
  76. package/docs/CONFIGURATION.md +0 -997
  77. package/docs/DOCUMENTATION_INDEX.md +0 -319
  78. package/docs/EVENTS.md +0 -798
  79. package/docs/PROXY.md +0 -228
  80. package/docs/THEMING.md +0 -681
  81. package/docs/TROUBLESHOOTING.md +0 -793
@@ -1,7 +1,12 @@
1
1
  import type { IInjectCheckoutParams, IInjectedComponent, ILiquidCommerceElementsDevelopmentConfig } from '@/interfaces/core.interface';
2
2
  export declare const SHARED_ATTR: {
3
3
  readonly SCRIPT: {
4
+ readonly MAIN: "data-liquid-commerce-elements";
5
+ readonly TOKEN: "data-token";
6
+ readonly ENV: "data-env";
7
+ readonly DEBUG_MODE: "data-debug-mode";
4
8
  readonly CHECKOUT_PARAM: "data-checkout-param";
9
+ readonly CHECKOUT_URL: "data-checkout-url";
5
10
  };
6
11
  readonly ELEMENT: {
7
12
  readonly CHECKOUT: "data-lce-checkout";
@@ -48,7 +48,3 @@ export declare const Z_INDEX: {
48
48
  readonly MODAL: 2147483640;
49
49
  };
50
50
  export declare const DESKTOP_BREAKPOINT = 1024;
51
- export declare const DISPLAY_MODE: {
52
- MODAL: string;
53
- DRAWER: string;
54
- };
@@ -7,6 +7,7 @@ import { TelemetryService } from '@/core/telemetry/telemetry.service';
7
7
  import type { ComponentType } from '@/enums';
8
8
  import type { ConfigsKeyType, ConfigsType } from '@/interfaces/configs';
9
9
  import { ThemeProviderService } from '@/modules/theme-provider/theme-provider.service';
10
+ import { SafeHTMLElement } from '@/utils/dom-compat';
10
11
  import { CommandService } from './command/command.service';
11
12
  export interface IBaseComponentConfig {
12
13
  type: ComponentType;
@@ -25,7 +26,7 @@ export interface IOnStoreChanged {
25
26
  value: any;
26
27
  oldValue: any;
27
28
  }
28
- export declare abstract class BaseComponent<TParams = Record<string, any>, TConfig = ConfigsType> extends HTMLElement {
29
+ export declare abstract class BaseComponent<TParams = Record<string, any>, TConfig = ConfigsType> extends SafeHTMLElement {
29
30
  protected readonly store: StoreService;
30
31
  protected readonly commands: CommandService;
31
32
  protected readonly themeProvider: ThemeProviderService;
@@ -1,5 +1,6 @@
1
1
  import type { ICheckoutAmounts, ICheckoutItem } from '@/interfaces/api/checkout.interface';
2
2
  export interface IBaseCheckoutEventData {
3
+ token: string;
3
4
  cartId: string;
4
5
  isGift: boolean;
5
6
  billingSameAsShipping: boolean;
@@ -100,6 +100,7 @@ export declare const COMPONENT_TYPE: {
100
100
  readonly PRODUCT_LIST_CARD_LOADING: "product-list-card-loading";
101
101
  readonly PRODUCT_LIST_RETAILERS: "product-list-retailers";
102
102
  readonly PRODUCT_LIST_ENGRAVING_FORM: "product-list-engraving-form";
103
+ readonly PRODUCT_LIST_PRODUCT_PRE_CART: "product-list-product-pre-cart";
103
104
  readonly CART: "cart";
104
105
  readonly CART_RETAILER: "cart-retailer";
105
106
  readonly CART_ITEM: "cart-item";
@@ -172,3 +173,13 @@ export declare const CHECKOUT_EVENT_LEVEL: {
172
173
  readonly ERROR: "error";
173
174
  };
174
175
  export type CheckoutEventLevel = (typeof CHECKOUT_EVENT_LEVEL)[keyof typeof CHECKOUT_EVENT_LEVEL];
176
+ export declare const DISPLAY_MODE: {
177
+ readonly MODAL: "modal";
178
+ readonly DRAWER: "drawer";
179
+ };
180
+ export type DisplayModeType = (typeof DISPLAY_MODE)[keyof typeof DISPLAY_MODE];
181
+ export declare const NAVIGATION_SOURCE: {
182
+ readonly PRODUCT_CARD: "productCard";
183
+ readonly ADD_TO_CART_DRAWER: "addToCartDrawer";
184
+ };
185
+ export type NavigationSourceType = (typeof NAVIGATION_SOURCE)[keyof typeof NAVIGATION_SOURCE];
@@ -1,10 +1,10 @@
1
+ import type { DisplayModeType } from 'enums';
1
2
  import type { DeepPartial } from '@/interfaces/core.interface';
2
3
  export type ProductListCardStyle = 'card' | 'ghost';
3
4
  export type ProductListCardCornerRadius = 'rounded' | 'sharp';
4
5
  export interface IProductListTheme {
5
6
  backgroundColor: string;
6
7
  }
7
- export type IDisplayMode = 'modal' | 'drawer';
8
8
  export interface IProductListLayout {
9
9
  productCard: {
10
10
  style: ProductListCardStyle;
@@ -19,7 +19,7 @@ export interface IProductListLayout {
19
19
  showCollections: boolean;
20
20
  enablePersonalization: boolean;
21
21
  };
22
- displayMode: IDisplayMode;
22
+ displayMode: DisplayModeType;
23
23
  }
24
24
  export interface IProductListComponent {
25
25
  theme: IProductListTheme;
@@ -92,6 +92,10 @@ export interface IInjectCheckoutParams {
92
92
  checkoutId?: string;
93
93
  hideHeader?: boolean;
94
94
  }
95
+ export interface IInjectCheckoutBuilderParams extends IInjectCheckoutParams {
96
+ simulatePresale?: boolean;
97
+ presaleExpiresInMinutes?: number;
98
+ }
95
99
  export interface ILiquidCommerceElementsUIMethod {
96
100
  cartButton(containerId: string, showItemsCount?: boolean): void;
97
101
  floatingCartButton(showItemsCount?: boolean): void;
@@ -116,10 +120,7 @@ export interface ILiquidCommerceElementsBuilderClient {
116
120
  injectProductElement(params: IInjectProductElement[]): Promise<IInjectedComponent[]>;
117
121
  injectAddressElement(containerId: string, options?: IAddressOptions): Promise<IInjectedComponent | null>;
118
122
  injectCartElement(containerId: string): Promise<IInjectedComponent | null>;
119
- injectCheckoutElement(containerId: string, options?: {
120
- simulatePresale?: boolean;
121
- presaleExpiresInMinutes?: number;
122
- }): Promise<IInjectedComponent | null>;
123
+ injectCheckoutElement(params: IInjectCheckoutBuilderParams): Promise<IInjectedComponent | null>;
123
124
  injectProductList(params: IInjectProductListParams): Promise<void>;
124
125
  actions: ILiquidCommerceElementsActions;
125
126
  }
@@ -1,3 +1,7 @@
1
+ import type { IProductListProduct } from 'core/store/interfaces/product-list.interface';
2
+ import { type NavigationSourceType } from 'enums';
3
+ import type { IFulfillment } from 'interfaces/api/product.interface';
4
+ import type { IProductListComponent } from 'interfaces/configs';
1
5
  import { BaseComponent } from '@/core/base-component.service';
2
6
  import type { IAddressComponent } from '@/interfaces/configs';
3
7
  import type { IAddressOptions } from './address.interface';
@@ -5,6 +9,12 @@ export interface IAddressInputComponentParams {
5
9
  productId?: string;
6
10
  isIndependentComponent?: boolean;
7
11
  options?: IAddressOptions;
12
+ navigationSource?: NavigationSourceType;
13
+ product?: IProductListProduct;
14
+ shippingFulfillment?: IFulfillment | null;
15
+ onDemandFulfillment?: IFulfillment | null;
16
+ showCollections?: boolean;
17
+ config?: IProductListComponent;
8
18
  }
9
19
  export declare class AddressInputComponent extends BaseComponent<IAddressInputComponentParams, IAddressComponent> {
10
20
  private suggestions;
@@ -24,6 +34,7 @@ export declare class AddressInputComponent extends BaseComponent<IAddressInputCo
24
34
  private closeDrawer;
25
35
  private handleCancel;
26
36
  private handleCheckAvailability;
37
+ private reopenAddToCartDrawer;
27
38
  private handleSuggestionClick;
28
39
  private handleDocumentClick;
29
40
  private searchAddresses;
@@ -1,3 +1,4 @@
1
+ import { SafeHTMLElement } from '@/utils/dom-compat';
1
2
  declare global {
2
3
  interface Window {
3
4
  Stripe: any;
@@ -23,7 +24,7 @@ export interface IStripeFormStatus {
23
24
  hasError: boolean;
24
25
  errorMessage: string | null;
25
26
  }
26
- export declare class CheckoutStripeFormComponent extends HTMLElement {
27
+ export declare class CheckoutStripeFormComponent extends SafeHTMLElement {
27
28
  private _initialized;
28
29
  private _stripe;
29
30
  private _stripeElements;
@@ -1,4 +1,7 @@
1
+ export * from './product-badge';
1
2
  export * from './product-button';
2
3
  export * from './product-fulfillments';
4
+ export * from './product-price-and-personalization';
3
5
  export * from './product-quantity-selector';
4
6
  export * from './product-sizes-list';
7
+ export * from './product-title';
@@ -0,0 +1,8 @@
1
+ export interface IBadgesParams {
2
+ badges: Array<{
3
+ text: string;
4
+ className?: string;
5
+ }>;
6
+ separatorText?: string;
7
+ }
8
+ export declare const createProductBadges: ({ badges, separatorText }: IBadgesParams) => HTMLElement;
@@ -1,10 +1,12 @@
1
1
  import type { IProductFulfillmentStore } from 'core/store/interfaces/product.interface';
2
+ import { type NavigationSourceType } from 'enums';
2
3
  export interface IFulfillmentSectionParams {
3
4
  shippingVariants: Record<string, IProductFulfillmentStore>;
4
5
  onDemandVariants: Record<string, IProductFulfillmentStore>;
5
6
  enableShippingFulfillment: boolean;
6
7
  enableOnDemandFulfillment: boolean;
7
8
  productId: string;
9
+ navigationSource?: NavigationSourceType;
8
10
  onDeliveryOptionsClick: (productId: string) => void | Promise<void>;
9
11
  }
10
12
  export declare const createFulfillmentSection: (params: IFulfillmentSectionParams) => HTMLElement;
@@ -0,0 +1,13 @@
1
+ export interface IPricePersonalizationSectionParams {
2
+ price: number;
3
+ showPrice: boolean;
4
+ hasPersonalization: boolean;
5
+ showPersonalization: boolean;
6
+ hasAddress: boolean;
7
+ wrapperClassName?: string;
8
+ priceClassName?: string;
9
+ personalizeClassName?: string;
10
+ personalizeText?: string;
11
+ onPersonalizeClick?: () => void;
12
+ }
13
+ export declare const createPricePersonalizationSection: ({ price, showPrice, hasPersonalization, showPersonalization, hasAddress, wrapperClassName, priceClassName, personalizeClassName, personalizeText, onPersonalizeClick, }: IPricePersonalizationSectionParams) => HTMLElement | null;
@@ -0,0 +1,6 @@
1
+ export interface ITitleSectionParams {
2
+ name: string;
3
+ productUrl?: string | null;
4
+ onTitleClick?: () => void;
5
+ }
6
+ export declare const createProductTitle: ({ name, productUrl, onTitleClick }: ITitleSectionParams) => HTMLElement;
@@ -4,5 +4,6 @@ export * from './filter-components/product-list-apply-filter-button';
4
4
  export * from './product-list-card-loading.component';
5
5
  export * from './product-list-engraving.component';
6
6
  export * from './product-list-filters.component';
7
+ export * from './product-list-product-pre-cart.component';
7
8
  export * from './product-list-retailers.component';
8
9
  export * from './product-list-search.component';
@@ -1,6 +1,10 @@
1
1
  import { BaseComponent } from 'core/base-component.service';
2
2
  import type { IEngravingFormComponentParams } from 'modules/ui-components/engraving';
3
3
  export declare class ProductListEngravingComponent extends BaseComponent<IEngravingFormComponentParams> {
4
- protected template(): HTMLElement;
4
+ protected template(): HTMLElement[];
5
5
  private createHeader;
6
+ private handleClose;
7
+ private handleEngravingComplete;
8
+ private handleEngravingCancel;
9
+ private reopenAddToCartDrawer;
6
10
  }
@@ -0,0 +1,28 @@
1
+ import { BaseComponent } from 'core/base-component.service';
2
+ import type { IProductListProduct } from 'core/store/interfaces/product-list.interface';
3
+ import { type DisplayModeType } from 'enums';
4
+ import type { IFulfillment } from 'interfaces/api/product.interface';
5
+ import type { IProductListComponent } from 'interfaces/configs';
6
+ export interface IProductListProductPreCartComponentParams {
7
+ displayMode: DisplayModeType;
8
+ product: IProductListProduct;
9
+ shippingFulfillment: IFulfillment | null;
10
+ onDemandFulfillment: IFulfillment | null;
11
+ config: IProductListComponent;
12
+ }
13
+ export declare class ProductListProductPreCartComponent extends BaseComponent<IProductListProductPreCartComponentParams, IProductListComponent> {
14
+ private selectedSize;
15
+ constructor();
16
+ protected template(): HTMLElement[];
17
+ private createCartHeader;
18
+ private createImageSection;
19
+ private createPricePersonalizationSection;
20
+ private createDeliversToSection;
21
+ private createSizesSection;
22
+ private handleDeliveryOptionsClick;
23
+ private createFulfillmentSectionWrapper;
24
+ createFulfillmentTextSection(selectedFulfillmentType: string, selectedFulfillmentRetailerName: string): HTMLElement;
25
+ private createAddToCartSection;
26
+ private handleAddToCart;
27
+ private createExpectationArrivalInfoSection;
28
+ }
@@ -1,9 +1,16 @@
1
- import type { IDisplayMode, IProductListComponent } from 'interfaces/configs';
1
+ import type { IProductListProduct } from 'core/store/interfaces/product-list.interface';
2
+ import { type DisplayModeType, type NavigationSourceType } from 'enums';
3
+ import type { IFulfillment } from 'interfaces/api/product.interface';
4
+ import type { IProductListComponent } from 'interfaces/configs';
2
5
  import { BaseComponent } from '@/core/base-component.service';
3
6
  export interface IProductListRetailersParams {
7
+ product?: IProductListProduct;
4
8
  productId: string;
5
9
  config?: IProductListComponent;
6
- displayMode?: IDisplayMode;
10
+ displayMode?: DisplayModeType;
11
+ navigationSource?: NavigationSourceType;
12
+ shippingFulfillment?: IFulfillment | null;
13
+ onDemandFulfillment?: IFulfillment | null;
7
14
  }
8
15
  export declare class ProductListRetailersComponent extends BaseComponent<IProductListRetailersParams, IProductListComponent> {
9
16
  get hostClasses(): string[];
@@ -13,6 +20,7 @@ export declare class ProductListRetailersComponent extends BaseComponent<IProduc
13
20
  private extractFulfillments;
14
21
  private onFulfillmentTabClick;
15
22
  private onRetailerCardClick;
23
+ private reopenAddToCartDrawer;
16
24
  private createHeader;
17
25
  private createNoAvailabilityMessage;
18
26
  }
@@ -16,16 +16,11 @@ export declare class ProductListCardComponent extends BaseComponent<IProductList
16
16
  protected connected(): Promise<void>;
17
17
  disconnected(): void;
18
18
  private reRender;
19
- private getAvailabilityData;
20
- private isPresaleActive;
21
- private handleAddToCart;
22
19
  protected template(): HTMLElement[];
23
20
  private generateProductUrl;
24
21
  private createVariantStandard;
25
22
  private createImageSection;
26
23
  private createContentSection;
27
- private createBadgesSection;
28
- private createTitleSection;
29
24
  private createPricePersonalizationSection;
30
25
  private createSizesSection;
31
26
  private handleDeliveryOptionsClick;
@@ -1,12 +1,13 @@
1
1
  import type { IModalContentConfig } from 'core/store/interfaces/core.interface';
2
+ import type { IProductSizeStore } from 'core/store/interfaces/product.interface';
2
3
  import type { IProductListProduct, IProductListStore } from 'core/store/interfaces/product-list.interface';
3
4
  import { BaseCommand } from '@/core/command/base-command.service';
4
5
  import { type FulfillmentType } from '@/enums';
5
- import type { IProduct, IRetailer } from '@/interfaces/api/product.interface';
6
+ import type { IFulfillment, IProduct, IProductSizeAttributes, IRetailer } from '@/interfaces/api/product.interface';
6
7
  import type { IFilterSchema, INavigationResponse, IProductSearchParams, IProductSearchResponse } from '@/interfaces/api/product-list.interface';
7
8
  import type { ProductListFilterType } from '@/interfaces/core.interface';
8
9
  import { type AddItemParams } from '@/modules/cart/cart.commands';
9
- import type { IExtendedFilterSchema, IPagination, IProductListFilters } from './product-list.interface';
10
+ import type { IExtendedFilterSchema, IPagination, IProductAvailabilityData, IProductListFilters } from './product-list.interface';
10
11
  type StateListener = (state: IProductListStore) => void;
11
12
  export declare class ProductListCommands extends BaseCommand {
12
13
  private readonly uiCommands;
@@ -63,5 +64,13 @@ export declare class ProductListCommands extends BaseCommand {
63
64
  selectSize: (productId: string, sizeId: string) => Promise<void>;
64
65
  private getFulfillmentForSize;
65
66
  updateQuantity: (productId: string, quantity: number) => void;
67
+ getAvailabilityData(params: {
68
+ product: IProductListProduct;
69
+ size?: IProductSizeStore;
70
+ shippingFulfillment?: IFulfillment | null;
71
+ onDemandFulfillment?: IFulfillment | null;
72
+ state?: string;
73
+ }): IProductAvailabilityData;
74
+ isPresaleActive(sizeAttributes: IProductSizeAttributes): boolean;
66
75
  }
67
76
  export {};
@@ -70,6 +70,7 @@ export interface IProductAvailabilityData {
70
70
  state: string;
71
71
  isPresale: boolean;
72
72
  isPresaleActive: boolean;
73
+ presaleShipBy: string | null;
73
74
  }
74
75
  export interface IProductVariantParams {
75
76
  image: string;
@@ -1,5 +1,8 @@
1
+ import type { IProductListProduct } from 'core/store/interfaces/product-list.interface';
2
+ import type { IFulfillment } from 'interfaces/api/product.interface';
1
3
  import { BaseComponent } from '@/core/base-component.service';
2
- import type { IDisplayMode } from '@/interfaces/configs';
4
+ import { type DisplayModeType, type NavigationSourceType } from '@/enums';
5
+ import type { IProductListComponent } from '@/interfaces/configs';
3
6
  export interface IEngravingFormComponentParams {
4
7
  identifier: string;
5
8
  context: 'product' | 'cart' | 'product-list';
@@ -8,7 +11,13 @@ export interface IEngravingFormComponentParams {
8
11
  maxCharsPerLine: number;
9
12
  fee: number;
10
13
  location?: string;
11
- displayMode?: IDisplayMode;
14
+ displayMode?: DisplayModeType;
15
+ navigationSource?: NavigationSourceType;
16
+ product?: IProductListProduct;
17
+ shippingFulfillment?: IFulfillment | null;
18
+ onDemandFulfillment?: IFulfillment | null;
19
+ showCollections?: boolean;
20
+ config?: IProductListComponent;
12
21
  }
13
22
  export declare class EngravingFormComponent extends BaseComponent<IEngravingFormComponentParams, null> {
14
23
  get hostClasses(): string[];
@@ -1,5 +1,6 @@
1
1
  import type { ComponentType } from '@/enums';
2
- export declare class LceElementComponent extends HTMLElement {
2
+ import { SafeHTMLElement } from '@/utils/dom-compat';
3
+ export declare class LceElementComponent extends SafeHTMLElement {
3
4
  private _initialized;
4
5
  protected _container: ShadowRoot | null;
5
6
  private _wrappedComponentRerender;
@@ -0,0 +1,2 @@
1
+ export declare const SafeHTMLElement: typeof HTMLElement;
2
+ export declare function isHTMLElement(value: unknown): value is HTMLElement;