@liquidcommerce/elements-sdk 2.6.0-beta.12 → 2.6.0-beta.121

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 (294) hide show
  1. package/README.md +100 -2518
  2. package/dist/index.checkout.esm.js +20445 -0
  3. package/dist/index.esm.js +28574 -20597
  4. package/dist/ssr-stub.checkout.esm.js +17 -0
  5. package/dist/ssr-stub.esm.js +277 -0
  6. package/dist/types/auto-initialize/checkout.d.ts +2 -0
  7. package/dist/types/auto-initialize/shared-utils.d.ts +51 -0
  8. package/dist/types/{elements-base-client.d.ts → clients/base.d.ts} +16 -2
  9. package/dist/types/clients/builder.d.ts +3 -0
  10. package/dist/types/clients/checkout.d.ts +6 -0
  11. package/dist/types/clients/helpers.d.ts +8 -0
  12. package/dist/types/clients/main.d.ts +3 -0
  13. package/dist/types/constants/core.constant.d.ts +13 -18
  14. package/dist/types/constants/index.d.ts +1 -0
  15. package/dist/types/constants/prop65.constant.d.ts +8 -0
  16. package/dist/types/core/a11y/announcer.service.d.ts +16 -0
  17. package/dist/types/core/a11y/focus-manager.service.d.ts +21 -0
  18. package/dist/types/core/a11y/focusable.d.ts +5 -0
  19. package/dist/types/core/a11y/glyph-button.d.ts +8 -0
  20. package/dist/types/core/a11y/index.d.ts +6 -0
  21. package/dist/types/core/a11y/required.d.ts +1 -0
  22. package/dist/types/core/a11y/single-select.d.ts +20 -0
  23. package/dist/types/core/api/api-client.service.d.ts +23 -18
  24. package/dist/types/core/api/api-result.d.ts +19 -0
  25. package/dist/types/core/api/auth-client.service.d.ts +37 -13
  26. package/dist/types/core/api/http-client.service.d.ts +0 -8
  27. package/dist/types/core/base-component.service.d.ts +4 -1
  28. package/dist/types/core/client/actions/base-action.service.d.ts +22 -0
  29. package/dist/types/core/client/actions/client-address-action.service.d.ts +18 -0
  30. package/dist/types/core/client/actions/client-cart-action.service.d.ts +38 -0
  31. package/dist/types/core/client/actions/client-checkout-action.service.d.ts +75 -0
  32. package/dist/types/core/client/actions/client-product-action.service.d.ts +15 -0
  33. package/dist/types/core/client/client-action.service.d.ts +6 -74
  34. package/dist/types/core/client/client-config.service.d.ts +10 -5
  35. package/dist/types/core/debug-panel/debug-panel.styles.d.ts +1 -1
  36. package/dist/types/core/google-tag-manager.service.d.ts +10 -1
  37. package/dist/types/core/logger/logger.service.d.ts +1 -1
  38. package/dist/types/core/pubsub/interfaces/address.interface.d.ts +3 -0
  39. package/dist/types/core/pubsub/interfaces/cart.interface.d.ts +6 -1
  40. package/dist/types/core/pubsub/interfaces/checkout.interface.d.ts +45 -49
  41. package/dist/types/core/pubsub/interfaces/core.interface.d.ts +15 -7
  42. package/dist/types/core/pubsub/pubsub.service.d.ts +1 -2
  43. package/dist/types/core/singleton-manager.service.d.ts +12 -8
  44. package/dist/types/core/store/interfaces/cart.interface.d.ts +2 -3
  45. package/dist/types/core/store/interfaces/checkout.interface.d.ts +36 -107
  46. package/dist/types/core/store/interfaces/core.interface.d.ts +12 -2
  47. package/dist/types/core/store/interfaces/metadata.interface.d.ts +11 -0
  48. package/dist/types/core/store/interfaces/product-list.interface.d.ts +30 -0
  49. package/dist/types/core/store/interfaces/product.interface.d.ts +1 -0
  50. package/dist/types/core/store/store.constant.d.ts +5 -0
  51. package/dist/types/core/store/store.service.d.ts +1 -0
  52. package/dist/types/core/telemetry/telemetry.service.d.ts +1 -0
  53. package/dist/types/enums/core.enum.d.ts +47 -2
  54. package/dist/types/enums/index.d.ts +0 -1
  55. package/dist/types/index.checkout.d.ts +9 -0
  56. package/dist/types/index.checkout.umd.d.ts +4 -0
  57. package/dist/types/index.d.ts +8 -3
  58. package/dist/types/interfaces/api/cart.interface.d.ts +12 -7
  59. package/dist/types/interfaces/api/checkout.interface.d.ts +271 -0
  60. package/dist/types/interfaces/api/index.d.ts +5 -0
  61. package/dist/types/interfaces/api/product-list.interface.d.ts +15 -6
  62. package/dist/types/interfaces/api/product.interface.d.ts +10 -4
  63. package/dist/types/interfaces/client.interface.d.ts +74 -0
  64. package/dist/types/interfaces/component.interface.d.ts +7 -0
  65. package/dist/types/interfaces/config.interface.d.ts +44 -0
  66. package/dist/types/interfaces/configs/address.interface.d.ts +1 -1
  67. package/dist/types/interfaces/configs/cart.interface.d.ts +2 -1
  68. package/dist/types/interfaces/configs/checkout.interface.d.ts +3 -1
  69. package/dist/types/interfaces/configs/global.interface.d.ts +9 -3
  70. package/dist/types/interfaces/configs/index.d.ts +1 -0
  71. package/dist/types/interfaces/configs/product-list.interface.d.ts +49 -0
  72. package/dist/types/interfaces/configs/product.interface.d.ts +7 -1
  73. package/dist/types/interfaces/injection.interface.d.ts +56 -0
  74. package/dist/types/modules/address/address-display.component.d.ts +3 -1
  75. package/dist/types/modules/address/address-input.component.d.ts +10 -1
  76. package/dist/types/modules/address/address.command.d.ts +2 -1
  77. package/dist/types/modules/address/styles/register-styles.d.ts +1 -0
  78. package/dist/types/modules/cart/cart.commands.d.ts +9 -5
  79. package/dist/types/modules/cart/components/cart-body.component.d.ts +1 -0
  80. package/dist/types/modules/cart/components/cart-fulfillment.component.d.ts +1 -1
  81. package/dist/types/modules/cart/components/cart-item-quantity-price.component.d.ts +5 -0
  82. package/dist/types/modules/cart/components/cart-item.component.d.ts +6 -0
  83. package/dist/types/modules/cart/styles/register-styles.d.ts +1 -0
  84. package/dist/types/modules/checkout/checkout.commands.d.ts +95 -12
  85. package/dist/types/modules/checkout/checkout.component.d.ts +7 -1
  86. package/dist/types/modules/checkout/components/checkout-billing.component.d.ts +5 -2
  87. package/dist/types/modules/checkout/components/checkout-buyer.component.d.ts +1 -0
  88. package/dist/types/modules/checkout/components/checkout-completed.component.d.ts +5 -0
  89. package/dist/types/modules/checkout/components/checkout-deliver-to.component.d.ts +1 -0
  90. package/dist/types/modules/checkout/components/checkout-delivery-method.component.d.ts +22 -0
  91. package/dist/types/modules/checkout/components/checkout-express-checkout.component.d.ts +61 -0
  92. package/dist/types/modules/checkout/components/checkout-express-completion.component.d.ts +21 -0
  93. package/dist/types/modules/checkout/components/checkout-header.component.d.ts +1 -0
  94. package/dist/types/modules/checkout/components/checkout-item-quantity.component.d.ts +4 -0
  95. package/dist/types/modules/checkout/components/checkout-items.component.d.ts +4 -3
  96. package/dist/types/modules/checkout/components/checkout-order-summary.component.d.ts +3 -0
  97. package/dist/types/modules/checkout/components/checkout-payment.component.d.ts +6 -1
  98. package/dist/types/modules/checkout/components/checkout-place-order-button.component.d.ts +1 -5
  99. package/dist/types/modules/checkout/components/checkout-presale-countdown.component.d.ts +15 -1
  100. package/dist/types/modules/checkout/components/checkout-presale-expired.component.d.ts +7 -1
  101. package/dist/types/modules/checkout/components/checkout-prop65-warning.component.d.ts +8 -0
  102. package/dist/types/modules/checkout/components/checkout-send-as-gift.component.d.ts +3 -0
  103. package/dist/types/modules/checkout/components/checkout-stripe-form.component.d.ts +7 -2
  104. package/dist/types/modules/checkout/components/checkout-tips.component.d.ts +4 -2
  105. package/dist/types/modules/checkout/components/index.d.ts +4 -0
  106. package/dist/types/modules/checkout/components/promo-pc-gc.component.d.ts +0 -2
  107. package/dist/types/modules/checkout/components/required-fields-legend.d.ts +1 -0
  108. package/dist/types/modules/checkout/constant.d.ts +15 -0
  109. package/dist/types/modules/checkout/customer-prefill.d.ts +5 -0
  110. package/dist/types/modules/checkout/express-wallet.d.ts +12 -0
  111. package/dist/types/modules/checkout/payment-session-error.d.ts +4 -0
  112. package/dist/types/modules/checkout/styles/delivery-method.style.d.ts +1 -0
  113. package/dist/types/modules/checkout/styles/express-checkout.style.d.ts +1 -0
  114. package/dist/types/modules/checkout/styles/express-completion.style.d.ts +1 -0
  115. package/dist/types/modules/checkout/styles/register-styles.d.ts +1 -0
  116. package/dist/types/modules/product/components/components.d.ts +26 -2
  117. package/dist/types/modules/product/components/index.d.ts +1 -0
  118. package/dist/types/modules/product/components/product-add-to-cart-section.component.d.ts +8 -1
  119. package/dist/types/modules/product/components/product-delivery-estimate.component.d.ts +11 -0
  120. package/dist/types/modules/product/components/product-description.component.d.ts +1 -0
  121. package/dist/types/modules/product/components/product-drawer.component.d.ts +6 -0
  122. package/dist/types/modules/product/components/product-image-carousel.component.d.ts +5 -0
  123. package/dist/types/modules/product/components/product-options.component.d.ts +2 -1
  124. package/dist/types/modules/product/components/product-prop65-warning.d.ts +1 -0
  125. package/dist/types/modules/product/components/product-retailers-carousel.component.d.ts +6 -0
  126. package/dist/types/modules/product/components/product-retailers-popup-list.component.d.ts +12 -2
  127. package/dist/types/modules/product/components/product-retailers-popup.component.d.ts +1 -0
  128. package/dist/types/modules/product/components/product-retailers.component.d.ts +1 -0
  129. package/dist/types/modules/product/product.commands.d.ts +5 -5
  130. package/dist/types/modules/product/product.component.d.ts +3 -0
  131. package/dist/types/modules/product/styles/prop65-warning.style.d.ts +1 -0
  132. package/dist/types/modules/product/styles/register-styles.d.ts +1 -0
  133. package/dist/types/modules/product-list/components/card-components/index.d.ts +6 -0
  134. package/dist/types/modules/product-list/components/card-components/product-badge.d.ts +9 -0
  135. package/dist/types/modules/product-list/components/card-components/product-button.d.ts +11 -0
  136. package/dist/types/modules/product-list/components/card-components/product-fulfillment-text.d.ts +2 -0
  137. package/dist/types/modules/product-list/components/card-components/product-price-and-personalization.d.ts +14 -0
  138. package/dist/types/modules/product-list/components/card-components/product-quantity-selector.d.ts +11 -0
  139. package/dist/types/modules/product-list/components/card-components/product-sizes-list.d.ts +14 -0
  140. package/dist/types/modules/product-list/components/filter-components/index.d.ts +7 -0
  141. package/dist/types/modules/product-list/components/filter-components/product-list-apply-filter-button.d.ts +1 -0
  142. 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} +1 -0
  143. package/dist/types/modules/product-list/components/filter-components/product-list-chip.d.ts +5 -0
  144. package/dist/types/modules/product-list/components/filter-components/product-list-filters-chips.d.ts +13 -0
  145. package/dist/types/modules/product-list/components/filter-components/product-list-fulfillment-filter.d.ts +15 -0
  146. 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} +2 -1
  147. package/dist/types/modules/product-list/components/filter-components/product-list-toggle-filters.d.ts +7 -0
  148. package/dist/types/modules/product-list/components/index.d.ts +6 -2
  149. package/dist/types/modules/product-list/components/product-list-card-loading.component.d.ts +3 -1
  150. package/dist/types/modules/product-list/components/product-list-card.component.d.ts +39 -31
  151. package/dist/types/modules/product-list/components/product-list-engraving.component.d.ts +12 -0
  152. package/dist/types/modules/product-list/components/product-list-filters.component.d.ts +58 -36
  153. package/dist/types/modules/product-list/components/product-list-product-engraving-lines.component.d.ts +22 -0
  154. package/dist/types/modules/product-list/components/product-list-product-pre-cart.component.d.ts +54 -0
  155. package/dist/types/modules/product-list/components/product-list-search.component.d.ts +25 -0
  156. package/dist/types/modules/product-list/product-list-filter.registry.d.ts +42 -0
  157. package/dist/types/modules/product-list/product-list-filter.utils.d.ts +7 -0
  158. package/dist/types/modules/product-list/product-list-order.utils.d.ts +3 -0
  159. package/dist/types/modules/product-list/product-list-query-params.utils.d.ts +3 -0
  160. package/dist/types/modules/product-list/product-list.commands.d.ts +22 -7
  161. package/dist/types/modules/product-list/product-list.component.d.ts +23 -47
  162. package/dist/types/modules/product-list/product-list.constants.d.ts +38 -0
  163. package/dist/types/modules/product-list/product-list.interface.d.ts +17 -28
  164. package/dist/types/modules/product-list/styles/product-list-card.style.d.ts +1 -0
  165. package/dist/types/modules/product-list/styles/product-list-filters.style.d.ts +1 -0
  166. package/dist/types/modules/product-list/styles/register-styles.d.ts +1 -0
  167. package/dist/types/modules/theme-provider/constants/component-groupings.d.ts +1 -0
  168. package/dist/types/modules/theme-provider/constants/css-variable-mappings.d.ts +1 -1
  169. package/dist/types/modules/theme-provider/services/style-registry.service.d.ts +16 -0
  170. package/dist/types/modules/theme-provider/services/stylesheet-generator.service.d.ts +0 -1
  171. package/dist/types/modules/theme-provider/styles/register-styles.d.ts +1 -0
  172. package/dist/types/modules/theme-provider/theme-provider.service.d.ts +2 -2
  173. package/dist/types/modules/ui-components/alert/alert.component.d.ts +10 -10
  174. package/dist/types/modules/ui-components/buttons/buttons-open-cart.component.d.ts +5 -0
  175. package/dist/types/modules/ui-components/drawer/drawer.component.d.ts +15 -0
  176. package/dist/types/modules/ui-components/engraving/engraving-form.component.d.ts +9 -1
  177. package/dist/types/modules/ui-components/engraving/engraving-view.component.d.ts +7 -1
  178. package/dist/types/modules/ui-components/input/index.d.ts +0 -1
  179. package/dist/types/modules/ui-components/input/input.component.d.ts +15 -2
  180. package/dist/types/modules/ui-components/lce-element/lce-element.component.d.ts +2 -1
  181. package/dist/types/modules/ui-components/promo-code-ticker/promo-code-ticker.component.d.ts +1 -1
  182. package/dist/types/modules/ui-components/ui.commands.d.ts +7 -1
  183. package/dist/types/ssr/stub.checkout.d.ts +6 -0
  184. package/dist/types/ssr/stub.d.ts +10 -0
  185. package/dist/types/static/icon/arrow-right.icon.d.ts +1 -1
  186. package/dist/types/static/icon/bag.icon.d.ts +1 -1
  187. package/dist/types/static/icon/check.icon.d.ts +2 -0
  188. package/dist/types/static/icon/checkbox.icon.d.ts +1 -1
  189. package/dist/types/static/icon/chevron-down.icon.d.ts +1 -1
  190. package/dist/types/static/icon/chevron-left.icon.d.ts +1 -1
  191. package/dist/types/static/icon/chevron-up.icon.d.ts +1 -1
  192. package/dist/types/static/icon/close.icon.d.ts +1 -1
  193. package/dist/types/static/icon/error-info.icon.d.ts +1 -1
  194. package/dist/types/static/icon/filter.icon.d.ts +1 -1
  195. package/dist/types/static/icon/icon.a11y.d.ts +1 -0
  196. package/dist/types/static/icon/icon.types.d.ts +1 -0
  197. package/dist/types/static/icon/index.d.ts +2 -0
  198. package/dist/types/static/icon/info.icon.d.ts +1 -1
  199. package/dist/types/static/icon/loading-spinner.icon.d.ts +1 -1
  200. package/dist/types/static/icon/search.icon.d.ts +1 -1
  201. package/dist/types/static/icon/success.icon.d.ts +1 -1
  202. package/dist/types/static/icon/trash.icon.d.ts +1 -1
  203. package/dist/types/static/icon/warning.icon.d.ts +1 -1
  204. package/dist/types/utils/dom-compat.d.ts +2 -0
  205. package/dist/types/utils/format.d.ts +9 -14
  206. package/dist/types/utils/image-bg-removal.d.ts +3 -0
  207. package/dist/types/utils/product-selection.d.ts +16 -0
  208. package/dist/types/utils/product.d.ts +21 -0
  209. package/dist/types/utils/timezone.d.ts +6 -0
  210. package/docs/v1/README.md +213 -0
  211. package/docs/v1/api/actions/address-actions.md +286 -0
  212. package/docs/v1/api/actions/cart-actions.md +364 -0
  213. package/docs/v1/api/actions/checkout-actions.md +586 -0
  214. package/docs/v1/api/actions/product-actions.md +204 -0
  215. package/docs/v1/api/client.md +664 -0
  216. package/docs/v1/api/configuration.md +583 -0
  217. package/docs/v1/api/injection-methods.md +331 -0
  218. package/docs/v1/api/typescript-types.md +501 -0
  219. package/docs/v1/api/ui-helpers.md +200 -0
  220. package/docs/v1/examples/advanced-patterns.md +199 -0
  221. package/docs/v1/examples/checkout-flow.md +90 -0
  222. package/docs/v1/examples/custom-theming.md +76 -0
  223. package/docs/v1/examples/multi-product-page.md +90 -0
  224. package/docs/v1/examples/simple-product-page.md +89 -0
  225. package/docs/v1/getting-started/concepts.md +521 -0
  226. package/docs/v1/getting-started/installation.md +351 -0
  227. package/docs/v1/getting-started/quick-start.md +410 -0
  228. package/docs/v1/guides/accessibility.md +288 -0
  229. package/docs/v1/guides/address-component.md +435 -0
  230. package/docs/v1/guides/best-practices.md +365 -0
  231. package/docs/v1/guides/cart-component.md +800 -0
  232. package/docs/v1/guides/checkout-component.md +817 -0
  233. package/docs/v1/guides/events.md +1004 -0
  234. package/docs/v1/guides/product-component.md +761 -0
  235. package/docs/v1/guides/product-list-component.md +730 -0
  236. package/docs/v1/guides/theming.md +243 -0
  237. package/docs/v1/integration/angular.md +39 -0
  238. package/docs/v1/integration/laravel.md +41 -0
  239. package/docs/v1/integration/nextjs.md +69 -0
  240. package/docs/v1/integration/proxy-setup.md +106 -0
  241. package/docs/v1/integration/react.md +64 -0
  242. package/docs/v1/integration/vanilla-js.md +84 -0
  243. package/docs/v1/integration/vue.md +58 -0
  244. package/docs/v1/reference/analytics.md +133 -0
  245. package/docs/v1/reference/browser-support.md +47 -0
  246. package/docs/v1/reference/error-handling.md +83 -0
  247. package/docs/v1/reference/performance.md +52 -0
  248. package/docs/v1/reference/telemetry.md +85 -0
  249. package/docs/v1/reference/troubleshooting.md +135 -0
  250. package/package.json +75 -45
  251. package/dist/types/elements-builder-client.d.ts +0 -2
  252. package/dist/types/elements-client-helper.d.ts +0 -4
  253. package/dist/types/elements-client.d.ts +0 -2
  254. package/dist/types/enums/cloud.enum.d.ts +0 -97
  255. package/dist/types/interfaces/cloud/checkout.interface.d.ts +0 -218
  256. package/dist/types/interfaces/cloud/core.interface.d.ts +0 -22
  257. package/dist/types/interfaces/cloud/index.d.ts +0 -3
  258. package/dist/types/interfaces/cloud/retailer.interface.d.ts +0 -67
  259. package/dist/types/interfaces/cloud/user.interface.d.ts +0 -100
  260. package/dist/types/interfaces/core.interface.d.ts +0 -111
  261. package/dist/types/modules/checkout/components/checkout.type.d.ts +0 -4
  262. package/dist/types/modules/product-list/components/product-list-filters-subcomponents/index.d.ts +0 -6
  263. package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-apply-filter-button.component.d.ts +0 -1
  264. package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-delivery-options-filter.components.d.ts +0 -16
  265. package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-search.component.d.ts +0 -16
  266. package/dist/types/modules/product-list/components/product-list-filters-subcomponents/product-list-toggle-filters.components.d.ts +0 -18
  267. package/dist/types/modules/theme-provider/styles/address/index.d.ts +0 -1
  268. package/dist/types/modules/theme-provider/styles/cart/index.d.ts +0 -1
  269. package/dist/types/modules/theme-provider/styles/checkout/index.d.ts +0 -1
  270. package/dist/types/modules/theme-provider/styles/product/index.d.ts +0 -3
  271. package/dist/types/modules/theme-provider/styles/product-list/index.d.ts +0 -1
  272. package/dist/types/modules/theme-provider/styles/ui/index.d.ts +0 -3
  273. package/dist/types/modules/ui-components/input/birthdate-input.component.d.ts +0 -53
  274. package/dist/types/utils/helper.d.ts +0 -28
  275. package/docs/ACTIONS.md +0 -1300
  276. package/docs/BROWSER_SUPPORT.md +0 -279
  277. package/docs/CONFIGURATION.md +0 -853
  278. package/docs/DOCUMENTATION_INDEX.md +0 -311
  279. package/docs/EVENTS.md +0 -798
  280. package/docs/PROXY.md +0 -228
  281. package/docs/THEMING.md +0 -592
  282. package/docs/TROUBLESHOOTING.md +0 -793
  283. package/umd/elements.js +0 -1
  284. /package/dist/types/{auto-initialize.d.ts → auto-initialize/main.d.ts} +0 -0
  285. /package/dist/types/modules/{theme-provider/styles/address → address/styles}/address.style.d.ts +0 -0
  286. /package/dist/types/modules/{theme-provider/styles/cart → cart/styles}/cart.style.d.ts +0 -0
  287. /package/dist/types/modules/{theme-provider/styles/checkout → checkout/styles}/checkout.style.d.ts +0 -0
  288. /package/dist/types/modules/{theme-provider/styles/product → product/styles}/image-carousel.style.d.ts +0 -0
  289. /package/dist/types/modules/{theme-provider/styles/product → product/styles}/product.style.d.ts +0 -0
  290. /package/dist/types/modules/{theme-provider/styles/product → product/styles}/retailers.style.d.ts +0 -0
  291. /package/dist/types/modules/{theme-provider/styles/product-list → product-list/styles}/product-list.style.d.ts +0 -0
  292. /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/drawer.style.d.ts +0 -0
  293. /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/loading.style.d.ts +0 -0
  294. /package/dist/types/modules/{theme-provider/styles/ui → ui-components/styles}/promo-code-ticker.style.d.ts +0 -0
@@ -0,0 +1,44 @@
1
+ import type { DebugMode, ElementsEnv } from '@/enums';
2
+ import type { IPromoTicker, UpdateAddressComponent, UpdateCartComponent, UpdateCheckoutComponent, UpdateComponentGlobalConfigs, UpdateProductComponent, UpdateProductListComponent } from './configs';
3
+ export type DeepPartial<T> = {
4
+ [P in keyof T]?: T[P] extends object ? DeepPartial<T[P]> : T[P];
5
+ };
6
+ export interface IElementsProxyConfig {
7
+ baseUrl: string;
8
+ headers?: Record<string, string>;
9
+ }
10
+ export interface IElementsGTMConfig {
11
+ gatewayUrl?: string;
12
+ }
13
+ export interface ILiquidCommerceElementsDevelopmentConfig {
14
+ customApiUrl?: string;
15
+ openShadowDom?: boolean;
16
+ mockMode?: boolean;
17
+ }
18
+ export interface IClientCustomThemeConfig {
19
+ global?: UpdateComponentGlobalConfigs;
20
+ product?: UpdateProductComponent;
21
+ address?: UpdateAddressComponent;
22
+ cart?: UpdateCartComponent;
23
+ checkout?: UpdateCheckoutComponent;
24
+ productList?: UpdateProductListComponent;
25
+ }
26
+ export interface ILiquidCommerceElementsCheckoutConfig {
27
+ pageUrl?: string;
28
+ }
29
+ export interface ILiquidCommerceElementsBaseConfig {
30
+ env?: ElementsEnv;
31
+ promoTicker?: IPromoTicker[];
32
+ customTheme?: IClientCustomThemeConfig;
33
+ debugMode?: DebugMode;
34
+ checkout?: ILiquidCommerceElementsCheckoutConfig;
35
+ proxy?: IElementsProxyConfig;
36
+ gtm?: IElementsGTMConfig;
37
+ development?: ILiquidCommerceElementsDevelopmentConfig;
38
+ }
39
+ export interface ILiquidCommerceElementsBuilderConfig extends ILiquidCommerceElementsBaseConfig {
40
+ }
41
+ export interface ILiquidCommerceElementsConfig extends ILiquidCommerceElementsBaseConfig {
42
+ }
43
+ export interface ILiquidCommerceElementsCheckoutClientConfig extends ILiquidCommerceElementsBaseConfig {
44
+ }
@@ -1,4 +1,4 @@
1
- import type { DeepPartial } from '@/interfaces/core.interface';
1
+ import type { DeepPartial } from '@/interfaces/config.interface';
2
2
  export interface IAddressTheme {
3
3
  backgroundColor: string;
4
4
  }
@@ -1,8 +1,9 @@
1
- import type { DeepPartial } from '@/interfaces/core.interface';
1
+ import type { DeepPartial } from '@/interfaces/config.interface';
2
2
  export interface ICartTheme {
3
3
  backgroundColor: string;
4
4
  }
5
5
  export interface ICartLayout {
6
+ showShopRetailerButton?: boolean;
6
7
  showQuantityCounter: boolean;
7
8
  quantityCounterStyle: 'outlined' | 'ghost';
8
9
  drawerHeaderText: string;
@@ -1,4 +1,4 @@
1
- import type { DeepPartial } from '@/interfaces/core.interface';
1
+ import type { DeepPartial } from '@/interfaces/config.interface';
2
2
  export interface ICheckoutMarketingOptIn {
3
3
  show: boolean;
4
4
  checked: boolean;
@@ -12,7 +12,9 @@ export interface ICheckoutLayout {
12
12
  emailOptIn: ICheckoutMarketingOptIn;
13
13
  smsOptIn: ICheckoutMarketingOptIn;
14
14
  allowGiftCards: boolean;
15
+ requireBirthDate?: boolean;
15
16
  legalMessage: ICheckoutLegalMessage;
17
+ continueShoppingUrl: string;
16
18
  exitUrl: string;
17
19
  thankYouButtonText: string;
18
20
  drawerHeaderText: string;
@@ -1,9 +1,10 @@
1
+ import type { DeepPartial } from '@/interfaces/config.interface';
1
2
  import type { IElementsConfigurations } from '@/interfaces/configs/configurations.interface';
2
- import type { DeepPartial } from '@/interfaces/core.interface';
3
3
  import type { IAddressComponent } from './address.interface';
4
4
  import type { ICartComponent } from './cart.interface';
5
5
  import type { ICheckoutComponent } from './checkout.interface';
6
6
  import type { IProductComponent } from './product.interface';
7
+ import type { IProductListComponent } from './product-list.interface';
7
8
  export interface IFontFamily {
8
9
  name: string;
9
10
  weights: number[];
@@ -22,6 +23,8 @@ export interface IGlobalTheme {
22
23
  warningColor: string;
23
24
  successColor: string;
24
25
  drawerBackgroundColor: string;
26
+ inputBorderColor?: string;
27
+ focusRingColor?: string;
25
28
  }
26
29
  export interface IPromoTicker {
27
30
  promoCode: string;
@@ -39,6 +42,8 @@ export interface IGlobalLayout {
39
42
  personalizationCardStyle: 'outlined' | 'filled';
40
43
  allowPromoCodes: boolean;
41
44
  inputFieldStyle: 'outlined' | 'filled';
45
+ enableOrderedProductSizes: boolean;
46
+ orderedProductSizes: string[];
42
47
  showPoweredBy: boolean;
43
48
  poweredByMode: 'light' | 'dark';
44
49
  }
@@ -52,9 +57,10 @@ export interface IAllConfigs {
52
57
  configurations: IElementsConfigurations;
53
58
  global: IComponentGlobalConfigs;
54
59
  product: IProductComponent;
60
+ productList: IProductListComponent;
55
61
  address: IAddressComponent;
56
62
  cart: ICartComponent;
57
63
  checkout: ICheckoutComponent;
58
64
  }
59
- export type ConfigsKeyType = 'all' | 'configurations' | 'global' | 'product' | 'address' | 'cart' | 'checkout';
60
- export type ConfigsType = IAllConfigs | IElementsConfigurations | IComponentGlobalConfigs | IProductComponent | IAddressComponent | ICartComponent | ICheckoutComponent;
65
+ export type ConfigsKeyType = 'all' | 'configurations' | 'global' | 'product' | 'address' | 'cart' | 'checkout' | 'productList';
66
+ export type ConfigsType = IAllConfigs | IElementsConfigurations | IComponentGlobalConfigs | IProductComponent | IAddressComponent | ICartComponent | ICheckoutComponent | IProductListComponent;
@@ -4,3 +4,4 @@ export * from './checkout.interface';
4
4
  export * from './configurations.interface';
5
5
  export * from './global.interface';
6
6
  export * from './product.interface';
7
+ export * from './product-list.interface';
@@ -0,0 +1,49 @@
1
+ import type { DeepPartial } from '@/interfaces/config.interface';
2
+ import type { ProductListFilterType } from '@/interfaces/injection.interface';
3
+ export type PLCPresentationModeType = 'drawer' | 'modal';
4
+ export type PLCListType = 'curated' | 'dynamic';
5
+ export type PLCCardStyle = 'card' | 'ghost';
6
+ export type PLCProductUrl = string | Record<string, string>;
7
+ export interface IPLCProductCard {
8
+ style: PLCCardStyle;
9
+ cornerRadius: string;
10
+ showPrice: boolean;
11
+ showSizes: boolean;
12
+ showRetailerName: boolean;
13
+ showFulfillmentOptions: boolean;
14
+ enableShippingFulfillment: boolean;
15
+ enableOnDemandFulfillment: boolean;
16
+ enablePersonalization: boolean;
17
+ showQuantityCounter: boolean;
18
+ enablePreCart: boolean;
19
+ showCollectionTags: boolean;
20
+ productUrl: PLCProductUrl | null;
21
+ noAvailabilityText: string;
22
+ }
23
+ export interface IPLCList {
24
+ type: PLCListType;
25
+ name: string;
26
+ slug: string;
27
+ filters: Record<string, string[]>;
28
+ productCard: IPLCProductCard;
29
+ presentationMode: PLCPresentationModeType;
30
+ availableFilters: ProductListFilterType[];
31
+ rows: number;
32
+ columns: number;
33
+ }
34
+ export interface IProductListLayout {
35
+ lists: IPLCList[];
36
+ }
37
+ export interface IProductListTheme {
38
+ backgroundColor: string;
39
+ }
40
+ export interface IProductListComponent {
41
+ theme: IProductListTheme;
42
+ layout: IProductListLayout;
43
+ }
44
+ export interface UpdateProductListComponent {
45
+ theme?: DeepPartial<IProductListTheme>;
46
+ layout?: {
47
+ lists?: Record<string, DeepPartial<IPLCList>>;
48
+ };
49
+ }
@@ -1,16 +1,22 @@
1
- import type { DeepPartial } from '@/interfaces/core.interface';
1
+ import type { FulfillmentType } from '@/enums';
2
+ import type { DeepPartial } from '@/interfaces/config.interface';
2
3
  export type FulfillmentDisplayType = 'carousel' | 'popup';
4
+ export type DescriptionPositionType = 'above' | 'below';
3
5
  export interface IProductLayout {
4
6
  showImages: boolean;
5
7
  showOnlyMainImage: boolean;
6
8
  showTitle: boolean;
7
9
  showDescription: boolean;
10
+ descriptionPosition: DescriptionPositionType;
8
11
  showQuantityCounter: boolean;
9
12
  showOffHours: boolean;
10
13
  quantityCounterStyle: 'outlined' | 'ghost';
11
14
  fulfillmentDisplay: FulfillmentDisplayType;
12
15
  enableShippingFulfillment: boolean;
13
16
  enableOnDemandFulfillment: boolean;
17
+ primaryFulfillmentMethod: FulfillmentType;
18
+ showOnlyOneRetailer: boolean;
19
+ hideRetailerName: boolean;
14
20
  addToCartButtonText: string;
15
21
  addToCartButtonShowTotalPrice: boolean;
16
22
  buyNowButtonText: string;
@@ -0,0 +1,56 @@
1
+ import type { PRODUCT_LIST_FILTER_TYPES } from '@/constants';
2
+ import type { ComponentType } from '@/enums';
3
+ import type { PLCProductUrl } from '@/interfaces/configs/product-list.interface';
4
+ import type { IAddressOptions } from '@/modules/address/address.interface';
5
+ export interface IInjectProductElement {
6
+ containerId: string;
7
+ identifier: string;
8
+ }
9
+ export type ProductListFilterType = (typeof PRODUCT_LIST_FILTER_TYPES)[keyof typeof PRODUCT_LIST_FILTER_TYPES];
10
+ export interface IInjectProductListParams {
11
+ containerId: string;
12
+ slug: string;
13
+ rows?: number;
14
+ columns?: number;
15
+ filters?: ProductListFilterType[];
16
+ productUrl?: PLCProductUrl;
17
+ productOrder?: string[];
18
+ }
19
+ export interface IInjectProductListSearchParams {
20
+ containerId: string;
21
+ slug: string;
22
+ filters?: ProductListFilterType[];
23
+ }
24
+ export interface IInjectProductListFiltersParams {
25
+ containerId: string;
26
+ slug: string;
27
+ filters?: ProductListFilterType[];
28
+ }
29
+ export interface IBuilderInjectElementParams {
30
+ type: ComponentType;
31
+ containerId: string;
32
+ [key: string]: any;
33
+ }
34
+ export interface IProcessInjectElementParams {
35
+ type: ComponentType;
36
+ containerId: string;
37
+ identifier?: string;
38
+ options?: IAddressOptions;
39
+ checkoutId?: string;
40
+ hideHeader?: boolean;
41
+ variant?: 'section' | 'buttons';
42
+ }
43
+ export interface IInjectCheckoutParams {
44
+ containerId: string;
45
+ checkoutId?: string;
46
+ hideHeader?: boolean;
47
+ }
48
+ export interface IInjectExpressCheckoutParams {
49
+ containerId: string;
50
+ checkoutId?: string;
51
+ variant?: 'section' | 'buttons';
52
+ }
53
+ export interface IInjectCheckoutBuilderParams extends IInjectCheckoutParams {
54
+ simulatePresale?: boolean;
55
+ presaleExpiresInMinutes?: number;
56
+ }
@@ -1,4 +1,4 @@
1
- import { BaseComponent } from '@/core/base-component.service';
1
+ import { BaseComponent, type IOnStoreChanged } from '@/core/base-component.service';
2
2
  import type { IAddressComponent } from '@/interfaces/configs';
3
3
  import type { IAddressOptions } from './address.interface';
4
4
  export interface IAddressDisplayComponentParams {
@@ -8,6 +8,8 @@ export interface IAddressDisplayComponentParams {
8
8
  }
9
9
  export declare class AddressDisplayComponent extends BaseComponent<IAddressDisplayComponentParams, IAddressComponent> {
10
10
  get hostClasses(): string[];
11
+ private lastAnnouncedAddress;
11
12
  constructor();
13
+ onStoreChanged(changes: IOnStoreChanged[]): boolean | undefined;
12
14
  protected template(): HTMLElement[];
13
15
  }
@@ -25,10 +25,19 @@ export declare class AddressInputComponent extends BaseComponent<IAddressInputCo
25
25
  private handleCancel;
26
26
  private handleCheckAvailability;
27
27
  private handleSuggestionClick;
28
- private handleDocumentClick;
28
+ private suggestionsStatus;
29
+ private activeSuggestionIndex;
30
+ private handleRootClick;
31
+ private handleFocusOut;
29
32
  private searchAddresses;
30
33
  private updateErrorDisplay;
31
34
  private updateSuggestionsDisplay;
35
+ private updateSuggestionsStatus;
36
+ private getSuggestionOptions;
37
+ private moveActiveSuggestion;
38
+ private setActiveSuggestion;
39
+ private isSuggestionListOpen;
40
+ private handleComboboxKeydown;
32
41
  private showSuggestions;
33
42
  private hideSuggestions;
34
43
  private createElement;
@@ -6,9 +6,10 @@ export declare class AddressCommands extends BaseCommand {
6
6
  constructor();
7
7
  static getInstance(): AddressCommands;
8
8
  searchAddresses(query: string): Promise<IAddressAutocompleteResult[]>;
9
- getAddressDetails(addressId: string): Promise<IAddressDetailsResult>;
9
+ getAddressDetails(addressId: string): Promise<IAddressDetailsResult | null>;
10
10
  setSelectedAddress(addressData: IAddressData): Promise<void>;
11
11
  setAddressManually(address: IAddressAddress, coordinates: IAddressCoordinates): Promise<void>;
12
12
  clearSelectedAddress(): Promise<void>;
13
13
  getDetails(): IAddressData | null;
14
+ private buildFormattedAddressString;
14
15
  }
@@ -1,5 +1,5 @@
1
1
  import { BaseCommand } from '@/core/command/base-command.service';
2
- import type { IBaseCartEventData } from '@/core/pubsub/interfaces/cart.interface';
2
+ import type { IBaseCartEventData, ICartShopRetailerEventData } from '@/core/pubsub/interfaces/cart.interface';
3
3
  export interface AddItemParams {
4
4
  fulfillmentId: string;
5
5
  partNumber: string;
@@ -8,17 +8,19 @@ export interface AddItemParams {
8
8
  identifier: string;
9
9
  }
10
10
  export declare class CartCommands extends BaseCommand {
11
- private readonly uiCommands;
12
- private readonly checkoutCommands;
13
- private readonly commonCommands;
14
11
  constructor();
15
12
  static getInstance(): CartCommands;
13
+ getShopRetailerTarget(fulfillmentId: string): (ICartShopRetailerEventData & {
14
+ retailerName: string;
15
+ }) | null;
16
+ shopRetailer(fulfillmentId: string): void;
16
17
  updateItemQuantity(itemId: string, delta: number): Promise<void>;
17
18
  removeItem(itemId: string, isNotStandAlone?: boolean): Promise<void>;
18
19
  updateItemEngraving(productItemId: string, engravingLines: string[]): Promise<void>;
19
20
  addItem(params: AddItemParams): Promise<void>;
20
- addPresaleItem(params: AddItemParams): Promise<void>;
21
21
  handleGoToCheckout(): Promise<void>;
22
+ private trackBeginCheckout;
23
+ private resolveCheckoutRedirectUrl;
22
24
  applyPromoCode(promoCode: string): Promise<void>;
23
25
  removePromoCode(): Promise<void>;
24
26
  rerenderCart(): void;
@@ -31,4 +33,6 @@ export declare class CartCommands extends BaseCommand {
31
33
  private updateFulfillment;
32
34
  private addNewFulfillmentAndRetailer;
33
35
  private cleanupAfterItemRemoval;
36
+ private syncCartState;
37
+ private buildCartLoadedEventData;
34
38
  }
@@ -10,6 +10,7 @@ export declare class CartBodyComponent extends BaseComponent<null, ICartComponen
10
10
  private getRetailerElementById;
11
11
  private getLoadingElement;
12
12
  private showEmptyCartState;
13
+ private preserveDialogFocus;
13
14
  private addLoadingOverlay;
14
15
  private removeLoadingOverlay;
15
16
  private setupEmptyCartListeners;
@@ -9,6 +9,7 @@ export declare class CartFulfillmentComponent extends BaseComponent<ICartFulfill
9
9
  private handleItemsUpdate;
10
10
  private setupItemElements;
11
11
  private setupMinimumPurchaseAlert;
12
+ private removeMinimumControl;
12
13
  private createLoadingOverlay;
13
14
  private hasLoadingOverlay;
14
15
  private showLoadingOverlay;
@@ -16,7 +17,6 @@ export declare class CartFulfillmentComponent extends BaseComponent<ICartFulfill
16
17
  private isAnyItemUpdating;
17
18
  private checkAndUpdateLoadingState;
18
19
  onStoreChanged(changes: IOnStoreChanged[]): boolean | undefined;
19
- private hasFulfillmentDataChanged;
20
20
  protected afterRender(): void;
21
21
  protected disconnected(): void;
22
22
  protected template(): HTMLElement[];
@@ -7,14 +7,19 @@ export declare class CartItemQuantityPriceComponent extends BaseComponent<ICartI
7
7
  private qtyIncreaseButton;
8
8
  private qtyDecreaseButton;
9
9
  private quantitySpan;
10
+ private priceElement;
11
+ private unitPriceElement;
10
12
  get hostClasses(): string[];
11
13
  constructor();
14
+ onStoreChanged(changes: IOnStoreChanged[]): boolean;
12
15
  onStoreWatch(changes: IOnStoreChanged[]): void;
13
16
  private getItemStore;
14
17
  private calculateQuantityLimits;
15
18
  private getAvailableQuantity;
16
19
  private updateButtonStates;
17
20
  private handleQuantityChange;
21
+ private updatePriceText;
22
+ private applyUnitPrice;
18
23
  private createQuantityContainer;
19
24
  private createPriceContainer;
20
25
  protected template(): HTMLElement[];
@@ -6,6 +6,12 @@ export declare class CartItemComponent extends BaseComponent<ICartItemComponentP
6
6
  get hostClasses(): string[];
7
7
  get hostAttributes(): Record<string, string>;
8
8
  constructor();
9
+ private lastFocusedKey;
10
+ private cancelFocusRestore;
11
+ protected connected(): void;
12
+ protected disconnected(): void;
13
+ private readonly handleFocusIn;
14
+ protected afterRender(): void;
9
15
  private handleOpenEngravingForm;
10
16
  protected template(): HTMLElement[];
11
17
  }
@@ -1,23 +1,69 @@
1
1
  import { BaseCommand } from '@/core/command/base-command.service';
2
- import type { ICheckoutBillingStore, ICheckoutCustomerStore, ICheckoutGiftRecipientStore, ICheckoutPaymentMethodStore } from '@/core/store/interfaces/checkout.interface';
2
+ import type { ICheckoutDetailsEventData } from '@/core/pubsub/interfaces/checkout.interface';
3
+ import type { ICheckoutPaymentMethodStore } from '@/core/store/interfaces/checkout.interface';
4
+ import type { FulfillmentType } from '@/enums';
5
+ import type { CheckoutPaymentSessionType, ICheckoutBilling, ICheckoutCustomer, ICheckoutGiftRecipient, ICheckoutMarketingPreferences, ICheckoutPaymentSession, ICheckoutPrepare } from '@/interfaces/api/checkout.interface';
6
+ import type { AddItemParams } from '@/modules/cart/cart.commands';
7
+ import type { PresaleExpiredReason } from '@/modules/checkout/components';
8
+ import { type IExpressWalletBillingDetails } from '@/modules/checkout/express-wallet';
3
9
  export declare class CheckoutCommands extends BaseCommand {
4
10
  private readonly uiCommands;
5
- private readonly commonCommands;
11
+ private lastLoadParams;
12
+ private paymentGeneration;
13
+ private savedMarketingPreferences;
14
+ private savedMarketingRevision;
15
+ private marketingNeedsPrepare;
16
+ private completingCheckout;
17
+ private savedMarketingError;
18
+ private marketingEdits;
19
+ private marketingQueue;
20
+ private readonly marketingFields;
21
+ private customerEditRevision;
22
+ private customerEditedGeneration;
23
+ private confirmedPayment;
24
+ private expressHandoff;
25
+ private get requiresBirthDate();
26
+ assertPaymentReady(): void;
27
+ retryLoadCheckout(): Promise<void>;
28
+ private paymentSessionRequest;
6
29
  constructor();
7
30
  static getInstance(): CheckoutCommands;
8
- loadCheckout(cartIdParam?: string): Promise<void>;
31
+ addPresaleItem(params: AddItemParams): Promise<void>;
32
+ loadCheckout(params: {
33
+ checkoutId?: string;
34
+ cartId?: string;
35
+ isForPresale?: boolean;
36
+ }): Promise<void>;
37
+ private showAlreadyCompletedCheckout;
38
+ loadCheckoutFromResponse(response: ICheckoutPrepare): void;
9
39
  toggleIsGift(active?: boolean): Promise<void>;
10
40
  toggleBillingSameAsShipping(active?: boolean): Promise<void>;
11
- toggleMarketingPreferences(fieldName: 'canEmail' | 'canSms', active?: boolean): Promise<void>;
41
+ private loadedMarketingState;
42
+ private defaultMarketingPreferences;
43
+ private marketingForPrepare;
44
+ private confirmedSavedMarketing;
45
+ private queueMarketing;
46
+ setSavedMarketingPreferences(preferences: Partial<ICheckoutMarketingPreferences>): Promise<void>;
47
+ clearSavedMarketingPreferences(): void;
48
+ private recordSavedMarketing;
49
+ private assertMarketingRestored;
50
+ private canApplySavedMarketing;
51
+ private applySavedMarketingPreferences;
52
+ toggleMarketingPreferences(fieldName: 'canEmail' | 'canSms', active?: boolean): Promise<boolean>;
12
53
  getPaymentSession(): Promise<void>;
13
- confirmPaymentSession(confirmationTokenId: string, setupIntentId: string): Promise<ICheckoutPaymentMethodStore | null>;
54
+ getExpressPaymentSession(): Promise<ICheckoutPaymentSession | null>;
55
+ private requestPaymentSession;
56
+ confirmPaymentSession(confirmationTokenId: string, setupIntentId: string, sessionType?: CheckoutPaymentSessionType): Promise<ICheckoutPaymentMethodStore>;
14
57
  applyPromoCode(code: string): Promise<void>;
15
58
  removePromoCode(): Promise<void>;
16
59
  clearPromoCodeError(): Promise<void>;
17
60
  applyGiftCard(code: string): Promise<void>;
18
61
  removeGiftCard(code: string): Promise<void>;
19
62
  clearGiftCardError(): Promise<void>;
20
- openPresaleExpiredDrawer(): void;
63
+ showPresaleExpired(reason?: PresaleExpiredReason): void;
64
+ openCheckout(): void;
65
+ getReturnUrl(): string | null;
66
+ private resolveCheckoutPageUrl;
21
67
  rerenderCheckout(): void;
22
68
  updateCheckoutItemQuantity(itemId: string, delta: number): Promise<void>;
23
69
  removeItemEngraving(productItemId: string): Promise<void>;
@@ -26,28 +72,65 @@ export declare class CheckoutCommands extends BaseCommand {
26
72
  updateFulfillmentTip(fulfillmentId: string, tipAmount: number): Promise<void>;
27
73
  removeFulfillmentTip(fulfillmentId: string): Promise<void>;
28
74
  clearCheckoutError(): Promise<void>;
75
+ markCustomerFormEdited(): void;
76
+ canPrefillCustomerForm(): boolean;
77
+ savePrefilledCustomerInfo(): Promise<void>;
29
78
  editCustomerForm(): Promise<void>;
30
79
  saveCustomerForm({ shippingAddressTwo, deliveryInstructions, customerData, }: {
31
- customerData: ICheckoutCustomerStore;
80
+ customerData: ICheckoutCustomer;
32
81
  shippingAddressTwo: string;
33
82
  deliveryInstructions: string;
34
83
  }): Promise<void>;
35
84
  editGiftRecipientForm(): Promise<void>;
36
- saveGiftRecipientForm({ shippingAddressTwo, deliveryInstructions, ...giftRecipientData }: ICheckoutGiftRecipientStore & {
85
+ saveGiftRecipientForm({ shippingAddressTwo, deliveryInstructions, ...giftRecipientData }: ICheckoutGiftRecipient & {
37
86
  shippingAddressTwo: string;
38
87
  deliveryInstructions: string;
39
88
  }): Promise<void>;
40
89
  editPaymentForm(): Promise<void>;
90
+ private resetCheckoutPreservingInjected;
91
+ private markInjectedPaymentReady;
41
92
  savePaymentForm({ billingFormData, paymentSession, }: {
42
- billingFormData?: ICheckoutBillingStore;
93
+ billingFormData?: ICheckoutBilling;
43
94
  paymentSession?: {
44
95
  confirmationTokenId: string;
45
96
  setupIntentId: string;
97
+ sessionType?: CheckoutPaymentSessionType;
46
98
  };
47
99
  }): Promise<void>;
48
- checkoutComplete(): Promise<void>;
100
+ private prepareMarketingForCompletion;
101
+ beginExpressCompletion({ wallet, confirmationTokenId, intentId, approvedTotal, billingDetails, }: {
102
+ wallet: string;
103
+ confirmationTokenId: string;
104
+ intentId: string;
105
+ approvedTotal: number;
106
+ billingDetails: IExpressWalletBillingDetails | undefined;
107
+ }): Promise<void>;
108
+ private prepareExpressPayment;
109
+ completeExpressOrder(birthDate?: string): Promise<void>;
110
+ cancelExpressCompletion(): void;
111
+ private saveExpressCustomer;
112
+ private assertApprovedTotal;
113
+ private setExpressStatus;
114
+ private failExpressCompletion;
115
+ private writeExpress;
116
+ checkoutComplete(options?: {
117
+ expressPaymentIntentId?: string;
118
+ }): Promise<void>;
49
119
  private updateStoreFromCheckoutResponse;
50
- private partialLoadCheckout;
120
+ private getDeliveryMethodLocation;
121
+ loadDeliveryMethods(): Promise<void>;
122
+ toggleDeliveryMethod(): void;
123
+ switchDeliveryMethod(fulfillmentType: FulfillmentType): Promise<void>;
124
+ private watchForReturnFromAddress;
125
+ relocateCheckout(): Promise<void>;
126
+ private requestFulfillment;
127
+ private deliveryMethodCarryOver;
128
+ private refreshPaymentAfterDeliveryMethodSwitch;
129
+ changeDeliveryLocation(trigger?: HTMLElement | null): void;
130
+ private syncFromItemUpdate;
131
+ private syncCheckoutState;
132
+ private refreshCheckout;
51
133
  private dataForCheckoutPrepare;
52
- private buildCheckoutItemStore;
134
+ private normalizeForApi;
135
+ getDetails(): ICheckoutDetailsEventData;
53
136
  }
@@ -1,10 +1,16 @@
1
- import { BaseComponent } from '@/core/base-component.service';
1
+ import { BaseComponent, type IOnStoreChanged } from '@/core/base-component.service';
2
2
  import type { ICheckoutComponent } from '@/interfaces/configs';
3
3
  export interface ICheckoutComponentParams {
4
4
  checkoutId: string;
5
5
  isIndependentComponent: boolean;
6
+ hideHeader: boolean;
6
7
  }
7
8
  export declare class CheckoutComponent extends BaseComponent<ICheckoutComponentParams, ICheckoutComponent> {
8
9
  constructor();
10
+ onStoreWatch(_changes: IOnStoreChanged[]): void;
11
+ private updateInitializationState;
12
+ afterRender(): void;
9
13
  protected template(): HTMLElement[];
14
+ private createAlerts;
15
+ private createHeader;
10
16
  }
@@ -1,13 +1,16 @@
1
1
  import { BaseComponent } from '@/core/base-component.service';
2
- import type { ICheckoutBillingStore } from '@/core/store/interfaces/checkout.interface';
2
+ import type { ICheckoutBilling } from '@/interfaces/api/checkout.interface';
3
3
  import type { ICheckoutComponent } from '@/interfaces/configs';
4
4
  export interface ICheckoutBillingComponentParams {
5
- isFormValid: (isValid: boolean, data: ICheckoutBillingStore) => void;
5
+ isFormValid: (isValid: boolean, data: ICheckoutBilling) => void;
6
6
  }
7
7
  export declare class CheckoutBillingComponent extends BaseComponent<ICheckoutBillingComponentParams, ICheckoutComponent> {
8
8
  private billingData;
9
9
  get hostClasses(): string[];
10
10
  constructor();
11
+ private pendingToggleFocus;
12
+ protected afterRender(): void;
13
+ private readonly onBillingSameAsShippingToggle;
11
14
  private billingSameAsShippingToggle;
12
15
  private updateSaveButtonState;
13
16
  protected template(): HTMLElement[];
@@ -7,6 +7,7 @@ export declare class CheckoutBuyer extends BaseComponent<null, ICheckoutComponen
7
7
  get hostClasses(): string[];
8
8
  constructor();
9
9
  onStoreWatch(changes: IOnStoreChanged[]): void;
10
+ private get requiresBirthDate();
10
11
  private updateSaveButtonState;
11
12
  protected template(): HTMLElement[];
12
13
  }
@@ -6,8 +6,13 @@ export interface ICheckoutCompletedComponentParams {
6
6
  cardLast4: string;
7
7
  customerEmail: string;
8
8
  giftRecipientEmail: string | null;
9
+ checkoutToken?: string;
10
+ cartId?: string;
11
+ isCompleted?: boolean;
9
12
  }
10
13
  export declare class CheckoutCompletedComponent extends BaseComponent<ICheckoutCompletedComponentParams, ICheckoutComponent> {
11
14
  get hostClasses(): string[];
15
+ private hasAnnouncedCompletion;
16
+ protected afterRender(): void;
12
17
  protected template(): HTMLElement[];
13
18
  }
@@ -8,6 +8,7 @@ export declare class CheckoutDeliverToComponent extends BaseComponent<null, IChe
8
8
  get hostClasses(): string[];
9
9
  constructor();
10
10
  onStoreWatch(changes: IOnStoreChanged[]): void;
11
+ private get requiresBirthDate();
11
12
  private updateSaveButtonState;
12
13
  protected template(): HTMLElement[];
13
14
  }
@@ -0,0 +1,22 @@
1
+ import { BaseComponent } from '@/core/base-component.service';
2
+ import type { ICheckoutComponent } from '@/interfaces/configs';
3
+ export declare class CheckoutDeliveryMethodComponent extends BaseComponent<null, ICheckoutComponent> {
4
+ get hostClasses(): string[];
5
+ constructor();
6
+ protected connected(): void;
7
+ onStoreWatch(): void;
8
+ private hasOrderMoved;
9
+ private isSameAddress;
10
+ protected afterRender(): void;
11
+ protected template(): HTMLElement[];
12
+ private createHeader;
13
+ private createSummaryRow;
14
+ private createOptions;
15
+ private createOptionCard;
16
+ private createOptionTitleRow;
17
+ private describeOption;
18
+ private describeUnavailable;
19
+ private describeForScreenReader;
20
+ private createChangeLocationButton;
21
+ private formatFee;
22
+ }