@liquidcommerce/elements-sdk 2.6.0-beta.37 → 2.6.0-beta.39

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.
@@ -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: {
@@ -588,5 +677,6 @@ customTheme: {
588
677
 
589
678
  ## Related Documentation
590
679
 
591
- - [Configuration Reference](./CONFIGURATION.md) - All SDK configuration options
592
- - [Troubleshooting Guide](./TROUBLESHOOTING.md) - Common theming issues
680
+ - [Troubleshooting Guide](./troubleshooting.md) - Common theming issues
681
+ - [Actions Reference](./actions.md) - Programmatic control
682
+ - [Events Reference](./events.md) - Event system
@@ -54,7 +54,7 @@ Cart items have location-specific pricing, availability, and fulfillment options
54
54
 
55
55
  #### 3. Ad Blockers
56
56
 
57
- **Solution:** Configure a [proxy](./PROXY.md) to route requests through your domain.
57
+ **Solution:** Configure a [proxy](./proxy.md) to route requests through your domain.
58
58
 
59
59
  ### Authentication Failures
60
60
 
@@ -785,9 +785,9 @@ If you're still experiencing issues:
785
785
 
786
786
  ## Related Documentation
787
787
 
788
- - [Configuration Reference](./CONFIGURATION.md) - Configuration options
789
- - [Actions Reference](./ACTIONS.md) - Programmatic control
790
- - [Events Reference](./EVENTS.md) - Event system
791
- - [Browser Support](./BROWSER_SUPPORT.md) - Browser compatibility
792
- - [Proxy Setup](./PROXY.md) - Proxy configuration
788
+ - [Actions Reference](./actions.md) - Programmatic control
789
+ - [Events Reference](./events.md) - Event system
790
+ - [Browser Support](./browser-support.md) - Browser compatibility
791
+ - [Proxy Setup](./proxy.md) - Proxy configuration
792
+ - [Theming](./theming.md) - Customization options
793
793
 
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.0-beta.37",
6
+ "version": "2.6.0-beta.39",
7
7
  "homepage": "https://docs.liquidcommerce.co/elements-sdk",
8
8
  "repository": {
9
9
  "type": "git",