@thorprovider/blocks 4.1.0 → 4.3.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.
Files changed (1122) hide show
  1. package/dist/blocks/designs/address-book-advanced/block.d.ts +8 -0
  2. package/dist/blocks/designs/address-book-advanced/block.d.ts.map +1 -0
  3. package/dist/blocks/designs/address-book-advanced/block.js +36 -0
  4. package/dist/blocks/designs/address-book-advanced/block.js.map +1 -0
  5. package/dist/blocks/designs/address-book-advanced/block.mjs +12 -0
  6. package/dist/blocks/designs/address-book-advanced/block.mjs.map +1 -0
  7. package/dist/blocks/designs/address-book-advanced/components/address-action-menu.d.ts +17 -0
  8. package/dist/blocks/designs/address-book-advanced/components/address-action-menu.d.ts.map +1 -0
  9. package/dist/blocks/designs/address-book-advanced/components/address-action-menu.js +123 -0
  10. package/dist/blocks/designs/address-book-advanced/components/address-action-menu.js.map +1 -0
  11. package/dist/blocks/designs/address-book-advanced/components/address-action-menu.mjs +99 -0
  12. package/dist/blocks/designs/address-book-advanced/components/address-action-menu.mjs.map +1 -0
  13. package/dist/blocks/designs/address-book-advanced/components/address-book-header.d.ts +15 -0
  14. package/dist/blocks/designs/address-book-advanced/components/address-book-header.d.ts.map +1 -0
  15. package/dist/blocks/designs/address-book-advanced/components/address-book-header.js +52 -0
  16. package/dist/blocks/designs/address-book-advanced/components/address-book-header.js.map +1 -0
  17. package/dist/blocks/designs/address-book-advanced/components/address-book-header.mjs +28 -0
  18. package/dist/blocks/designs/address-book-advanced/components/address-book-header.mjs.map +1 -0
  19. package/dist/blocks/designs/address-book-advanced/components/address-book-panel.d.ts +25 -0
  20. package/dist/blocks/designs/address-book-advanced/components/address-book-panel.d.ts.map +1 -0
  21. package/dist/blocks/designs/address-book-advanced/components/address-book-panel.js +495 -0
  22. package/dist/blocks/designs/address-book-advanced/components/address-book-panel.js.map +1 -0
  23. package/dist/blocks/designs/address-book-advanced/components/address-book-panel.mjs +476 -0
  24. package/dist/blocks/designs/address-book-advanced/components/address-book-panel.mjs.map +1 -0
  25. package/dist/blocks/designs/address-book-advanced/components/address-card-status.d.ts +12 -0
  26. package/dist/blocks/designs/address-book-advanced/components/address-card-status.d.ts.map +1 -0
  27. package/dist/blocks/designs/address-book-advanced/components/address-card-status.js +47 -0
  28. package/dist/blocks/designs/address-book-advanced/components/address-card-status.js.map +1 -0
  29. package/dist/blocks/designs/address-book-advanced/components/address-card-status.mjs +23 -0
  30. package/dist/blocks/designs/address-book-advanced/components/address-card-status.mjs.map +1 -0
  31. package/dist/blocks/designs/address-book-advanced/components/address-card.d.ts +26 -0
  32. package/dist/blocks/designs/address-book-advanced/components/address-card.d.ts.map +1 -0
  33. package/dist/blocks/designs/address-book-advanced/components/address-card.js +274 -0
  34. package/dist/blocks/designs/address-book-advanced/components/address-card.js.map +1 -0
  35. package/dist/blocks/designs/address-book-advanced/components/address-card.mjs +250 -0
  36. package/dist/blocks/designs/address-book-advanced/components/address-card.mjs.map +1 -0
  37. package/dist/blocks/designs/address-book-advanced/components/address-delete-dialog.d.ts +15 -0
  38. package/dist/blocks/designs/address-book-advanced/components/address-delete-dialog.d.ts.map +1 -0
  39. package/dist/blocks/designs/address-book-advanced/components/address-delete-dialog.js +100 -0
  40. package/dist/blocks/designs/address-book-advanced/components/address-delete-dialog.js.map +1 -0
  41. package/dist/blocks/designs/address-book-advanced/components/address-delete-dialog.mjs +76 -0
  42. package/dist/blocks/designs/address-book-advanced/components/address-delete-dialog.mjs.map +1 -0
  43. package/dist/blocks/designs/address-book-advanced/components/address-empty-state.d.ts +11 -0
  44. package/dist/blocks/designs/address-book-advanced/components/address-empty-state.d.ts.map +1 -0
  45. package/dist/blocks/designs/address-book-advanced/components/address-empty-state.js +46 -0
  46. package/dist/blocks/designs/address-book-advanced/components/address-empty-state.js.map +1 -0
  47. package/dist/blocks/designs/address-book-advanced/components/address-empty-state.mjs +22 -0
  48. package/dist/blocks/designs/address-book-advanced/components/address-empty-state.mjs.map +1 -0
  49. package/dist/blocks/designs/address-book-advanced/components/address-form-drawer.d.ts +16 -0
  50. package/dist/blocks/designs/address-book-advanced/components/address-form-drawer.d.ts.map +1 -0
  51. package/dist/blocks/designs/address-book-advanced/components/address-form-drawer.js +56 -0
  52. package/dist/blocks/designs/address-book-advanced/components/address-form-drawer.js.map +1 -0
  53. package/dist/blocks/designs/address-book-advanced/components/address-form-drawer.mjs +32 -0
  54. package/dist/blocks/designs/address-book-advanced/components/address-form-drawer.mjs.map +1 -0
  55. package/dist/blocks/designs/address-book-advanced/components/address-form.d.ts +27 -0
  56. package/dist/blocks/designs/address-book-advanced/components/address-form.d.ts.map +1 -0
  57. package/dist/blocks/designs/address-book-advanced/components/address-form.js +699 -0
  58. package/dist/blocks/designs/address-book-advanced/components/address-form.js.map +1 -0
  59. package/dist/blocks/designs/address-book-advanced/components/address-form.mjs +675 -0
  60. package/dist/blocks/designs/address-book-advanced/components/address-form.mjs.map +1 -0
  61. package/dist/blocks/designs/address-book-advanced/components/address-list.d.ts +26 -0
  62. package/dist/blocks/designs/address-book-advanced/components/address-list.d.ts.map +1 -0
  63. package/dist/blocks/designs/address-book-advanced/components/address-list.js +78 -0
  64. package/dist/blocks/designs/address-book-advanced/components/address-list.js.map +1 -0
  65. package/dist/blocks/designs/address-book-advanced/components/address-list.mjs +54 -0
  66. package/dist/blocks/designs/address-book-advanced/components/address-list.mjs.map +1 -0
  67. package/dist/blocks/designs/address-book-advanced/components/address-pagination.d.ts +11 -0
  68. package/dist/blocks/designs/address-book-advanced/components/address-pagination.d.ts.map +1 -0
  69. package/dist/blocks/designs/address-book-advanced/components/address-pagination.js +82 -0
  70. package/dist/blocks/designs/address-book-advanced/components/address-pagination.js.map +1 -0
  71. package/dist/blocks/designs/address-book-advanced/components/address-pagination.mjs +58 -0
  72. package/dist/blocks/designs/address-book-advanced/components/address-pagination.mjs.map +1 -0
  73. package/dist/blocks/designs/address-book-advanced/components/address-toolbar.d.ts +14 -0
  74. package/dist/blocks/designs/address-book-advanced/components/address-toolbar.d.ts.map +1 -0
  75. package/dist/blocks/designs/address-book-advanced/components/address-toolbar.js +121 -0
  76. package/dist/blocks/designs/address-book-advanced/components/address-toolbar.js.map +1 -0
  77. package/dist/blocks/designs/address-book-advanced/components/address-toolbar.mjs +97 -0
  78. package/dist/blocks/designs/address-book-advanced/components/address-toolbar.mjs.map +1 -0
  79. package/dist/blocks/designs/address-book-advanced/components/modal-dialog.d.ts +16 -0
  80. package/dist/blocks/designs/address-book-advanced/components/modal-dialog.d.ts.map +1 -0
  81. package/dist/blocks/designs/address-book-advanced/components/modal-dialog.js +71 -0
  82. package/dist/blocks/designs/address-book-advanced/components/modal-dialog.js.map +1 -0
  83. package/dist/blocks/designs/address-book-advanced/components/modal-dialog.mjs +47 -0
  84. package/dist/blocks/designs/address-book-advanced/components/modal-dialog.mjs.map +1 -0
  85. package/dist/blocks/designs/address-book-advanced/contract.d.ts +4128 -0
  86. package/dist/blocks/designs/address-book-advanced/contract.d.ts.map +1 -0
  87. package/dist/blocks/designs/address-book-advanced/contract.js +582 -0
  88. package/dist/blocks/designs/address-book-advanced/contract.js.map +1 -0
  89. package/dist/blocks/designs/address-book-advanced/contract.mjs +557 -0
  90. package/dist/blocks/designs/address-book-advanced/contract.mjs.map +1 -0
  91. package/dist/blocks/designs/address-book-advanced/contracts.d.ts +205 -0
  92. package/dist/blocks/designs/address-book-advanced/contracts.d.ts.map +1 -0
  93. package/dist/blocks/designs/address-book-advanced/contracts.js +38 -0
  94. package/dist/blocks/designs/address-book-advanced/contracts.js.map +1 -0
  95. package/dist/blocks/designs/address-book-advanced/contracts.mjs +14 -0
  96. package/dist/blocks/designs/address-book-advanced/contracts.mjs.map +1 -0
  97. package/dist/blocks/designs/address-book-advanced/countries.d.ts +13 -0
  98. package/dist/blocks/designs/address-book-advanced/countries.d.ts.map +1 -0
  99. package/dist/blocks/designs/address-book-advanced/countries.js +64 -0
  100. package/dist/blocks/designs/address-book-advanced/countries.js.map +1 -0
  101. package/dist/blocks/designs/address-book-advanced/countries.mjs +36 -0
  102. package/dist/blocks/designs/address-book-advanced/countries.mjs.map +1 -0
  103. package/dist/blocks/designs/address-book-advanced/data.d.ts +3 -0
  104. package/dist/blocks/designs/address-book-advanced/data.d.ts.map +1 -0
  105. package/dist/blocks/designs/address-book-advanced/data.js +17 -0
  106. package/dist/blocks/designs/address-book-advanced/data.js.map +1 -0
  107. package/dist/blocks/designs/address-book-advanced/data.mjs +1 -0
  108. package/dist/blocks/designs/address-book-advanced/data.mjs.map +1 -0
  109. package/dist/blocks/designs/address-book-advanced/helpers.d.ts +40 -0
  110. package/dist/blocks/designs/address-book-advanced/helpers.d.ts.map +1 -0
  111. package/dist/blocks/designs/address-book-advanced/helpers.js +247 -0
  112. package/dist/blocks/designs/address-book-advanced/helpers.js.map +1 -0
  113. package/dist/blocks/designs/address-book-advanced/helpers.mjs +210 -0
  114. package/dist/blocks/designs/address-book-advanced/helpers.mjs.map +1 -0
  115. package/dist/blocks/designs/address-book-advanced/index.d.ts +3 -0
  116. package/dist/blocks/designs/address-book-advanced/index.d.ts.map +1 -0
  117. package/dist/blocks/designs/address-book-advanced/index.js +36 -0
  118. package/dist/blocks/designs/address-book-advanced/index.js.map +1 -0
  119. package/dist/blocks/designs/address-book-advanced/index.mjs +6 -0
  120. package/dist/blocks/designs/address-book-advanced/index.mjs.map +1 -0
  121. package/dist/blocks/designs/address-book-advanced/surface-contract.d.ts +542 -0
  122. package/dist/blocks/designs/address-book-advanced/surface-contract.d.ts.map +1 -0
  123. package/dist/blocks/designs/address-book-advanced/surface-contract.js +17 -0
  124. package/dist/blocks/designs/address-book-advanced/surface-contract.js.map +1 -0
  125. package/dist/blocks/designs/address-book-advanced/surface-contract.mjs +1 -0
  126. package/dist/blocks/designs/address-book-advanced/surface-contract.mjs.map +1 -0
  127. package/dist/blocks/designs/address-book-advanced/validation.d.ts +13 -0
  128. package/dist/blocks/designs/address-book-advanced/validation.d.ts.map +1 -0
  129. package/dist/blocks/designs/address-book-advanced/validation.js +84 -0
  130. package/dist/blocks/designs/address-book-advanced/validation.js.map +1 -0
  131. package/dist/blocks/designs/address-book-advanced/validation.mjs +59 -0
  132. package/dist/blocks/designs/address-book-advanced/validation.mjs.map +1 -0
  133. package/dist/blocks/designs/checkout-commerce-v1/block.d.ts +4 -16
  134. package/dist/blocks/designs/checkout-commerce-v1/block.d.ts.map +1 -1
  135. package/dist/blocks/designs/checkout-commerce-v1/block.js +55 -2403
  136. package/dist/blocks/designs/checkout-commerce-v1/block.js.map +1 -1
  137. package/dist/blocks/designs/checkout-commerce-v1/block.mjs +56 -2404
  138. package/dist/blocks/designs/checkout-commerce-v1/block.mjs.map +1 -1
  139. package/dist/blocks/designs/checkout-commerce-v1/demo/use-demo-checkout.d.ts +34 -0
  140. package/dist/blocks/designs/checkout-commerce-v1/demo/use-demo-checkout.d.ts.map +1 -0
  141. package/dist/blocks/designs/checkout-commerce-v1/demo/use-demo-checkout.js +898 -0
  142. package/dist/blocks/designs/checkout-commerce-v1/demo/use-demo-checkout.js.map +1 -0
  143. package/dist/blocks/designs/checkout-commerce-v1/demo/use-demo-checkout.mjs +874 -0
  144. package/dist/blocks/designs/checkout-commerce-v1/demo/use-demo-checkout.mjs.map +1 -0
  145. package/dist/blocks/designs/checkout-commerce-v1/hosted/checkout-commerce-v1-hosted.d.ts +3 -0
  146. package/dist/blocks/designs/checkout-commerce-v1/hosted/checkout-commerce-v1-hosted.d.ts.map +1 -0
  147. package/dist/blocks/designs/checkout-commerce-v1/hosted/checkout-commerce-v1-hosted.js +94 -0
  148. package/dist/blocks/designs/checkout-commerce-v1/hosted/checkout-commerce-v1-hosted.js.map +1 -0
  149. package/dist/blocks/designs/checkout-commerce-v1/hosted/checkout-commerce-v1-hosted.mjs +70 -0
  150. package/dist/blocks/designs/checkout-commerce-v1/hosted/checkout-commerce-v1-hosted.mjs.map +1 -0
  151. package/dist/blocks/designs/checkout-commerce-v1/hosted/types.d.ts +6 -0
  152. package/dist/blocks/designs/checkout-commerce-v1/hosted/types.d.ts.map +1 -0
  153. package/dist/blocks/designs/checkout-commerce-v1/hosted/types.js +17 -0
  154. package/dist/blocks/designs/checkout-commerce-v1/hosted/types.js.map +1 -0
  155. package/dist/blocks/designs/checkout-commerce-v1/hosted/types.mjs +1 -0
  156. package/dist/blocks/designs/checkout-commerce-v1/hosted/types.mjs.map +1 -0
  157. package/dist/blocks/designs/checkout-commerce-v1/index.d.ts +5 -0
  158. package/dist/blocks/designs/checkout-commerce-v1/index.d.ts.map +1 -1
  159. package/dist/blocks/designs/checkout-commerce-v1/index.js +9 -0
  160. package/dist/blocks/designs/checkout-commerce-v1/index.js.map +1 -1
  161. package/dist/blocks/designs/checkout-commerce-v1/index.mjs +4 -0
  162. package/dist/blocks/designs/checkout-commerce-v1/index.mjs.map +1 -1
  163. package/dist/blocks/designs/checkout-commerce-v1/view/address-choices.d.ts +11 -0
  164. package/dist/blocks/designs/checkout-commerce-v1/view/address-choices.d.ts.map +1 -0
  165. package/dist/blocks/designs/checkout-commerce-v1/view/address-choices.js +73 -0
  166. package/dist/blocks/designs/checkout-commerce-v1/view/address-choices.js.map +1 -0
  167. package/dist/blocks/designs/checkout-commerce-v1/view/address-choices.mjs +49 -0
  168. package/dist/blocks/designs/checkout-commerce-v1/view/address-choices.mjs.map +1 -0
  169. package/dist/blocks/designs/checkout-commerce-v1/view/address-form.d.ts +25 -0
  170. package/dist/blocks/designs/checkout-commerce-v1/view/address-form.d.ts.map +1 -0
  171. package/dist/blocks/designs/checkout-commerce-v1/view/address-form.js +355 -0
  172. package/dist/blocks/designs/checkout-commerce-v1/view/address-form.js.map +1 -0
  173. package/dist/blocks/designs/checkout-commerce-v1/view/address-form.mjs +331 -0
  174. package/dist/blocks/designs/checkout-commerce-v1/view/address-form.mjs.map +1 -0
  175. package/dist/blocks/designs/checkout-commerce-v1/view/buyer-section.d.ts +24 -0
  176. package/dist/blocks/designs/checkout-commerce-v1/view/buyer-section.d.ts.map +1 -0
  177. package/dist/blocks/designs/checkout-commerce-v1/view/buyer-section.js +203 -0
  178. package/dist/blocks/designs/checkout-commerce-v1/view/buyer-section.js.map +1 -0
  179. package/dist/blocks/designs/checkout-commerce-v1/view/buyer-section.mjs +179 -0
  180. package/dist/blocks/designs/checkout-commerce-v1/view/buyer-section.mjs.map +1 -0
  181. package/dist/blocks/designs/checkout-commerce-v1/view/checkout-view.d.ts +6 -0
  182. package/dist/blocks/designs/checkout-commerce-v1/view/checkout-view.d.ts.map +1 -0
  183. package/dist/blocks/designs/checkout-commerce-v1/view/checkout-view.js +1359 -0
  184. package/dist/blocks/designs/checkout-commerce-v1/view/checkout-view.js.map +1 -0
  185. package/dist/blocks/designs/checkout-commerce-v1/view/checkout-view.mjs +1346 -0
  186. package/dist/blocks/designs/checkout-commerce-v1/view/checkout-view.mjs.map +1 -0
  187. package/dist/blocks/designs/checkout-commerce-v1/view/confirmation-view.d.ts +15 -0
  188. package/dist/blocks/designs/checkout-commerce-v1/view/confirmation-view.d.ts.map +1 -0
  189. package/dist/blocks/designs/checkout-commerce-v1/view/confirmation-view.js +288 -0
  190. package/dist/blocks/designs/checkout-commerce-v1/view/confirmation-view.js.map +1 -0
  191. package/dist/blocks/designs/checkout-commerce-v1/view/confirmation-view.mjs +272 -0
  192. package/dist/blocks/designs/checkout-commerce-v1/view/confirmation-view.mjs.map +1 -0
  193. package/dist/blocks/designs/checkout-commerce-v1/view/format.d.ts +35 -0
  194. package/dist/blocks/designs/checkout-commerce-v1/view/format.d.ts.map +1 -0
  195. package/dist/blocks/designs/checkout-commerce-v1/view/format.js +84 -0
  196. package/dist/blocks/designs/checkout-commerce-v1/view/format.js.map +1 -0
  197. package/dist/blocks/designs/checkout-commerce-v1/view/format.mjs +51 -0
  198. package/dist/blocks/designs/checkout-commerce-v1/view/format.mjs.map +1 -0
  199. package/dist/blocks/designs/checkout-commerce-v1/view/option-group.d.ts +17 -0
  200. package/dist/blocks/designs/checkout-commerce-v1/view/option-group.d.ts.map +1 -0
  201. package/dist/blocks/designs/checkout-commerce-v1/view/option-group.js +86 -0
  202. package/dist/blocks/designs/checkout-commerce-v1/view/option-group.js.map +1 -0
  203. package/dist/blocks/designs/checkout-commerce-v1/view/option-group.mjs +62 -0
  204. package/dist/blocks/designs/checkout-commerce-v1/view/option-group.mjs.map +1 -0
  205. package/dist/blocks/designs/checkout-commerce-v1/view/summary-row.d.ts +6 -0
  206. package/dist/blocks/designs/checkout-commerce-v1/view/summary-row.d.ts.map +1 -0
  207. package/dist/blocks/designs/checkout-commerce-v1/view/summary-row.js +39 -0
  208. package/dist/blocks/designs/checkout-commerce-v1/view/summary-row.js.map +1 -0
  209. package/dist/blocks/designs/checkout-commerce-v1/view/summary-row.mjs +15 -0
  210. package/dist/blocks/designs/checkout-commerce-v1/view/summary-row.mjs.map +1 -0
  211. package/dist/blocks/designs/checkout-commerce-v1/view/types.d.ts +370 -0
  212. package/dist/blocks/designs/checkout-commerce-v1/view/types.d.ts.map +1 -0
  213. package/dist/blocks/designs/checkout-commerce-v1/view/types.js +17 -0
  214. package/dist/blocks/designs/checkout-commerce-v1/view/types.js.map +1 -0
  215. package/dist/blocks/designs/checkout-commerce-v1/view/types.mjs +1 -0
  216. package/dist/blocks/designs/checkout-commerce-v1/view/types.mjs.map +1 -0
  217. package/dist/blocks/designs/customer-account-overview/block.d.ts +5 -0
  218. package/dist/blocks/designs/customer-account-overview/block.d.ts.map +1 -0
  219. package/dist/blocks/designs/customer-account-overview/block.js +36 -0
  220. package/dist/blocks/designs/customer-account-overview/block.js.map +1 -0
  221. package/dist/blocks/designs/customer-account-overview/block.mjs +12 -0
  222. package/dist/blocks/designs/customer-account-overview/block.mjs.map +1 -0
  223. package/dist/blocks/designs/customer-account-overview/components/account-card.d.ts +12 -0
  224. package/dist/blocks/designs/customer-account-overview/components/account-card.d.ts.map +1 -0
  225. package/dist/blocks/designs/customer-account-overview/components/account-card.js +57 -0
  226. package/dist/blocks/designs/customer-account-overview/components/account-card.js.map +1 -0
  227. package/dist/blocks/designs/customer-account-overview/components/account-card.mjs +33 -0
  228. package/dist/blocks/designs/customer-account-overview/components/account-card.mjs.map +1 -0
  229. package/dist/blocks/designs/customer-account-overview/components/account-icon.d.ts +17 -0
  230. package/dist/blocks/designs/customer-account-overview/components/account-icon.d.ts.map +1 -0
  231. package/dist/blocks/designs/customer-account-overview/components/account-icon.js +122 -0
  232. package/dist/blocks/designs/customer-account-overview/components/account-icon.js.map +1 -0
  233. package/dist/blocks/designs/customer-account-overview/components/account-icon.mjs +97 -0
  234. package/dist/blocks/designs/customer-account-overview/components/account-icon.mjs.map +1 -0
  235. package/dist/blocks/designs/customer-account-overview/components/account-notice.d.ts +8 -0
  236. package/dist/blocks/designs/customer-account-overview/components/account-notice.d.ts.map +1 -0
  237. package/dist/blocks/designs/customer-account-overview/components/account-notice.js +58 -0
  238. package/dist/blocks/designs/customer-account-overview/components/account-notice.js.map +1 -0
  239. package/dist/blocks/designs/customer-account-overview/components/account-notice.mjs +34 -0
  240. package/dist/blocks/designs/customer-account-overview/components/account-notice.mjs.map +1 -0
  241. package/dist/blocks/designs/customer-account-overview/components/account-overview.d.ts +11 -0
  242. package/dist/blocks/designs/customer-account-overview/components/account-overview.d.ts.map +1 -0
  243. package/dist/blocks/designs/customer-account-overview/components/account-overview.js +64 -0
  244. package/dist/blocks/designs/customer-account-overview/components/account-overview.js.map +1 -0
  245. package/dist/blocks/designs/customer-account-overview/components/account-overview.mjs +40 -0
  246. package/dist/blocks/designs/customer-account-overview/components/account-overview.mjs.map +1 -0
  247. package/dist/blocks/designs/customer-account-overview/contracts.d.ts +241 -0
  248. package/dist/blocks/designs/customer-account-overview/contracts.d.ts.map +1 -0
  249. package/dist/blocks/designs/customer-account-overview/contracts.js +29 -0
  250. package/dist/blocks/designs/customer-account-overview/contracts.js.map +1 -0
  251. package/dist/blocks/designs/customer-account-overview/contracts.mjs +5 -0
  252. package/dist/blocks/designs/customer-account-overview/contracts.mjs.map +1 -0
  253. package/dist/blocks/designs/customer-account-overview/helpers.d.ts +7 -0
  254. package/dist/blocks/designs/customer-account-overview/helpers.d.ts.map +1 -0
  255. package/dist/blocks/designs/customer-account-overview/helpers.js +70 -0
  256. package/dist/blocks/designs/customer-account-overview/helpers.js.map +1 -0
  257. package/dist/blocks/designs/customer-account-overview/helpers.mjs +43 -0
  258. package/dist/blocks/designs/customer-account-overview/helpers.mjs.map +1 -0
  259. package/dist/blocks/designs/customer-account-overview/index.d.ts +3 -0
  260. package/dist/blocks/designs/customer-account-overview/index.d.ts.map +1 -0
  261. package/dist/blocks/designs/customer-account-overview/index.js +36 -0
  262. package/dist/blocks/designs/customer-account-overview/index.js.map +1 -0
  263. package/dist/blocks/designs/customer-account-overview/index.mjs +6 -0
  264. package/dist/blocks/designs/customer-account-overview/index.mjs.map +1 -0
  265. package/dist/blocks/designs/customer-account-overview/modules.d.ts +12 -0
  266. package/dist/blocks/designs/customer-account-overview/modules.d.ts.map +1 -0
  267. package/dist/blocks/designs/customer-account-overview/modules.js +50 -0
  268. package/dist/blocks/designs/customer-account-overview/modules.js.map +1 -0
  269. package/dist/blocks/designs/customer-account-overview/modules.mjs +23 -0
  270. package/dist/blocks/designs/customer-account-overview/modules.mjs.map +1 -0
  271. package/dist/blocks/designs/customer-account-placeholder/block.d.ts +5 -0
  272. package/dist/blocks/designs/customer-account-placeholder/block.d.ts.map +1 -0
  273. package/dist/blocks/designs/customer-account-placeholder/block.js +36 -0
  274. package/dist/blocks/designs/customer-account-placeholder/block.js.map +1 -0
  275. package/dist/blocks/designs/customer-account-placeholder/block.mjs +12 -0
  276. package/dist/blocks/designs/customer-account-placeholder/block.mjs.map +1 -0
  277. package/dist/blocks/designs/customer-account-placeholder/components/module-placeholder.d.ts +8 -0
  278. package/dist/blocks/designs/customer-account-placeholder/components/module-placeholder.d.ts.map +1 -0
  279. package/dist/blocks/designs/customer-account-placeholder/components/module-placeholder.js +46 -0
  280. package/dist/blocks/designs/customer-account-placeholder/components/module-placeholder.js.map +1 -0
  281. package/dist/blocks/designs/customer-account-placeholder/components/module-placeholder.mjs +22 -0
  282. package/dist/blocks/designs/customer-account-placeholder/components/module-placeholder.mjs.map +1 -0
  283. package/dist/blocks/designs/customer-account-placeholder/contracts.d.ts +241 -0
  284. package/dist/blocks/designs/customer-account-placeholder/contracts.d.ts.map +1 -0
  285. package/dist/blocks/designs/customer-account-placeholder/contracts.js +29 -0
  286. package/dist/blocks/designs/customer-account-placeholder/contracts.js.map +1 -0
  287. package/dist/blocks/designs/customer-account-placeholder/contracts.mjs +5 -0
  288. package/dist/blocks/designs/customer-account-placeholder/contracts.mjs.map +1 -0
  289. package/dist/blocks/designs/customer-account-placeholder/index.d.ts +3 -0
  290. package/dist/blocks/designs/customer-account-placeholder/index.d.ts.map +1 -0
  291. package/dist/blocks/designs/customer-account-placeholder/index.js +36 -0
  292. package/dist/blocks/designs/customer-account-placeholder/index.js.map +1 -0
  293. package/dist/blocks/designs/customer-account-placeholder/index.mjs +6 -0
  294. package/dist/blocks/designs/customer-account-placeholder/index.mjs.map +1 -0
  295. package/dist/blocks/designs/customer-account-v1/block.d.ts +5 -0
  296. package/dist/blocks/designs/customer-account-v1/block.d.ts.map +1 -0
  297. package/dist/blocks/designs/customer-account-v1/block.js +36 -0
  298. package/dist/blocks/designs/customer-account-v1/block.js.map +1 -0
  299. package/dist/blocks/designs/customer-account-v1/block.mjs +12 -0
  300. package/dist/blocks/designs/customer-account-v1/block.mjs.map +1 -0
  301. package/dist/blocks/designs/customer-account-v1/components/account-context-bar.d.ts +8 -0
  302. package/dist/blocks/designs/customer-account-v1/components/account-context-bar.d.ts.map +1 -0
  303. package/dist/blocks/designs/customer-account-v1/components/account-context-bar.js +47 -0
  304. package/dist/blocks/designs/customer-account-v1/components/account-context-bar.js.map +1 -0
  305. package/dist/blocks/designs/customer-account-v1/components/account-context-bar.mjs +23 -0
  306. package/dist/blocks/designs/customer-account-v1/components/account-context-bar.mjs.map +1 -0
  307. package/dist/blocks/designs/customer-account-v1/components/account-header.d.ts +11 -0
  308. package/dist/blocks/designs/customer-account-v1/components/account-header.d.ts.map +1 -0
  309. package/dist/blocks/designs/customer-account-v1/components/account-header.js +68 -0
  310. package/dist/blocks/designs/customer-account-v1/components/account-header.js.map +1 -0
  311. package/dist/blocks/designs/customer-account-v1/components/account-header.mjs +44 -0
  312. package/dist/blocks/designs/customer-account-v1/components/account-header.mjs.map +1 -0
  313. package/dist/blocks/designs/customer-account-v1/components/account-icon.d.ts +17 -0
  314. package/dist/blocks/designs/customer-account-v1/components/account-icon.d.ts.map +1 -0
  315. package/dist/blocks/designs/customer-account-v1/components/account-icon.js +122 -0
  316. package/dist/blocks/designs/customer-account-v1/components/account-icon.js.map +1 -0
  317. package/dist/blocks/designs/customer-account-v1/components/account-icon.mjs +97 -0
  318. package/dist/blocks/designs/customer-account-v1/components/account-icon.mjs.map +1 -0
  319. package/dist/blocks/designs/customer-account-v1/components/account-shell.d.ts +11 -0
  320. package/dist/blocks/designs/customer-account-v1/components/account-shell.d.ts.map +1 -0
  321. package/dist/blocks/designs/customer-account-v1/components/account-shell.js +128 -0
  322. package/dist/blocks/designs/customer-account-v1/components/account-shell.js.map +1 -0
  323. package/dist/blocks/designs/customer-account-v1/components/account-shell.mjs +104 -0
  324. package/dist/blocks/designs/customer-account-v1/components/account-shell.mjs.map +1 -0
  325. package/dist/blocks/designs/customer-account-v1/contracts.d.ts +241 -0
  326. package/dist/blocks/designs/customer-account-v1/contracts.d.ts.map +1 -0
  327. package/dist/blocks/designs/customer-account-v1/contracts.js +29 -0
  328. package/dist/blocks/designs/customer-account-v1/contracts.js.map +1 -0
  329. package/dist/blocks/designs/customer-account-v1/contracts.mjs +5 -0
  330. package/dist/blocks/designs/customer-account-v1/contracts.mjs.map +1 -0
  331. package/dist/blocks/designs/customer-account-v1/helpers.d.ts +7 -0
  332. package/dist/blocks/designs/customer-account-v1/helpers.d.ts.map +1 -0
  333. package/dist/blocks/designs/customer-account-v1/helpers.js +70 -0
  334. package/dist/blocks/designs/customer-account-v1/helpers.js.map +1 -0
  335. package/dist/blocks/designs/customer-account-v1/helpers.mjs +43 -0
  336. package/dist/blocks/designs/customer-account-v1/helpers.mjs.map +1 -0
  337. package/dist/blocks/designs/customer-account-v1/index.d.ts +3 -0
  338. package/dist/blocks/designs/customer-account-v1/index.d.ts.map +1 -0
  339. package/dist/blocks/designs/customer-account-v1/index.js +36 -0
  340. package/dist/blocks/designs/customer-account-v1/index.js.map +1 -0
  341. package/dist/blocks/designs/customer-account-v1/index.mjs +6 -0
  342. package/dist/blocks/designs/customer-account-v1/index.mjs.map +1 -0
  343. package/dist/blocks/designs/customer-account-v1/modules.d.ts +12 -0
  344. package/dist/blocks/designs/customer-account-v1/modules.d.ts.map +1 -0
  345. package/dist/blocks/designs/customer-account-v1/modules.js +50 -0
  346. package/dist/blocks/designs/customer-account-v1/modules.js.map +1 -0
  347. package/dist/blocks/designs/customer-account-v1/modules.mjs +23 -0
  348. package/dist/blocks/designs/customer-account-v1/modules.mjs.map +1 -0
  349. package/dist/blocks/designs/customer-favorites/block.d.ts +8 -0
  350. package/dist/blocks/designs/customer-favorites/block.d.ts.map +1 -0
  351. package/dist/blocks/designs/customer-favorites/block.js +36 -0
  352. package/dist/blocks/designs/customer-favorites/block.js.map +1 -0
  353. package/dist/blocks/designs/customer-favorites/block.mjs +12 -0
  354. package/dist/blocks/designs/customer-favorites/block.mjs.map +1 -0
  355. package/dist/blocks/designs/customer-favorites/components/bulk-lists-dialog.d.ts +17 -0
  356. package/dist/blocks/designs/customer-favorites/components/bulk-lists-dialog.d.ts.map +1 -0
  357. package/dist/blocks/designs/customer-favorites/components/bulk-lists-dialog.js +94 -0
  358. package/dist/blocks/designs/customer-favorites/components/bulk-lists-dialog.js.map +1 -0
  359. package/dist/blocks/designs/customer-favorites/components/bulk-lists-dialog.mjs +70 -0
  360. package/dist/blocks/designs/customer-favorites/components/bulk-lists-dialog.mjs.map +1 -0
  361. package/dist/blocks/designs/customer-favorites/components/cart-feedback.d.ts +21 -0
  362. package/dist/blocks/designs/customer-favorites/components/cart-feedback.d.ts.map +1 -0
  363. package/dist/blocks/designs/customer-favorites/components/cart-feedback.js +167 -0
  364. package/dist/blocks/designs/customer-favorites/components/cart-feedback.js.map +1 -0
  365. package/dist/blocks/designs/customer-favorites/components/cart-feedback.mjs +143 -0
  366. package/dist/blocks/designs/customer-favorites/components/cart-feedback.mjs.map +1 -0
  367. package/dist/blocks/designs/customer-favorites/components/confirm-dialog.d.ts +15 -0
  368. package/dist/blocks/designs/customer-favorites/components/confirm-dialog.d.ts.map +1 -0
  369. package/dist/blocks/designs/customer-favorites/components/confirm-dialog.js +67 -0
  370. package/dist/blocks/designs/customer-favorites/components/confirm-dialog.js.map +1 -0
  371. package/dist/blocks/designs/customer-favorites/components/confirm-dialog.mjs +43 -0
  372. package/dist/blocks/designs/customer-favorites/components/confirm-dialog.mjs.map +1 -0
  373. package/dist/blocks/designs/customer-favorites/components/customer-favorites.d.ts +23 -0
  374. package/dist/blocks/designs/customer-favorites/components/customer-favorites.d.ts.map +1 -0
  375. package/dist/blocks/designs/customer-favorites/components/customer-favorites.js +889 -0
  376. package/dist/blocks/designs/customer-favorites/components/customer-favorites.js.map +1 -0
  377. package/dist/blocks/designs/customer-favorites/components/customer-favorites.mjs +874 -0
  378. package/dist/blocks/designs/customer-favorites/components/customer-favorites.mjs.map +1 -0
  379. package/dist/blocks/designs/customer-favorites/components/dialog-frame.d.ts +15 -0
  380. package/dist/blocks/designs/customer-favorites/components/dialog-frame.d.ts.map +1 -0
  381. package/dist/blocks/designs/customer-favorites/components/dialog-frame.js +92 -0
  382. package/dist/blocks/designs/customer-favorites/components/dialog-frame.js.map +1 -0
  383. package/dist/blocks/designs/customer-favorites/components/dialog-frame.mjs +68 -0
  384. package/dist/blocks/designs/customer-favorites/components/dialog-frame.mjs.map +1 -0
  385. package/dist/blocks/designs/customer-favorites/components/favorite-button.d.ts +18 -0
  386. package/dist/blocks/designs/customer-favorites/components/favorite-button.d.ts.map +1 -0
  387. package/dist/blocks/designs/customer-favorites/components/favorite-button.js +77 -0
  388. package/dist/blocks/designs/customer-favorites/components/favorite-button.js.map +1 -0
  389. package/dist/blocks/designs/customer-favorites/components/favorite-button.mjs +53 -0
  390. package/dist/blocks/designs/customer-favorites/components/favorite-button.mjs.map +1 -0
  391. package/dist/blocks/designs/customer-favorites/components/favorite-list-detail.d.ts +17 -0
  392. package/dist/blocks/designs/customer-favorites/components/favorite-list-detail.d.ts.map +1 -0
  393. package/dist/blocks/designs/customer-favorites/components/favorite-list-detail.js +142 -0
  394. package/dist/blocks/designs/customer-favorites/components/favorite-list-detail.js.map +1 -0
  395. package/dist/blocks/designs/customer-favorites/components/favorite-list-detail.mjs +118 -0
  396. package/dist/blocks/designs/customer-favorites/components/favorite-list-detail.mjs.map +1 -0
  397. package/dist/blocks/designs/customer-favorites/components/favorite-product-card.d.ts +30 -0
  398. package/dist/blocks/designs/customer-favorites/components/favorite-product-card.d.ts.map +1 -0
  399. package/dist/blocks/designs/customer-favorites/components/favorite-product-card.js +184 -0
  400. package/dist/blocks/designs/customer-favorites/components/favorite-product-card.js.map +1 -0
  401. package/dist/blocks/designs/customer-favorites/components/favorite-product-card.mjs +160 -0
  402. package/dist/blocks/designs/customer-favorites/components/favorite-product-card.mjs.map +1 -0
  403. package/dist/blocks/designs/customer-favorites/components/favorites-header.d.ts +10 -0
  404. package/dist/blocks/designs/customer-favorites/components/favorites-header.d.ts.map +1 -0
  405. package/dist/blocks/designs/customer-favorites/components/favorites-header.js +68 -0
  406. package/dist/blocks/designs/customer-favorites/components/favorites-header.js.map +1 -0
  407. package/dist/blocks/designs/customer-favorites/components/favorites-header.mjs +44 -0
  408. package/dist/blocks/designs/customer-favorites/components/favorites-header.mjs.map +1 -0
  409. package/dist/blocks/designs/customer-favorites/components/favorites-navigation.d.ts +19 -0
  410. package/dist/blocks/designs/customer-favorites/components/favorites-navigation.d.ts.map +1 -0
  411. package/dist/blocks/designs/customer-favorites/components/favorites-navigation.js +90 -0
  412. package/dist/blocks/designs/customer-favorites/components/favorites-navigation.js.map +1 -0
  413. package/dist/blocks/designs/customer-favorites/components/favorites-navigation.mjs +66 -0
  414. package/dist/blocks/designs/customer-favorites/components/favorites-navigation.mjs.map +1 -0
  415. package/dist/blocks/designs/customer-favorites/components/favorites-status.d.ts +15 -0
  416. package/dist/blocks/designs/customer-favorites/components/favorites-status.d.ts.map +1 -0
  417. package/dist/blocks/designs/customer-favorites/components/favorites-status.js +97 -0
  418. package/dist/blocks/designs/customer-favorites/components/favorites-status.js.map +1 -0
  419. package/dist/blocks/designs/customer-favorites/components/favorites-status.mjs +73 -0
  420. package/dist/blocks/designs/customer-favorites/components/favorites-status.mjs.map +1 -0
  421. package/dist/blocks/designs/customer-favorites/components/list-dialog.d.ts +24 -0
  422. package/dist/blocks/designs/customer-favorites/components/list-dialog.d.ts.map +1 -0
  423. package/dist/blocks/designs/customer-favorites/components/list-dialog.js +124 -0
  424. package/dist/blocks/designs/customer-favorites/components/list-dialog.js.map +1 -0
  425. package/dist/blocks/designs/customer-favorites/components/list-dialog.mjs +100 -0
  426. package/dist/blocks/designs/customer-favorites/components/list-dialog.mjs.map +1 -0
  427. package/dist/blocks/designs/customer-favorites/components/manage-lists-dialog.d.ts +22 -0
  428. package/dist/blocks/designs/customer-favorites/components/manage-lists-dialog.d.ts.map +1 -0
  429. package/dist/blocks/designs/customer-favorites/components/manage-lists-dialog.js +82 -0
  430. package/dist/blocks/designs/customer-favorites/components/manage-lists-dialog.js.map +1 -0
  431. package/dist/blocks/designs/customer-favorites/components/manage-lists-dialog.mjs +58 -0
  432. package/dist/blocks/designs/customer-favorites/components/manage-lists-dialog.mjs.map +1 -0
  433. package/dist/blocks/designs/customer-favorites/components/organize-dialog.d.ts +21 -0
  434. package/dist/blocks/designs/customer-favorites/components/organize-dialog.d.ts.map +1 -0
  435. package/dist/blocks/designs/customer-favorites/components/organize-dialog.js +126 -0
  436. package/dist/blocks/designs/customer-favorites/components/organize-dialog.js.map +1 -0
  437. package/dist/blocks/designs/customer-favorites/components/organize-dialog.mjs +102 -0
  438. package/dist/blocks/designs/customer-favorites/components/organize-dialog.mjs.map +1 -0
  439. package/dist/blocks/designs/customer-favorites/components/quantity-stepper.d.ts +13 -0
  440. package/dist/blocks/designs/customer-favorites/components/quantity-stepper.d.ts.map +1 -0
  441. package/dist/blocks/designs/customer-favorites/components/quantity-stepper.js +80 -0
  442. package/dist/blocks/designs/customer-favorites/components/quantity-stepper.js.map +1 -0
  443. package/dist/blocks/designs/customer-favorites/components/quantity-stepper.mjs +56 -0
  444. package/dist/blocks/designs/customer-favorites/components/quantity-stepper.mjs.map +1 -0
  445. package/dist/blocks/designs/customer-favorites/components/variant-dialog.d.ts +12 -0
  446. package/dist/blocks/designs/customer-favorites/components/variant-dialog.d.ts.map +1 -0
  447. package/dist/blocks/designs/customer-favorites/components/variant-dialog.js +103 -0
  448. package/dist/blocks/designs/customer-favorites/components/variant-dialog.js.map +1 -0
  449. package/dist/blocks/designs/customer-favorites/components/variant-dialog.mjs +79 -0
  450. package/dist/blocks/designs/customer-favorites/components/variant-dialog.mjs.map +1 -0
  451. package/dist/blocks/designs/customer-favorites/contracts.d.ts +350 -0
  452. package/dist/blocks/designs/customer-favorites/contracts.d.ts.map +1 -0
  453. package/dist/blocks/designs/customer-favorites/contracts.js +44 -0
  454. package/dist/blocks/designs/customer-favorites/contracts.js.map +1 -0
  455. package/dist/blocks/designs/customer-favorites/contracts.mjs +19 -0
  456. package/dist/blocks/designs/customer-favorites/contracts.mjs.map +1 -0
  457. package/dist/blocks/designs/customer-favorites/engine.d.ts +78 -0
  458. package/dist/blocks/designs/customer-favorites/engine.d.ts.map +1 -0
  459. package/dist/blocks/designs/customer-favorites/engine.js +320 -0
  460. package/dist/blocks/designs/customer-favorites/engine.js.map +1 -0
  461. package/dist/blocks/designs/customer-favorites/engine.mjs +282 -0
  462. package/dist/blocks/designs/customer-favorites/engine.mjs.map +1 -0
  463. package/dist/blocks/designs/customer-favorites/index.d.ts +3 -0
  464. package/dist/blocks/designs/customer-favorites/index.d.ts.map +1 -0
  465. package/dist/blocks/designs/customer-favorites/index.js +36 -0
  466. package/dist/blocks/designs/customer-favorites/index.js.map +1 -0
  467. package/dist/blocks/designs/customer-favorites/index.mjs +6 -0
  468. package/dist/blocks/designs/customer-favorites/index.mjs.map +1 -0
  469. package/dist/blocks/designs/customer-favorites/permissions.d.ts +16 -0
  470. package/dist/blocks/designs/customer-favorites/permissions.d.ts.map +1 -0
  471. package/dist/blocks/designs/customer-favorites/permissions.js +40 -0
  472. package/dist/blocks/designs/customer-favorites/permissions.js.map +1 -0
  473. package/dist/blocks/designs/customer-favorites/permissions.mjs +16 -0
  474. package/dist/blocks/designs/customer-favorites/permissions.mjs.map +1 -0
  475. package/dist/blocks/designs/customer-favorites/surface-contract.d.ts +346 -0
  476. package/dist/blocks/designs/customer-favorites/surface-contract.d.ts.map +1 -0
  477. package/dist/blocks/designs/customer-favorites/surface-contract.js +17 -0
  478. package/dist/blocks/designs/customer-favorites/surface-contract.js.map +1 -0
  479. package/dist/blocks/designs/customer-favorites/surface-contract.mjs +1 -0
  480. package/dist/blocks/designs/customer-favorites/surface-contract.mjs.map +1 -0
  481. package/dist/blocks/designs/customer-profile/block.d.ts +8 -0
  482. package/dist/blocks/designs/customer-profile/block.d.ts.map +1 -0
  483. package/dist/blocks/designs/customer-profile/block.js +36 -0
  484. package/dist/blocks/designs/customer-profile/block.js.map +1 -0
  485. package/dist/blocks/designs/customer-profile/block.mjs +12 -0
  486. package/dist/blocks/designs/customer-profile/block.mjs.map +1 -0
  487. package/dist/blocks/designs/customer-profile/components/contact-section.d.ts +4 -0
  488. package/dist/blocks/designs/customer-profile/components/contact-section.d.ts.map +1 -0
  489. package/dist/blocks/designs/customer-profile/components/contact-section.js +149 -0
  490. package/dist/blocks/designs/customer-profile/components/contact-section.js.map +1 -0
  491. package/dist/blocks/designs/customer-profile/components/contact-section.mjs +130 -0
  492. package/dist/blocks/designs/customer-profile/components/contact-section.mjs.map +1 -0
  493. package/dist/blocks/designs/customer-profile/components/custom-section.d.ts +4 -0
  494. package/dist/blocks/designs/customer-profile/components/custom-section.d.ts.map +1 -0
  495. package/dist/blocks/designs/customer-profile/components/custom-section.js +112 -0
  496. package/dist/blocks/designs/customer-profile/components/custom-section.js.map +1 -0
  497. package/dist/blocks/designs/customer-profile/components/custom-section.mjs +93 -0
  498. package/dist/blocks/designs/customer-profile/components/custom-section.mjs.map +1 -0
  499. package/dist/blocks/designs/customer-profile/components/customer-profile.d.ts +10 -0
  500. package/dist/blocks/designs/customer-profile/components/customer-profile.d.ts.map +1 -0
  501. package/dist/blocks/designs/customer-profile/components/customer-profile.js +326 -0
  502. package/dist/blocks/designs/customer-profile/components/customer-profile.js.map +1 -0
  503. package/dist/blocks/designs/customer-profile/components/customer-profile.mjs +302 -0
  504. package/dist/blocks/designs/customer-profile/components/customer-profile.mjs.map +1 -0
  505. package/dist/blocks/designs/customer-profile/components/fields.d.ts +62 -0
  506. package/dist/blocks/designs/customer-profile/components/fields.d.ts.map +1 -0
  507. package/dist/blocks/designs/customer-profile/components/fields.js +255 -0
  508. package/dist/blocks/designs/customer-profile/components/fields.js.map +1 -0
  509. package/dist/blocks/designs/customer-profile/components/fields.mjs +225 -0
  510. package/dist/blocks/designs/customer-profile/components/fields.mjs.map +1 -0
  511. package/dist/blocks/designs/customer-profile/components/personal-section.d.ts +4 -0
  512. package/dist/blocks/designs/customer-profile/components/personal-section.d.ts.map +1 -0
  513. package/dist/blocks/designs/customer-profile/components/personal-section.js +107 -0
  514. package/dist/blocks/designs/customer-profile/components/personal-section.js.map +1 -0
  515. package/dist/blocks/designs/customer-profile/components/personal-section.mjs +82 -0
  516. package/dist/blocks/designs/customer-profile/components/personal-section.mjs.map +1 -0
  517. package/dist/blocks/designs/customer-profile/components/preferences-section.d.ts +4 -0
  518. package/dist/blocks/designs/customer-profile/components/preferences-section.d.ts.map +1 -0
  519. package/dist/blocks/designs/customer-profile/components/preferences-section.js +166 -0
  520. package/dist/blocks/designs/customer-profile/components/preferences-section.js.map +1 -0
  521. package/dist/blocks/designs/customer-profile/components/preferences-section.mjs +146 -0
  522. package/dist/blocks/designs/customer-profile/components/preferences-section.mjs.map +1 -0
  523. package/dist/blocks/designs/customer-profile/components/professional-section.d.ts +4 -0
  524. package/dist/blocks/designs/customer-profile/components/professional-section.d.ts.map +1 -0
  525. package/dist/blocks/designs/customer-profile/components/professional-section.js +152 -0
  526. package/dist/blocks/designs/customer-profile/components/professional-section.js.map +1 -0
  527. package/dist/blocks/designs/customer-profile/components/professional-section.mjs +127 -0
  528. package/dist/blocks/designs/customer-profile/components/professional-section.mjs.map +1 -0
  529. package/dist/blocks/designs/customer-profile/components/profile-header.d.ts +11 -0
  530. package/dist/blocks/designs/customer-profile/components/profile-header.d.ts.map +1 -0
  531. package/dist/blocks/designs/customer-profile/components/profile-header.js +64 -0
  532. package/dist/blocks/designs/customer-profile/components/profile-header.js.map +1 -0
  533. package/dist/blocks/designs/customer-profile/components/profile-header.mjs +40 -0
  534. package/dist/blocks/designs/customer-profile/components/profile-header.mjs.map +1 -0
  535. package/dist/blocks/designs/customer-profile/components/profile-section.d.ts +13 -0
  536. package/dist/blocks/designs/customer-profile/components/profile-section.d.ts.map +1 -0
  537. package/dist/blocks/designs/customer-profile/components/profile-section.js +58 -0
  538. package/dist/blocks/designs/customer-profile/components/profile-section.js.map +1 -0
  539. package/dist/blocks/designs/customer-profile/components/profile-section.mjs +34 -0
  540. package/dist/blocks/designs/customer-profile/components/profile-section.mjs.map +1 -0
  541. package/dist/blocks/designs/customer-profile/components/profile-states.d.ts +13 -0
  542. package/dist/blocks/designs/customer-profile/components/profile-states.d.ts.map +1 -0
  543. package/dist/blocks/designs/customer-profile/components/profile-states.js +75 -0
  544. package/dist/blocks/designs/customer-profile/components/profile-states.js.map +1 -0
  545. package/dist/blocks/designs/customer-profile/components/profile-states.mjs +49 -0
  546. package/dist/blocks/designs/customer-profile/components/profile-states.mjs.map +1 -0
  547. package/dist/blocks/designs/customer-profile/components/section-body.d.ts +5 -0
  548. package/dist/blocks/designs/customer-profile/components/section-body.d.ts.map +1 -0
  549. package/dist/blocks/designs/customer-profile/components/section-body.js +64 -0
  550. package/dist/blocks/designs/customer-profile/components/section-body.js.map +1 -0
  551. package/dist/blocks/designs/customer-profile/components/section-body.mjs +39 -0
  552. package/dist/blocks/designs/customer-profile/components/section-body.mjs.map +1 -0
  553. package/dist/blocks/designs/customer-profile/components/types.d.ts +20 -0
  554. package/dist/blocks/designs/customer-profile/components/types.d.ts.map +1 -0
  555. package/dist/blocks/designs/customer-profile/components/types.js +42 -0
  556. package/dist/blocks/designs/customer-profile/components/types.js.map +1 -0
  557. package/dist/blocks/designs/customer-profile/components/types.mjs +16 -0
  558. package/dist/blocks/designs/customer-profile/components/types.mjs.map +1 -0
  559. package/dist/blocks/designs/customer-profile/config.d.ts +21 -0
  560. package/dist/blocks/designs/customer-profile/config.d.ts.map +1 -0
  561. package/dist/blocks/designs/customer-profile/config.js +119 -0
  562. package/dist/blocks/designs/customer-profile/config.js.map +1 -0
  563. package/dist/blocks/designs/customer-profile/config.mjs +91 -0
  564. package/dist/blocks/designs/customer-profile/config.mjs.map +1 -0
  565. package/dist/blocks/designs/customer-profile/contracts.d.ts +259 -0
  566. package/dist/blocks/designs/customer-profile/contracts.d.ts.map +1 -0
  567. package/dist/blocks/designs/customer-profile/contracts.js +35 -0
  568. package/dist/blocks/designs/customer-profile/contracts.js.map +1 -0
  569. package/dist/blocks/designs/customer-profile/contracts.mjs +11 -0
  570. package/dist/blocks/designs/customer-profile/contracts.mjs.map +1 -0
  571. package/dist/blocks/designs/customer-profile/drafts.d.ts +16 -0
  572. package/dist/blocks/designs/customer-profile/drafts.d.ts.map +1 -0
  573. package/dist/blocks/designs/customer-profile/drafts.js +220 -0
  574. package/dist/blocks/designs/customer-profile/drafts.js.map +1 -0
  575. package/dist/blocks/designs/customer-profile/drafts.mjs +194 -0
  576. package/dist/blocks/designs/customer-profile/drafts.mjs.map +1 -0
  577. package/dist/blocks/designs/customer-profile/format.d.ts +11 -0
  578. package/dist/blocks/designs/customer-profile/format.d.ts.map +1 -0
  579. package/dist/blocks/designs/customer-profile/format.js +63 -0
  580. package/dist/blocks/designs/customer-profile/format.js.map +1 -0
  581. package/dist/blocks/designs/customer-profile/format.mjs +36 -0
  582. package/dist/blocks/designs/customer-profile/format.mjs.map +1 -0
  583. package/dist/blocks/designs/customer-profile/index.d.ts +3 -0
  584. package/dist/blocks/designs/customer-profile/index.d.ts.map +1 -0
  585. package/dist/blocks/designs/customer-profile/index.js +36 -0
  586. package/dist/blocks/designs/customer-profile/index.js.map +1 -0
  587. package/dist/blocks/designs/customer-profile/index.mjs +6 -0
  588. package/dist/blocks/designs/customer-profile/index.mjs.map +1 -0
  589. package/dist/blocks/designs/customer-profile/validation.d.ts +10 -0
  590. package/dist/blocks/designs/customer-profile/validation.d.ts.map +1 -0
  591. package/dist/blocks/designs/customer-profile/validation.js +180 -0
  592. package/dist/blocks/designs/customer-profile/validation.js.map +1 -0
  593. package/dist/blocks/designs/customer-profile/validation.mjs +154 -0
  594. package/dist/blocks/designs/customer-profile/validation.mjs.map +1 -0
  595. package/dist/blocks/designs/mega-menu-universal/block.d.ts +14 -0
  596. package/dist/blocks/designs/mega-menu-universal/block.d.ts.map +1 -0
  597. package/dist/blocks/designs/mega-menu-universal/block.js +44 -0
  598. package/dist/blocks/designs/mega-menu-universal/block.js.map +1 -0
  599. package/dist/blocks/designs/mega-menu-universal/block.mjs +24 -0
  600. package/dist/blocks/designs/mega-menu-universal/block.mjs.map +1 -0
  601. package/dist/blocks/designs/mega-menu-universal/category-parts.d.ts +43 -0
  602. package/dist/blocks/designs/mega-menu-universal/category-parts.d.ts.map +1 -0
  603. package/dist/blocks/designs/mega-menu-universal/category-parts.js +152 -0
  604. package/dist/blocks/designs/mega-menu-universal/category-parts.js.map +1 -0
  605. package/dist/blocks/designs/mega-menu-universal/category-parts.mjs +122 -0
  606. package/dist/blocks/designs/mega-menu-universal/category-parts.mjs.map +1 -0
  607. package/dist/blocks/designs/mega-menu-universal/config.d.ts +11 -0
  608. package/dist/blocks/designs/mega-menu-universal/config.d.ts.map +1 -0
  609. package/dist/blocks/designs/mega-menu-universal/config.js +94 -0
  610. package/dist/blocks/designs/mega-menu-universal/config.js.map +1 -0
  611. package/dist/blocks/designs/mega-menu-universal/config.mjs +69 -0
  612. package/dist/blocks/designs/mega-menu-universal/config.mjs.map +1 -0
  613. package/dist/blocks/designs/mega-menu-universal/contracts.d.ts +86 -0
  614. package/dist/blocks/designs/mega-menu-universal/contracts.d.ts.map +1 -0
  615. package/dist/blocks/designs/mega-menu-universal/contracts.js +17 -0
  616. package/dist/blocks/designs/mega-menu-universal/contracts.js.map +1 -0
  617. package/dist/blocks/designs/mega-menu-universal/contracts.mjs +1 -0
  618. package/dist/blocks/designs/mega-menu-universal/contracts.mjs.map +1 -0
  619. package/dist/blocks/designs/mega-menu-universal/desktop-panel.d.ts +12 -0
  620. package/dist/blocks/designs/mega-menu-universal/desktop-panel.d.ts.map +1 -0
  621. package/dist/blocks/designs/mega-menu-universal/desktop-panel.js +424 -0
  622. package/dist/blocks/designs/mega-menu-universal/desktop-panel.js.map +1 -0
  623. package/dist/blocks/designs/mega-menu-universal/desktop-panel.mjs +408 -0
  624. package/dist/blocks/designs/mega-menu-universal/desktop-panel.mjs.map +1 -0
  625. package/dist/blocks/designs/mega-menu-universal/drilldown.d.ts +21 -0
  626. package/dist/blocks/designs/mega-menu-universal/drilldown.d.ts.map +1 -0
  627. package/dist/blocks/designs/mega-menu-universal/drilldown.js +65 -0
  628. package/dist/blocks/designs/mega-menu-universal/drilldown.js.map +1 -0
  629. package/dist/blocks/designs/mega-menu-universal/drilldown.mjs +38 -0
  630. package/dist/blocks/designs/mega-menu-universal/drilldown.mjs.map +1 -0
  631. package/dist/blocks/designs/mega-menu-universal/icons.d.ts +11 -0
  632. package/dist/blocks/designs/mega-menu-universal/icons.d.ts.map +1 -0
  633. package/dist/blocks/designs/mega-menu-universal/icons.js +84 -0
  634. package/dist/blocks/designs/mega-menu-universal/icons.js.map +1 -0
  635. package/dist/blocks/designs/mega-menu-universal/icons.mjs +55 -0
  636. package/dist/blocks/designs/mega-menu-universal/icons.mjs.map +1 -0
  637. package/dist/blocks/designs/mega-menu-universal/index.d.ts +3 -0
  638. package/dist/blocks/designs/mega-menu-universal/index.d.ts.map +1 -0
  639. package/dist/blocks/designs/mega-menu-universal/index.js +36 -0
  640. package/dist/blocks/designs/mega-menu-universal/index.js.map +1 -0
  641. package/dist/blocks/designs/mega-menu-universal/index.mjs +6 -0
  642. package/dist/blocks/designs/mega-menu-universal/index.mjs.map +1 -0
  643. package/dist/blocks/designs/mega-menu-universal/intent.d.ts +56 -0
  644. package/dist/blocks/designs/mega-menu-universal/intent.d.ts.map +1 -0
  645. package/dist/blocks/designs/mega-menu-universal/intent.js +86 -0
  646. package/dist/blocks/designs/mega-menu-universal/intent.js.map +1 -0
  647. package/dist/blocks/designs/mega-menu-universal/intent.mjs +58 -0
  648. package/dist/blocks/designs/mega-menu-universal/intent.mjs.map +1 -0
  649. package/dist/blocks/designs/mega-menu-universal/labels.d.ts +9 -0
  650. package/dist/blocks/designs/mega-menu-universal/labels.d.ts.map +1 -0
  651. package/dist/blocks/designs/mega-menu-universal/labels.js +40 -0
  652. package/dist/blocks/designs/mega-menu-universal/labels.js.map +1 -0
  653. package/dist/blocks/designs/mega-menu-universal/labels.mjs +15 -0
  654. package/dist/blocks/designs/mega-menu-universal/labels.mjs.map +1 -0
  655. package/dist/blocks/designs/mega-menu-universal/menu.d.ts +17 -0
  656. package/dist/blocks/designs/mega-menu-universal/menu.d.ts.map +1 -0
  657. package/dist/blocks/designs/mega-menu-universal/menu.js +342 -0
  658. package/dist/blocks/designs/mega-menu-universal/menu.js.map +1 -0
  659. package/dist/blocks/designs/mega-menu-universal/menu.mjs +325 -0
  660. package/dist/blocks/designs/mega-menu-universal/menu.mjs.map +1 -0
  661. package/dist/blocks/designs/mega-menu-universal/mobile-menu.d.ts +12 -0
  662. package/dist/blocks/designs/mega-menu-universal/mobile-menu.d.ts.map +1 -0
  663. package/dist/blocks/designs/mega-menu-universal/mobile-menu.js +258 -0
  664. package/dist/blocks/designs/mega-menu-universal/mobile-menu.js.map +1 -0
  665. package/dist/blocks/designs/mega-menu-universal/mobile-menu.mjs +234 -0
  666. package/dist/blocks/designs/mega-menu-universal/mobile-menu.mjs.map +1 -0
  667. package/dist/blocks/designs/mega-menu-universal/presentation.d.ts +31 -0
  668. package/dist/blocks/designs/mega-menu-universal/presentation.d.ts.map +1 -0
  669. package/dist/blocks/designs/mega-menu-universal/presentation.js +73 -0
  670. package/dist/blocks/designs/mega-menu-universal/presentation.js.map +1 -0
  671. package/dist/blocks/designs/mega-menu-universal/presentation.mjs +44 -0
  672. package/dist/blocks/designs/mega-menu-universal/presentation.mjs.map +1 -0
  673. package/dist/blocks/designs/mega-menu-universal/taxonomy.d.ts +23 -0
  674. package/dist/blocks/designs/mega-menu-universal/taxonomy.d.ts.map +1 -0
  675. package/dist/blocks/designs/mega-menu-universal/taxonomy.js +98 -0
  676. package/dist/blocks/designs/mega-menu-universal/taxonomy.js.map +1 -0
  677. package/dist/blocks/designs/mega-menu-universal/taxonomy.mjs +65 -0
  678. package/dist/blocks/designs/mega-menu-universal/taxonomy.mjs.map +1 -0
  679. package/dist/blocks/designs/order-detail/block.d.ts +8 -0
  680. package/dist/blocks/designs/order-detail/block.d.ts.map +1 -0
  681. package/dist/blocks/designs/order-detail/block.js +36 -0
  682. package/dist/blocks/designs/order-detail/block.js.map +1 -0
  683. package/dist/blocks/designs/order-detail/block.mjs +12 -0
  684. package/dist/blocks/designs/order-detail/block.mjs.map +1 -0
  685. package/dist/blocks/designs/order-detail/components/actions.d.ts +11 -0
  686. package/dist/blocks/designs/order-detail/components/actions.d.ts.map +1 -0
  687. package/dist/blocks/designs/order-detail/components/actions.js +64 -0
  688. package/dist/blocks/designs/order-detail/components/actions.js.map +1 -0
  689. package/dist/blocks/designs/order-detail/components/actions.mjs +40 -0
  690. package/dist/blocks/designs/order-detail/components/actions.mjs.map +1 -0
  691. package/dist/blocks/designs/order-detail/components/addresses.d.ts +8 -0
  692. package/dist/blocks/designs/order-detail/components/addresses.d.ts.map +1 -0
  693. package/dist/blocks/designs/order-detail/components/addresses.js +57 -0
  694. package/dist/blocks/designs/order-detail/components/addresses.js.map +1 -0
  695. package/dist/blocks/designs/order-detail/components/addresses.mjs +33 -0
  696. package/dist/blocks/designs/order-detail/components/addresses.mjs.map +1 -0
  697. package/dist/blocks/designs/order-detail/components/after-sales.d.ts +18 -0
  698. package/dist/blocks/designs/order-detail/components/after-sales.d.ts.map +1 -0
  699. package/dist/blocks/designs/order-detail/components/after-sales.js +213 -0
  700. package/dist/blocks/designs/order-detail/components/after-sales.js.map +1 -0
  701. package/dist/blocks/designs/order-detail/components/after-sales.mjs +185 -0
  702. package/dist/blocks/designs/order-detail/components/after-sales.mjs.map +1 -0
  703. package/dist/blocks/designs/order-detail/components/b2b.d.ts +12 -0
  704. package/dist/blocks/designs/order-detail/components/b2b.d.ts.map +1 -0
  705. package/dist/blocks/designs/order-detail/components/b2b.js +73 -0
  706. package/dist/blocks/designs/order-detail/components/b2b.js.map +1 -0
  707. package/dist/blocks/designs/order-detail/components/b2b.mjs +49 -0
  708. package/dist/blocks/designs/order-detail/components/b2b.mjs.map +1 -0
  709. package/dist/blocks/designs/order-detail/components/documents.d.ts +21 -0
  710. package/dist/blocks/designs/order-detail/components/documents.d.ts.map +1 -0
  711. package/dist/blocks/designs/order-detail/components/documents.js +88 -0
  712. package/dist/blocks/designs/order-detail/components/documents.js.map +1 -0
  713. package/dist/blocks/designs/order-detail/components/documents.mjs +63 -0
  714. package/dist/blocks/designs/order-detail/components/documents.mjs.map +1 -0
  715. package/dist/blocks/designs/order-detail/components/feedback.d.ts +19 -0
  716. package/dist/blocks/designs/order-detail/components/feedback.d.ts.map +1 -0
  717. package/dist/blocks/designs/order-detail/components/feedback.js +87 -0
  718. package/dist/blocks/designs/order-detail/components/feedback.js.map +1 -0
  719. package/dist/blocks/designs/order-detail/components/feedback.mjs +59 -0
  720. package/dist/blocks/designs/order-detail/components/feedback.mjs.map +1 -0
  721. package/dist/blocks/designs/order-detail/components/fulfilment.d.ts +36 -0
  722. package/dist/blocks/designs/order-detail/components/fulfilment.d.ts.map +1 -0
  723. package/dist/blocks/designs/order-detail/components/fulfilment.js +341 -0
  724. package/dist/blocks/designs/order-detail/components/fulfilment.js.map +1 -0
  725. package/dist/blocks/designs/order-detail/components/fulfilment.mjs +315 -0
  726. package/dist/blocks/designs/order-detail/components/fulfilment.mjs.map +1 -0
  727. package/dist/blocks/designs/order-detail/components/header.d.ts +19 -0
  728. package/dist/blocks/designs/order-detail/components/header.d.ts.map +1 -0
  729. package/dist/blocks/designs/order-detail/components/header.js +87 -0
  730. package/dist/blocks/designs/order-detail/components/header.js.map +1 -0
  731. package/dist/blocks/designs/order-detail/components/header.mjs +68 -0
  732. package/dist/blocks/designs/order-detail/components/header.mjs.map +1 -0
  733. package/dist/blocks/designs/order-detail/components/icons.d.ts +18 -0
  734. package/dist/blocks/designs/order-detail/components/icons.d.ts.map +1 -0
  735. package/dist/blocks/designs/order-detail/components/icons.js +153 -0
  736. package/dist/blocks/designs/order-detail/components/icons.js.map +1 -0
  737. package/dist/blocks/designs/order-detail/components/icons.mjs +117 -0
  738. package/dist/blocks/designs/order-detail/components/icons.mjs.map +1 -0
  739. package/dist/blocks/designs/order-detail/components/item-card.d.ts +24 -0
  740. package/dist/blocks/designs/order-detail/components/item-card.d.ts.map +1 -0
  741. package/dist/blocks/designs/order-detail/components/item-card.js +263 -0
  742. package/dist/blocks/designs/order-detail/components/item-card.js.map +1 -0
  743. package/dist/blocks/designs/order-detail/components/item-card.mjs +244 -0
  744. package/dist/blocks/designs/order-detail/components/item-card.mjs.map +1 -0
  745. package/dist/blocks/designs/order-detail/components/order-detail.d.ts +10 -0
  746. package/dist/blocks/designs/order-detail/components/order-detail.d.ts.map +1 -0
  747. package/dist/blocks/designs/order-detail/components/order-detail.js +362 -0
  748. package/dist/blocks/designs/order-detail/components/order-detail.js.map +1 -0
  749. package/dist/blocks/designs/order-detail/components/order-detail.mjs +343 -0
  750. package/dist/blocks/designs/order-detail/components/order-detail.mjs.map +1 -0
  751. package/dist/blocks/designs/order-detail/components/payments.d.ts +13 -0
  752. package/dist/blocks/designs/order-detail/components/payments.d.ts.map +1 -0
  753. package/dist/blocks/designs/order-detail/components/payments.js +87 -0
  754. package/dist/blocks/designs/order-detail/components/payments.js.map +1 -0
  755. package/dist/blocks/designs/order-detail/components/payments.mjs +62 -0
  756. package/dist/blocks/designs/order-detail/components/payments.mjs.map +1 -0
  757. package/dist/blocks/designs/order-detail/components/pricing.d.ts +12 -0
  758. package/dist/blocks/designs/order-detail/components/pricing.d.ts.map +1 -0
  759. package/dist/blocks/designs/order-detail/components/pricing.js +214 -0
  760. package/dist/blocks/designs/order-detail/components/pricing.js.map +1 -0
  761. package/dist/blocks/designs/order-detail/components/pricing.mjs +195 -0
  762. package/dist/blocks/designs/order-detail/components/pricing.mjs.map +1 -0
  763. package/dist/blocks/designs/order-detail/components/promotions.d.ts +24 -0
  764. package/dist/blocks/designs/order-detail/components/promotions.d.ts.map +1 -0
  765. package/dist/blocks/designs/order-detail/components/promotions.js +135 -0
  766. package/dist/blocks/designs/order-detail/components/promotions.js.map +1 -0
  767. package/dist/blocks/designs/order-detail/components/promotions.mjs +109 -0
  768. package/dist/blocks/designs/order-detail/components/promotions.mjs.map +1 -0
  769. package/dist/blocks/designs/order-detail/components/revisions.d.ts +11 -0
  770. package/dist/blocks/designs/order-detail/components/revisions.d.ts.map +1 -0
  771. package/dist/blocks/designs/order-detail/components/revisions.js +53 -0
  772. package/dist/blocks/designs/order-detail/components/revisions.js.map +1 -0
  773. package/dist/blocks/designs/order-detail/components/revisions.mjs +29 -0
  774. package/dist/blocks/designs/order-detail/components/revisions.mjs.map +1 -0
  775. package/dist/blocks/designs/order-detail/components/status-summary.d.ts +14 -0
  776. package/dist/blocks/designs/order-detail/components/status-summary.d.ts.map +1 -0
  777. package/dist/blocks/designs/order-detail/components/status-summary.js +71 -0
  778. package/dist/blocks/designs/order-detail/components/status-summary.js.map +1 -0
  779. package/dist/blocks/designs/order-detail/components/status-summary.mjs +47 -0
  780. package/dist/blocks/designs/order-detail/components/status-summary.mjs.map +1 -0
  781. package/dist/blocks/designs/order-detail/components/ui.d.ts +61 -0
  782. package/dist/blocks/designs/order-detail/components/ui.d.ts.map +1 -0
  783. package/dist/blocks/designs/order-detail/components/ui.js +220 -0
  784. package/dist/blocks/designs/order-detail/components/ui.js.map +1 -0
  785. package/dist/blocks/designs/order-detail/components/ui.mjs +188 -0
  786. package/dist/blocks/designs/order-detail/components/ui.mjs.map +1 -0
  787. package/dist/blocks/designs/order-detail/contracts.d.ts +717 -0
  788. package/dist/blocks/designs/order-detail/contracts.d.ts.map +1 -0
  789. package/dist/blocks/designs/order-detail/contracts.js +88 -0
  790. package/dist/blocks/designs/order-detail/contracts.js.map +1 -0
  791. package/dist/blocks/designs/order-detail/contracts.mjs +61 -0
  792. package/dist/blocks/designs/order-detail/contracts.mjs.map +1 -0
  793. package/dist/blocks/designs/order-detail/engine.d.ts +83 -0
  794. package/dist/blocks/designs/order-detail/engine.d.ts.map +1 -0
  795. package/dist/blocks/designs/order-detail/engine.js +470 -0
  796. package/dist/blocks/designs/order-detail/engine.js.map +1 -0
  797. package/dist/blocks/designs/order-detail/engine.mjs +418 -0
  798. package/dist/blocks/designs/order-detail/engine.mjs.map +1 -0
  799. package/dist/blocks/designs/order-detail/index.d.ts +3 -0
  800. package/dist/blocks/designs/order-detail/index.d.ts.map +1 -0
  801. package/dist/blocks/designs/order-detail/index.js +36 -0
  802. package/dist/blocks/designs/order-detail/index.js.map +1 -0
  803. package/dist/blocks/designs/order-detail/index.mjs +6 -0
  804. package/dist/blocks/designs/order-detail/index.mjs.map +1 -0
  805. package/dist/blocks/designs/order-detail/money.d.ts +27 -0
  806. package/dist/blocks/designs/order-detail/money.d.ts.map +1 -0
  807. package/dist/blocks/designs/order-detail/money.js +124 -0
  808. package/dist/blocks/designs/order-detail/money.js.map +1 -0
  809. package/dist/blocks/designs/order-detail/money.mjs +91 -0
  810. package/dist/blocks/designs/order-detail/money.mjs.map +1 -0
  811. package/dist/blocks/designs/order-detail/presentation.d.ts +34 -0
  812. package/dist/blocks/designs/order-detail/presentation.d.ts.map +1 -0
  813. package/dist/blocks/designs/order-detail/presentation.js +112 -0
  814. package/dist/blocks/designs/order-detail/presentation.js.map +1 -0
  815. package/dist/blocks/designs/order-detail/presentation.mjs +93 -0
  816. package/dist/blocks/designs/order-detail/presentation.mjs.map +1 -0
  817. package/dist/blocks/designs/order-detail/promotions.d.ts +14 -0
  818. package/dist/blocks/designs/order-detail/promotions.d.ts.map +1 -0
  819. package/dist/blocks/designs/order-detail/promotions.js +152 -0
  820. package/dist/blocks/designs/order-detail/promotions.js.map +1 -0
  821. package/dist/blocks/designs/order-detail/promotions.mjs +125 -0
  822. package/dist/blocks/designs/order-detail/promotions.mjs.map +1 -0
  823. package/dist/blocks/designs/order-history/components/bulk-bar.d.ts +14 -0
  824. package/dist/blocks/designs/order-history/components/bulk-bar.d.ts.map +1 -0
  825. package/dist/blocks/designs/order-history/components/bulk-bar.js +61 -0
  826. package/dist/blocks/designs/order-history/components/bulk-bar.js.map +1 -0
  827. package/dist/blocks/designs/order-history/components/bulk-bar.mjs +37 -0
  828. package/dist/blocks/designs/order-history/components/bulk-bar.mjs.map +1 -0
  829. package/dist/blocks/designs/order-history/components/controls.d.ts +25 -0
  830. package/dist/blocks/designs/order-history/components/controls.d.ts.map +1 -0
  831. package/dist/blocks/designs/order-history/components/controls.js +168 -0
  832. package/dist/blocks/designs/order-history/components/controls.js.map +1 -0
  833. package/dist/blocks/designs/order-history/components/controls.mjs +144 -0
  834. package/dist/blocks/designs/order-history/components/controls.mjs.map +1 -0
  835. package/dist/blocks/designs/order-history/components/feedback.d.ts +30 -0
  836. package/dist/blocks/designs/order-history/components/feedback.d.ts.map +1 -0
  837. package/dist/blocks/designs/order-history/components/feedback.js +107 -0
  838. package/dist/blocks/designs/order-history/components/feedback.js.map +1 -0
  839. package/dist/blocks/designs/order-history/components/feedback.mjs +79 -0
  840. package/dist/blocks/designs/order-history/components/feedback.mjs.map +1 -0
  841. package/dist/blocks/designs/order-history/components/header.d.ts +15 -0
  842. package/dist/blocks/designs/order-history/components/header.d.ts.map +1 -0
  843. package/dist/blocks/designs/order-history/components/header.js +47 -0
  844. package/dist/blocks/designs/order-history/components/header.js.map +1 -0
  845. package/dist/blocks/designs/order-history/components/header.mjs +23 -0
  846. package/dist/blocks/designs/order-history/components/header.mjs.map +1 -0
  847. package/dist/blocks/designs/order-history/components/icons.d.ts +8 -0
  848. package/dist/blocks/designs/order-history/components/icons.d.ts.map +1 -0
  849. package/dist/blocks/designs/order-history/components/icons.js +103 -0
  850. package/dist/blocks/designs/order-history/components/icons.js.map +1 -0
  851. package/dist/blocks/designs/order-history/components/icons.mjs +79 -0
  852. package/dist/blocks/designs/order-history/components/icons.mjs.map +1 -0
  853. package/dist/blocks/designs/order-history/components/order-actions.d.ts +17 -0
  854. package/dist/blocks/designs/order-history/components/order-actions.d.ts.map +1 -0
  855. package/dist/blocks/designs/order-history/components/order-actions.js +100 -0
  856. package/dist/blocks/designs/order-history/components/order-actions.js.map +1 -0
  857. package/dist/blocks/designs/order-history/components/order-actions.mjs +75 -0
  858. package/dist/blocks/designs/order-history/components/order-actions.mjs.map +1 -0
  859. package/dist/blocks/designs/order-history/components/order-card.d.ts +18 -0
  860. package/dist/blocks/designs/order-history/components/order-card.d.ts.map +1 -0
  861. package/dist/blocks/designs/order-history/components/order-card.js +183 -0
  862. package/dist/blocks/designs/order-history/components/order-card.js.map +1 -0
  863. package/dist/blocks/designs/order-history/components/order-card.mjs +159 -0
  864. package/dist/blocks/designs/order-history/components/order-card.mjs.map +1 -0
  865. package/dist/blocks/designs/order-history/components/order-history.d.ts +8 -0
  866. package/dist/blocks/designs/order-history/components/order-history.d.ts.map +1 -0
  867. package/dist/blocks/designs/order-history/components/order-history.js +310 -0
  868. package/dist/blocks/designs/order-history/components/order-history.js.map +1 -0
  869. package/dist/blocks/designs/order-history/components/order-history.mjs +291 -0
  870. package/dist/blocks/designs/order-history/components/order-history.mjs.map +1 -0
  871. package/dist/blocks/designs/order-history/components/order-table.d.ts +23 -0
  872. package/dist/blocks/designs/order-history/components/order-table.d.ts.map +1 -0
  873. package/dist/blocks/designs/order-history/components/order-table.js +221 -0
  874. package/dist/blocks/designs/order-history/components/order-table.js.map +1 -0
  875. package/dist/blocks/designs/order-history/components/order-table.mjs +197 -0
  876. package/dist/blocks/designs/order-history/components/order-table.mjs.map +1 -0
  877. package/dist/blocks/designs/order-history/components/pagination.d.ts +13 -0
  878. package/dist/blocks/designs/order-history/components/pagination.d.ts.map +1 -0
  879. package/dist/blocks/designs/order-history/components/pagination.js +83 -0
  880. package/dist/blocks/designs/order-history/components/pagination.js.map +1 -0
  881. package/dist/blocks/designs/order-history/components/pagination.mjs +59 -0
  882. package/dist/blocks/designs/order-history/components/pagination.mjs.map +1 -0
  883. package/dist/blocks/designs/order-history/components/status-badge.d.ts +12 -0
  884. package/dist/blocks/designs/order-history/components/status-badge.d.ts.map +1 -0
  885. package/dist/blocks/designs/order-history/components/status-badge.js +68 -0
  886. package/dist/blocks/designs/order-history/components/status-badge.js.map +1 -0
  887. package/dist/blocks/designs/order-history/components/status-badge.mjs +42 -0
  888. package/dist/blocks/designs/order-history/components/status-badge.mjs.map +1 -0
  889. package/dist/blocks/designs/order-history/components/toolbar-button.d.ts +13 -0
  890. package/dist/blocks/designs/order-history/components/toolbar-button.d.ts.map +1 -0
  891. package/dist/blocks/designs/order-history/components/toolbar-button.js +56 -0
  892. package/dist/blocks/designs/order-history/components/toolbar-button.js.map +1 -0
  893. package/dist/blocks/designs/order-history/components/toolbar-button.mjs +32 -0
  894. package/dist/blocks/designs/order-history/components/toolbar-button.mjs.map +1 -0
  895. package/dist/blocks/designs/order-history/contracts.d.ts +295 -0
  896. package/dist/blocks/designs/order-history/contracts.d.ts.map +1 -0
  897. package/dist/blocks/designs/order-history/contracts.js +102 -0
  898. package/dist/blocks/designs/order-history/contracts.js.map +1 -0
  899. package/dist/blocks/designs/order-history/contracts.mjs +70 -0
  900. package/dist/blocks/designs/order-history/contracts.mjs.map +1 -0
  901. package/dist/blocks/designs/order-history/engine.d.ts +57 -0
  902. package/dist/blocks/designs/order-history/engine.d.ts.map +1 -0
  903. package/dist/blocks/designs/order-history/engine.js +289 -0
  904. package/dist/blocks/designs/order-history/engine.js.map +1 -0
  905. package/dist/blocks/designs/order-history/engine.mjs +251 -0
  906. package/dist/blocks/designs/order-history/engine.mjs.map +1 -0
  907. package/dist/blocks/designs/order-history/index.d.ts +13 -0
  908. package/dist/blocks/designs/order-history/index.d.ts.map +1 -0
  909. package/dist/blocks/designs/order-history/index.js +36 -0
  910. package/dist/blocks/designs/order-history/index.js.map +1 -0
  911. package/dist/blocks/designs/order-history/index.mjs +12 -0
  912. package/dist/blocks/designs/order-history/index.mjs.map +1 -0
  913. package/dist/blocks/designs/order-history/money.d.ts +15 -0
  914. package/dist/blocks/designs/order-history/money.d.ts.map +1 -0
  915. package/dist/blocks/designs/order-history/money.js +97 -0
  916. package/dist/blocks/designs/order-history/money.js.map +1 -0
  917. package/dist/blocks/designs/order-history/money.mjs +69 -0
  918. package/dist/blocks/designs/order-history/money.mjs.map +1 -0
  919. package/dist/blocks/designs/universal-banner/analytics.d.ts +26 -0
  920. package/dist/blocks/designs/universal-banner/analytics.d.ts.map +1 -0
  921. package/dist/blocks/designs/universal-banner/analytics.js +59 -0
  922. package/dist/blocks/designs/universal-banner/analytics.js.map +1 -0
  923. package/dist/blocks/designs/universal-banner/analytics.mjs +35 -0
  924. package/dist/blocks/designs/universal-banner/analytics.mjs.map +1 -0
  925. package/dist/blocks/designs/universal-banner/banner-block.d.ts +20 -0
  926. package/dist/blocks/designs/universal-banner/banner-block.d.ts.map +1 -0
  927. package/dist/blocks/designs/universal-banner/banner-block.js +104 -0
  928. package/dist/blocks/designs/universal-banner/banner-block.js.map +1 -0
  929. package/dist/blocks/designs/universal-banner/banner-block.mjs +80 -0
  930. package/dist/blocks/designs/universal-banner/banner-block.mjs.map +1 -0
  931. package/dist/blocks/designs/universal-banner/banner.d.ts +22 -0
  932. package/dist/blocks/designs/universal-banner/banner.d.ts.map +1 -0
  933. package/dist/blocks/designs/universal-banner/banner.js +190 -0
  934. package/dist/blocks/designs/universal-banner/banner.js.map +1 -0
  935. package/dist/blocks/designs/universal-banner/banner.mjs +166 -0
  936. package/dist/blocks/designs/universal-banner/banner.mjs.map +1 -0
  937. package/dist/blocks/designs/universal-banner/block.d.ts +15 -0
  938. package/dist/blocks/designs/universal-banner/block.d.ts.map +1 -0
  939. package/dist/blocks/designs/universal-banner/block.js +48 -0
  940. package/dist/blocks/designs/universal-banner/block.js.map +1 -0
  941. package/dist/blocks/designs/universal-banner/block.mjs +28 -0
  942. package/dist/blocks/designs/universal-banner/block.mjs.map +1 -0
  943. package/dist/blocks/designs/universal-banner/carousel.d.ts +25 -0
  944. package/dist/blocks/designs/universal-banner/carousel.d.ts.map +1 -0
  945. package/dist/blocks/designs/universal-banner/carousel.js +172 -0
  946. package/dist/blocks/designs/universal-banner/carousel.js.map +1 -0
  947. package/dist/blocks/designs/universal-banner/carousel.mjs +148 -0
  948. package/dist/blocks/designs/universal-banner/carousel.mjs.map +1 -0
  949. package/dist/blocks/designs/universal-banner/contracts.d.ts +190 -0
  950. package/dist/blocks/designs/universal-banner/contracts.d.ts.map +1 -0
  951. package/dist/blocks/designs/universal-banner/contracts.js +451 -0
  952. package/dist/blocks/designs/universal-banner/contracts.js.map +1 -0
  953. package/dist/blocks/designs/universal-banner/contracts.mjs +418 -0
  954. package/dist/blocks/designs/universal-banner/contracts.mjs.map +1 -0
  955. package/dist/blocks/designs/universal-banner/format.d.ts +3 -0
  956. package/dist/blocks/designs/universal-banner/format.d.ts.map +1 -0
  957. package/dist/blocks/designs/universal-banner/format.js +34 -0
  958. package/dist/blocks/designs/universal-banner/format.js.map +1 -0
  959. package/dist/blocks/designs/universal-banner/format.mjs +10 -0
  960. package/dist/blocks/designs/universal-banner/format.mjs.map +1 -0
  961. package/dist/blocks/designs/universal-banner/grid.d.ts +15 -0
  962. package/dist/blocks/designs/universal-banner/grid.d.ts.map +1 -0
  963. package/dist/blocks/designs/universal-banner/grid.js +45 -0
  964. package/dist/blocks/designs/universal-banner/grid.js.map +1 -0
  965. package/dist/blocks/designs/universal-banner/grid.mjs +21 -0
  966. package/dist/blocks/designs/universal-banner/grid.mjs.map +1 -0
  967. package/dist/blocks/designs/universal-banner/index.d.ts +3 -0
  968. package/dist/blocks/designs/universal-banner/index.d.ts.map +1 -0
  969. package/dist/blocks/designs/universal-banner/index.js +36 -0
  970. package/dist/blocks/designs/universal-banner/index.js.map +1 -0
  971. package/dist/blocks/designs/universal-banner/index.mjs +6 -0
  972. package/dist/blocks/designs/universal-banner/index.mjs.map +1 -0
  973. package/dist/blocks/designs/universal-banner/links.d.ts +33 -0
  974. package/dist/blocks/designs/universal-banner/links.d.ts.map +1 -0
  975. package/dist/blocks/designs/universal-banner/links.js +109 -0
  976. package/dist/blocks/designs/universal-banner/links.js.map +1 -0
  977. package/dist/blocks/designs/universal-banner/links.mjs +80 -0
  978. package/dist/blocks/designs/universal-banner/links.mjs.map +1 -0
  979. package/dist/blocks/designs/universal-banner/media.d.ts +20 -0
  980. package/dist/blocks/designs/universal-banner/media.d.ts.map +1 -0
  981. package/dist/blocks/designs/universal-banner/media.js +69 -0
  982. package/dist/blocks/designs/universal-banner/media.js.map +1 -0
  983. package/dist/blocks/designs/universal-banner/media.mjs +43 -0
  984. package/dist/blocks/designs/universal-banner/media.mjs.map +1 -0
  985. package/dist/blocks/designs/universal-banner/presets.d.ts +26 -0
  986. package/dist/blocks/designs/universal-banner/presets.d.ts.map +1 -0
  987. package/dist/blocks/designs/universal-banner/presets.js +175 -0
  988. package/dist/blocks/designs/universal-banner/presets.js.map +1 -0
  989. package/dist/blocks/designs/universal-banner/presets.mjs +149 -0
  990. package/dist/blocks/designs/universal-banner/presets.mjs.map +1 -0
  991. package/dist/blocks/designs/universal-banner/resolve.d.ts +16 -0
  992. package/dist/blocks/designs/universal-banner/resolve.d.ts.map +1 -0
  993. package/dist/blocks/designs/universal-banner/resolve.js +67 -0
  994. package/dist/blocks/designs/universal-banner/resolve.js.map +1 -0
  995. package/dist/blocks/designs/universal-banner/resolve.mjs +42 -0
  996. package/dist/blocks/designs/universal-banner/resolve.mjs.map +1 -0
  997. package/dist/blocks/designs/universal-banner/responsive.d.ts +33 -0
  998. package/dist/blocks/designs/universal-banner/responsive.d.ts.map +1 -0
  999. package/dist/blocks/designs/universal-banner/responsive.js +481 -0
  1000. package/dist/blocks/designs/universal-banner/responsive.js.map +1 -0
  1001. package/dist/blocks/designs/universal-banner/responsive.mjs +447 -0
  1002. package/dist/blocks/designs/universal-banner/responsive.mjs.map +1 -0
  1003. package/dist/blocks/designs/universal-banner/schedule.d.ts +11 -0
  1004. package/dist/blocks/designs/universal-banner/schedule.d.ts.map +1 -0
  1005. package/dist/blocks/designs/universal-banner/schedule.js +88 -0
  1006. package/dist/blocks/designs/universal-banner/schedule.js.map +1 -0
  1007. package/dist/blocks/designs/universal-banner/schedule.mjs +62 -0
  1008. package/dist/blocks/designs/universal-banner/schedule.mjs.map +1 -0
  1009. package/dist/blocks/designs/universal-banner/story-carousel.d.ts +20 -0
  1010. package/dist/blocks/designs/universal-banner/story-carousel.d.ts.map +1 -0
  1011. package/dist/blocks/designs/universal-banner/story-carousel.js +85 -0
  1012. package/dist/blocks/designs/universal-banner/story-carousel.js.map +1 -0
  1013. package/dist/blocks/designs/universal-banner/story-carousel.mjs +61 -0
  1014. package/dist/blocks/designs/universal-banner/story-carousel.mjs.map +1 -0
  1015. package/dist/blocks/designs/universal-banner/use-container-width.d.ts +17 -0
  1016. package/dist/blocks/designs/universal-banner/use-container-width.d.ts.map +1 -0
  1017. package/dist/blocks/designs/universal-banner/use-container-width.js +59 -0
  1018. package/dist/blocks/designs/universal-banner/use-container-width.js.map +1 -0
  1019. package/dist/blocks/designs/universal-banner/use-container-width.mjs +35 -0
  1020. package/dist/blocks/designs/universal-banner/use-container-width.mjs.map +1 -0
  1021. package/dist/index.d.ts +29 -0
  1022. package/dist/index.d.ts.map +1 -1
  1023. package/dist/index.js +46 -0
  1024. package/dist/index.js.map +1 -1
  1025. package/dist/index.mjs +34 -0
  1026. package/dist/index.mjs.map +1 -1
  1027. package/dist/lib/contracts/checkout-commerce-v1.d.ts +15 -0
  1028. package/dist/lib/contracts/checkout-commerce-v1.d.ts.map +1 -1
  1029. package/dist/lib/contracts/checkout-commerce-v1.js +3 -0
  1030. package/dist/lib/contracts/checkout-commerce-v1.js.map +1 -1
  1031. package/dist/lib/contracts/checkout-commerce-v1.mjs +3 -0
  1032. package/dist/lib/contracts/checkout-commerce-v1.mjs.map +1 -1
  1033. package/dist/lib/contracts/mega-menu-universal.d.ts +376 -0
  1034. package/dist/lib/contracts/mega-menu-universal.d.ts.map +1 -0
  1035. package/dist/lib/contracts/mega-menu-universal.js +95 -0
  1036. package/dist/lib/contracts/mega-menu-universal.js.map +1 -0
  1037. package/dist/lib/contracts/mega-menu-universal.mjs +70 -0
  1038. package/dist/lib/contracts/mega-menu-universal.mjs.map +1 -0
  1039. package/dist/lib/contracts/universal-banner.d.ts +1793 -0
  1040. package/dist/lib/contracts/universal-banner.d.ts.map +1 -0
  1041. package/dist/lib/contracts/universal-banner.js +235 -0
  1042. package/dist/lib/contracts/universal-banner.js.map +1 -0
  1043. package/dist/lib/contracts/universal-banner.mjs +211 -0
  1044. package/dist/lib/contracts/universal-banner.mjs.map +1 -0
  1045. package/dist/lib/contracts.d.ts +59 -56
  1046. package/dist/lib/contracts.d.ts.map +1 -1
  1047. package/dist/lib/contracts.js +7 -1
  1048. package/dist/lib/contracts.js.map +1 -1
  1049. package/dist/lib/contracts.mjs +3 -0
  1050. package/dist/lib/contracts.mjs.map +1 -1
  1051. package/dist/lib/money.d.ts.map +1 -1
  1052. package/dist/lib/money.js +1 -1
  1053. package/dist/lib/money.js.map +1 -1
  1054. package/dist/lib/money.mjs +1 -1
  1055. package/dist/lib/money.mjs.map +1 -1
  1056. package/dist/lib/validators/universal-banner.d.ts +4 -0
  1057. package/dist/lib/validators/universal-banner.d.ts.map +1 -0
  1058. package/dist/lib/validators/universal-banner.js +403 -0
  1059. package/dist/lib/validators/universal-banner.js.map +1 -0
  1060. package/dist/lib/validators/universal-banner.mjs +379 -0
  1061. package/dist/lib/validators/universal-banner.mjs.map +1 -0
  1062. package/dist/lib/validators.d.ts +13 -0
  1063. package/dist/lib/validators.d.ts.map +1 -0
  1064. package/dist/lib/validators.js +29 -0
  1065. package/dist/lib/validators.js.map +1 -0
  1066. package/dist/lib/validators.mjs +5 -0
  1067. package/dist/lib/validators.mjs.map +1 -0
  1068. package/dist/ports/address-book.d.ts +163 -0
  1069. package/dist/ports/address-book.d.ts.map +1 -0
  1070. package/dist/ports/address-book.js +17 -0
  1071. package/dist/ports/address-book.js.map +1 -0
  1072. package/dist/ports/address-book.mjs +1 -0
  1073. package/dist/ports/address-book.mjs.map +1 -0
  1074. package/dist/ports/customer-profile.d.ts +122 -0
  1075. package/dist/ports/customer-profile.d.ts.map +1 -0
  1076. package/dist/ports/customer-profile.js +17 -0
  1077. package/dist/ports/customer-profile.js.map +1 -0
  1078. package/dist/ports/customer-profile.mjs +1 -0
  1079. package/dist/ports/customer-profile.mjs.map +1 -0
  1080. package/dist/ports/errors.d.ts +7 -0
  1081. package/dist/ports/errors.d.ts.map +1 -0
  1082. package/dist/ports/errors.js +36 -0
  1083. package/dist/ports/errors.js.map +1 -0
  1084. package/dist/ports/errors.mjs +12 -0
  1085. package/dist/ports/errors.mjs.map +1 -0
  1086. package/dist/ports/favorites.d.ts +130 -0
  1087. package/dist/ports/favorites.d.ts.map +1 -0
  1088. package/dist/ports/favorites.js +17 -0
  1089. package/dist/ports/favorites.js.map +1 -0
  1090. package/dist/ports/favorites.mjs +1 -0
  1091. package/dist/ports/favorites.mjs.map +1 -0
  1092. package/dist/ports/fulfillment-evidence.d.ts +96 -0
  1093. package/dist/ports/fulfillment-evidence.d.ts.map +1 -0
  1094. package/dist/ports/fulfillment-evidence.js +17 -0
  1095. package/dist/ports/fulfillment-evidence.js.map +1 -0
  1096. package/dist/ports/fulfillment-evidence.mjs +1 -0
  1097. package/dist/ports/fulfillment-evidence.mjs.map +1 -0
  1098. package/dist/ports/help-and-support.d.ts +279 -0
  1099. package/dist/ports/help-and-support.d.ts.map +1 -0
  1100. package/dist/ports/help-and-support.js +17 -0
  1101. package/dist/ports/help-and-support.js.map +1 -0
  1102. package/dist/ports/help-and-support.mjs +1 -0
  1103. package/dist/ports/help-and-support.mjs.map +1 -0
  1104. package/dist/ports/index.d.ts +16 -0
  1105. package/dist/ports/index.d.ts.map +1 -0
  1106. package/dist/ports/index.js +40 -0
  1107. package/dist/ports/index.js.map +1 -0
  1108. package/dist/ports/index.mjs +10 -0
  1109. package/dist/ports/index.mjs.map +1 -0
  1110. package/dist/ports/order-detail.d.ts +301 -0
  1111. package/dist/ports/order-detail.d.ts.map +1 -0
  1112. package/dist/ports/order-detail.js +17 -0
  1113. package/dist/ports/order-detail.js.map +1 -0
  1114. package/dist/ports/order-detail.mjs +1 -0
  1115. package/dist/ports/order-detail.mjs.map +1 -0
  1116. package/dist/ports/order-history.d.ts +128 -0
  1117. package/dist/ports/order-history.d.ts.map +1 -0
  1118. package/dist/ports/order-history.js +17 -0
  1119. package/dist/ports/order-history.js.map +1 -0
  1120. package/dist/ports/order-history.mjs +1 -0
  1121. package/dist/ports/order-history.mjs.map +1 -0
  1122. package/package.json +10 -3
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../../src/blocks/designs/checkout-commerce-v1/view/checkout-view.tsx"],"sourcesContent":["'use client';\n\nimport { useEffect, useId, useRef, useState } from 'react';\nimport { Badge } from '../../../../ui/badge';\nimport { Button } from '../../../../ui/button';\nimport { Card, CardContent, CardFooter, CardHeader } from '../../../../ui/card';\nimport { PRODUCT_IMAGE_FALLBACK } from '../../../../lib/contracts';\nimport { AddressChoices } from './address-choices';\nimport { AddressForm } from './address-form';\nimport { CheckoutConfirmationView } from './confirmation-view';\nimport { BuyerSection } from './buyer-section';\nimport {\n addressHeadline,\n addressSummary,\n amountText,\n countLabel,\n fill,\n isFiniteAmount,\n money,\n pickupDetail,\n taxLabel,\n tierRangeLabel,\n} from './format';\nimport { OptionGroup, type OptionItem } from './option-group';\nimport { SummaryRow } from './summary-row';\nimport type {\n CheckoutAddress,\n CheckoutGroup,\n CheckoutGroupItem,\n CheckoutInterruptionAction,\n CheckoutLine,\n CheckoutViewActions,\n CheckoutViewModel,\n} from './types';\n\nconst VARIANT_SECONDARY = 'secondary' as const;\nconst VARIANT_OUTLINE = 'outline' as const;\nconst VARIANT_GHOST = 'ghost' as const;\nconst VARIANT_DESTRUCTIVE = 'destructive' as const;\nconst ADDRESS_FORM_ERROR_PATHS = new Set([\n 'firstName',\n 'lastName',\n 'line1',\n 'line2',\n 'company',\n 'city',\n 'province',\n 'postalCode',\n 'countryCode',\n 'phone',\n]);\n\nfunction interruptionActionLabel(\n action: CheckoutInterruptionAction,\n labels: CheckoutViewModel['labels'],\n) {\n switch (action) {\n case 'acknowledge':\n return labels.interruptionAcknowledgeLabel ?? 'Acknowledge';\n case 'refresh':\n return labels.interruptionRefreshLabel ?? 'Refresh';\n case 'return-to-cart':\n return labels.interruptionReturnToCartLabel ?? 'Return to cart';\n case 'retry':\n return labels.interruptionRetryLabel ?? 'Try again';\n }\n}\n\nexport function CheckoutView({\n model,\n actions,\n}: {\n model: CheckoutViewModel;\n actions: CheckoutViewActions;\n}) {\n const uid = useId();\n const labels = model.labels;\n const lines = model.lines;\n const activeGroups = model.groups;\n const addressBook = model.addresses;\n const shippingAddressId = model.selectedShippingAddressId ?? '';\n const contactName = model.contact.name;\n const contactEmail = model.contact.email;\n const contactPhone = model.contact.phone;\n const session = model.session;\n const [guestConfirmed, setGuestConfirmed] = useState(false);\n const contactPhoneRequired = model.requirements?.contactPhone ?? true;\n const [authPhoneComplete, setAuthPhoneComplete] = useState(\n Boolean(model.contact.phone) || !contactPhoneRequired,\n );\n const [localFormErrors, setLocalFormErrors] = useState<Record<string, string>>({});\n const formErrors = {\n ...Object.fromEntries((model.errors ?? []).map(({ path, message }) => [path, message])),\n ...localFormErrors,\n };\n const addressFormErrors = Object.fromEntries(\n (model.errors ?? [])\n .filter(({ path }) => ADDRESS_FORM_ERROR_PATHS.has(path))\n .map(({ path, message }) => [path, message]),\n );\n const orderError = model.states.order === 'error';\n const orderSummaryErrors = orderError\n ? (model.errors ?? []).filter(\n ({ path }) => !['contactName', 'contactEmail', 'contactPhone'].includes(path),\n )\n : [];\n const billingSame = model.billing.sameAsShipping;\n const billingId = model.billing.addressId ?? '';\n const setBillingSame = (same: boolean) => actions.onSelectAddress(billingId, 'billing', same);\n const setBillingId = (id: string) => actions.onSelectAddress(id, 'billing', false);\n const promotions = model.promotions;\n const [addressOpen, setAddressOpen] = useState(false);\n const [addressMode, setAddressMode] = useState('list');\n const [addressSaveAttempt, setAddressSaveAttempt] = useState<{\n pendingSeen: boolean;\n previousLastSavedId?: string;\n } | null>(null);\n const [openPanel, setOpenPanel] = useState('');\n const [confirmRemoveMain, setConfirmRemoveMain] = useState('');\n const [assocOpen, setAssocOpen] = useState('');\n const [couponOpen, setCouponOpen] = useState(false);\n const [couponCode, setCouponCode] = useState('');\n const [couponNoticeDismissed, setCouponNoticeDismissed] = useState(false);\n const couponNotice = couponNoticeDismissed ? null : model.feedback?.couponNotice ?? null;\n const [paymentOpen, setPaymentOpen] = useState(false);\n const [openTiers, setOpenTiers] = useState<string[]>([]);\n const addingAssociate = model.feedback?.addingAssociate ?? '';\n const removingLine = model.feedback?.removingLine ?? '';\n const priceUpdating = model.feedback?.priceUpdating ?? '';\n const stockMessage = model.feedback?.stockMessage ?? '';\n const associateNotice = model.capabilities.associates\n ? model.feedback?.associateNotice ?? null\n : null;\n const paymentError = model.states.payment === 'error';\n const creatingOrder = model.states.order === 'submitting';\n const blockedByInterruption =\n model.states.order === 'interrupted' || model.interruption?.severity === 'blocking';\n const confirmation = model.confirmation ?? null;\n const shippingAddress =\n model.addresses.find((address) => address.id === shippingAddressId) ?? null;\n const paymentOptions: OptionItem[] = model.paymentMethods.map((method) => ({\n id: method.id,\n title: method.title ?? method.label,\n detail: method.detail,\n meta: method.meta,\n disabled: method.disabled,\n reason: method.reason,\n }));\n const activePaymentId = model.selectedPaymentId ?? '';\n const activeMethod = model.paymentMethods.find((method) => method.id === activePaymentId) ?? null;\n const hasPaymentMethods = model.paymentMethods.length > 0;\n const paymentSummaryLabel = activeMethod\n ? activeMethod.label\n : hasPaymentMethods\n ? labels.paymentChoose\n : labels.paymentUnavailable;\n const paymentNotice = model.totals.paymentNotice ?? '';\n const appliedCoupon = model.promotions.find((promotion) => promotion.kind === 'coupon') ?? null;\n const requiresShipping = model.totals.requiresShipping;\n const pending = model.totals.pending;\n const canConfirm = model.totals.canConfirm && !blockedByInterruption;\n const blockedMessage = model.totals.blockedMessage;\n const subtotal = model.totals.subtotalCents;\n const tax = model.totals.taxCents;\n const shippingFees = model.totals.shippingCents;\n const pickupFees = model.totals.pickupCents;\n const total = model.totals.totalCents;\n const unitCount = isFiniteAmount(model.totals.unitCount) ? model.totals.unitCount : undefined;\n const deliveriesLabel = countLabel(\n activeGroups.length,\n labels.deliveriesOne,\n fill(labels.deliveriesMany, { count: activeGroups.length }),\n );\n const purchaseBreakdown =\n unitCount === undefined\n ? deliveriesLabel\n : fill(labels.purchaseBreakdown, {\n items: countLabel(\n unitCount,\n labels.summaryItemOne,\n fill(labels.summaryItems, { count: unitCount }),\n ),\n deliveries: deliveriesLabel,\n });\n const addressLocationProps =\n model.locationOptions && actions.onLocationChange\n ? {\n locationMode: 'host' as const,\n locationOptions: model.locationOptions,\n onLocationChange: actions.onLocationChange,\n ...(model.requirements ? { requirements: model.requirements } : {}),\n }\n : {\n locationMode: 'demo' as const,\n ...(model.requirements ? { requirements: model.requirements } : {}),\n };\n const knownAssociateIds = useRef(\n new Set(lines.filter((line) => line.isAssociate).map((line) => line.lineId)),\n );\n\n useEffect(() => {\n if (!addressSaveAttempt) return;\n const saveState = model.savedAddressState;\n if (!saveState) return;\n if (saveState.pendingId) {\n if (!addressSaveAttempt.pendingSeen) {\n setAddressSaveAttempt({ ...addressSaveAttempt, pendingSeen: true });\n }\n return;\n }\n if (saveState.error) {\n setAddressSaveAttempt(null);\n return;\n }\n if (\n saveState.lastAction === 'saved' &&\n (addressSaveAttempt.pendingSeen ||\n saveState.lastSavedId !== addressSaveAttempt.previousLastSavedId)\n ) {\n setAddressSaveAttempt(null);\n setAddressOpen(false);\n setAddressMode('list');\n }\n }, [addressSaveAttempt, model.savedAddressState]);\n\n useEffect(() => {\n const currentAssociateIds = new Set(\n lines.filter((line) => line.isAssociate).map((line) => line.lineId),\n );\n const addedAssociate = [...currentAssociateIds].some(\n (lineId) => !knownAssociateIds.current.has(lineId),\n );\n if (addedAssociate) setAssocOpen('');\n knownAssociateIds.current = currentAssociateIds;\n }, [lines]);\n\n useEffect(() => {\n if (model.feedback?.couponNotice?.status === 'applied') setCouponCode('');\n }, [model.feedback?.couponNotice]);\n\n useEffect(() => {\n if (!removingLine) setConfirmRemoveMain('');\n }, [removingLine]);\n\n const toggleTiers = (lineId: string) => {\n setOpenTiers((current) =>\n current.includes(lineId) ? current.filter((value) => value !== lineId) : [...current, lineId],\n );\n };\n const openAddressEditor = () => {\n setAddressOpen(true);\n setAddressMode(addressBook.length === 0 ? 'new' : 'list');\n actions.onAddressEditorOpen(`${uid}-address-panel`);\n };\n const createAddressId = actions.createAddressId;\n const choosePickupPoint = (group: CheckoutGroup, pointId: string) => {\n actions.onSelectShippingOption(group.id, pointId, 'pickup');\n setOpenPanel('');\n };\n const selectMode = (group: CheckoutGroup, mode: string) =>\n actions.onSelectShippingOption(group.id, undefined, mode);\n const recalc = (group: CheckoutGroup) => actions.onRetry('shipping', group.id);\n const changeBuyerField = (field: 'name' | 'email' | 'phone', value: string) => {\n const errorKey =\n field === 'name' ? 'contactName' : field === 'email' ? 'contactEmail' : 'contactPhone';\n setLocalFormErrors((current) => {\n const next = { ...current };\n delete next[errorKey];\n return next;\n });\n actions.onContactChange({ [field]: value });\n };\n const validateGuestContact = () => {\n const next: Record<string, string> = {};\n if (!contactName.trim()) next.contactName = labels.contactNameMissing;\n if (!contactEmail.trim() || !contactEmail.includes('@'))\n next.contactEmail = labels.contactMissing;\n if (contactPhoneRequired && !contactPhone.trim()) {\n next.contactPhone = labels.contactPhoneMissing;\n }\n setLocalFormErrors(next);\n return Object.keys(next).length === 0;\n };\n const saveGuestContact = () => {\n if (!validateGuestContact()) {\n setGuestConfirmed(false);\n return;\n }\n setGuestConfirmed(true);\n };\n const saveAuthPhone = () => {\n if (contactPhoneRequired && !contactPhone.trim()) {\n setLocalFormErrors({ contactPhone: labels.contactPhoneMissing });\n return;\n }\n setLocalFormErrors({});\n setAuthPhoneComplete(true);\n };\n const retrySession = () => actions.onRetry('session');\n const applyCoupon = () => {\n if (!couponCode.trim()) {\n setCouponNoticeDismissed(true);\n return;\n }\n setCouponNoticeDismissed(false);\n actions.onApplyPromo(couponCode);\n };\n const removeCoupon = () => actions.onApplyPromo(null);\n const selectShippingAddress = (addressId: string) => {\n actions.onSelectAddress(addressId);\n setAddressOpen(false);\n setAddressMode('list');\n };\n const saveNewAddress = (address: CheckoutAddress, saveToAccount: boolean) => {\n if (saveToAccount && model.savedAddressState) {\n setAddressSaveAttempt({\n pendingSeen: Boolean(model.savedAddressState.pendingId),\n previousLastSavedId: model.savedAddressState.lastSavedId,\n });\n actions.onCreateAddress(address, true);\n return;\n }\n actions.onCreateAddress(address, saveToAccount);\n setAddressOpen(false);\n setAddressMode('list');\n };\n const chooseShippingOption = (group: CheckoutGroup, optionId: string) => {\n actions.onSelectShippingOption(group.id, optionId, 'shipping');\n setOpenPanel('');\n };\n const handleConfirm = () => {\n if (!canConfirm || creatingOrder) return;\n if (session === 'guest' && !validateGuestContact()) {\n setGuestConfirmed(false);\n return;\n }\n if (session === 'authenticated' && contactPhoneRequired && !contactPhone.trim()) {\n setLocalFormErrors({ contactPhone: labels.contactPhoneMissing });\n return;\n }\n if (session === 'loading' || session === 'error') return;\n setLocalFormErrors({});\n if (session === 'guest') setGuestConfirmed(true);\n actions.onSubmit();\n };\n const retryPayment = actions.onRetryPayment;\n const onContinueShoppingAction = actions.onContinueShopping;\n const changeQuantity = actions.onQuantityChange;\n const requestRemoveLine = (line: CheckoutLine | CheckoutGroupItem) => {\n if (\n model.capabilities.associates &&\n !line.isAssociate &&\n (line.associateLines?.length ?? 0) > 0\n ) {\n setConfirmRemoveMain(line.lineId);\n return;\n }\n actions.onRemoveItem(line.lineId);\n };\n const confirmRemoveMainLine = (line: CheckoutLine | CheckoutGroupItem) => {\n actions.onRemoveItem(line.lineId);\n };\n const selectPayment = (paymentId: string) => {\n actions.onSelectPayment(paymentId);\n setPaymentOpen(false);\n };\n\n if (model.states.cart === 'loading') {\n return (\n <div aria-busy=\"true\">\n <p className=\"text-sm text-muted-foreground\">{model.labels.loadingLabel}</p>\n <p className=\"mt-1 text-xs text-muted-foreground\">{labels.sessionLoading}</p>\n <div className=\"mt-4 space-y-3\">\n <div className=\"h-24 rounded-lg bg-muted\" />\n <div className=\"h-24 rounded-lg bg-muted\" />\n <div className=\"h-24 rounded-lg bg-muted\" />\n </div>\n </div>\n );\n }\n\n if (creatingOrder) {\n return (\n <section\n aria-busy=\"true\"\n aria-labelledby={`${uid}-creating`}\n aria-live=\"polite\"\n role=\"status\"\n className=\"mx-auto flex w-full max-w-md flex-col items-center rounded-xl border border-border bg-card p-8 text-center\"\n >\n <span\n aria-hidden=\"true\"\n className=\"flex h-12 w-12 items-center justify-center rounded-full bg-muted\"\n >\n <span className=\"h-5 w-5 animate-spin rounded-full border-2 border-muted-foreground border-t-transparent\" />\n </span>\n <h2 id={`${uid}-creating`} className=\"mt-4 text-xl font-semibold tracking-tight\">\n {labels.confirmationCreating}\n </h2>\n <p className=\"mt-1 text-sm text-muted-foreground\">{labels.confirmationCreatingNote}</p>\n <dl className=\"mt-4 w-full rounded-lg bg-muted/40 px-3 py-2\">\n <SummaryRow label={labels.total} value={amountText(total, model)} emphasis />\n </dl>\n </section>\n );\n }\n\n if (confirmation) {\n return (\n <CheckoutConfirmationView\n confirmation={confirmation}\n labels={labels}\n locale={model.locale}\n currencyCode={model.currencyCode}\n onContinueShopping={onContinueShoppingAction}\n />\n );\n }\n\n if (lines.length === 0) {\n return (\n <section\n aria-labelledby={`${uid}-empty`}\n className=\"rounded-xl border border-border bg-card p-8 text-center\"\n >\n <h2 id={`${uid}-empty`} className=\"text-xl font-semibold tracking-tight\">\n {model.labels.emptyTitle}\n </h2>\n <p className=\"mx-auto mt-2 max-w-sm text-sm text-muted-foreground\">\n {model.labels.emptyBody}\n </p>\n <div className=\"mt-5\">\n <Button type=\"button\" onClick={onContinueShoppingAction}>\n {model.labels.emptyCta}\n </Button>\n </div>\n </section>\n );\n }\n\n return (\n <div className=\"flex flex-col gap-5\">\n <div>\n <h2 className=\"text-xl font-semibold tracking-tight\">{model.labels.title}</h2>\n <p className=\"mt-1 text-sm text-muted-foreground\">{purchaseBreakdown}</p>\n </div>\n\n {model.interruption ? (\n <div\n role={model.interruption.severity === 'blocking' ? 'alert' : 'status'}\n className={\n model.interruption.severity === 'blocking'\n ? 'flex flex-col gap-3 rounded-md border border-destructive/50 bg-destructive/10 px-4 py-3 text-sm text-destructive'\n : 'flex flex-col gap-3 rounded-md border border-amber-500/50 bg-amber-500/10 px-4 py-3 text-sm'\n }\n >\n <div>\n <p className=\"font-medium\">{model.interruption.title}</p>\n <p>{model.interruption.message}</p>\n {model.interruption.changes?.length ? (\n <ul className=\"mt-2 list-disc pl-5\">\n {model.interruption.changes.map((change, index) => (\n <li key={`${change.lineId ?? index}:${change.label}`}>\n {change.label}\n {change.previous && change.next\n ? `: ${change.previous} → ${change.next}`\n : null}\n </li>\n ))}\n </ul>\n ) : null}\n </div>\n {actions.onInterruptionAction && model.interruption.actions.length > 0 ? (\n <div className=\"flex flex-wrap gap-2\">\n {model.interruption.actions.map((action) => (\n <Button\n key={action}\n type=\"button\"\n variant={VARIANT_OUTLINE}\n size=\"sm\"\n onClick={() => actions.onInterruptionAction?.(action)}\n >\n {interruptionActionLabel(action, labels)}\n </Button>\n ))}\n </div>\n ) : null}\n </div>\n ) : null}\n\n {orderError ? (\n <div className=\"rounded-md border border-destructive/40 bg-destructive/10 p-3\">\n {orderSummaryErrors.length > 0 ? (\n <div role=\"alert\" className=\"text-sm text-destructive\">\n {orderSummaryErrors.map((error, index) => (\n <p key={`${error.path}-${index}`} data-error-path={error.path}>\n {error.message}\n </p>\n ))}\n </div>\n ) : null}\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_OUTLINE}\n className=\"mt-2\"\n onClick={() => actions.onRetry('order')}\n >\n {labels.orderRetry || labels.retryAction}\n </Button>\n </div>\n ) : null}\n\n <div className=\"sticky top-0 z-10 flex items-center justify-between gap-3 rounded-xl border border-border bg-card/95 p-3 backdrop-blur md:hidden\">\n <div>\n <p className=\"text-xs text-muted-foreground\">\n {pending ? labels.totalPending : labels.total}\n </p>\n <p className=\"text-base font-semibold tabular-nums\">\n {pending ? labels.overviewPending : amountText(total, model)}\n </p>\n </div>\n <Button type=\"button\" disabled={!canConfirm || creatingOrder} onClick={handleConfirm}>\n {creatingOrder ? labels.confirmationCreating : labels.confirm}\n </Button>\n </div>\n\n <div className=\"md:grid md:grid-cols-5 md:items-start md:gap-6\">\n <div className=\"flex flex-col gap-5 md:col-span-3\">\n <div className=\"rounded-xl border border-border bg-card\">\n <div className=\"px-4 py-3\">\n <BuyerSection\n uid={uid}\n labels={labels}\n session={session}\n name={contactName}\n email={contactEmail}\n phone={contactPhone}\n guestConfirmed={guestConfirmed}\n authPhoneComplete={authPhoneComplete}\n errors={formErrors}\n onFieldChange={changeBuyerField}\n onGuestSave={saveGuestContact}\n onGuestEdit={() => {\n setGuestConfirmed(false);\n setLocalFormErrors({});\n }}\n onAuthPhoneSave={saveAuthPhone}\n onRetrySession={retrySession}\n onStartRegistration={actions.onStartRegistration}\n />\n </div>\n <div className=\"border-t border-border px-4 py-3\">\n <section aria-labelledby={`${uid}-shipping-address`}>\n <div className=\"flex items-start justify-between gap-2\">\n <div className=\"min-w-0\">\n <h3\n id={`${uid}-shipping-address`}\n className=\"text-xs font-semibold uppercase tracking-wide text-muted-foreground\"\n >\n {labels.addressTitle}\n </h3>\n {!requiresShipping ? (\n model.capabilities.pickupPoints ? (\n <p className=\"mt-1 text-xs text-muted-foreground\">\n {labels.pickupOnlyAddress}\n </p>\n ) : null\n ) : shippingAddress ? (\n <>\n <p className=\"mt-1 text-sm font-medium\">\n {addressHeadline(shippingAddress)}\n </p>\n <p className=\"text-xs text-muted-foreground\">\n {addressSummary(shippingAddress)}\n </p>\n {shippingAddress.recipient !== contactName ||\n shippingAddress.phone !== contactPhone ? (\n <p className=\"text-xs text-muted-foreground\">\n {[shippingAddress.recipient, shippingAddress.phone]\n .filter(Boolean)\n .join(' · ')}\n </p>\n ) : null}\n </>\n ) : (\n <p className=\"mt-1 text-sm text-destructive\">{labels.groupNeedsAddress}</p>\n )}\n </div>\n {requiresShipping ? (\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_OUTLINE}\n aria-expanded={addressOpen}\n aria-controls={`${uid}-address-panel`}\n onClick={() => (addressOpen ? setAddressOpen(false) : openAddressEditor())}\n >\n {shippingAddress ? labels.changeAction : labels.groupAddAddress}\n </Button>\n ) : null}\n </div>\n\n {addressOpen && requiresShipping ? (\n <div\n id={`${uid}-address-panel`}\n className=\"mt-3 rounded-lg border border-border bg-muted/30 p-3\"\n >\n {addressMode === 'new' ? (\n <AddressForm\n labels={labels}\n countries={model.countries}\n {...addressLocationProps}\n authenticated={model.session === 'authenticated'}\n createAddressId={createAddressId}\n hostErrors={addressFormErrors}\n saving={\n addressSaveAttempt !== null || Boolean(model.savedAddressState?.pendingId)\n }\n saveError={model.savedAddressState?.error}\n onSave={saveNewAddress}\n onCancel={() =>\n addressBook.length === 0 ? setAddressOpen(false) : setAddressMode('list')\n }\n />\n ) : (\n <>\n <AddressChoices\n legend={labels.addressSelectTitle}\n name={`${uid}-shipping-address`}\n addresses={addressBook}\n selectedId={shippingAddressId}\n onSelect={selectShippingAddress}\n labels={labels}\n />\n <div className=\"mt-3 flex flex-wrap gap-2\">\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_OUTLINE}\n onClick={() => setAddressMode('new')}\n >\n {labels.addressNew}\n </Button>\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_GHOST}\n onClick={() => setAddressOpen(false)}\n >\n {labels.addressCancel}\n </Button>\n </div>\n </>\n )}\n </div>\n ) : null}\n </section>\n </div>\n </div>\n\n <section aria-labelledby={`${uid}-groups`}>\n <div className=\"flex flex-wrap items-baseline justify-between gap-2\">\n <h3 id={`${uid}-groups`} className=\"text-sm font-semibold\">\n {labels.groupsTitle}\n </h3>\n <p className=\"text-xs text-muted-foreground\">\n {countLabel(\n activeGroups.length,\n labels.deliveriesOne,\n fill(labels.deliveriesMany, { count: activeGroups.length }),\n )}\n </p>\n </div>\n <p aria-live=\"polite\" className=\"mt-1 text-xs text-destructive\">\n {stockMessage}\n </p>\n {associateNotice && associateNotice.mainLineId === '' ? (\n <p\n aria-live=\"polite\"\n className={\n associateNotice.error\n ? 'mt-1 text-xs text-destructive'\n : 'mt-1 text-xs text-muted-foreground'\n }\n >\n {associateNotice.text}\n </p>\n ) : null}\n\n <div className=\"mt-3 space-y-4\">\n {activeGroups.map((group, index) => {\n const state = group.state;\n const groupLines = group.lines;\n const point = group.selectedPickupPoint;\n const ready = group.ready ?? false;\n const fee = group.feeCents ?? null;\n const baseFee = group.baseFeeCents ?? 0;\n const feeDiscount = group.feeDiscountCents ?? 0;\n const option = group.selectedShippingOption;\n const heading = fill(\n state.mode === 'pickup' ? labels.groupPickup : labels.groupDelivery,\n {\n n: index + 1,\n },\n );\n const panelId = `${uid}-panel-${group.id}`;\n const editing = openPanel === group.id;\n const methodLine =\n state.mode === 'pickup'\n ? [\n labels.modePickup,\n ready && model.capabilities.pickupPoints ? point?.label : '',\n ]\n .filter(Boolean)\n .join(' · ')\n : [labels.modeShipping, ready ? option?.label : '', ready ? option?.eta : '']\n .filter(Boolean)\n .join(' · ');\n const pickupDetailLine =\n model.capabilities.pickupPoints && state.mode === 'pickup' && point\n ? [point.address, point.hours].filter(Boolean).join(' · ')\n : '';\n const needsAddress = state.mode === 'shipping' && !shippingAddress;\n const ratePending = state.rateState === 'pending';\n const rateError = state.rateState === 'error';\n const noCoverage = state.rateState === 'none';\n const shippingAvailable = group.shippingAvailable ?? false;\n const pickupAvailable = group.pickupAvailable ?? false;\n const bothModes =\n model.capabilities.pickupPoints && (group.bothModesAvailable ?? false);\n const currentModeAvailable = group.currentModeAvailable ?? false;\n const currentChoiceCount = group.currentChoiceCount ?? 0;\n const canChange = group.canChange ?? false;\n const requestedPanelMode = group.panelMode ?? state.mode;\n const panelMode =\n !model.capabilities.pickupPoints && requestedPanelMode === 'pickup'\n ? 'shipping'\n : requestedPanelMode;\n const shippingChoices: OptionItem[] = group.shippingOptions.map((item) => {\n const discount = item.discountCents ?? 0;\n const payable = item.payableFeeCents ?? item.feeCents;\n return {\n id: item.id,\n title: item.label,\n detail: item.eta,\n meta: payable === 0 ? labels.groupFree : amountText(payable, model),\n previousMeta: discount > 0 ? amountText(item.feeCents, model) : '',\n disabled: item.disabled ?? false,\n reason: item.disabledReason ?? '',\n };\n });\n const pickupChoices: OptionItem[] = model.capabilities.pickupPoints\n ? group.pickupPoints.map((item) => {\n const discount = item.discountCents ?? 0;\n const payable = item.payableFeeCents ?? item.feeCents;\n return {\n id: item.id,\n title: item.label,\n detail: pickupDetail(item),\n meta: payable === 0 ? labels.groupFree : amountText(payable, model),\n previousMeta: discount > 0 ? amountText(item.feeCents, model) : '',\n disabled: item.disabled ?? item.available === false,\n reason: item.disabledReason ?? item.unavailableReason ?? '',\n };\n })\n : [];\n const modeChoices: OptionItem[] = [\n {\n id: 'shipping',\n title: labels.modeShipping,\n detail: '',\n meta: '',\n disabled: false,\n reason: '',\n },\n ...(model.capabilities.pickupPoints\n ? [\n {\n id: 'pickup',\n title: labels.modePickup,\n detail: '',\n meta: '',\n disabled: false,\n reason: '',\n },\n ]\n : []),\n ];\n\n return (\n <section\n key={group.id}\n aria-labelledby={`${uid}-group-${group.id}`}\n className=\"overflow-hidden rounded-xl border border-border bg-card\"\n >\n <div className=\"flex items-start justify-between gap-3 px-4 py-3\">\n <div className=\"min-w-0\">\n <div className=\"flex flex-wrap items-center gap-2\">\n <h4 id={`${uid}-group-${group.id}`} className=\"text-sm font-semibold\">\n {heading}\n </h4>\n {group.special ? (\n <Badge variant={VARIANT_SECONDARY}>{labels.groupSpecial}</Badge>\n ) : null}\n </div>\n <p className=\"mt-0.5 text-xs text-muted-foreground\">{methodLine}</p>\n {pickupDetailLine ? (\n <p className=\"mt-0.5 text-xs text-muted-foreground\">{pickupDetailLine}</p>\n ) : null}\n </div>\n <div className=\"flex shrink-0 flex-col items-end gap-1.5\">\n <p className=\"text-sm font-semibold tabular-nums\">\n {fee === null ? (\n group.rateState === 'pending' ? (\n labels.overviewPending\n ) : (\n ''\n )\n ) : feeDiscount > 0 ? (\n <span className=\"flex items-center gap-2\">\n <span className=\"text-xs font-normal text-muted-foreground line-through\">\n {money(baseFee, model)}\n </span>\n <span>{fee === 0 ? labels.groupFree : money(fee, model)}</span>\n </span>\n ) : fee === 0 ? (\n labels.groupFree\n ) : (\n money(fee, model)\n )}\n </p>\n {canChange ? (\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_OUTLINE}\n aria-expanded={editing}\n aria-controls={panelId}\n onClick={() => setOpenPanel(editing ? '' : group.id)}\n >\n {labels.changeAction}\n </Button>\n ) : null}\n </div>\n </div>\n\n {editing && canChange ? (\n <div id={panelId} className=\"border-t border-border bg-muted/30 px-4 py-3\">\n {bothModes ? (\n <div className=\"mb-3\">\n <OptionGroup\n legend={labels.modeTitle}\n options={modeChoices}\n selectedId={state.mode}\n onSelect={(mode) => selectMode(group, mode)}\n className=\"grid gap-1.5 sm:grid-cols-2\"\n />\n </div>\n ) : null}\n {panelMode === 'shipping' ? (\n rateError ? (\n <p className=\"text-xs text-destructive\">{labels.rateError}</p>\n ) : ratePending ? (\n <p className=\"text-xs text-muted-foreground\">\n {labels.groupRatePending}\n </p>\n ) : noCoverage ? (\n <p className=\"text-xs text-muted-foreground\">\n {labels.groupNoCoverage}\n </p>\n ) : (\n <OptionGroup\n legend={labels.groupShippingOptions}\n options={shippingChoices}\n selectedId={state.shippingOptionId ?? ''}\n onSelect={(id) => chooseShippingOption(group, id)}\n className=\"grid gap-1.5\"\n />\n )\n ) : (\n <div>\n {model.capabilities.pickupPoints ? (\n <OptionGroup\n legend={labels.groupPickupPoints}\n options={pickupChoices}\n selectedId={state.pickupPointId ?? ''}\n onSelect={(id) => choosePickupPoint(group, id)}\n className=\"grid gap-1.5\"\n />\n ) : null}\n {point?.note ? (\n <p className=\"mt-2 text-xs text-muted-foreground\">{point.note}</p>\n ) : null}\n </div>\n )}\n <div className=\"mt-3\">\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n onClick={() => setOpenPanel('')}\n >\n {labels.done}\n </Button>\n </div>\n </div>\n ) : null}\n\n {needsAddress ? (\n <p className=\"px-4 pb-3 text-xs text-muted-foreground\">\n {labels.groupNoAddress}\n </p>\n ) : ratePending ? (\n <p aria-live=\"polite\" className=\"px-4 pb-3 text-xs text-muted-foreground\">\n {labels.groupRatePending}\n </p>\n ) : rateError ? (\n <div className=\"mx-4 mb-3 rounded-md border border-destructive/40 bg-destructive/10 p-2.5\">\n <p className=\"text-xs text-destructive\">{labels.rateError}</p>\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_OUTLINE}\n className=\"mt-1.5\"\n onClick={() => recalc(group)}\n >\n {labels.groupRetryRate}\n </Button>\n </div>\n ) : noCoverage ? (\n <div className=\"mx-4 mb-3 rounded-md border border-warning/40 bg-warning/10 p-2.5\">\n <p className=\"text-xs font-medium\">{labels.groupNoCoverage}</p>\n {labels.groupNoCoverageHint ? (\n <p className=\"mt-0.5 text-xs text-muted-foreground\">\n {labels.groupNoCoverageHint}\n </p>\n ) : null}\n <div className=\"mt-1.5 flex flex-wrap gap-1.5\">\n {model.capabilities.pickupPoints && group.modes.includes('pickup') ? (\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_OUTLINE}\n onClick={() => selectMode(group, 'pickup')}\n >\n {labels.groupPickupAvailable}\n </Button>\n ) : null}\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n onClick={openAddressEditor}\n >\n {labels.groupChangeAddress}\n </Button>\n </div>\n </div>\n ) : null}\n {group.note ? (\n <p className=\"mx-4 mb-3 rounded-md bg-muted/50 p-2 text-xs text-muted-foreground\">\n {group.note}\n </p>\n ) : null}\n\n <ul className=\"divide-y divide-border border-t border-border\">\n {groupLines.map((line) => {\n const unitPrice = line.currentUnitCents ?? line.unitCents;\n const tiers = line.tiers ?? [];\n const currentTier = line.currentTier ?? null;\n const nextTier = line.nextTier ?? null;\n const tierOpen = openTiers.includes(line.lineId);\n const nextReachable = line.nextTierReachable ?? false;\n const detailLine = [\n line.variant,\n ...(isFiniteAmount(unitPrice)\n ? [fill(labels.each, { amount: money(unitPrice, model) })]\n : []),\n ]\n .filter(Boolean)\n .join(' · ');\n const inventoryKnown = isFiniteAmount(line.stock);\n const unavailable =\n line.unavailable ?? (isFiniteAmount(line.stock) && line.stock < 1);\n const isAssociate =\n model.capabilities.associates && line.isAssociate === true;\n const currentQuantity = line.quantity ?? 0;\n const maxQty = line.availableMaxQuantity ?? line.stock;\n const minQty = isAssociate ? line.minQuantity ?? 1 : 1;\n const parentLine = line.parentLineId\n ? lines.find((entry) => entry.lineId === line.parentLineId)\n : undefined;\n const parentNote =\n model.capabilities.associates &&\n parentLine &&\n parentLine.groupId !== line.groupId\n ? fill(labels.associateOf, { name: parentLine.title })\n : '';\n const relatedInGroup = Boolean(\n isAssociate && parentLine && parentLine.groupId === line.groupId,\n );\n const associateDiscount = line.associateDiscount ?? null;\n const totalSavingCents = line.totalSavingCents ?? 0;\n const totalSavingPercent = line.totalSavingPercent ?? 0;\n const associateDefs =\n model.capabilities.associates && !isAssociate\n ? line.associates ?? []\n : [];\n const associateLines = model.capabilities.associates\n ? line.associateLines ?? []\n : [];\n const availableAssociates = line.availableAssociates ?? [];\n const addableAssociates = line.addableAssociates ?? [];\n const rowNotice =\n associateNotice && associateNotice.mainLineId === line.lineId\n ? associateNotice\n : null;\n const confirmingMain = confirmRemoveMain === line.lineId;\n const rowRemoving =\n removingLine === line.lineId ||\n (isAssociate && removingLine === line.parentLineId);\n const atLimit =\n line.quantity !== undefined &&\n maxQty !== undefined &&\n maxQty > 0 &&\n line.quantity >= maxQty;\n const canDecrease =\n line.quantity !== undefined &&\n inventoryKnown &&\n !unavailable &&\n (isAssociate\n ? minQty === 0 || line.quantity > minQty\n : line.quantity > 1);\n const canIncrease =\n line.quantity !== undefined &&\n inventoryKnown &&\n !unavailable &&\n maxQty !== undefined &&\n maxQty > 0 &&\n line.quantity < maxQty;\n const addingAny = addingAssociate !== '';\n return (\n <li\n key={line.lineId}\n aria-busy={priceUpdating === line.lineId || rowRemoving}\n className=\"px-4 py-3\"\n >\n <div\n className={\n relatedInGroup\n ? 'flex flex-col gap-2 border-l border-border pl-3 sm:flex-row sm:items-start sm:gap-3'\n : 'flex flex-col gap-2 sm:flex-row sm:items-start sm:gap-3'\n }\n >\n <div className=\"flex min-w-0 flex-1 gap-3\">\n <img\n src={line.image || PRODUCT_IMAGE_FALLBACK}\n alt={line.title}\n width={48}\n height={48}\n className=\"h-12 w-12 shrink-0 rounded-md border border-border object-cover\"\n />\n <div className=\"flex min-w-0 flex-1 flex-col gap-0.5\">\n <p className=\"text-sm font-medium\">{line.title}</p>\n <p className=\"text-xs text-muted-foreground\">{detailLine}</p>\n {isAssociate && associateDiscount ? (\n <p className=\"flex flex-wrap items-center gap-x-2 gap-y-0.5 text-xs\">\n <span className=\"text-muted-foreground line-through tabular-nums\">\n {fill(labels.associatePreviousUnit, {\n amount: money(line.regularCents ?? 0, model),\n })}\n </span>\n <span className=\"text-success\">\n {fill(labels.associateTotalSaving, {\n amount: money(totalSavingCents, model),\n percent: totalSavingPercent,\n })}\n </span>\n </p>\n ) : null}\n {parentNote ? (\n <p className=\"text-xs text-muted-foreground\">{parentNote}</p>\n ) : null}\n {relatedInGroup && parentLine ? (\n <span className=\"sr-only\">\n {fill(labels.associateOf, { name: parentLine.title })}\n </span>\n ) : null}\n {(line.lineDiscountCents ?? 0) > 0 ? (\n <p className=\"text-xs text-success\">\n {fill(labels.lineDiscount, {\n label: line.lineDiscountLabel ?? '',\n amount: money(line.lineDiscountCents ?? 0, model),\n })}\n </p>\n ) : null}\n {isAssociate ? (\n <p\n className={\n atLimit\n ? 'text-xs font-medium text-foreground'\n : 'text-xs text-muted-foreground'\n }\n >\n {atLimit\n ? labels.associateLimitReached\n : maxQty !== undefined || line.quantity !== undefined\n ? fill(labels.associateMax, {\n count: maxQty ?? currentQuantity,\n })\n : null}\n </p>\n ) : unavailable ? (\n <p className=\"text-xs text-destructive\">{labels.outOfStock}</p>\n ) : isFiniteAmount(line.stock) && line.stock <= 3 ? (\n <p className=\"text-xs text-muted-foreground\">\n {fill(labels.stockLeft, { count: line.stock })}\n </p>\n ) : null}\n </div>\n </div>\n <div className=\"flex w-full items-center justify-between gap-3 sm:w-28 sm:flex-col sm:items-end sm:gap-1.5\">\n {isFiniteAmount(line.netTotalCents) ? (\n <div className=\"sm:text-right\">\n <p className=\"text-xs text-muted-foreground\">\n {labels.subtotal}\n </p>\n <p\n className={\n priceUpdating === line.lineId\n ? 'text-sm font-semibold tabular-nums text-muted-foreground'\n : 'text-sm font-semibold tabular-nums'\n }\n >\n {money(line.netTotalCents, model)}\n {priceUpdating === line.lineId ? (\n <span aria-hidden=\"true\">{labels.ellipsis}</span>\n ) : null}\n </p>\n </div>\n ) : null}\n <span aria-live=\"polite\" className=\"sr-only\">\n {priceUpdating === line.lineId ? labels.priceUpdating : ''}\n </span>\n {line.quantity !== undefined ? (\n <div className=\"flex items-center gap-1\">\n <Button\n type=\"button\"\n size=\"icon\"\n variant={VARIANT_OUTLINE}\n aria-label={fill(labels.decrease, { name: line.title })}\n disabled={!canDecrease || rowRemoving}\n onClick={() =>\n changeQuantity(line.lineId, currentQuantity - 1)\n }\n >\n {labels.decreaseSymbol}\n </Button>\n <span className=\"min-w-8 text-center text-sm tabular-nums\">\n {line.quantity}\n </span>\n <Button\n type=\"button\"\n size=\"icon\"\n variant={VARIANT_OUTLINE}\n aria-label={fill(labels.increase, { name: line.title })}\n disabled={!canIncrease || rowRemoving}\n onClick={() =>\n changeQuantity(line.lineId, currentQuantity + 1)\n }\n >\n {labels.increaseSymbol}\n </Button>\n </div>\n ) : null}\n </div>\n </div>\n\n {tiers.length > 1 ? (\n <div className=\"mt-2 rounded-lg bg-muted/40 px-3 py-2\">\n <div className=\"flex flex-wrap items-center justify-between gap-x-2 gap-y-1\">\n <p className=\"text-xs font-medium text-muted-foreground\">\n {labels.tierBadge}\n </p>\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n className=\"px-0\"\n aria-expanded={tierOpen}\n aria-controls={`${uid}-tiers-${line.lineId}`}\n onClick={() => toggleTiers(line.lineId)}\n >\n {tierOpen ? labels.tierHide : labels.tierSee}\n </Button>\n </div>\n {nextReachable && nextTier && line.quantity !== undefined ? (\n <p className=\"mt-1 text-xs text-muted-foreground\">\n {fill(labels.tierNext, {\n count: nextTier.minQuantity - currentQuantity,\n price: money(nextTier.unitCents, model),\n })}\n </p>\n ) : null}\n {tierOpen ? (\n <div\n id={`${uid}-tiers-${line.lineId}`}\n className=\"mt-2 divide-y divide-border border-t border-border\"\n >\n {tiers.map((tier) => {\n const tierIsCurrent =\n currentTier?.minQuantity === tier.minQuantity;\n return (\n <div\n key={tier.minQuantity}\n aria-current={tierIsCurrent ? 'true' : undefined}\n className={\n tierIsCurrent\n ? 'flex items-center justify-between gap-2 py-1.5 text-xs font-medium'\n : 'flex items-center justify-between gap-2 py-1.5 text-xs text-muted-foreground'\n }\n >\n <span>{tierRangeLabel(tier, labels)}</span>\n <span className=\"flex items-center gap-1.5\">\n <span className=\"tabular-nums\">\n {money(tier.unitCents, model)}\n </span>\n {tierIsCurrent ? (\n <span className=\"text-xs font-normal text-muted-foreground\">\n {labels.tierCurrent}\n </span>\n ) : null}\n </span>\n </div>\n );\n })}\n </div>\n ) : null}\n </div>\n ) : null}\n\n {model.capabilities.associates &&\n associateDefs.length > 0 &&\n (associateLines.length > 0 || addableAssociates.length > 0) ? (\n <div className=\"mt-2 rounded-lg bg-muted/40 px-3 py-2\">\n <div className=\"flex flex-wrap items-center justify-between gap-x-2 gap-y-1\">\n <p className=\"text-xs text-muted-foreground\">\n {associateLines.length > 0\n ? fill(\n associateLines.length === 1\n ? labels.associatesSummaryOne\n : labels.associatesSummary,\n { count: associateLines.length },\n )\n : labels.associatesTitle}\n </p>\n {addableAssociates.length > 0 || assocOpen === line.lineId ? (\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n className=\"px-0\"\n aria-expanded={assocOpen === line.lineId}\n aria-controls={`${uid}-associates-${line.lineId}`}\n onClick={() =>\n setAssocOpen(assocOpen === line.lineId ? '' : line.lineId)\n }\n >\n {assocOpen === line.lineId\n ? labels.associatesHide\n : labels.associatesAddMore}\n </Button>\n ) : null}\n </div>\n {rowNotice ? (\n <p\n aria-live=\"polite\"\n className={\n rowNotice.error\n ? 'mt-1.5 text-xs text-destructive'\n : 'mt-1.5 text-xs text-muted-foreground'\n }\n >\n {rowNotice.text}\n </p>\n ) : null}\n {assocOpen === line.lineId ? (\n <div\n id={`${uid}-associates-${line.lineId}`}\n className=\"mt-2 divide-y divide-border border-t border-border\"\n >\n {availableAssociates.length === 0 ? (\n <p className=\"py-2 text-xs text-muted-foreground\">\n {labels.associateOptionsNone}\n </p>\n ) : (\n availableAssociates.map((def) => {\n const defMax = def.availableMaxQuantity ?? 0;\n const defDiscount = def.discount ?? null;\n const blocked =\n def.eligible === false || def.stock < 1 || defMax < 1;\n const adding = addingAssociate === def.id;\n const status =\n def.stock < 1\n ? labels.associateNoStock\n : def.eligible === false\n ? `${labels.associateNotEligible} · ${def.reason ?? ''}`\n : defMax < 1\n ? labels.associateLimitReached\n : '';\n return (\n <div\n key={def.id}\n className=\"flex items-start gap-2.5 py-2\"\n >\n <img\n src={def.image || PRODUCT_IMAGE_FALLBACK}\n alt={def.title}\n width={36}\n height={36}\n className=\"h-9 w-9 shrink-0 rounded-md border border-border object-cover\"\n />\n <div className=\"flex min-w-0 flex-1 flex-col gap-0.5\">\n <p className=\"text-xs font-medium\">{def.title}</p>\n <p className=\"text-xs text-muted-foreground\">\n {def.variant}\n </p>\n <p className=\"flex flex-wrap items-center gap-x-2 gap-y-0.5 text-xs\">\n <span className=\"tabular-nums\">\n {money(def.unitCents, model)}\n </span>\n {defDiscount ? (\n <span className=\"text-muted-foreground line-through tabular-nums\">\n {money(def.regularCents ?? 0, model)}\n </span>\n ) : null}\n {defDiscount ? (\n <span className=\"text-success\">\n {fill(labels.associateSavings, {\n amount: money(defDiscount.amountCents, model),\n percent: defDiscount.percent,\n })}\n </span>\n ) : null}\n {defMax > 0 ? (\n <span className=\"text-muted-foreground\">\n {fill(labels.associateMax, { count: defMax })}\n </span>\n ) : null}\n </p>\n {status ? (\n <p className=\"text-xs text-muted-foreground\">\n {status}\n </p>\n ) : null}\n </div>\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_OUTLINE}\n disabled={blocked || addingAny || rowRemoving}\n onClick={() =>\n actions.onAddAssociate?.(line.lineId, def.id)\n }\n >\n {adding\n ? labels.associateAdding\n : labels.associateAdd}\n </Button>\n </div>\n );\n })\n )}\n </div>\n ) : null}\n </div>\n ) : null}\n\n {model.capabilities.associates && confirmingMain ? (\n <div className=\"mt-2 rounded-md border border-border bg-muted/40 px-3 py-2\">\n <p className=\"text-xs text-destructive\">\n {fill(labels.removeMainWarning, {\n name: line.title,\n count: associateLines.length,\n })}\n </p>\n <div className=\"mt-2 flex flex-wrap gap-2\">\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_DESTRUCTIVE}\n disabled={rowRemoving}\n onClick={() => confirmRemoveMainLine(line)}\n >\n {labels.removeMainConfirm}\n </Button>\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n onClick={() => setConfirmRemoveMain('')}\n >\n {labels.associateKeep}\n </Button>\n </div>\n </div>\n ) : null}\n\n {line.removable === false ? null : (\n <div className=\"mt-2 flex justify-end\">\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n className=\"px-0 text-muted-foreground hover:text-destructive\"\n aria-label={fill(labels.removeNamed, { name: line.title })}\n disabled={rowRemoving}\n onClick={() => requestRemoveLine(line)}\n >\n {rowRemoving ? labels.associateRemoving : labels.remove}\n </Button>\n </div>\n )}\n </li>\n );\n })}\n </ul>\n </section>\n );\n })}\n </div>\n </section>\n\n <div className=\"rounded-xl border border-border bg-card\">\n <section aria-labelledby={`${uid}-payment`} className=\"px-4 py-3\">\n <h3\n id={`${uid}-payment`}\n className=\"text-xs font-semibold uppercase tracking-wide text-muted-foreground\"\n >\n {labels.paymentTitle}\n </h3>\n <div className=\"mt-2 flex flex-wrap items-center justify-between gap-2 rounded-lg bg-muted/40 px-3 py-2\">\n <div className=\"min-w-0\">\n <p className=\"text-sm font-medium\">{paymentSummaryLabel}</p>\n {activeMethod?.detail !== undefined ? (\n <p className=\"truncate text-xs text-muted-foreground\">\n {activeMethod.detail}\n </p>\n ) : null}\n </div>\n {hasPaymentMethods ? (\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_OUTLINE}\n aria-expanded={paymentOpen}\n aria-controls={`${uid}-payment-panel`}\n onClick={() => setPaymentOpen(!paymentOpen)}\n >\n {activeMethod\n ? labels.changeAction\n : labels.paymentSelectAction ?? labels.changeAction}\n </Button>\n ) : null}\n </div>\n {paymentNotice ? (\n <p className=\"mt-1 text-xs text-destructive\">{paymentNotice}</p>\n ) : null}\n {paymentOpen ? (\n <div id={`${uid}-payment-panel`} className=\"mt-2\">\n <OptionGroup\n legend={labels.paymentChoose}\n options={paymentOptions}\n selectedId={activePaymentId}\n onSelect={selectPayment}\n className=\"grid gap-1.5\"\n />\n </div>\n ) : null}\n {labels.paymentProviderNote ? (\n <p className=\"mt-2 text-xs text-muted-foreground\">{labels.paymentProviderNote}</p>\n ) : null}\n {paymentError ? (\n <div\n role=\"alert\"\n className=\"mt-3 rounded-md border border-destructive/40 bg-destructive/10 p-3\"\n >\n <p className=\"text-sm font-medium text-destructive\">{labels.paymentErrorTitle}</p>\n <p className=\"mt-1 text-xs text-muted-foreground\">{labels.paymentErrorBody}</p>\n {retryPayment ? (\n <div className=\"mt-2\">\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_OUTLINE}\n onClick={retryPayment}\n >\n {labels.paymentRetry}\n </Button>\n </div>\n ) : null}\n </div>\n ) : null}\n </section>\n\n {addressBook.length > 0 ? (\n <section\n aria-labelledby={`${uid}-billing`}\n className=\"border-t border-border px-4 py-3\"\n >\n <h3\n id={`${uid}-billing`}\n className=\"text-xs font-semibold uppercase tracking-wide text-muted-foreground\"\n >\n {labels.billingTitle}\n </h3>\n <div className=\"mt-2\">\n <Button\n type=\"button\"\n role=\"checkbox\"\n aria-checked={billingSame}\n variant={VARIANT_GHOST}\n size=\"sm\"\n onClick={() => setBillingSame(!billingSame)}\n className=\"w-full justify-start whitespace-normal px-0 text-left\"\n >\n <span\n aria-hidden=\"true\"\n className=\"flex size-4 shrink-0 items-center justify-center rounded-sm border border-input text-xs\"\n >\n {billingSame ? labels.checkSymbol : null}\n </span>\n <span className=\"text-sm font-normal\">{labels.billingSame}</span>\n </Button>\n </div>\n {!billingSame ? (\n <div className=\"mt-2\">\n <OptionGroup\n legend={labels.billingChoose}\n options={addressBook.map((address) => ({\n id: address.id,\n title: address.label,\n detail: addressSummary(address),\n meta: address.isDefault ? labels.addressDefaultBadge : '',\n disabled: false,\n reason: '',\n }))}\n selectedId={billingId}\n onSelect={setBillingId}\n className=\"grid gap-2\"\n />\n </div>\n ) : null}\n </section>\n ) : null}\n </div>\n\n {model.labels.footerNote ? (\n <p className=\"text-xs text-muted-foreground\">{model.labels.footerNote}</p>\n ) : null}\n </div>\n\n <aside className=\"md:col-span-2 md:sticky md:top-6\" aria-label={labels.summaryTitle}>\n <Card className=\"gap-3 py-0 shadow-none\">\n <CardHeader className=\"border-b border-border px-4 py-3\">\n <div className=\"flex items-baseline justify-between gap-2\">\n <h3 className=\"text-sm font-semibold\">{labels.summaryTitle}</h3>\n {unitCount === undefined ? null : (\n <p className=\"text-xs text-muted-foreground\">\n {countLabel(\n unitCount,\n labels.summaryItemOne,\n fill(labels.summaryItems, { count: unitCount }),\n )}\n </p>\n )}\n </div>\n </CardHeader>\n <CardContent className=\"px-4 py-3\">\n <dl className=\"space-y-2\">\n <SummaryRow\n label={labels.subtotal}\n value={amountText(subtotal, model)}\n emphasis={false}\n />\n {promotions.map((promotion) =>\n isFiniteAmount(promotion.amountCents) ? (\n <SummaryRow\n key={promotion.id}\n label={promotion.label}\n value={`- ${money(promotion.amountCents, model)}`}\n emphasis={false}\n />\n ) : null,\n )}\n {isFiniteAmount(tax) ? (\n <SummaryRow\n label={taxLabel(labels.tax, model.totals.taxRateBps)}\n value={money(tax, model)}\n emphasis={false}\n />\n ) : null}\n {pending ? null : (\n <>\n {isFiniteAmount(shippingFees) && shippingFees > 0 ? (\n <SummaryRow\n label={labels.shippingCost}\n value={money(shippingFees, model)}\n emphasis={false}\n />\n ) : null}\n {isFiniteAmount(pickupFees) && pickupFees > 0 ? (\n <SummaryRow\n label={labels.pickupCost}\n value={money(pickupFees, model)}\n emphasis={false}\n />\n ) : null}\n {isFiniteAmount(model.totals.extraCents) && model.totals.extraCents > 0 ? (\n <SummaryRow\n label={model.totals.extraLabel || labels.extraCost}\n value={money(model.totals.extraCents, model)}\n emphasis={false}\n />\n ) : null}\n </>\n )}\n </dl>\n\n <div className=\"mt-3 border-t border-border pt-3\">\n <dl>\n <div className=\"flex items-baseline justify-between gap-3\">\n <dt className=\"text-sm font-semibold\">\n {pending ? labels.totalPending : labels.total}\n </dt>\n <dd className=\"text-base font-semibold tabular-nums\">\n {pending ? labels.overviewPending : amountText(total, model)}\n </dd>\n </div>\n </dl>\n {pending ? (\n labels.totalPendingNote ? (\n <p className=\"mt-1 text-xs text-muted-foreground\">{labels.totalPendingNote}</p>\n ) : null\n ) : labels.totalDemoNote ? (\n <p className=\"mt-1 text-xs text-muted-foreground\">{labels.totalDemoNote}</p>\n ) : null}\n </div>\n\n {model.capabilities.coupons ? (\n <div className=\"mt-3\">\n {appliedCoupon ? (\n <div className=\"flex items-center justify-between gap-2\">\n <p className=\"text-xs text-success\">\n {appliedCoupon.code\n ? fill(labels.promoApplied, { code: appliedCoupon.code })\n : appliedCoupon.label}\n </p>\n <Button\n type=\"button\"\n size=\"xs\"\n variant={VARIANT_GHOST}\n onClick={removeCoupon}\n >\n {labels.remove}\n </Button>\n </div>\n ) : couponOpen ? (\n <div>\n <label htmlFor={`${uid}-coupon`} className=\"text-xs font-medium\">\n {labels.promoLabel}\n </label>\n <div className=\"mt-1 flex gap-2\">\n <input\n id={`${uid}-coupon`}\n value={couponCode}\n placeholder={labels.promoPlaceholder}\n onChange={(event) => {\n setCouponCode(event.target.value);\n setCouponNoticeDismissed(true);\n }}\n className=\"h-9 min-w-0 flex-1 rounded-md border border-input bg-background px-3 text-sm\"\n />\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_OUTLINE}\n onClick={applyCoupon}\n >\n {labels.promoApply}\n </Button>\n </div>\n {couponNotice && couponNotice.status !== 'applied' ? (\n <p role=\"alert\" className=\"mt-1 text-xs text-destructive\">\n {couponNotice.message}\n </p>\n ) : null}\n </div>\n ) : (\n <Button\n type=\"button\"\n size=\"sm\"\n variant={VARIANT_GHOST}\n onClick={() => setCouponOpen(true)}\n >\n {labels.promoOpen}\n </Button>\n )}\n </div>\n ) : null}\n </CardContent>\n <CardFooter className=\"px-4 pb-4\">\n <div className=\"w-full\">\n <Button\n type=\"button\"\n className=\"hidden w-full md:inline-flex\"\n size=\"lg\"\n disabled={!canConfirm || creatingOrder}\n aria-describedby={`${uid}-confirm-note`}\n onClick={handleConfirm}\n >\n {creatingOrder ? labels.confirmationCreating : labels.confirm}\n </Button>\n <p id={`${uid}-confirm-note`} className=\"mt-2 text-xs text-muted-foreground\">\n {creatingOrder\n ? labels.confirmationCreatingNote\n : canConfirm\n ? labels.confirmNote\n : blockedMessage}\n </p>\n </div>\n </CardFooter>\n </Card>\n </aside>\n </div>\n </div>\n );\n}\n"],"mappings":"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","names":[]}
@@ -0,0 +1,15 @@
1
+ import type { CheckoutConfirmation, CheckoutCopy } from './types';
2
+ export type CheckoutConfirmationViewProps = {
3
+ confirmation: CheckoutConfirmation;
4
+ labels: CheckoutCopy;
5
+ locale: string;
6
+ currencyCode: string;
7
+ onContinueShopping?: () => void;
8
+ };
9
+ /**
10
+ * The designer's confirmed-order screen, extracted unchanged from
11
+ * CheckoutView. It is driven only by host data: no fixtures, no money
12
+ * computation, no success claim beyond the confirmed order it receives.
13
+ */
14
+ export declare function CheckoutConfirmationView({ confirmation, labels, locale, currencyCode, onContinueShopping, }: CheckoutConfirmationViewProps): import("react").JSX.Element;
15
+ //# sourceMappingURL=confirmation-view.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"confirmation-view.d.ts","sourceRoot":"","sources":["../../../../../src/blocks/designs/checkout-commerce-v1/view/confirmation-view.tsx"],"names":[],"mappings":"AAgBA,OAAO,KAAK,EAAE,oBAAoB,EAAE,YAAY,EAAE,MAAM,SAAS,CAAC;AAElE,MAAM,MAAM,6BAA6B,GAAG;IAC1C,YAAY,EAAE,oBAAoB,CAAC;IACnC,MAAM,EAAE,YAAY,CAAC;IACrB,MAAM,EAAE,MAAM,CAAC;IACf,YAAY,EAAE,MAAM,CAAC;IACrB,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;CACjC,CAAC;AAEF;;;;GAIG;AACH,wBAAgB,wBAAwB,CAAC,EACvC,YAAY,EACZ,MAAM,EACN,MAAM,EACN,YAAY,EACZ,kBAAkB,GACnB,EAAE,6BAA6B,+BAkT/B"}
@@ -0,0 +1,288 @@
1
+ "use strict";
2
+ "use client";
3
+ var __defProp = Object.defineProperty;
4
+ var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
5
+ var __getOwnPropNames = Object.getOwnPropertyNames;
6
+ var __hasOwnProp = Object.prototype.hasOwnProperty;
7
+ var __export = (target, all) => {
8
+ for (var name in all)
9
+ __defProp(target, name, { get: all[name], enumerable: true });
10
+ };
11
+ var __copyProps = (to, from, except, desc) => {
12
+ if (from && typeof from === "object" || typeof from === "function") {
13
+ for (let key of __getOwnPropNames(from))
14
+ if (!__hasOwnProp.call(to, key) && key !== except)
15
+ __defProp(to, key, { get: () => from[key], enumerable: !(desc = __getOwnPropDesc(from, key)) || desc.enumerable });
16
+ }
17
+ return to;
18
+ };
19
+ var __toCommonJS = (mod) => __copyProps(__defProp({}, "__esModule", { value: true }), mod);
20
+ var confirmation_view_exports = {};
21
+ __export(confirmation_view_exports, {
22
+ CheckoutConfirmationView: () => CheckoutConfirmationView
23
+ });
24
+ module.exports = __toCommonJS(confirmation_view_exports);
25
+ var import_jsx_runtime = require("react/jsx-runtime");
26
+ var import_react = require("react");
27
+ var import_badge = require("../../../../ui/badge.js");
28
+ var import_button = require("../../../../ui/button.js");
29
+ var import_contracts = require("../../../../lib/contracts.js");
30
+ var import_format = require("./format.js");
31
+ var import_summary_row = require("./summary-row.js");
32
+ function CheckoutConfirmationView({
33
+ confirmation,
34
+ labels,
35
+ locale,
36
+ currencyCode,
37
+ onContinueShopping
38
+ }) {
39
+ const uid = (0, import_react.useId)();
40
+ const currency = { locale, currencyCode };
41
+ const itemsLabel = (0, import_format.isFiniteAmount)(confirmation.unitCount) ? (0, import_format.countLabel)(
42
+ confirmation.unitCount,
43
+ labels.summaryItemOne,
44
+ (0, import_format.fill)(labels.summaryItems, { count: confirmation.unitCount })
45
+ ) : "";
46
+ const deliveriesLabel = (0, import_format.countLabel)(
47
+ confirmation.groups.length,
48
+ labels.deliveriesOne,
49
+ (0, import_format.fill)(labels.deliveriesMany, { count: confirmation.groups.length })
50
+ );
51
+ const purchaseBreakdown = itemsLabel ? (0, import_format.fill)(labels.purchaseBreakdown, { items: itemsLabel, deliveries: deliveriesLabel }) : deliveriesLabel;
52
+ const orderSteps = [
53
+ {
54
+ title: labels.confirmationNextOneTitle,
55
+ body: labels.confirmationNextOneBody
56
+ },
57
+ {
58
+ title: labels.confirmationNextTwoTitle,
59
+ body: labels.confirmationNextTwoBody
60
+ },
61
+ {
62
+ title: labels.confirmationNextThreeTitle,
63
+ body: labels.confirmationNextThreeBody
64
+ }
65
+ ];
66
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mx-auto flex w-full max-w-2xl flex-col gap-4", children: [
67
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
68
+ "section",
69
+ {
70
+ "aria-labelledby": `${uid}-confirmed`,
71
+ className: "rounded-xl border border-success/40 bg-card p-5 sm:p-6",
72
+ children: [
73
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-start gap-3", children: [
74
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
75
+ "span",
76
+ {
77
+ "aria-hidden": "true",
78
+ className: "flex h-10 w-10 shrink-0 items-center justify-center rounded-full bg-success/10 text-base font-semibold text-success",
79
+ children: labels.checkSymbol
80
+ }
81
+ ),
82
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0", children: [
83
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_badge.Badge, { variant: "secondary", children: labels.confirmationBadge }),
84
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h2", { id: `${uid}-confirmed`, className: "mt-2 text-xl font-semibold tracking-tight", children: labels.confirmationTitle }),
85
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-1 text-sm text-muted-foreground", children: (0, import_format.fill)(labels.confirmationBody, { name: confirmation.customerName }) }),
86
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-1 text-xs text-muted-foreground", children: (0, import_format.fill)(labels.confirmationEmailNote, { email: confirmation.customerEmail }) })
87
+ ] })
88
+ ] }),
89
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("dl", { className: "mt-4 grid gap-2 rounded-lg bg-muted/40 px-3 py-2 sm:grid-cols-2", children: [
90
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
91
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dt", { className: "text-xs text-muted-foreground", children: labels.confirmationReference }),
92
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dd", { className: "text-sm font-medium tabular-nums", children: confirmation.reference })
93
+ ] }),
94
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "sm:text-right", children: [
95
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dt", { className: "text-xs text-muted-foreground", children: labels.confirmationTotal }),
96
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dd", { className: "text-sm font-semibold tabular-nums", children: (0, import_format.money)(confirmation.totalCents, currency) })
97
+ ] })
98
+ ] }),
99
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-2 text-xs text-muted-foreground", children: labels.confirmationReferenceNote })
100
+ ]
101
+ }
102
+ ),
103
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
104
+ "section",
105
+ {
106
+ "aria-labelledby": `${uid}-next`,
107
+ className: "rounded-xl border border-border bg-card p-5",
108
+ children: [
109
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { id: `${uid}-next`, className: "text-sm font-semibold", children: labels.confirmationNextTitle }),
110
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ol", { className: "mt-3 space-y-3", children: orderSteps.map((step, index) => /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("li", { className: "flex gap-3", children: [
111
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
112
+ "span",
113
+ {
114
+ "aria-hidden": "true",
115
+ className: index === 0 ? "flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-success/10 text-xs font-semibold text-success" : "flex h-6 w-6 shrink-0 items-center justify-center rounded-full bg-muted text-xs font-medium text-muted-foreground",
116
+ children: index + 1
117
+ }
118
+ ),
119
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { children: [
120
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-sm font-medium", children: step.title }),
121
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: step.body })
122
+ ] })
123
+ ] }, step.title)) })
124
+ ]
125
+ }
126
+ ),
127
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("section", { "aria-labelledby": `${uid}-order`, className: "rounded-xl border border-border bg-card", children: [
128
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-wrap items-baseline justify-between gap-2 border-b border-border px-4 py-3", children: [
129
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { id: `${uid}-order`, className: "text-sm font-semibold", children: labels.confirmationOrderTitle }),
130
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: purchaseBreakdown })
131
+ ] }),
132
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "divide-y divide-border", children: confirmation.groups.map((group) => {
133
+ const methodLine = [group.modeLabel, group.methodLabel, group.detailLabel].filter(Boolean).join(" \xB7 ");
134
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "px-4 py-3", children: [
135
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex flex-wrap items-baseline justify-between gap-2", children: [
136
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "min-w-0", children: [
137
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-sm font-medium", children: group.title }),
138
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: methodLine })
139
+ ] }),
140
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs tabular-nums text-muted-foreground", children: group.feeCents === 0 ? labels.groupFree : (0, import_format.money)(group.feeCents, currency) })
141
+ ] }),
142
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("ul", { className: "mt-2 space-y-2", children: group.lines.map((line) => {
143
+ const unitPrice = line.currentUnitCents ?? line.unitCents;
144
+ return /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
145
+ "li",
146
+ {
147
+ className: line.isAssociate ? "border-l border-border pl-3" : "",
148
+ children: /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex items-start gap-2.5", children: [
149
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
150
+ "img",
151
+ {
152
+ src: line.image || import_contracts.PRODUCT_IMAGE_FALLBACK,
153
+ alt: line.title,
154
+ width: 40,
155
+ height: 40,
156
+ className: "h-10 w-10 shrink-0 rounded-md border border-border object-cover"
157
+ }
158
+ ),
159
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "flex min-w-0 flex-1 flex-col gap-0.5", children: [
160
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("p", { className: "text-sm font-medium", children: [
161
+ line.title,
162
+ line.isAssociate ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("span", { className: "ml-1.5 text-xs font-normal text-muted-foreground", children: labels.confirmationAssociateTag }) : null
163
+ ] }),
164
+ line.variant ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: line.variant }) : null,
165
+ (0, import_format.isFiniteAmount)(unitPrice) ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: (0, import_format.fill)(labels.confirmationQuantity, {
166
+ count: line.quantity,
167
+ price: (0, import_format.money)(unitPrice, currency)
168
+ }) }) : null,
169
+ (line.lineDiscountCents ?? 0) > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-success", children: (0, import_format.fill)(labels.lineDiscount, {
170
+ label: line.lineDiscountLabel ?? "",
171
+ amount: (0, import_format.money)(line.lineDiscountCents ?? 0, currency)
172
+ }) }) : null
173
+ ] }),
174
+ (0, import_format.isFiniteAmount)(line.netTotalCents) ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "shrink-0 text-sm font-medium tabular-nums", children: (0, import_format.money)(line.netTotalCents, currency) }) : null
175
+ ] })
176
+ },
177
+ line.lineId
178
+ );
179
+ }) })
180
+ ] }, group.id);
181
+ }) })
182
+ ] }),
183
+ confirmation.address || confirmation.paymentLabel || confirmation.billingLabel ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
184
+ "section",
185
+ {
186
+ "aria-labelledby": `${uid}-details`,
187
+ className: "rounded-xl border border-border bg-card p-4",
188
+ children: [
189
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { id: `${uid}-details`, className: "text-sm font-semibold", children: labels.confirmationDetailsTitle }),
190
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "mt-3 divide-y divide-border", children: [
191
+ confirmation.address ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "py-3 first:pt-0 last:pb-0", children: [
192
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: labels.addressDelivery }),
193
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-1 text-sm font-medium", children: confirmation.address.label }),
194
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: (0, import_format.addressSummary)(confirmation.address) }),
195
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: [confirmation.address.recipient, confirmation.address.phone].filter(Boolean).join(" \xB7 ") })
196
+ ] }) : null,
197
+ confirmation.paymentLabel ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "py-3 first:pt-0 last:pb-0", children: [
198
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: labels.paymentTitle }),
199
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-1 text-sm font-medium", children: confirmation.paymentLabel }),
200
+ confirmation.paymentDetail ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: confirmation.paymentDetail }) : null
201
+ ] }) : null,
202
+ confirmation.billingLabel ? /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("div", { className: "py-3 first:pt-0 last:pb-0", children: [
203
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs font-semibold uppercase tracking-wide text-muted-foreground", children: labels.billingTitle }),
204
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-1 text-sm font-medium", children: confirmation.billingLabel }),
205
+ confirmation.billingDetail ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "text-xs text-muted-foreground", children: confirmation.billingDetail }) : null
206
+ ] }) : null
207
+ ] })
208
+ ]
209
+ }
210
+ ) : null,
211
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)(
212
+ "section",
213
+ {
214
+ "aria-labelledby": `${uid}-totals`,
215
+ className: "rounded-xl border border-border bg-card p-4",
216
+ children: [
217
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("h3", { id: `${uid}-totals`, className: "text-sm font-semibold", children: labels.summaryTitle }),
218
+ /* @__PURE__ */ (0, import_jsx_runtime.jsxs)("dl", { className: "mt-3 space-y-2", children: [
219
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
220
+ import_summary_row.SummaryRow,
221
+ {
222
+ label: labels.subtotal,
223
+ value: (0, import_format.amountText)(confirmation.subtotalCents, currency),
224
+ emphasis: false
225
+ }
226
+ ),
227
+ (confirmation.promotions ?? []).map((promotion) => /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
228
+ import_summary_row.SummaryRow,
229
+ {
230
+ label: promotion.label,
231
+ value: `- ${(0, import_format.money)(promotion.amountCents, currency)}`,
232
+ emphasis: false
233
+ },
234
+ promotion.id
235
+ )),
236
+ (0, import_format.isFiniteAmount)(confirmation.taxCents) ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
237
+ import_summary_row.SummaryRow,
238
+ {
239
+ label: (0, import_format.taxLabel)(labels.tax, confirmation.taxRateBps),
240
+ value: (0, import_format.money)(confirmation.taxCents, currency),
241
+ emphasis: false
242
+ }
243
+ ) : null,
244
+ (0, import_format.isFiniteAmount)(confirmation.shippingCents) && confirmation.shippingCents > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
245
+ import_summary_row.SummaryRow,
246
+ {
247
+ label: labels.shippingCost,
248
+ value: (0, import_format.money)(confirmation.shippingCents, currency),
249
+ emphasis: false
250
+ }
251
+ ) : null,
252
+ (0, import_format.isFiniteAmount)(confirmation.pickupCents) && confirmation.pickupCents > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
253
+ import_summary_row.SummaryRow,
254
+ {
255
+ label: labels.pickupCost,
256
+ value: (0, import_format.money)(confirmation.pickupCents, currency),
257
+ emphasis: false
258
+ }
259
+ ) : null,
260
+ (0, import_format.isFiniteAmount)(confirmation.extraCents) && confirmation.extraCents > 0 ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
261
+ import_summary_row.SummaryRow,
262
+ {
263
+ label: confirmation.extraLabel || labels.extraCost,
264
+ value: (0, import_format.money)(confirmation.extraCents, currency),
265
+ emphasis: false
266
+ }
267
+ ) : null
268
+ ] }),
269
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("dl", { className: "mt-2 border-t border-border pt-2", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(
270
+ import_summary_row.SummaryRow,
271
+ {
272
+ label: labels.total,
273
+ value: (0, import_format.amountText)(confirmation.totalCents, currency),
274
+ emphasis: true
275
+ }
276
+ ) }),
277
+ labels.totalDemoNote ? /* @__PURE__ */ (0, import_jsx_runtime.jsx)("p", { className: "mt-2 text-xs text-muted-foreground", children: labels.totalDemoNote }) : null
278
+ ]
279
+ }
280
+ ),
281
+ /* @__PURE__ */ (0, import_jsx_runtime.jsx)("div", { className: "flex justify-end", children: /* @__PURE__ */ (0, import_jsx_runtime.jsx)(import_button.Button, { type: "button", size: "lg", className: "w-full sm:w-auto", onClick: onContinueShopping, children: labels.confirmationCta }) })
282
+ ] });
283
+ }
284
+ // Annotate the CommonJS export names for ESM import in node:
285
+ 0 && (module.exports = {
286
+ CheckoutConfirmationView
287
+ });
288
+ //# sourceMappingURL=confirmation-view.js.map