@liquidcommerce/elements-sdk 2.6.7 → 2.7.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/README.md +302 -71
- package/dist/index.checkout.esm.js +16034 -0
- package/dist/index.esm.js +14201 -12166
- package/dist/types/auto-initialize/checkout.d.ts +2 -0
- package/dist/types/auto-initialize/shared-utils.d.ts +22 -0
- package/dist/types/{elements-base-client.d.ts → clients/base.d.ts} +11 -1
- package/dist/types/clients/checkout.d.ts +13 -0
- package/dist/types/constants/core.constant.d.ts +9 -3
- package/dist/types/core/api/api-client.service.d.ts +0 -2
- package/dist/types/core/client/actions/base-action.service.d.ts +15 -0
- package/dist/types/core/client/actions/client-address-action.service.d.ts +18 -0
- package/dist/types/core/client/actions/client-cart-action.service.d.ts +37 -0
- package/dist/types/core/client/actions/client-checkout-action.service.d.ts +50 -0
- package/dist/types/core/client/actions/client-product-action.service.d.ts +12 -0
- package/dist/types/core/client/client-action.service.d.ts +6 -73
- package/dist/types/core/client/client-config.service.d.ts +3 -4
- package/dist/types/core/store/interfaces/core.interface.d.ts +14 -1
- package/dist/types/core/store/interfaces/metadata.interface.d.ts +11 -0
- package/dist/types/core/store/interfaces/product-list.interface.d.ts +45 -0
- package/dist/types/core/store/interfaces/product.interface.d.ts +1 -0
- package/dist/types/core/store/store.constant.d.ts +4 -0
- package/dist/types/enums/core.enum.d.ts +3 -1
- package/dist/types/enums/index.d.ts +0 -1
- package/dist/types/index.checkout.d.ts +7 -0
- package/dist/types/index.checkout.umd.d.ts +4 -0
- package/dist/types/index.d.ts +2 -2
- package/dist/types/interfaces/api/checkout.interface.d.ts +2 -1
- package/dist/types/interfaces/api/product-list.interface.d.ts +13 -5
- package/dist/types/interfaces/configs/checkout.interface.d.ts +1 -0
- package/dist/types/interfaces/configs/global.interface.d.ts +4 -2
- package/dist/types/interfaces/configs/index.d.ts +1 -0
- package/dist/types/interfaces/configs/product-list.interface.d.ts +28 -0
- package/dist/types/interfaces/core.interface.d.ts +28 -6
- package/dist/types/modules/address/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/cart/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/checkout/checkout.commands.d.ts +6 -2
- package/dist/types/modules/checkout/checkout.component.d.ts +2 -0
- package/dist/types/modules/checkout/components/checkout-completed.component.d.ts +2 -0
- package/dist/types/modules/checkout/components/checkout-header.component.d.ts +1 -0
- package/dist/types/modules/checkout/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/product/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/product-list/components/card-components/index.d.ts +4 -0
- package/dist/types/modules/product-list/components/card-components/product-button.d.ts +11 -0
- package/dist/types/modules/product-list/components/card-components/product-fulfillments.d.ts +10 -0
- package/dist/types/modules/product-list/components/card-components/product-quantity-selector.d.ts +10 -0
- package/dist/types/modules/product-list/components/card-components/product-sizes-list.d.ts +9 -0
- package/dist/types/modules/product-list/components/filter-components/index.d.ts +7 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-apply-filter-button.d.ts +1 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-chip.d.ts +5 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-filters-chips.d.ts +13 -0
- package/dist/types/modules/product-list/components/filter-components/product-list-fulfillment-filter.d.ts +14 -0
- package/dist/types/modules/product-list/components/{product-list-filters-subcomponents/product-list-price-filter.components.d.ts → filter-components/product-list-price-filter.d.ts} +1 -1
- package/dist/types/modules/product-list/components/filter-components/product-list-toggle-filters.d.ts +13 -0
- package/dist/types/modules/product-list/components/index.d.ts +6 -3
- package/dist/types/modules/product-list/components/product-list-card-loading.component.d.ts +2 -1
- package/dist/types/modules/product-list/components/product-list-engraving.component.d.ts +6 -0
- package/dist/types/modules/product-list/components/product-list-filters.component.d.ts +58 -37
- package/dist/types/modules/product-list/components/product-list-retailers.component.d.ts +18 -0
- package/dist/types/modules/product-list/components/product-list-search.component.d.ts +22 -0
- package/dist/types/modules/product-list/product-list-card.component.d.ts +35 -0
- package/dist/types/modules/product-list/product-list.commands.d.ts +53 -3
- package/dist/types/modules/product-list/product-list.component.d.ts +16 -43
- package/dist/types/{enums/cloud.enum.d.ts → modules/product-list/product-list.constants.d.ts} +20 -1
- package/dist/types/modules/product-list/product-list.interface.d.ts +32 -24
- package/dist/types/modules/product-list/styles/product-list-card.style.d.ts +1 -0
- package/dist/types/modules/product-list/styles/product-list-filters.style.d.ts +1 -0
- package/dist/types/modules/product-list/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/theme-provider/constants/component-groupings.d.ts +1 -0
- package/dist/types/modules/theme-provider/constants/css-variable-mappings.d.ts +1 -1
- package/dist/types/modules/theme-provider/services/style-registry.service.d.ts +16 -0
- package/dist/types/modules/theme-provider/services/stylesheet-generator.service.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/register-styles.d.ts +1 -0
- package/dist/types/modules/theme-provider/theme-provider.service.d.ts +2 -1
- package/dist/types/modules/ui-components/engraving/engraving-form.component.d.ts +4 -1
- package/dist/types/modules/ui-components/input/index.d.ts +0 -1
- package/dist/types/modules/ui-components/input/input.component.d.ts +8 -1
- package/dist/types/modules/ui-components/modal/modal.component.d.ts +23 -0
- package/dist/types/modules/ui-components/styles/modal.style.d.ts +1 -0
- package/dist/types/modules/ui-components/ui.commands.d.ts +3 -1
- package/dist/types/static/icon/check.icon.d.ts +2 -0
- package/dist/types/static/icon/index.d.ts +1 -0
- package/docs/ACTIONS.md +1 -0
- package/docs/CONFIGURATION.md +178 -34
- package/docs/DOCUMENTATION_INDEX.md +12 -4
- package/docs/THEMING.md +107 -18
- package/package.json +19 -12
- package/dist/types/modules/product-list/components/product-list-card.component.d.ts +0 -37
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/index.d.ts +0 -6
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-apply-filter-button.component.d.ts +0 -1
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-delivery-options-filter.components.d.ts +0 -16
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-search.component.d.ts +0 -16
- package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-toggle-filters.components.d.ts +0 -18
- package/dist/types/modules/theme-provider/styles/address/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/cart/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/checkout/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/product/index.d.ts +0 -3
- package/dist/types/modules/theme-provider/styles/product-list/index.d.ts +0 -1
- package/dist/types/modules/theme-provider/styles/ui/index.d.ts +0 -3
- package/dist/types/modules/ui-components/input/birthdate-input.component.d.ts +0 -53
- package/umd/elements.js +0 -1
- /package/dist/types/{auto-initialize.d.ts → auto-initialize/main.d.ts} +0 -0
- /package/dist/types/{elements-builder-client.d.ts → clients/builder.d.ts} +0 -0
- /package/dist/types/{elements-client-helper.d.ts → clients/helpers.d.ts} +0 -0
- /package/dist/types/{elements-client.d.ts → clients/main.d.ts} +0 -0
- /package/dist/types/modules/{theme-provider/styles/address → address/styles}/address.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/cart → cart/styles}/cart.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/checkout → checkout/styles}/checkout.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product → product/styles}/image-carousel.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product → product/styles}/product.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/product → product/styles}/retailers.style.d.ts +0 -0
- /package/dist/types/modules/product-list/components/{product-list-filters-subcomponents/product-list-checkbox-filter.components.d.ts → filter-components/product-list-checkbox-filter.d.ts} +0 -0
- /package/dist/types/modules/{theme-provider/styles/product-list → product-list/styles}/product-list.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/drawer.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/loading.style.d.ts +0 -0
- /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/promo-code-ticker.style.d.ts +0 -0
|
@@ -39,7 +39,12 @@ Complete guide to the LiquidCommerce Elements SDK documentation.
|
|
|
39
39
|
**Contents:**
|
|
40
40
|
- Basic configuration
|
|
41
41
|
- All configuration options with types
|
|
42
|
+
- Hosted checkout configuration
|
|
42
43
|
- Auto-initialization attributes
|
|
44
|
+
- Product list configuration (filters, search, grid)
|
|
45
|
+
- Mobile cart button attributes
|
|
46
|
+
- Custom cart elements (toggle, items count)
|
|
47
|
+
- Checkout-only build configuration
|
|
43
48
|
- URL parameter configuration
|
|
44
49
|
- TypeScript types
|
|
45
50
|
- Configuration examples
|
|
@@ -59,6 +64,7 @@ Complete guide to the LiquidCommerce Elements SDK documentation.
|
|
|
59
64
|
- Cart component theme
|
|
60
65
|
- Checkout component theme
|
|
61
66
|
- Address component theme
|
|
67
|
+
- Product list component theme (card styles, display modes)
|
|
62
68
|
- Dynamic theme updates (builder mode)
|
|
63
69
|
- Theme presets (example configurations)
|
|
64
70
|
- Best practices
|
|
@@ -72,7 +78,7 @@ Complete guide to the LiquidCommerce Elements SDK documentation.
|
|
|
72
78
|
- Product actions
|
|
73
79
|
- Address actions (Google Places & manual)
|
|
74
80
|
- Cart actions (including programmatic addProduct)
|
|
75
|
-
- Checkout actions (including programmatic addProduct)
|
|
81
|
+
- Checkout actions (including programmatic addProduct, exitCheckout)
|
|
76
82
|
- Action feedback events
|
|
77
83
|
- Event handling best practices
|
|
78
84
|
- Real-world business scenarios
|
|
@@ -238,6 +244,8 @@ docs/
|
|
|
238
244
|
### Features
|
|
239
245
|
- [Product Engraving](../README.md#product-engraving)
|
|
240
246
|
- [Product List](../README.md#product-list)
|
|
247
|
+
- [Product List Search & Filters](../README.md#product-list-search)
|
|
248
|
+
- [Hosted Checkout](../README.md#hosted-checkout-external-checkout-page)
|
|
241
249
|
- [Gift Options](../README.md#gift-options)
|
|
242
250
|
- [Promo Codes](../README.md#promo-codes)
|
|
243
251
|
- [Gift Cards](../README.md#gift-cards)
|
|
@@ -301,9 +309,9 @@ Want to contribute an example?
|
|
|
301
309
|
|
|
302
310
|
---
|
|
303
311
|
|
|
304
|
-
**Last updated:**
|
|
305
|
-
**SDK Version:** 2.x+
|
|
306
|
-
**Documentation Version:** 2.
|
|
312
|
+
**Last updated:** January 2026
|
|
313
|
+
**SDK Version:** 2.6.x+
|
|
314
|
+
**Documentation Version:** 2.1
|
|
307
315
|
|
|
308
316
|
|
|
309
317
|
---
|
package/docs/THEMING.md
CHANGED
|
@@ -180,6 +180,7 @@ interface IProductComponent {
|
|
|
180
180
|
};
|
|
181
181
|
layout: {
|
|
182
182
|
showImages: boolean;
|
|
183
|
+
showOnlyMainImage: boolean;
|
|
183
184
|
showTitle: boolean;
|
|
184
185
|
showDescription: boolean;
|
|
185
186
|
showQuantityCounter: boolean;
|
|
@@ -192,6 +193,8 @@ interface IProductComponent {
|
|
|
192
193
|
addToCartButtonShowTotalPrice: boolean;
|
|
193
194
|
buyNowButtonText: string;
|
|
194
195
|
preSaleButtonText: string;
|
|
196
|
+
prioritizeEngraving: boolean;
|
|
197
|
+
noAvailabilityText: string;
|
|
195
198
|
};
|
|
196
199
|
}
|
|
197
200
|
```
|
|
@@ -205,6 +208,7 @@ customTheme: {
|
|
|
205
208
|
},
|
|
206
209
|
layout: {
|
|
207
210
|
showImages: true,
|
|
211
|
+
showOnlyMainImage: false,
|
|
208
212
|
showTitle: true,
|
|
209
213
|
showDescription: true,
|
|
210
214
|
showQuantityCounter: true,
|
|
@@ -216,7 +220,9 @@ customTheme: {
|
|
|
216
220
|
addToCartButtonText: 'Add to Cart',
|
|
217
221
|
addToCartButtonShowTotalPrice: true,
|
|
218
222
|
buyNowButtonText: 'Buy Now',
|
|
219
|
-
preSaleButtonText: 'Pre-Order'
|
|
223
|
+
preSaleButtonText: 'Pre-Order',
|
|
224
|
+
prioritizeEngraving: false,
|
|
225
|
+
noAvailabilityText: 'Not available in your area'
|
|
220
226
|
}
|
|
221
227
|
}
|
|
222
228
|
}
|
|
@@ -261,10 +267,6 @@ customTheme: {
|
|
|
261
267
|
interface ICheckoutComponent {
|
|
262
268
|
theme: {
|
|
263
269
|
backgroundColor: string;
|
|
264
|
-
checkoutCompleted: {
|
|
265
|
-
customLogo: string;
|
|
266
|
-
customText: string | null;
|
|
267
|
-
};
|
|
268
270
|
};
|
|
269
271
|
layout: {
|
|
270
272
|
emailOptIn: {
|
|
@@ -282,10 +284,15 @@ interface ICheckoutComponent {
|
|
|
282
284
|
show: boolean;
|
|
283
285
|
text: string;
|
|
284
286
|
};
|
|
287
|
+
continueShoppingUrl: string;
|
|
285
288
|
exitUrl: string;
|
|
286
289
|
thankYouButtonText: string;
|
|
287
290
|
drawerHeaderText: string;
|
|
288
291
|
placeOrderButtonText: string;
|
|
292
|
+
checkoutCompleted: {
|
|
293
|
+
customLogo: string;
|
|
294
|
+
customText: string | null;
|
|
295
|
+
};
|
|
289
296
|
};
|
|
290
297
|
}
|
|
291
298
|
```
|
|
@@ -295,11 +302,7 @@ interface ICheckoutComponent {
|
|
|
295
302
|
customTheme: {
|
|
296
303
|
checkout: {
|
|
297
304
|
theme: {
|
|
298
|
-
backgroundColor: '#ffffff'
|
|
299
|
-
checkoutCompleted: {
|
|
300
|
-
customLogo: 'https://yourdomain.com/logo.png',
|
|
301
|
-
customText: 'Thank you for your order!'
|
|
302
|
-
}
|
|
305
|
+
backgroundColor: '#ffffff'
|
|
303
306
|
},
|
|
304
307
|
layout: {
|
|
305
308
|
emailOptIn: {
|
|
@@ -317,15 +320,26 @@ customTheme: {
|
|
|
317
320
|
show: true,
|
|
318
321
|
text: 'By placing this order, you agree to our terms and conditions.'
|
|
319
322
|
},
|
|
323
|
+
continueShoppingUrl: '/',
|
|
320
324
|
exitUrl: '/',
|
|
321
325
|
thankYouButtonText: 'Continue Shopping',
|
|
322
326
|
drawerHeaderText: 'Checkout',
|
|
323
|
-
placeOrderButtonText: 'Place Order'
|
|
327
|
+
placeOrderButtonText: 'Place Order',
|
|
328
|
+
checkoutCompleted: {
|
|
329
|
+
customLogo: 'https://yourdomain.com/logo.png',
|
|
330
|
+
customText: 'Thank you for your order!'
|
|
331
|
+
}
|
|
324
332
|
}
|
|
325
333
|
}
|
|
326
334
|
}
|
|
327
335
|
```
|
|
328
336
|
|
|
337
|
+
**Layout Properties:**
|
|
338
|
+
|
|
339
|
+
- **`continueShoppingUrl`** (string): URL to redirect to when customer clicks "Continue Shopping" after order completion
|
|
340
|
+
- **`exitUrl`** (string): URL for the exit/close action in checkout
|
|
341
|
+
- **`legalMessage.text`** (string): Supports rich text / HTML content
|
|
342
|
+
|
|
329
343
|
## Address Component
|
|
330
344
|
|
|
331
345
|
```typescript
|
|
@@ -347,6 +361,77 @@ customTheme: {
|
|
|
347
361
|
}
|
|
348
362
|
```
|
|
349
363
|
|
|
364
|
+
## Product List Component
|
|
365
|
+
|
|
366
|
+
```typescript
|
|
367
|
+
interface IProductListComponent {
|
|
368
|
+
theme: {
|
|
369
|
+
backgroundColor: string;
|
|
370
|
+
};
|
|
371
|
+
layout: {
|
|
372
|
+
productCard: {
|
|
373
|
+
style: 'card' | 'ghost';
|
|
374
|
+
cornerRadius: 'rounded' | 'sharp';
|
|
375
|
+
showPrice: boolean;
|
|
376
|
+
showSizeSelector: boolean;
|
|
377
|
+
showFulfillment: boolean;
|
|
378
|
+
showRetailerName: boolean;
|
|
379
|
+
showQuantityCounter: boolean;
|
|
380
|
+
enableShippingFulfillment: boolean;
|
|
381
|
+
enableOnDemandFulfillment: boolean;
|
|
382
|
+
showCollections: boolean;
|
|
383
|
+
enablePersonalization: boolean;
|
|
384
|
+
};
|
|
385
|
+
displayMode: 'modal' | 'drawer';
|
|
386
|
+
};
|
|
387
|
+
}
|
|
388
|
+
```
|
|
389
|
+
|
|
390
|
+
**Example:**
|
|
391
|
+
```javascript
|
|
392
|
+
customTheme: {
|
|
393
|
+
productList: {
|
|
394
|
+
theme: {
|
|
395
|
+
backgroundColor: '#f8f9fa'
|
|
396
|
+
},
|
|
397
|
+
layout: {
|
|
398
|
+
productCard: {
|
|
399
|
+
style: 'card',
|
|
400
|
+
cornerRadius: 'rounded',
|
|
401
|
+
showPrice: true,
|
|
402
|
+
showSizeSelector: true,
|
|
403
|
+
showFulfillment: true,
|
|
404
|
+
showRetailerName: false,
|
|
405
|
+
showQuantityCounter: true,
|
|
406
|
+
enableShippingFulfillment: true,
|
|
407
|
+
enableOnDemandFulfillment: true,
|
|
408
|
+
showCollections: false,
|
|
409
|
+
enablePersonalization: true
|
|
410
|
+
},
|
|
411
|
+
displayMode: 'drawer'
|
|
412
|
+
}
|
|
413
|
+
}
|
|
414
|
+
}
|
|
415
|
+
```
|
|
416
|
+
|
|
417
|
+
**Card Style Options:**
|
|
418
|
+
|
|
419
|
+
- **`style`**: `'card'` shows a bordered card with background, `'ghost'` shows a minimal borderless card
|
|
420
|
+
- **`cornerRadius`**: `'rounded'` uses rounded corners, `'sharp'` uses square corners
|
|
421
|
+
- **`displayMode`**: `'modal'` opens product details in a modal, `'drawer'` opens in a side drawer
|
|
422
|
+
|
|
423
|
+
**Card Feature Flags:**
|
|
424
|
+
|
|
425
|
+
- **`showPrice`**: Display price on the product card
|
|
426
|
+
- **`showSizeSelector`**: Show size/variant selector on the card
|
|
427
|
+
- **`showFulfillment`**: Show fulfillment type indicator
|
|
428
|
+
- **`showRetailerName`**: Show the retailer name
|
|
429
|
+
- **`showQuantityCounter`**: Show quantity increment/decrement controls
|
|
430
|
+
- **`enableShippingFulfillment`**: Allow shipping fulfillment option
|
|
431
|
+
- **`enableOnDemandFulfillment`**: Allow on-demand fulfillment option
|
|
432
|
+
- **`showCollections`**: Show product collection/tag labels
|
|
433
|
+
- **`enablePersonalization`**: Show personalization/engraving option on cards
|
|
434
|
+
|
|
350
435
|
## Complete Configuration Example
|
|
351
436
|
|
|
352
437
|
```javascript
|
|
@@ -390,6 +475,7 @@ const client = await Elements('YOUR_API_KEY', {
|
|
|
390
475
|
},
|
|
391
476
|
layout: {
|
|
392
477
|
showImages: true,
|
|
478
|
+
showOnlyMainImage: false,
|
|
393
479
|
showTitle: true,
|
|
394
480
|
showDescription: true,
|
|
395
481
|
showQuantityCounter: true,
|
|
@@ -401,7 +487,9 @@ const client = await Elements('YOUR_API_KEY', {
|
|
|
401
487
|
addToCartButtonText: 'Add to Cart',
|
|
402
488
|
addToCartButtonShowTotalPrice: true,
|
|
403
489
|
buyNowButtonText: 'Buy Now',
|
|
404
|
-
preSaleButtonText: 'Pre-Order'
|
|
490
|
+
preSaleButtonText: 'Pre-Order',
|
|
491
|
+
prioritizeEngraving: false,
|
|
492
|
+
noAvailabilityText: 'Not available in your area'
|
|
405
493
|
}
|
|
406
494
|
},
|
|
407
495
|
cart: {
|
|
@@ -417,11 +505,7 @@ const client = await Elements('YOUR_API_KEY', {
|
|
|
417
505
|
},
|
|
418
506
|
checkout: {
|
|
419
507
|
theme: {
|
|
420
|
-
backgroundColor: '#ffffff'
|
|
421
|
-
checkoutCompleted: {
|
|
422
|
-
customLogo: 'https://yourdomain.com/logo.png',
|
|
423
|
-
customText: null
|
|
424
|
-
}
|
|
508
|
+
backgroundColor: '#ffffff'
|
|
425
509
|
},
|
|
426
510
|
layout: {
|
|
427
511
|
emailOptIn: {
|
|
@@ -439,10 +523,15 @@ const client = await Elements('YOUR_API_KEY', {
|
|
|
439
523
|
show: false,
|
|
440
524
|
text: ''
|
|
441
525
|
},
|
|
526
|
+
continueShoppingUrl: '/',
|
|
442
527
|
exitUrl: '/',
|
|
443
528
|
thankYouButtonText: 'Continue Shopping',
|
|
444
529
|
drawerHeaderText: 'Checkout',
|
|
445
|
-
placeOrderButtonText: 'Place Order'
|
|
530
|
+
placeOrderButtonText: 'Place Order',
|
|
531
|
+
checkoutCompleted: {
|
|
532
|
+
customLogo: 'https://yourdomain.com/logo.png',
|
|
533
|
+
customText: null
|
|
534
|
+
}
|
|
446
535
|
}
|
|
447
536
|
},
|
|
448
537
|
address: {
|
package/package.json
CHANGED
|
@@ -3,7 +3,7 @@
|
|
|
3
3
|
"description": "LiquidCommerce Elements SDK",
|
|
4
4
|
"license": "UNLICENSED",
|
|
5
5
|
"author": "LiquidCommerce Team",
|
|
6
|
-
"version": "2.
|
|
6
|
+
"version": "2.7.0",
|
|
7
7
|
"homepage": "https://docs.liquidcommerce.co/elements-sdk",
|
|
8
8
|
"repository": {
|
|
9
9
|
"type": "git",
|
|
@@ -13,21 +13,23 @@
|
|
|
13
13
|
"url": "https://github.com/liquidcommerce/elements-sdk/issues"
|
|
14
14
|
},
|
|
15
15
|
"module": "./dist/index.esm.js",
|
|
16
|
-
"browser": "./umd/elements.js",
|
|
17
16
|
"types": "./dist/types/index.d.ts",
|
|
18
17
|
"packageManager": "pnpm@10.0.0",
|
|
19
18
|
"exports": {
|
|
20
19
|
".": {
|
|
21
20
|
"types": "./dist/types/index.d.ts",
|
|
22
21
|
"import": "./dist/index.esm.js",
|
|
23
|
-
"browser": "./umd/elements.js",
|
|
24
22
|
"default": "./dist/index.esm.js"
|
|
25
23
|
},
|
|
24
|
+
"./checkout": {
|
|
25
|
+
"types": "./dist/types/index.checkout.d.ts",
|
|
26
|
+
"import": "./dist/index.checkout.esm.js",
|
|
27
|
+
"default": "./dist/index.checkout.esm.js"
|
|
28
|
+
},
|
|
26
29
|
"./package.json": "./package.json"
|
|
27
30
|
},
|
|
28
31
|
"files": [
|
|
29
32
|
"dist",
|
|
30
|
-
"umd",
|
|
31
33
|
"docs",
|
|
32
34
|
"README.md",
|
|
33
35
|
"LICENSE"
|
|
@@ -39,21 +41,26 @@
|
|
|
39
41
|
"type": "module",
|
|
40
42
|
"sideEffects": [
|
|
41
43
|
"dist/index.esm.js",
|
|
44
|
+
"dist/index.checkout.esm.js",
|
|
42
45
|
"umd/elements.js",
|
|
46
|
+
"umd/elements-checkout.js",
|
|
43
47
|
"src/index.ts",
|
|
44
|
-
"src/index.umd.ts"
|
|
48
|
+
"src/index.umd.ts",
|
|
49
|
+
"src/index.checkout.ts",
|
|
50
|
+
"src/index.checkout.umd.ts"
|
|
45
51
|
],
|
|
46
52
|
"scripts": {
|
|
47
53
|
"build": "rollup -c",
|
|
54
|
+
"build:checkout": "rollup -c rollup.config.checkout.mjs",
|
|
48
55
|
"build:dev": "rollup -c --environment NODE_ENV:development",
|
|
49
56
|
"dev": "rollup -c -w",
|
|
50
57
|
"type-check": "tsc --noEmit",
|
|
51
58
|
"lint": "pnpm biome lint --write",
|
|
52
59
|
"format": "biome format --write",
|
|
53
60
|
"check": "pnpm biome check --write .",
|
|
54
|
-
"fl": "pnpm check && pnpm build:
|
|
61
|
+
"fl": "pnpm check && pnpm build && pnpm build:checkout",
|
|
55
62
|
"changelog": "conventional-changelog -p angular -i CHANGELOG.md -s",
|
|
56
|
-
"clean": "rm -rf dist umd node_modules && pnpm install && pnpm build",
|
|
63
|
+
"clean": "rm -rf dist umd node_modules && pnpm install && pnpm build && pnpm build:checkout",
|
|
57
64
|
"prepublishOnly": "pnpm run build",
|
|
58
65
|
"deprecate:old": "npm deprecate @liquidcommerceteam/elements-sdk@\"*\" \"Package moved to @liquidcommerce/elements-sdk\"",
|
|
59
66
|
"prepare": "husky"
|
|
@@ -70,9 +77,9 @@
|
|
|
70
77
|
"embeddable commerce"
|
|
71
78
|
],
|
|
72
79
|
"devDependencies": {
|
|
73
|
-
"@biomejs/biome": "2.3.
|
|
74
|
-
"@commitlint/cli": "^20.
|
|
75
|
-
"@commitlint/config-conventional": "^20.
|
|
80
|
+
"@biomejs/biome": "2.3.12",
|
|
81
|
+
"@commitlint/cli": "^20.3.1",
|
|
82
|
+
"@commitlint/config-conventional": "^20.3.1",
|
|
76
83
|
"@rollup/plugin-alias": "^6.0.0",
|
|
77
84
|
"@rollup/plugin-commonjs": "^29.0.0",
|
|
78
85
|
"@rollup/plugin-json": "^6.1.0",
|
|
@@ -86,11 +93,11 @@
|
|
|
86
93
|
"@semantic-release/npm": "^13.1.3",
|
|
87
94
|
"@semantic-release/release-notes-generator": "^14.1.0",
|
|
88
95
|
"@types/core-js": "^2.5.8",
|
|
89
|
-
"@types/node": "^25.0.
|
|
96
|
+
"@types/node": "^25.0.10",
|
|
90
97
|
"conventional-changelog-cli": "^5.0.0",
|
|
91
98
|
"husky": "^9.1.7",
|
|
92
99
|
"process": "^0.11.10",
|
|
93
|
-
"rollup": "^4.
|
|
100
|
+
"rollup": "^4.56.0",
|
|
94
101
|
"rollup-obfuscator": "^4.1.1",
|
|
95
102
|
"rollup-plugin-typescript2": "^0.36.0",
|
|
96
103
|
"semantic-release": "^25.0.2",
|
|
@@ -1,37 +0,0 @@
|
|
|
1
|
-
import { BaseComponent } from '@/core/base-component.service';
|
|
2
|
-
import type { IFulfillment, IProduct } from '@/interfaces/api/product.interface';
|
|
3
|
-
import type { ProductListCardVariantType } from '@/interfaces/core.interface';
|
|
4
|
-
export interface IProductListCardParams {
|
|
5
|
-
variant: ProductListCardVariantType;
|
|
6
|
-
fillCard: boolean;
|
|
7
|
-
product: IProduct;
|
|
8
|
-
shippingFulfillment: IFulfillment | null;
|
|
9
|
-
onDemandFulfillment: IFulfillment | null;
|
|
10
|
-
productUrl?: string;
|
|
11
|
-
}
|
|
12
|
-
export interface IProductAvailabilityData {
|
|
13
|
-
hasAvailability: boolean;
|
|
14
|
-
upc: string;
|
|
15
|
-
fulfillmentId: string;
|
|
16
|
-
partNumber: string;
|
|
17
|
-
quantity: number;
|
|
18
|
-
state: string;
|
|
19
|
-
isPresale: boolean;
|
|
20
|
-
isPresaleActive: boolean;
|
|
21
|
-
}
|
|
22
|
-
export interface IProductVariantParams {
|
|
23
|
-
image: string;
|
|
24
|
-
name: string;
|
|
25
|
-
size: string | null;
|
|
26
|
-
price: number;
|
|
27
|
-
availability: IProductAvailabilityData;
|
|
28
|
-
}
|
|
29
|
-
export declare class ProductListCardComponent extends BaseComponent<IProductListCardParams> {
|
|
30
|
-
get hostClasses(): string[];
|
|
31
|
-
private getAvailabilityData;
|
|
32
|
-
private isPresaleActive;
|
|
33
|
-
private handleAddToCart;
|
|
34
|
-
protected template(): HTMLElement[];
|
|
35
|
-
private generateProductUrl;
|
|
36
|
-
private createVariantStandard;
|
|
37
|
-
}
|
package/dist/types/modules/product-list/components/product-list-filters-subcomponents/index.d.ts
DELETED
|
@@ -1,6 +0,0 @@
|
|
|
1
|
-
export * from './product-list-apply-filter-button.component';
|
|
2
|
-
export * from './product-list-checkbox-filter.components';
|
|
3
|
-
export * from './product-list-delivery-options-filter.components';
|
|
4
|
-
export * from './product-list-price-filter.components';
|
|
5
|
-
export * from './product-list-search.component';
|
|
6
|
-
export * from './product-list-toggle-filters.components';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export declare function createApplyFiltersButton(onCloseDrawer: VoidFunction): HTMLElement;
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
export interface ICreateDeliveryOptionsFilterParams {
|
|
2
|
-
currentFilters?: {
|
|
3
|
-
deliveryOptions?: string;
|
|
4
|
-
personalized?: boolean;
|
|
5
|
-
preOrder?: boolean;
|
|
6
|
-
};
|
|
7
|
-
deliveryCollapsed: boolean;
|
|
8
|
-
isSameDayDeliveryDisabled: boolean;
|
|
9
|
-
onDeliveryOptionsChange?: (value: 'all' | 'shipping' | 'onDemand') => void;
|
|
10
|
-
onToggleCollapse: () => void;
|
|
11
|
-
}
|
|
12
|
-
export declare function createDeliveryOptionsFilter(params: ICreateDeliveryOptionsFilterParams): {
|
|
13
|
-
elements: HTMLElement[];
|
|
14
|
-
chevronContainer: HTMLElement;
|
|
15
|
-
deliveryOptionsList: HTMLElement;
|
|
16
|
-
};
|
|
@@ -1,16 +0,0 @@
|
|
|
1
|
-
import { BaseComponent } from '@/core/base-component.service';
|
|
2
|
-
export interface IProductListSearchParams {
|
|
3
|
-
searchTerm?: string;
|
|
4
|
-
handleInputChange?: (search: string) => void;
|
|
5
|
-
clearSearch?: VoidFunction;
|
|
6
|
-
}
|
|
7
|
-
export declare class ProductListSearchComponent extends BaseComponent<IProductListSearchParams> {
|
|
8
|
-
private searchInput?;
|
|
9
|
-
private clearButton?;
|
|
10
|
-
private readonly ALLOWED_CHARACTERS;
|
|
11
|
-
private readonly MAX_LENGTH;
|
|
12
|
-
get hostClasses(): string[];
|
|
13
|
-
protected template(): HTMLElement[];
|
|
14
|
-
private sanitizeInput;
|
|
15
|
-
private updateClearButtonVisibility;
|
|
16
|
-
}
|
|
@@ -1,18 +0,0 @@
|
|
|
1
|
-
export interface ICreatePersonalizedFilterParams {
|
|
2
|
-
currentFilters?: {
|
|
3
|
-
personalized?: boolean;
|
|
4
|
-
deliveryOptions?: string;
|
|
5
|
-
};
|
|
6
|
-
isPersonalizationDisabled: boolean;
|
|
7
|
-
onPersonalizedChange?: (enabled: boolean) => void;
|
|
8
|
-
}
|
|
9
|
-
export interface ICreatePreOrderFilterParams {
|
|
10
|
-
currentFilters?: {
|
|
11
|
-
preOrder?: boolean;
|
|
12
|
-
deliveryOptions?: string;
|
|
13
|
-
};
|
|
14
|
-
isPreOrderDisabled: boolean;
|
|
15
|
-
onPreOrderChange?: (enabled: boolean) => void;
|
|
16
|
-
}
|
|
17
|
-
export declare function createPersonalizedFilter(params: ICreatePersonalizedFilterParams): HTMLElement[];
|
|
18
|
-
export declare function createPreOrderFilter(params: ICreatePreOrderFilterParams): HTMLElement[];
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './address.style';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './cart.style';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './checkout.style';
|
|
@@ -1 +0,0 @@
|
|
|
1
|
-
export * from './product-list.style';
|
|
@@ -1,53 +0,0 @@
|
|
|
1
|
-
import { BaseComponent } from '@/core/base-component.service';
|
|
2
|
-
export interface IBirthdateValidation {
|
|
3
|
-
required?: boolean;
|
|
4
|
-
minYear?: number;
|
|
5
|
-
maxYear?: number;
|
|
6
|
-
minAge?: number;
|
|
7
|
-
maxAge?: number;
|
|
8
|
-
customValidator?: (date: string) => string | null;
|
|
9
|
-
}
|
|
10
|
-
export interface IBirthdateInputComponentParams {
|
|
11
|
-
value?: string;
|
|
12
|
-
className?: string;
|
|
13
|
-
validation?: IBirthdateValidation;
|
|
14
|
-
onValidation?: (isValid: boolean, errors: string[]) => void;
|
|
15
|
-
onChange?: (value: string) => void;
|
|
16
|
-
label?: string;
|
|
17
|
-
name: string;
|
|
18
|
-
disabled?: boolean;
|
|
19
|
-
}
|
|
20
|
-
export declare class BirthdateInputComponent extends BaseComponent<IBirthdateInputComponentParams, null> {
|
|
21
|
-
get hostClasses(): string[];
|
|
22
|
-
private monthInput;
|
|
23
|
-
private dayInput;
|
|
24
|
-
private yearInput;
|
|
25
|
-
private errorContainer;
|
|
26
|
-
private validationTimeout;
|
|
27
|
-
afterRender(): void;
|
|
28
|
-
private populateInitialValue;
|
|
29
|
-
private setupEventListeners;
|
|
30
|
-
private formatMonth;
|
|
31
|
-
private formatDay;
|
|
32
|
-
private formatYear;
|
|
33
|
-
private padMonthOnBlur;
|
|
34
|
-
private padDayOnBlur;
|
|
35
|
-
private handleNavigation;
|
|
36
|
-
private handleChange;
|
|
37
|
-
private isFieldsComplete;
|
|
38
|
-
private scheduleValidation;
|
|
39
|
-
private getFormattedValue;
|
|
40
|
-
private validateDate;
|
|
41
|
-
private calculateAge;
|
|
42
|
-
private validateInput;
|
|
43
|
-
private showErrors;
|
|
44
|
-
private clearErrors;
|
|
45
|
-
getValue(): string;
|
|
46
|
-
setValue(value: string): void;
|
|
47
|
-
validate(): boolean;
|
|
48
|
-
focus(): void;
|
|
49
|
-
disable(): void;
|
|
50
|
-
enable(): void;
|
|
51
|
-
clear(): void;
|
|
52
|
-
protected template(): HTMLElement[];
|
|
53
|
-
}
|