@vtex/faststore 0.0.7 → 0.0.10

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 (498) hide show
  1. package/CHANGELOG.md +102 -0
  2. package/dist/actions.json +194 -1
  3. package/dist/catalog.json +3449 -1612
  4. package/dist/cli/index.d.ts +512 -63
  5. package/dist/cli/index.js +2098 -686
  6. package/dist/cli/index.js.map +1 -1
  7. package/dist/cli/server-runtime.js +44 -24
  8. package/dist/cli/server-runtime.js.map +1 -1
  9. package/dist/client.d.ts +5 -1
  10. package/dist/client.js +5 -1
  11. package/dist/components.d.ts +42 -10
  12. package/dist/components.js +47 -15
  13. package/dist/content-types.json +823 -0
  14. package/dist/core/dist/define-component.d.ts +12 -2
  15. package/dist/docs/account-access-gate.md +4 -4
  16. package/dist/docs/account-address-book.md +519 -0
  17. package/dist/docs/account-entry-point.md +5 -5
  18. package/dist/docs/account-menu.md +7 -7
  19. package/dist/docs/account-saved-cards.md +301 -0
  20. package/dist/docs/alert-dialog.md +2 -2
  21. package/dist/docs/billing-address.md +17 -9
  22. package/dist/docs/binding-switcher.md +154 -0
  23. package/dist/docs/card-entry.md +38 -7
  24. package/dist/docs/card-summary.md +175 -0
  25. package/dist/docs/cardholder-document.md +16 -14
  26. package/dist/docs/cart-destination.md +238 -0
  27. package/dist/docs/cart-item.md +22 -4
  28. package/dist/docs/cart-totalizer.md +1 -1
  29. package/dist/docs/cart.md +126 -19
  30. package/dist/docs/client-profile-fieldset.md +7 -5
  31. package/dist/docs/copy-text.md +84 -0
  32. package/dist/docs/document-field.md +8 -8
  33. package/dist/docs/footer-link-group.md +2 -2
  34. package/dist/docs/footer-social.md +1 -1
  35. package/dist/docs/free-shipping-progress.md +13 -9
  36. package/dist/docs/header-root.md +1 -1
  37. package/dist/docs/incentives.md +4 -4
  38. package/dist/docs/logo.md +6 -6
  39. package/dist/docs/my-account-profile.md +4 -4
  40. package/dist/docs/navigation-link-list.md +2 -2
  41. package/dist/docs/navigation-link.md +3 -3
  42. package/dist/docs/order-cancel.md +52 -0
  43. package/dist/docs/order-delivery-address.md +63 -0
  44. package/dist/docs/order-delivery-group.md +83 -0
  45. package/dist/docs/order-details-back.md +41 -0
  46. package/dist/docs/order-details-header.md +48 -0
  47. package/dist/docs/order-list-row.md +46 -0
  48. package/dist/docs/order-list-search.md +101 -0
  49. package/dist/docs/order-list-views.md +97 -0
  50. package/dist/docs/order-list.md +94 -0
  51. package/dist/docs/order-payment.md +94 -0
  52. package/dist/docs/order-placed-date.md +49 -0
  53. package/dist/docs/order-placed-payment-summary.md +13 -15
  54. package/dist/docs/order-placed.md +225 -0
  55. package/dist/docs/order-progress.md +88 -0
  56. package/dist/docs/order-status-badge.md +91 -0
  57. package/dist/docs/order-summary.md +53 -0
  58. package/dist/docs/payment-method-badges.md +16 -5
  59. package/dist/docs/payment-methods.md +1 -1
  60. package/dist/docs/place-order.md +13 -9
  61. package/dist/docs/product-information.md +2 -2
  62. package/dist/docs/product-shelf.md +7 -0
  63. package/dist/docs/saved-cards.md +2 -2
  64. package/dist/docs/select.md +22 -10
  65. package/dist/docs/session.md +1 -1
  66. package/dist/docs/shipping-address.md +1 -1
  67. package/dist/docs/sign-in-redirect.md +7 -7
  68. package/dist/docs/toast.md +35 -13
  69. package/dist/index.d.ts +7 -2
  70. package/dist/index.js +2 -1
  71. package/dist/internal/client.d.ts +9 -1
  72. package/dist/internal/client.js +10 -2
  73. package/dist/internal/server.d.ts +8 -2
  74. package/dist/internal/server.js +8 -2
  75. package/dist/matter/account-access-gate/account-access-gate.d.ts +2 -1
  76. package/dist/matter/account-access-gate/account-access-gate.js +19 -16
  77. package/dist/matter/account-access-gate/account-access-gate.js.map +1 -1
  78. package/dist/matter/account-address-book/account-address-book-delete.d.ts +60 -0
  79. package/dist/matter/account-address-book/account-address-book-delete.js +184 -0
  80. package/dist/matter/account-address-book/account-address-book-delete.js.map +1 -0
  81. package/dist/matter/account-address-book/account-address-book-deliverability.d.ts +19 -0
  82. package/dist/matter/account-address-book/account-address-book-deliverability.js +50 -0
  83. package/dist/matter/account-address-book/account-address-book-deliverability.js.map +1 -0
  84. package/dist/matter/account-address-book/account-address-book-form-parts.d.ts +42 -0
  85. package/dist/matter/account-address-book/account-address-book-form-parts.js +146 -0
  86. package/dist/matter/account-address-book/account-address-book-form-parts.js.map +1 -0
  87. package/dist/matter/account-address-book/account-address-book-profile-notice.d.ts +25 -0
  88. package/dist/matter/account-address-book/account-address-book-profile-notice.js +72 -0
  89. package/dist/matter/account-address-book/account-address-book-profile-notice.js.map +1 -0
  90. package/dist/matter/account-address-book/account-address-book.d.ts +120 -0
  91. package/dist/matter/account-address-book/account-address-book.js +469 -0
  92. package/dist/matter/account-address-book/account-address-book.js.map +1 -0
  93. package/dist/matter/account-address-book/account-address-country-switch.js +59 -0
  94. package/dist/matter/account-address-book/account-address-country-switch.js.map +1 -0
  95. package/dist/matter/account-address-book/account-address-country.d.ts +36 -0
  96. package/dist/matter/account-address-book/account-address-country.js +151 -0
  97. package/dist/matter/account-address-book/account-address-country.js.map +1 -0
  98. package/dist/matter/account-address-book/account-address-first-line.js +11 -0
  99. package/dist/matter/account-address-book/account-address-first-line.js.map +1 -0
  100. package/dist/matter/account-address-book/account-address-form-context.d.ts +55 -0
  101. package/dist/matter/account-address-book/account-address-form-context.js +14 -0
  102. package/dist/matter/account-address-book/account-address-form-context.js.map +1 -0
  103. package/dist/matter/account-address-book/account-address-form.d.ts +85 -0
  104. package/dist/matter/account-address-book/account-address-form.js +946 -0
  105. package/dist/matter/account-address-book/account-address-form.js.map +1 -0
  106. package/dist/matter/account-address-book/account-address-postal-autofill.js +189 -0
  107. package/dist/matter/account-address-book/account-address-postal-autofill.js.map +1 -0
  108. package/dist/matter/account-address-book/account-address-record.d.ts +26 -0
  109. package/dist/matter/account-address-book/account-address-record.js +138 -0
  110. package/dist/matter/account-address-book/account-address-record.js.map +1 -0
  111. package/dist/matter/account-entry-point/account-entry-point.js +11 -11
  112. package/dist/matter/account-entry-point/account-entry-point.js.map +1 -1
  113. package/dist/matter/account-menu/account-menu.d.ts +7 -3
  114. package/dist/matter/account-menu/account-menu.js +69 -28
  115. package/dist/matter/account-menu/account-menu.js.map +1 -1
  116. package/dist/matter/account-saved-cards/account-saved-cards.d.ts +383 -0
  117. package/dist/matter/account-saved-cards/account-saved-cards.js +956 -0
  118. package/dist/matter/account-saved-cards/account-saved-cards.js.map +1 -0
  119. package/dist/matter/billing-address/billing-address.d.ts +30 -17
  120. package/dist/matter/billing-address/billing-address.js +128 -33
  121. package/dist/matter/billing-address/billing-address.js.map +1 -1
  122. package/dist/matter/breadcrumb/breadcrumb.js +2 -2
  123. package/dist/matter/breadcrumb/breadcrumb.js.map +1 -1
  124. package/dist/matter/card-entry/card-capture.js +4 -3
  125. package/dist/matter/card-entry/card-capture.js.map +1 -1
  126. package/dist/matter/card-entry/card-entry.d.ts +5 -3
  127. package/dist/matter/card-entry/card-entry.js +77 -27
  128. package/dist/matter/card-entry/card-entry.js.map +1 -1
  129. package/dist/matter/cardholder-document/cardholder-document.d.ts +10 -9
  130. package/dist/matter/cardholder-document/cardholder-document.js +36 -16
  131. package/dist/matter/cardholder-document/cardholder-document.js.map +1 -1
  132. package/dist/matter/cart/cart-namespace.d.ts +5 -1
  133. package/dist/matter/cart/cart-namespace.js +5 -1
  134. package/dist/matter/cart/cart-namespace.js.map +1 -1
  135. package/dist/matter/cart/cart.d.ts +41 -6
  136. package/dist/matter/cart/cart.js +267 -54
  137. package/dist/matter/cart/cart.js.map +1 -1
  138. package/dist/matter/cart-destination/cart-destination.d.ts +222 -0
  139. package/dist/matter/cart-destination/cart-destination.js +613 -0
  140. package/dist/matter/cart-destination/cart-destination.js.map +1 -0
  141. package/dist/matter/cart-item/cart-item.d.ts +4 -2
  142. package/dist/matter/cart-item/cart-item.js +76 -17
  143. package/dist/matter/cart-item/cart-item.js.map +1 -1
  144. package/dist/matter/cart-totalizer/cart-totalizer.js +3 -2
  145. package/dist/matter/cart-totalizer/cart-totalizer.js.map +1 -1
  146. package/dist/matter/client-preferences/client-preferences-fieldset.js +1 -1
  147. package/dist/matter/client-profile-form/client-profile-fieldset.js +8 -5
  148. package/dist/matter/client-profile-form/client-profile-fieldset.js.map +1 -1
  149. package/dist/matter/free-shipping-progress/free-shipping-progress.d.ts +6 -3
  150. package/dist/matter/free-shipping-progress/free-shipping-progress.js +76 -33
  151. package/dist/matter/free-shipping-progress/free-shipping-progress.js.map +1 -1
  152. package/dist/matter/identity-edit/identity-edit.js +3 -3
  153. package/dist/matter/identity-edit/identity-edit.js.map +1 -1
  154. package/dist/matter/identity-summary/identity-summary.js +2 -2
  155. package/dist/matter/identity-summary/identity-summary.js.map +1 -1
  156. package/dist/matter/my-account-profile/my-account-profile.d.ts +3 -3
  157. package/dist/matter/my-account-profile/my-account-profile.js +4 -4
  158. package/dist/matter/my-account-profile/my-account-profile.js.map +1 -1
  159. package/dist/matter/order-cancel/order-cancel.d.ts +110 -0
  160. package/dist/matter/order-cancel/order-cancel.js +344 -0
  161. package/dist/matter/order-cancel/order-cancel.js.map +1 -0
  162. package/dist/matter/order-delivery-address/order-delivery-address.d.ts +73 -0
  163. package/dist/matter/order-delivery-address/order-delivery-address.js +172 -0
  164. package/dist/matter/order-delivery-address/order-delivery-address.js.map +1 -0
  165. package/dist/matter/order-delivery-group/order-delivery-group.d.ts +128 -0
  166. package/dist/matter/order-delivery-group/order-delivery-group.js +408 -0
  167. package/dist/matter/order-delivery-group/order-delivery-group.js.map +1 -0
  168. package/dist/matter/order-details-header/order-details-header.d.ts +104 -0
  169. package/dist/matter/order-details-header/order-details-header.js +190 -0
  170. package/dist/matter/order-details-header/order-details-header.js.map +1 -0
  171. package/dist/matter/order-list/customer-orders-filter.d.ts +12 -0
  172. package/dist/matter/order-list/customer-orders-filter.js +30 -0
  173. package/dist/matter/order-list/customer-orders-filter.js.map +1 -0
  174. package/dist/matter/order-list/order-list.d.ts +121 -0
  175. package/dist/matter/order-list/order-list.js +395 -0
  176. package/dist/matter/order-list/order-list.js.map +1 -0
  177. package/dist/matter/order-list-row/order-list-row.d.ts +44 -0
  178. package/dist/matter/order-list-row/order-list-row.js +127 -0
  179. package/dist/matter/order-list-row/order-list-row.js.map +1 -0
  180. package/dist/matter/order-list-search/order-list-search.d.ts +72 -0
  181. package/dist/matter/order-list-search/order-list-search.js +296 -0
  182. package/dist/matter/order-list-search/order-list-search.js.map +1 -0
  183. package/dist/matter/order-list-views/order-list-views.d.ts +65 -0
  184. package/dist/matter/order-list-views/order-list-views.js +154 -0
  185. package/dist/matter/order-list-views/order-list-views.js.map +1 -0
  186. package/dist/matter/order-payment/order-payment.d.ts +83 -0
  187. package/dist/matter/order-payment/order-payment.js +258 -0
  188. package/dist/matter/order-payment/order-payment.js.map +1 -0
  189. package/dist/matter/order-placed/order-placed-deliveries.d.ts +145 -0
  190. package/dist/matter/order-placed/order-placed-deliveries.js +380 -0
  191. package/dist/matter/order-placed/order-placed-deliveries.js.map +1 -0
  192. package/dist/matter/order-placed/order-placed.d.ts +122 -0
  193. package/dist/matter/order-placed/order-placed.js +452 -0
  194. package/dist/matter/order-placed/order-placed.js.map +1 -0
  195. package/dist/matter/order-placed-date/order-placed-date.d.ts +45 -0
  196. package/dist/matter/order-placed-date/order-placed-date.js +92 -0
  197. package/dist/matter/order-placed-date/order-placed-date.js.map +1 -0
  198. package/dist/matter/order-placed-payment-summary/order-placed-payment-summary.d.ts +5 -8
  199. package/dist/matter/order-placed-payment-summary/order-placed-payment-summary.js +29 -81
  200. package/dist/matter/order-placed-payment-summary/order-placed-payment-summary.js.map +1 -1
  201. package/dist/matter/order-progress/order-progress.d.ts +85 -0
  202. package/dist/matter/order-progress/order-progress.js +203 -0
  203. package/dist/matter/order-progress/order-progress.js.map +1 -0
  204. package/dist/matter/order-summary/order-summary.d.ts +81 -0
  205. package/dist/matter/order-summary/order-summary.js +192 -0
  206. package/dist/matter/order-summary/order-summary.js.map +1 -0
  207. package/dist/matter/payment/cardholder-document-rule.d.ts +35 -0
  208. package/dist/matter/payment/cardholder-document-rule.js +35 -0
  209. package/dist/matter/payment/cardholder-document-rule.js.map +1 -0
  210. package/dist/matter/payment/payment-card-capture.js +38 -23
  211. package/dist/matter/payment/payment-card-capture.js.map +1 -1
  212. package/dist/matter/payment/payment-controller.js +11 -0
  213. package/dist/matter/payment/payment-controller.js.map +1 -1
  214. package/dist/matter/payment/payment-method-badges.js +4 -2
  215. package/dist/matter/payment/payment-method-badges.js.map +1 -1
  216. package/dist/matter/payment/payment.js +11 -0
  217. package/dist/matter/payment/payment.js.map +1 -1
  218. package/dist/matter/payment/use-payment-method-selection.d.ts +39 -0
  219. package/dist/matter/payment/use-payment-method-selection.js +30 -2
  220. package/dist/matter/payment/use-payment-method-selection.js.map +1 -1
  221. package/dist/matter/payment/use-payment-submit-gate.d.ts +16 -2
  222. package/dist/matter/payment/use-payment-submit-gate.js +42 -14
  223. package/dist/matter/payment/use-payment-submit-gate.js.map +1 -1
  224. package/dist/matter/place-order/place-order.d.ts +12 -7
  225. package/dist/matter/place-order/place-order.js +126 -103
  226. package/dist/matter/place-order/place-order.js.map +1 -1
  227. package/dist/matter/pricing/pricing.js +5 -5
  228. package/dist/matter/pricing/pricing.js.map +1 -1
  229. package/dist/matter/product-shelf/product-shelf.d.ts +7 -0
  230. package/dist/matter/product-shelf/product-shelf.js +115 -1
  231. package/dist/matter/product-shelf/product-shelf.js.map +1 -1
  232. package/dist/matter/region/region.js +1 -1
  233. package/dist/matter/saved-cards/saved-cards.js +26 -15
  234. package/dist/matter/saved-cards/saved-cards.js.map +1 -1
  235. package/dist/matter/session/session.js +2 -2
  236. package/dist/matter/session/session.js.map +1 -1
  237. package/dist/matter/shipping-address/country-descriptors.d.ts +1 -0
  238. package/dist/matter/shipping-address/country-descriptors.js +23 -1
  239. package/dist/matter/shipping-address/country-descriptors.js.map +1 -1
  240. package/dist/matter/shipping-address/shipping-address.js +62 -14
  241. package/dist/matter/shipping-address/shipping-address.js.map +1 -1
  242. package/dist/matter/shipping-simulator/shipping-simulator.d.ts +2 -2
  243. package/dist/matter/shipping-simulator/shipping-simulator.js +6 -2
  244. package/dist/matter/shipping-simulator/shipping-simulator.js.map +1 -1
  245. package/dist/matter/sign-in-redirect/sign-in-redirect.js +48 -10
  246. package/dist/matter/sign-in-redirect/sign-in-redirect.js.map +1 -1
  247. package/dist/matter/variant-selector/variant-selector.js +2 -2
  248. package/dist/matter/variant-selector/variant-selector.js.map +1 -1
  249. package/dist/particles/address-summary/address-summary.js +2 -2
  250. package/dist/particles/address-summary/address-summary.js.map +1 -1
  251. package/dist/particles/alert-dialog/alert-dialog.d.ts +5 -1
  252. package/dist/particles/alert-dialog/alert-dialog.js +5 -2
  253. package/dist/particles/alert-dialog/alert-dialog.js.map +1 -1
  254. package/dist/particles/binding-switcher/binding-switcher.d.ts +38 -0
  255. package/dist/particles/binding-switcher/binding-switcher.js +183 -0
  256. package/dist/particles/binding-switcher/binding-switcher.js.map +1 -0
  257. package/dist/particles/card-summary/card-network.d.ts +17 -0
  258. package/dist/particles/card-summary/card-network.js +25 -0
  259. package/dist/particles/card-summary/card-network.js.map +1 -0
  260. package/dist/particles/card-summary/card-summary.d.ts +83 -0
  261. package/dist/particles/card-summary/card-summary.js +188 -0
  262. package/dist/particles/card-summary/card-summary.js.map +1 -0
  263. package/dist/particles/copy-text/copy-text.d.ts +28 -0
  264. package/dist/particles/copy-text/copy-text.js +140 -0
  265. package/dist/particles/copy-text/copy-text.js.map +1 -0
  266. package/dist/particles/document-field/document-field.d.ts +34 -5
  267. package/dist/particles/document-field/document-field.js +115 -19
  268. package/dist/particles/document-field/document-field.js.map +1 -1
  269. package/dist/particles/field/field.js +1 -1
  270. package/dist/particles/field/field.js.map +1 -1
  271. package/dist/particles/footer-link-group/footer-link-group.d.ts +6 -2
  272. package/dist/particles/footer-link-group/footer-link-group.js +18 -7
  273. package/dist/particles/footer-link-group/footer-link-group.js.map +1 -1
  274. package/dist/particles/footer-social/footer-social.d.ts +1 -1
  275. package/dist/particles/footer-social/footer-social.js +1 -1
  276. package/dist/particles/footer-social/footer-social.js.map +1 -1
  277. package/dist/particles/incentives/incentives.d.ts +7 -3
  278. package/dist/particles/incentives/incentives.js +8 -3
  279. package/dist/particles/incentives/incentives.js.map +1 -1
  280. package/dist/particles/logo/logo.d.ts +3 -2
  281. package/dist/particles/logo/logo.js +20 -8
  282. package/dist/particles/logo/logo.js.map +1 -1
  283. package/dist/particles/navigation-link/navigation-link.d.ts +2 -3
  284. package/dist/particles/navigation-link/navigation-link.js +4 -4
  285. package/dist/particles/navigation-link/navigation-link.js.map +1 -1
  286. package/dist/particles/navigation-link-list/navigation-link-list.d.ts +6 -2
  287. package/dist/particles/navigation-link-list/navigation-link-list.js +18 -7
  288. package/dist/particles/navigation-link-list/navigation-link-list.js.map +1 -1
  289. package/dist/particles/order-details-back/order-details-back.d.ts +28 -0
  290. package/dist/particles/order-details-back/order-details-back.js +52 -0
  291. package/dist/particles/order-details-back/order-details-back.js.map +1 -0
  292. package/dist/particles/order-status-badge/order-status-badge.d.ts +19 -0
  293. package/dist/particles/order-status-badge/order-status-badge.js +50 -0
  294. package/dist/particles/order-status-badge/order-status-badge.js.map +1 -0
  295. package/dist/particles/payment-methods/payment-methods.d.ts +1 -1
  296. package/dist/particles/payment-methods/payment-methods.js +1 -1
  297. package/dist/particles/payment-methods/payment-methods.js.map +1 -1
  298. package/dist/particles/phone-field/phone-field.js +2 -2
  299. package/dist/particles/phone-field/phone-field.js.map +1 -1
  300. package/dist/particles/select/select.js +6 -6
  301. package/dist/particles/select/select.js.map +1 -1
  302. package/dist/particles/toast/toast.d.ts +21 -7
  303. package/dist/particles/toast/toast.js +76 -8
  304. package/dist/particles/toast/toast.js.map +1 -1
  305. package/dist/schema.graphql +1376 -126
  306. package/dist/sdk/actions/address-action-provider.d.ts +16 -0
  307. package/dist/sdk/actions/address-action-provider.js +20 -0
  308. package/dist/sdk/actions/address-action-provider.js.map +1 -0
  309. package/dist/sdk/actions/analytics-action-provider.js +1 -1
  310. package/dist/sdk/actions/index.d.ts +5 -1
  311. package/dist/sdk/actions/index.js +5 -1
  312. package/dist/sdk/actions/locale-action-provider.d.ts +16 -0
  313. package/dist/sdk/actions/locale-action-provider.js +20 -0
  314. package/dist/sdk/actions/locale-action-provider.js.map +1 -0
  315. package/dist/sdk/actions/order-action-provider.d.ts +12 -0
  316. package/dist/sdk/actions/order-action-provider.js +16 -0
  317. package/dist/sdk/actions/order-action-provider.js.map +1 -0
  318. package/dist/sdk/actions/saved-card-action-provider.d.ts +12 -0
  319. package/dist/sdk/actions/saved-card-action-provider.js +16 -0
  320. package/dist/sdk/actions/saved-card-action-provider.js.map +1 -0
  321. package/dist/sdk/actions/types.d.ts +10 -2
  322. package/dist/sdk/address/address-fields.js +38 -0
  323. package/dist/sdk/address/address-fields.js.map +1 -0
  324. package/dist/sdk/address/checkout-readiness.js +17 -0
  325. package/dist/sdk/address/checkout-readiness.js.map +1 -0
  326. package/dist/sdk/address/constants.js +60 -0
  327. package/dist/sdk/address/constants.js.map +1 -0
  328. package/dist/sdk/address/country-display.js +19 -0
  329. package/dist/sdk/address/country-display.js.map +1 -0
  330. package/dist/sdk/address/country-rules.js +30 -0
  331. package/dist/sdk/address/country-rules.js.map +1 -0
  332. package/dist/sdk/address/format-address.js +18 -0
  333. package/dist/sdk/address/format-address.js.map +1 -0
  334. package/dist/sdk/address/iso-countries.js +262 -0
  335. package/dist/sdk/address/iso-countries.js.map +1 -0
  336. package/dist/sdk/address/layouts.js +56 -0
  337. package/dist/sdk/address/layouts.js.map +1 -0
  338. package/dist/sdk/address/messages.js +97 -0
  339. package/dist/sdk/address/messages.js.map +1 -0
  340. package/dist/sdk/address/operations.d.ts +54 -0
  341. package/dist/sdk/address/operations.js +83 -0
  342. package/dist/sdk/address/operations.js.map +1 -0
  343. package/dist/sdk/address/postal-code-lookup-operations.js +23 -0
  344. package/dist/sdk/address/postal-code-lookup-operations.js.map +1 -0
  345. package/dist/sdk/address/postal-code.js +11 -0
  346. package/dist/sdk/address/postal-code.js.map +1 -0
  347. package/dist/sdk/address/schema.js +14 -0
  348. package/dist/sdk/address/schema.js.map +1 -0
  349. package/dist/sdk/address/server-fields.js +25 -0
  350. package/dist/sdk/address/server-fields.js.map +1 -0
  351. package/dist/sdk/address/switch-country.js +57 -0
  352. package/dist/sdk/address/switch-country.js.map +1 -0
  353. package/dist/sdk/address/types.d.ts +26 -0
  354. package/dist/sdk/address/use-address-actions.d.ts +29 -0
  355. package/dist/sdk/address/use-address-actions.js +247 -0
  356. package/dist/sdk/address/use-address-actions.js.map +1 -0
  357. package/dist/sdk/address/use-address-by-postal-code.js +57 -0
  358. package/dist/sdk/address/use-address-by-postal-code.js.map +1 -0
  359. package/dist/sdk/address/validate-address.js +62 -0
  360. package/dist/sdk/address/validate-address.js.map +1 -0
  361. package/dist/sdk/cache/storefront-cache.js +30 -4
  362. package/dist/sdk/cache/storefront-cache.js.map +1 -1
  363. package/dist/sdk/cart/operations.d.ts +2 -1
  364. package/dist/sdk/cart/operations.js +55 -1
  365. package/dist/sdk/cart/operations.js.map +1 -1
  366. package/dist/sdk/cart/optimistic.d.ts +30 -7
  367. package/dist/sdk/cart/optimistic.js +78 -41
  368. package/dist/sdk/cart/optimistic.js.map +1 -1
  369. package/dist/sdk/cart/use-cart-actions.d.ts +7 -0
  370. package/dist/sdk/cart/use-cart-actions.js +61 -15
  371. package/dist/sdk/cart/use-cart-actions.js.map +1 -1
  372. package/dist/sdk/cart/use-cart-sync-sales-channel.js +70 -0
  373. package/dist/sdk/cart/use-cart-sync-sales-channel.js.map +1 -0
  374. package/dist/sdk/client/fetch-page-data.d.ts +11 -0
  375. package/dist/sdk/client/fetch-page-data.js +12 -1
  376. package/dist/sdk/client/fetch-page-data.js.map +1 -1
  377. package/dist/sdk/content/create-content-runtime.js +1 -8
  378. package/dist/sdk/content/create-content-runtime.js.map +1 -1
  379. package/dist/sdk/data/failed-fields.js +23 -0
  380. package/dist/sdk/data/failed-fields.js.map +1 -0
  381. package/dist/sdk/data/index.js +2 -2
  382. package/dist/sdk/data/page-reactive-data-root.d.ts +45 -7
  383. package/dist/sdk/data/page-reactive-data-root.js +88 -12
  384. package/dist/sdk/data/page-reactive-data-root.js.map +1 -1
  385. package/dist/sdk/data/reactive-list-item-data-provider.js +2 -2
  386. package/dist/sdk/generated/fragment-types.js +2 -0
  387. package/dist/sdk/generated/fragment-types.js.map +1 -1
  388. package/dist/sdk/generated/gql.js +17 -11
  389. package/dist/sdk/generated/gql.js.map +1 -1
  390. package/dist/sdk/generated/graphql.d.ts +185 -46
  391. package/dist/sdk/generated/graphql.js +2587 -155
  392. package/dist/sdk/generated/graphql.js.map +1 -1
  393. package/dist/sdk/i18n/messages/en-US.js +157 -1
  394. package/dist/sdk/i18n/messages/en-US.json +157 -1
  395. package/dist/sdk/i18n/messages/en-US.json.d.ts +156 -0
  396. package/dist/sdk/i18n/messages/es-ES.js +157 -1
  397. package/dist/sdk/i18n/messages/es-ES.json +157 -1
  398. package/dist/sdk/i18n/messages/pt-BR.js +157 -1
  399. package/dist/sdk/i18n/messages/pt-BR.json +157 -1
  400. package/dist/sdk/i18n/provider.js +1 -1
  401. package/dist/sdk/i18n/provider.js.map +1 -1
  402. package/dist/sdk/locale/binding-switch-provider.d.ts +13 -0
  403. package/dist/sdk/locale/binding-switch-provider.js +20 -0
  404. package/dist/sdk/locale/binding-switch-provider.js.map +1 -0
  405. package/dist/sdk/locale/use-locale-actions.d.ts +16 -0
  406. package/dist/sdk/locale/use-locale-actions.js +70 -0
  407. package/dist/sdk/locale/use-locale-actions.js.map +1 -0
  408. package/dist/sdk/navigation/binding-switch.d.ts +39 -0
  409. package/dist/sdk/navigation/binding-switch.js +129 -0
  410. package/dist/sdk/navigation/binding-switch.js.map +1 -0
  411. package/dist/sdk/navigation/current-page.js +30 -0
  412. package/dist/sdk/navigation/current-page.js.map +1 -0
  413. package/dist/sdk/navigation/decode-route-params.d.ts +11 -0
  414. package/dist/sdk/navigation/decode-route-params.js +32 -0
  415. package/dist/sdk/navigation/decode-route-params.js.map +1 -0
  416. package/dist/sdk/navigation/not-found-log.d.ts +28 -0
  417. package/dist/sdk/navigation/not-found-log.js +133 -0
  418. package/dist/sdk/navigation/not-found-log.js.map +1 -0
  419. package/dist/sdk/navigation/path.js +25 -0
  420. package/dist/sdk/navigation/path.js.map +1 -0
  421. package/dist/sdk/navigation/redirect.d.ts +11 -0
  422. package/dist/sdk/navigation/redirect.js +22 -0
  423. package/dist/sdk/navigation/redirect.js.map +1 -0
  424. package/dist/sdk/navigation/report.js +70 -0
  425. package/dist/sdk/navigation/report.js.map +1 -0
  426. package/dist/sdk/navigation/resolve-storefront-href.d.ts +12 -0
  427. package/dist/sdk/navigation/resolve-storefront-href.js +214 -0
  428. package/dist/sdk/navigation/resolve-storefront-href.js.map +1 -0
  429. package/dist/sdk/navigation/route-identity-provider.d.ts +11 -0
  430. package/dist/sdk/navigation/route-identity-provider.js +20 -0
  431. package/dist/sdk/navigation/route-identity-provider.js.map +1 -0
  432. package/dist/sdk/navigation/route-map-provider.d.ts +19 -0
  433. package/dist/sdk/navigation/route-map-provider.js +29 -0
  434. package/dist/sdk/navigation/route-map-provider.js.map +1 -0
  435. package/dist/sdk/navigation/storefront-link.d.ts +16 -0
  436. package/dist/sdk/navigation/storefront-link.js +66 -0
  437. package/dist/sdk/navigation/storefront-link.js.map +1 -0
  438. package/dist/sdk/navigation/types.d.ts +45 -0
  439. package/dist/sdk/navigation/use-storefront-navigation.d.ts +26 -0
  440. package/dist/sdk/navigation/use-storefront-navigation.js +73 -0
  441. package/dist/sdk/navigation/use-storefront-navigation.js.map +1 -0
  442. package/dist/sdk/navigation/use-storefront-route.d.ts +26 -0
  443. package/dist/sdk/navigation/use-storefront-route.js +87 -0
  444. package/dist/sdk/navigation/use-storefront-route.js.map +1 -0
  445. package/dist/sdk/navigation/use-storefront-search-params.d.ts +11 -0
  446. package/dist/sdk/navigation/use-storefront-search-params.js +16 -0
  447. package/dist/sdk/navigation/use-storefront-search-params.js.map +1 -0
  448. package/dist/sdk/orders/completion-badge.d.ts +8 -0
  449. package/dist/sdk/orders/completion-badge.js +47 -0
  450. package/dist/sdk/orders/completion-badge.js.map +1 -0
  451. package/dist/sdk/orders/order-operations.d.ts +19 -0
  452. package/dist/sdk/orders/order-operations.js +21 -0
  453. package/dist/sdk/orders/order-operations.js.map +1 -0
  454. package/dist/sdk/orders/use-order-actions.d.ts +23 -0
  455. package/dist/sdk/orders/use-order-actions.js +62 -0
  456. package/dist/sdk/orders/use-order-actions.js.map +1 -0
  457. package/dist/sdk/payment/gateway-origin.js +26 -13
  458. package/dist/sdk/payment/gateway-origin.js.map +1 -1
  459. package/dist/sdk/payment/gateway.d.ts +14 -2
  460. package/dist/sdk/payment/gateway.js +32 -14
  461. package/dist/sdk/payment/gateway.js.map +1 -1
  462. package/dist/sdk/payment/operations.js +11 -0
  463. package/dist/sdk/payment/operations.js.map +1 -1
  464. package/dist/sdk/payment/submission-registry.d.ts +2 -1
  465. package/dist/sdk/payment/submission-registry.js +12 -8
  466. package/dist/sdk/payment/submission-registry.js.map +1 -1
  467. package/dist/sdk/payment/use-payment-actions.d.ts +5 -3
  468. package/dist/sdk/payment/use-payment-actions.js +5 -2
  469. package/dist/sdk/payment/use-payment-actions.js.map +1 -1
  470. package/dist/sdk/payment/use-place-order.d.ts +6 -3
  471. package/dist/sdk/payment/use-place-order.js +333 -143
  472. package/dist/sdk/payment/use-place-order.js.map +1 -1
  473. package/dist/sdk/saved-cards/operations.d.ts +16 -0
  474. package/dist/sdk/saved-cards/operations.js +41 -0
  475. package/dist/sdk/saved-cards/operations.js.map +1 -0
  476. package/dist/sdk/saved-cards/use-saved-card-actions.d.ts +26 -0
  477. package/dist/sdk/saved-cards/use-saved-card-actions.js +86 -0
  478. package/dist/sdk/saved-cards/use-saved-card-actions.js.map +1 -0
  479. package/dist/sdk/seo/page-alternates.d.ts +57 -0
  480. package/dist/sdk/seo/page-alternates.js +127 -0
  481. package/dist/sdk/seo/page-alternates.js.map +1 -0
  482. package/dist/sdk/shipping/shipping-operations.d.ts +1 -1
  483. package/dist/sdk/shipping/shipping-operations.js +13 -0
  484. package/dist/sdk/shipping/shipping-operations.js.map +1 -1
  485. package/dist/sdk/state/cart.d.ts +9 -2
  486. package/dist/sdk/state/cart.js +9 -2
  487. package/dist/sdk/state/cart.js.map +1 -1
  488. package/dist/utils/own-value.js +19 -0
  489. package/dist/utils/own-value.js.map +1 -0
  490. package/dist/utils/safe-href.d.ts +4 -4
  491. package/dist/utils/safe-href.js +31 -22
  492. package/dist/utils/safe-href.js.map +1 -1
  493. package/package.json +5 -1
  494. package/skills/storefront-asset/SKILL.md +111 -0
  495. package/skills/storefront-asset/references/api-side.md +153 -0
  496. package/skills/storefront-asset/references/findings.md +40 -0
  497. package/skills/storefront-asset/references/ui-side.md +94 -0
  498. package/src/styles/tailwind.css +28 -2
@@ -0,0 +1,262 @@
1
+ //#region src/sdk/address/iso-countries.ts
2
+ /**
3
+ * ISO 3166-1 alpha-3 to alpha-2, for the 249 officially assigned codes. An address stores the
4
+ * alpha-3 code and `Intl.DisplayNames` accepts only alpha-2, so a name needs this bridge. The table
5
+ * is the full standard rather than the countries `@vtex/country-forms` covers, because an address
6
+ * written by another channel can carry any country.
7
+ */
8
+ const ALPHA2_BY_ALPHA3 = {
9
+ ABW: "AW",
10
+ AFG: "AF",
11
+ AGO: "AO",
12
+ AIA: "AI",
13
+ ALA: "AX",
14
+ ALB: "AL",
15
+ AND: "AD",
16
+ ARE: "AE",
17
+ ARG: "AR",
18
+ ARM: "AM",
19
+ ASM: "AS",
20
+ ATA: "AQ",
21
+ ATF: "TF",
22
+ ATG: "AG",
23
+ AUS: "AU",
24
+ AUT: "AT",
25
+ AZE: "AZ",
26
+ BDI: "BI",
27
+ BEL: "BE",
28
+ BEN: "BJ",
29
+ BES: "BQ",
30
+ BFA: "BF",
31
+ BGD: "BD",
32
+ BGR: "BG",
33
+ BHR: "BH",
34
+ BHS: "BS",
35
+ BIH: "BA",
36
+ BLM: "BL",
37
+ BLR: "BY",
38
+ BLZ: "BZ",
39
+ BMU: "BM",
40
+ BOL: "BO",
41
+ BRA: "BR",
42
+ BRB: "BB",
43
+ BRN: "BN",
44
+ BTN: "BT",
45
+ BVT: "BV",
46
+ BWA: "BW",
47
+ CAF: "CF",
48
+ CAN: "CA",
49
+ CCK: "CC",
50
+ CHE: "CH",
51
+ CHL: "CL",
52
+ CHN: "CN",
53
+ CIV: "CI",
54
+ CMR: "CM",
55
+ COD: "CD",
56
+ COG: "CG",
57
+ COK: "CK",
58
+ COL: "CO",
59
+ COM: "KM",
60
+ CPV: "CV",
61
+ CRI: "CR",
62
+ CUB: "CU",
63
+ CUW: "CW",
64
+ CXR: "CX",
65
+ CYM: "KY",
66
+ CYP: "CY",
67
+ CZE: "CZ",
68
+ DEU: "DE",
69
+ DJI: "DJ",
70
+ DMA: "DM",
71
+ DNK: "DK",
72
+ DOM: "DO",
73
+ DZA: "DZ",
74
+ ECU: "EC",
75
+ EGY: "EG",
76
+ ERI: "ER",
77
+ ESH: "EH",
78
+ ESP: "ES",
79
+ EST: "EE",
80
+ ETH: "ET",
81
+ FIN: "FI",
82
+ FJI: "FJ",
83
+ FLK: "FK",
84
+ FRA: "FR",
85
+ FRO: "FO",
86
+ FSM: "FM",
87
+ GAB: "GA",
88
+ GBR: "GB",
89
+ GEO: "GE",
90
+ GGY: "GG",
91
+ GHA: "GH",
92
+ GIB: "GI",
93
+ GIN: "GN",
94
+ GLP: "GP",
95
+ GMB: "GM",
96
+ GNB: "GW",
97
+ GNQ: "GQ",
98
+ GRC: "GR",
99
+ GRD: "GD",
100
+ GRL: "GL",
101
+ GTM: "GT",
102
+ GUF: "GF",
103
+ GUM: "GU",
104
+ GUY: "GY",
105
+ HKG: "HK",
106
+ HMD: "HM",
107
+ HND: "HN",
108
+ HRV: "HR",
109
+ HTI: "HT",
110
+ HUN: "HU",
111
+ IDN: "ID",
112
+ IMN: "IM",
113
+ IND: "IN",
114
+ IOT: "IO",
115
+ IRL: "IE",
116
+ IRN: "IR",
117
+ IRQ: "IQ",
118
+ ISL: "IS",
119
+ ISR: "IL",
120
+ ITA: "IT",
121
+ JAM: "JM",
122
+ JEY: "JE",
123
+ JOR: "JO",
124
+ JPN: "JP",
125
+ KAZ: "KZ",
126
+ KEN: "KE",
127
+ KGZ: "KG",
128
+ KHM: "KH",
129
+ KIR: "KI",
130
+ KNA: "KN",
131
+ KOR: "KR",
132
+ KWT: "KW",
133
+ LAO: "LA",
134
+ LBN: "LB",
135
+ LBR: "LR",
136
+ LBY: "LY",
137
+ LCA: "LC",
138
+ LIE: "LI",
139
+ LKA: "LK",
140
+ LSO: "LS",
141
+ LTU: "LT",
142
+ LUX: "LU",
143
+ LVA: "LV",
144
+ MAC: "MO",
145
+ MAF: "MF",
146
+ MAR: "MA",
147
+ MCO: "MC",
148
+ MDA: "MD",
149
+ MDG: "MG",
150
+ MDV: "MV",
151
+ MEX: "MX",
152
+ MHL: "MH",
153
+ MKD: "MK",
154
+ MLI: "ML",
155
+ MLT: "MT",
156
+ MMR: "MM",
157
+ MNE: "ME",
158
+ MNG: "MN",
159
+ MNP: "MP",
160
+ MOZ: "MZ",
161
+ MRT: "MR",
162
+ MSR: "MS",
163
+ MTQ: "MQ",
164
+ MUS: "MU",
165
+ MWI: "MW",
166
+ MYS: "MY",
167
+ MYT: "YT",
168
+ NAM: "NA",
169
+ NCL: "NC",
170
+ NER: "NE",
171
+ NFK: "NF",
172
+ NGA: "NG",
173
+ NIC: "NI",
174
+ NIU: "NU",
175
+ NLD: "NL",
176
+ NOR: "NO",
177
+ NPL: "NP",
178
+ NRU: "NR",
179
+ NZL: "NZ",
180
+ OMN: "OM",
181
+ PAK: "PK",
182
+ PAN: "PA",
183
+ PCN: "PN",
184
+ PER: "PE",
185
+ PHL: "PH",
186
+ PLW: "PW",
187
+ PNG: "PG",
188
+ POL: "PL",
189
+ PRI: "PR",
190
+ PRK: "KP",
191
+ PRT: "PT",
192
+ PRY: "PY",
193
+ PSE: "PS",
194
+ PYF: "PF",
195
+ QAT: "QA",
196
+ REU: "RE",
197
+ ROU: "RO",
198
+ RUS: "RU",
199
+ RWA: "RW",
200
+ SAU: "SA",
201
+ SDN: "SD",
202
+ SEN: "SN",
203
+ SGP: "SG",
204
+ SGS: "GS",
205
+ SHN: "SH",
206
+ SJM: "SJ",
207
+ SLB: "SB",
208
+ SLE: "SL",
209
+ SLV: "SV",
210
+ SMR: "SM",
211
+ SOM: "SO",
212
+ SPM: "PM",
213
+ SRB: "RS",
214
+ SSD: "SS",
215
+ STP: "ST",
216
+ SUR: "SR",
217
+ SVK: "SK",
218
+ SVN: "SI",
219
+ SWE: "SE",
220
+ SWZ: "SZ",
221
+ SXM: "SX",
222
+ SYC: "SC",
223
+ SYR: "SY",
224
+ TCA: "TC",
225
+ TCD: "TD",
226
+ TGO: "TG",
227
+ THA: "TH",
228
+ TJK: "TJ",
229
+ TKL: "TK",
230
+ TKM: "TM",
231
+ TLS: "TL",
232
+ TON: "TO",
233
+ TTO: "TT",
234
+ TUN: "TN",
235
+ TUR: "TR",
236
+ TUV: "TV",
237
+ TWN: "TW",
238
+ TZA: "TZ",
239
+ UGA: "UG",
240
+ UKR: "UA",
241
+ UMI: "UM",
242
+ URY: "UY",
243
+ USA: "US",
244
+ UZB: "UZ",
245
+ VAT: "VA",
246
+ VCT: "VC",
247
+ VEN: "VE",
248
+ VGB: "VG",
249
+ VIR: "VI",
250
+ VNM: "VN",
251
+ VUT: "VU",
252
+ WLF: "WF",
253
+ WSM: "WS",
254
+ YEM: "YE",
255
+ ZAF: "ZA",
256
+ ZMB: "ZM",
257
+ ZWE: "ZW"
258
+ };
259
+ //#endregion
260
+ export { ALPHA2_BY_ALPHA3 };
261
+
262
+ //# sourceMappingURL=iso-countries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"iso-countries.js","names":[],"sources":["../../../src/sdk/address/iso-countries.ts"],"sourcesContent":["/**\n * ISO 3166-1 alpha-3 to alpha-2, for the 249 officially assigned codes. An address stores the\n * alpha-3 code and `Intl.DisplayNames` accepts only alpha-2, so a name needs this bridge. The table\n * is the full standard rather than the countries `@vtex/country-forms` covers, because an address\n * written by another channel can carry any country.\n */\nexport const ALPHA2_BY_ALPHA3: Readonly<Record<string, string>> = {\n ABW: 'AW',\n AFG: 'AF',\n AGO: 'AO',\n AIA: 'AI',\n ALA: 'AX',\n ALB: 'AL',\n AND: 'AD',\n ARE: 'AE',\n ARG: 'AR',\n ARM: 'AM',\n ASM: 'AS',\n ATA: 'AQ',\n ATF: 'TF',\n ATG: 'AG',\n AUS: 'AU',\n AUT: 'AT',\n AZE: 'AZ',\n BDI: 'BI',\n BEL: 'BE',\n BEN: 'BJ',\n BES: 'BQ',\n BFA: 'BF',\n BGD: 'BD',\n BGR: 'BG',\n BHR: 'BH',\n BHS: 'BS',\n BIH: 'BA',\n BLM: 'BL',\n BLR: 'BY',\n BLZ: 'BZ',\n BMU: 'BM',\n BOL: 'BO',\n BRA: 'BR',\n BRB: 'BB',\n BRN: 'BN',\n BTN: 'BT',\n BVT: 'BV',\n BWA: 'BW',\n CAF: 'CF',\n CAN: 'CA',\n CCK: 'CC',\n CHE: 'CH',\n CHL: 'CL',\n CHN: 'CN',\n CIV: 'CI',\n CMR: 'CM',\n COD: 'CD',\n COG: 'CG',\n COK: 'CK',\n COL: 'CO',\n COM: 'KM',\n CPV: 'CV',\n CRI: 'CR',\n CUB: 'CU',\n CUW: 'CW',\n CXR: 'CX',\n CYM: 'KY',\n CYP: 'CY',\n CZE: 'CZ',\n DEU: 'DE',\n DJI: 'DJ',\n DMA: 'DM',\n DNK: 'DK',\n DOM: 'DO',\n DZA: 'DZ',\n ECU: 'EC',\n EGY: 'EG',\n ERI: 'ER',\n ESH: 'EH',\n ESP: 'ES',\n EST: 'EE',\n ETH: 'ET',\n FIN: 'FI',\n FJI: 'FJ',\n FLK: 'FK',\n FRA: 'FR',\n FRO: 'FO',\n FSM: 'FM',\n GAB: 'GA',\n GBR: 'GB',\n GEO: 'GE',\n GGY: 'GG',\n GHA: 'GH',\n GIB: 'GI',\n GIN: 'GN',\n GLP: 'GP',\n GMB: 'GM',\n GNB: 'GW',\n GNQ: 'GQ',\n GRC: 'GR',\n GRD: 'GD',\n GRL: 'GL',\n GTM: 'GT',\n GUF: 'GF',\n GUM: 'GU',\n GUY: 'GY',\n HKG: 'HK',\n HMD: 'HM',\n HND: 'HN',\n HRV: 'HR',\n HTI: 'HT',\n HUN: 'HU',\n IDN: 'ID',\n IMN: 'IM',\n IND: 'IN',\n IOT: 'IO',\n IRL: 'IE',\n IRN: 'IR',\n IRQ: 'IQ',\n ISL: 'IS',\n ISR: 'IL',\n ITA: 'IT',\n JAM: 'JM',\n JEY: 'JE',\n JOR: 'JO',\n JPN: 'JP',\n KAZ: 'KZ',\n KEN: 'KE',\n KGZ: 'KG',\n KHM: 'KH',\n KIR: 'KI',\n KNA: 'KN',\n KOR: 'KR',\n KWT: 'KW',\n LAO: 'LA',\n LBN: 'LB',\n LBR: 'LR',\n LBY: 'LY',\n LCA: 'LC',\n LIE: 'LI',\n LKA: 'LK',\n LSO: 'LS',\n LTU: 'LT',\n LUX: 'LU',\n LVA: 'LV',\n MAC: 'MO',\n MAF: 'MF',\n MAR: 'MA',\n MCO: 'MC',\n MDA: 'MD',\n MDG: 'MG',\n MDV: 'MV',\n MEX: 'MX',\n MHL: 'MH',\n MKD: 'MK',\n MLI: 'ML',\n MLT: 'MT',\n MMR: 'MM',\n MNE: 'ME',\n MNG: 'MN',\n MNP: 'MP',\n MOZ: 'MZ',\n MRT: 'MR',\n MSR: 'MS',\n MTQ: 'MQ',\n MUS: 'MU',\n MWI: 'MW',\n MYS: 'MY',\n MYT: 'YT',\n NAM: 'NA',\n NCL: 'NC',\n NER: 'NE',\n NFK: 'NF',\n NGA: 'NG',\n NIC: 'NI',\n NIU: 'NU',\n NLD: 'NL',\n NOR: 'NO',\n NPL: 'NP',\n NRU: 'NR',\n NZL: 'NZ',\n OMN: 'OM',\n PAK: 'PK',\n PAN: 'PA',\n PCN: 'PN',\n PER: 'PE',\n PHL: 'PH',\n PLW: 'PW',\n PNG: 'PG',\n POL: 'PL',\n PRI: 'PR',\n PRK: 'KP',\n PRT: 'PT',\n PRY: 'PY',\n PSE: 'PS',\n PYF: 'PF',\n QAT: 'QA',\n REU: 'RE',\n ROU: 'RO',\n RUS: 'RU',\n RWA: 'RW',\n SAU: 'SA',\n SDN: 'SD',\n SEN: 'SN',\n SGP: 'SG',\n SGS: 'GS',\n SHN: 'SH',\n SJM: 'SJ',\n SLB: 'SB',\n SLE: 'SL',\n SLV: 'SV',\n SMR: 'SM',\n SOM: 'SO',\n SPM: 'PM',\n SRB: 'RS',\n SSD: 'SS',\n STP: 'ST',\n SUR: 'SR',\n SVK: 'SK',\n SVN: 'SI',\n SWE: 'SE',\n SWZ: 'SZ',\n SXM: 'SX',\n SYC: 'SC',\n SYR: 'SY',\n TCA: 'TC',\n TCD: 'TD',\n TGO: 'TG',\n THA: 'TH',\n TJK: 'TJ',\n TKL: 'TK',\n TKM: 'TM',\n TLS: 'TL',\n TON: 'TO',\n TTO: 'TT',\n TUN: 'TN',\n TUR: 'TR',\n TUV: 'TV',\n TWN: 'TW',\n TZA: 'TZ',\n UGA: 'UG',\n UKR: 'UA',\n UMI: 'UM',\n URY: 'UY',\n USA: 'US',\n UZB: 'UZ',\n VAT: 'VA',\n VCT: 'VC',\n VEN: 'VE',\n VGB: 'VG',\n VIR: 'VI',\n VNM: 'VN',\n VUT: 'VU',\n WLF: 'WF',\n WSM: 'WS',\n YEM: 'YE',\n ZAF: 'ZA',\n ZMB: 'ZM',\n ZWE: 'ZW',\n};\n"],"mappings":";;;;;;;AAMA,MAAa,mBAAqD;CAChE,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;AACP"}
@@ -0,0 +1,56 @@
1
+ import { isCountryField } from "./constants.js";
2
+ //#region src/sdk/address/layouts.ts
3
+ /**
4
+ * A line is written as it prints, with each field in braces: `{city}, {state} {postalCode}`. The
5
+ * text before a field is its separator. Only the first field of a line has none.
6
+ */
7
+ function parseLine(line) {
8
+ const parts = [];
9
+ let cursor = 0;
10
+ for (const match of line.matchAll(/\{(\w+)\}/g)) {
11
+ const field = match[1] ?? "";
12
+ const separator = line.slice(cursor, match.index);
13
+ cursor = match.index + match[0].length;
14
+ if (!isCountryField(field)) throw new Error(`Unknown address field "${field}" in layout line "${line}"`);
15
+ parts.push(separator === "" ? { field } : {
16
+ field,
17
+ separator
18
+ });
19
+ }
20
+ return parts;
21
+ }
22
+ function layout(...lines) {
23
+ return lines.map(parseLine);
24
+ }
25
+ const NORTH_AMERICA = layout("{number} {street}", "{complement}", "{neighborhood}", "{city}, {state} {postalCode}");
26
+ const ISLES = layout("{number} {street}", "{complement}", "{neighborhood}", "{city}", "{state}", "{postalCode}");
27
+ function withStateLine(street, locality) {
28
+ return layout(street, "{complement}", "{neighborhood}", locality, "{state}");
29
+ }
30
+ /** Used for every country the library does not cover. */
31
+ const DEFAULT_LAYOUT = layout("{street}, {number}", "{complement}", "{neighborhood}", "{city}, {state} {postalCode}");
32
+ /**
33
+ * How each covered country prints an address. The library's field order is the form's, not the
34
+ * mail's, so it cannot stand in for this. Every layout places each of the seven fields once.
35
+ */
36
+ const ADDRESS_LAYOUTS = {
37
+ BRA: layout("{street}, {number} - {complement}", "{neighborhood}", "{city} - {state}", "{postalCode}"),
38
+ USA: NORTH_AMERICA,
39
+ CAN: NORTH_AMERICA,
40
+ GBR: ISLES,
41
+ IRL: ISLES,
42
+ FRA: withStateLine("{number} {street}", "{postalCode} {city}"),
43
+ ITA: layout("{street}, {number}", "{complement}", "{neighborhood}", "{postalCode} {city} {state}"),
44
+ DEU: withStateLine("{street} {number}", "{postalCode} {city}"),
45
+ ARG: withStateLine("{street} {number}", "{postalCode} {city}"),
46
+ ESP: withStateLine("{street}, {number}", "{postalCode} {city}"),
47
+ MEX: layout("{street} {number}", "{complement}", "{neighborhood}", "{postalCode} {city}, {state}"),
48
+ COL: layout("{street} {number}", "{complement}", "{neighborhood}", "{city}, {state}", "{postalCode}"),
49
+ CHL: layout("{street} {number}", "{complement}", "{neighborhood}, {city}", "{state}", "{postalCode}"),
50
+ PER: layout("{street} {number}", "{complement}", "{neighborhood}, {city}", "{state} {postalCode}"),
51
+ ECU: layout("{street} {number}", "{complement}", "{neighborhood}", "{city} {postalCode}", "{state}")
52
+ };
53
+ //#endregion
54
+ export { ADDRESS_LAYOUTS, DEFAULT_LAYOUT };
55
+
56
+ //# sourceMappingURL=layouts.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"layouts.js","names":[],"sources":["../../../src/sdk/address/layouts.ts"],"sourcesContent":["import { isCountryField } from './constants.js';\nimport type { AddressDisplayLine, AddressDisplayPart } from './types.js';\n\n/**\n * A line is written as it prints, with each field in braces: `{city}, {state} {postalCode}`. The\n * text before a field is its separator. Only the first field of a line has none.\n */\nfunction parseLine(line: string): AddressDisplayLine {\n const parts: AddressDisplayPart[] = [];\n let cursor = 0;\n for (const match of line.matchAll(/\\{(\\w+)\\}/g)) {\n const field = match[1] ?? '';\n const separator = line.slice(cursor, match.index);\n cursor = match.index + match[0].length;\n if (!isCountryField(field)) {\n throw new Error(`Unknown address field \"${field}\" in layout line \"${line}\"`);\n }\n parts.push(separator === '' ? { field } : { field, separator });\n }\n return parts;\n}\n\nfunction layout(...lines: string[]): readonly AddressDisplayLine[] {\n return lines.map(parseLine);\n}\n\nconst NORTH_AMERICA = layout('{number} {street}', '{complement}', '{neighborhood}', '{city}, {state} {postalCode}');\n\nconst ISLES = layout('{number} {street}', '{complement}', '{neighborhood}', '{city}', '{state}', '{postalCode}');\n\nfunction withStateLine(street: string, locality: string): readonly AddressDisplayLine[] {\n return layout(street, '{complement}', '{neighborhood}', locality, '{state}');\n}\n\n/** Used for every country the library does not cover. */\nexport const DEFAULT_LAYOUT = layout(\n '{street}, {number}',\n '{complement}',\n '{neighborhood}',\n '{city}, {state} {postalCode}',\n);\n\n/**\n * How each covered country prints an address. The library's field order is the form's, not the\n * mail's, so it cannot stand in for this. Every layout places each of the seven fields once.\n */\nexport const ADDRESS_LAYOUTS: Readonly<Record<string, readonly AddressDisplayLine[]>> = {\n BRA: layout('{street}, {number} - {complement}', '{neighborhood}', '{city} - {state}', '{postalCode}'),\n USA: NORTH_AMERICA,\n CAN: NORTH_AMERICA,\n GBR: ISLES,\n IRL: ISLES,\n FRA: withStateLine('{number} {street}', '{postalCode} {city}'),\n ITA: layout('{street}, {number}', '{complement}', '{neighborhood}', '{postalCode} {city} {state}'),\n DEU: withStateLine('{street} {number}', '{postalCode} {city}'),\n ARG: withStateLine('{street} {number}', '{postalCode} {city}'),\n ESP: withStateLine('{street}, {number}', '{postalCode} {city}'),\n MEX: layout('{street} {number}', '{complement}', '{neighborhood}', '{postalCode} {city}, {state}'),\n COL: layout('{street} {number}', '{complement}', '{neighborhood}', '{city}, {state}', '{postalCode}'),\n CHL: layout('{street} {number}', '{complement}', '{neighborhood}, {city}', '{state}', '{postalCode}'),\n PER: layout('{street} {number}', '{complement}', '{neighborhood}, {city}', '{state} {postalCode}'),\n ECU: layout('{street} {number}', '{complement}', '{neighborhood}', '{city} {postalCode}', '{state}'),\n};\n"],"mappings":";;;;;;AAOA,SAAS,UAAU,MAAkC;CACnD,MAAM,QAA8B,CAAC;CACrC,IAAI,SAAS;CACb,KAAK,MAAM,SAAS,KAAK,SAAS,YAAY,GAAG;EAC/C,MAAM,QAAQ,MAAM,MAAM;EAC1B,MAAM,YAAY,KAAK,MAAM,QAAQ,MAAM,KAAK;EAChD,SAAS,MAAM,QAAQ,MAAM,EAAE,CAAC;EAChC,IAAI,CAAC,eAAe,KAAK,GACvB,MAAM,IAAI,MAAM,0BAA0B,MAAM,oBAAoB,KAAK,EAAE;EAE7E,MAAM,KAAK,cAAc,KAAK,EAAE,MAAM,IAAI;GAAE;GAAO;EAAU,CAAC;CAChE;CACA,OAAO;AACT;AAEA,SAAS,OAAO,GAAG,OAAgD;CACjE,OAAO,MAAM,IAAI,SAAS;AAC5B;AAEA,MAAM,gBAAgB,OAAO,qBAAqB,gBAAgB,kBAAkB,8BAA8B;AAElH,MAAM,QAAQ,OAAO,qBAAqB,gBAAgB,kBAAkB,UAAU,WAAW,cAAc;AAE/G,SAAS,cAAc,QAAgB,UAAiD;CACtF,OAAO,OAAO,QAAQ,gBAAgB,kBAAkB,UAAU,SAAS;AAC7E;;AAGA,MAAa,iBAAiB,OAC5B,sBACA,gBACA,kBACA,8BACF;;;;;AAMA,MAAa,kBAA2E;CACtF,KAAK,OAAO,qCAAqC,kBAAkB,oBAAoB,cAAc;CACrG,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK,cAAc,qBAAqB,qBAAqB;CAC7D,KAAK,OAAO,sBAAsB,gBAAgB,kBAAkB,6BAA6B;CACjG,KAAK,cAAc,qBAAqB,qBAAqB;CAC7D,KAAK,cAAc,qBAAqB,qBAAqB;CAC7D,KAAK,cAAc,sBAAsB,qBAAqB;CAC9D,KAAK,OAAO,qBAAqB,gBAAgB,kBAAkB,8BAA8B;CACjG,KAAK,OAAO,qBAAqB,gBAAgB,kBAAkB,mBAAmB,cAAc;CACpG,KAAK,OAAO,qBAAqB,gBAAgB,0BAA0B,WAAW,cAAc;CACpG,KAAK,OAAO,qBAAqB,gBAAgB,0BAA0B,sBAAsB;CACjG,KAAK,OAAO,qBAAqB,gBAAgB,kBAAkB,uBAAuB,SAAS;AACrG"}
@@ -0,0 +1,97 @@
1
+ //#region src/sdk/address/messages.ts
2
+ const POSTAL_CODE_PLACEHOLDER_PREFIX = "country-forms.address.postalCode.placeholder.";
3
+ const POSTAL_CODE_ERROR_PREFIX = "country-forms.validation.postalCode.";
4
+ /** The library's label key for a field, mapped by meaning: `state.label.COL` and `department.label` agree. */
5
+ const LABEL_IDS = {
6
+ "country-forms.address.postalCode.label": "fs/address.field.postal-code",
7
+ "country-forms.address.postalCode.label.GBR": "fs/address.field.postcode",
8
+ "country-forms.address.street.label": "fs/address.field.street",
9
+ "country-forms.address.number.label": "fs/address.field.number",
10
+ "country-forms.address.complement.label": "fs/address.field.complement",
11
+ "country-forms.address.neighborhood.label": "fs/address.field.neighborhood",
12
+ "country-forms.address.neighborhood.label.CHL": "fs/address.field.commune",
13
+ "country-forms.address.neighborhood.label.PER": "fs/address.field.district",
14
+ "country-forms.address.city.label": "fs/address.field.city",
15
+ "country-forms.address.city.label.ECU": "fs/address.field.city",
16
+ "country-forms.address.city.label.GBR": "fs/address.field.town",
17
+ "country-forms.address.city.label.COL": "fs/address.field.municipality",
18
+ "country-forms.address.city.label.PER": "fs/address.field.province",
19
+ "country-forms.address.state.label": "fs/address.field.state",
20
+ "country-forms.address.state.label.CHL": "fs/address.field.region",
21
+ "country-forms.address.state.label.COL": "fs/address.field.department",
22
+ "country-forms.address.state.label.PER": "fs/address.field.department",
23
+ "country-forms.address.state.label.ECU": "fs/address.field.province",
24
+ "country-forms.address.state.label.ITA": "fs/address.field.province",
25
+ "country-forms.address.state.label.GBR": "fs/address.field.county",
26
+ "country-forms.address.state.label.IRL": "fs/address.field.county",
27
+ "country-forms.address.department.label": "fs/address.field.department"
28
+ };
29
+ /** The label of a field whose library key this module does not know. */
30
+ const FIELD_LABEL_IDS = {
31
+ postalCode: "fs/address.field.postal-code",
32
+ street: "fs/address.field.street",
33
+ number: "fs/address.field.number",
34
+ complement: "fs/address.field.complement",
35
+ neighborhood: "fs/address.field.neighborhood",
36
+ state: "fs/address.field.state",
37
+ city: "fs/address.field.city"
38
+ };
39
+ const STREET_PLACEHOLDER_KEY = "country-forms.address.street.placeholder";
40
+ /** Examples in the stored, masked form. The library's own placeholders, one per country. */
41
+ const POSTAL_CODE_EXAMPLES = {
42
+ ARG: "C1425ABC",
43
+ BRA: "01310-100",
44
+ CAN: "K1A 0A9",
45
+ CHL: "8320000",
46
+ COL: "110111",
47
+ DEU: "10115",
48
+ ECU: "170150",
49
+ ESP: "28001",
50
+ FRA: "75001",
51
+ GBR: "SW1A 1AA",
52
+ IRL: "D02 AF30",
53
+ ITA: "00118",
54
+ MEX: "06600",
55
+ PER: "15074",
56
+ USA: "10001-1234"
57
+ };
58
+ function resolveLabelId(key, field, country) {
59
+ if (country === "BRA" && field === "postalCode") return "fs/address.field.cep";
60
+ return LABEL_IDS[key] ?? FIELD_LABEL_IDS[field];
61
+ }
62
+ function resolvePlaceholder(key, country) {
63
+ if (key === "country-forms.address.street.placeholder") return {
64
+ id: "fs/address.placeholder.street",
65
+ values: {}
66
+ };
67
+ const example = POSTAL_CODE_EXAMPLES[country];
68
+ if (key?.startsWith(POSTAL_CODE_PLACEHOLDER_PREFIX) && example !== void 0) return {
69
+ id: "fs/address.placeholder.postal-code",
70
+ values: { example }
71
+ };
72
+ }
73
+ function error(code, messageId, values) {
74
+ return values === void 0 ? {
75
+ code,
76
+ messageId
77
+ } : {
78
+ code,
79
+ messageId,
80
+ values
81
+ };
82
+ }
83
+ /**
84
+ * Turns the message key the library returned for a field into an error. A key this module does not
85
+ * know is `invalid`, so a newer library never produces an error the form cannot word.
86
+ */
87
+ function resolveLibraryError(key, { country, maxLength }) {
88
+ if (key === "country-forms.validation.required") return error("required", "fs/address.error.required");
89
+ if (key === "country-forms.validation.maxLength" && maxLength !== void 0) return error("tooLong", "fs/address.error.too-long", { maxLength });
90
+ const example = POSTAL_CODE_EXAMPLES[country];
91
+ if (key.startsWith(POSTAL_CODE_ERROR_PREFIX) && example !== void 0) return error("invalid", country === "BRA" ? "fs/address.error.cep" : "fs/address.error.postal-code", { example });
92
+ return error("invalid", "fs/address.error.invalid");
93
+ }
94
+ //#endregion
95
+ export { LABEL_IDS, POSTAL_CODE_EXAMPLES, STREET_PLACEHOLDER_KEY, resolveLabelId, resolveLibraryError, resolvePlaceholder };
96
+
97
+ //# sourceMappingURL=messages.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"messages.js","names":[],"sources":["../../../src/sdk/address/messages.ts"],"sourcesContent":["import type { MessageId } from '../i18n/client.js';\nimport type { AddressErrorCode, AddressFieldError, CountryFieldName } from './types.js';\n\nconst POSTAL_CODE_PLACEHOLDER_PREFIX = 'country-forms.address.postalCode.placeholder.';\nconst POSTAL_CODE_ERROR_PREFIX = 'country-forms.validation.postalCode.';\n\n/** The library's label key for a field, mapped by meaning: `state.label.COL` and `department.label` agree. */\nexport const LABEL_IDS: Readonly<Record<string, MessageId>> = {\n 'country-forms.address.postalCode.label': 'fs/address.field.postal-code',\n 'country-forms.address.postalCode.label.GBR': 'fs/address.field.postcode',\n 'country-forms.address.street.label': 'fs/address.field.street',\n 'country-forms.address.number.label': 'fs/address.field.number',\n 'country-forms.address.complement.label': 'fs/address.field.complement',\n 'country-forms.address.neighborhood.label': 'fs/address.field.neighborhood',\n 'country-forms.address.neighborhood.label.CHL': 'fs/address.field.commune',\n 'country-forms.address.neighborhood.label.PER': 'fs/address.field.district',\n 'country-forms.address.city.label': 'fs/address.field.city',\n 'country-forms.address.city.label.ECU': 'fs/address.field.city',\n 'country-forms.address.city.label.GBR': 'fs/address.field.town',\n 'country-forms.address.city.label.COL': 'fs/address.field.municipality',\n 'country-forms.address.city.label.PER': 'fs/address.field.province',\n 'country-forms.address.state.label': 'fs/address.field.state',\n 'country-forms.address.state.label.CHL': 'fs/address.field.region',\n 'country-forms.address.state.label.COL': 'fs/address.field.department',\n 'country-forms.address.state.label.PER': 'fs/address.field.department',\n 'country-forms.address.state.label.ECU': 'fs/address.field.province',\n 'country-forms.address.state.label.ITA': 'fs/address.field.province',\n 'country-forms.address.state.label.GBR': 'fs/address.field.county',\n 'country-forms.address.state.label.IRL': 'fs/address.field.county',\n 'country-forms.address.department.label': 'fs/address.field.department',\n};\n\n/** The label of a field whose library key this module does not know. */\nconst FIELD_LABEL_IDS: Readonly<Record<CountryFieldName, MessageId>> = {\n postalCode: 'fs/address.field.postal-code',\n street: 'fs/address.field.street',\n number: 'fs/address.field.number',\n complement: 'fs/address.field.complement',\n neighborhood: 'fs/address.field.neighborhood',\n state: 'fs/address.field.state',\n city: 'fs/address.field.city',\n};\n\nexport const STREET_PLACEHOLDER_KEY = 'country-forms.address.street.placeholder';\n\n/** Examples in the stored, masked form. The library's own placeholders, one per country. */\nexport const POSTAL_CODE_EXAMPLES: Readonly<Record<string, string>> = {\n ARG: 'C1425ABC',\n BRA: '01310-100',\n CAN: 'K1A 0A9',\n CHL: '8320000',\n COL: '110111',\n DEU: '10115',\n ECU: '170150',\n ESP: '28001',\n FRA: '75001',\n GBR: 'SW1A 1AA',\n IRL: 'D02 AF30',\n ITA: '00118',\n MEX: '06600',\n PER: '15074',\n USA: '10001-1234',\n};\n\nexport function resolveLabelId(key: string, field: CountryFieldName, country: string): MessageId {\n if (country === 'BRA' && field === 'postalCode') {\n return 'fs/address.field.cep';\n }\n return LABEL_IDS[key] ?? FIELD_LABEL_IDS[field];\n}\n\nexport function resolvePlaceholder(\n key: string | undefined,\n country: string,\n): Readonly<{ id: MessageId; values: Readonly<Record<string, string>> }> | undefined {\n if (key === STREET_PLACEHOLDER_KEY) {\n return { id: 'fs/address.placeholder.street', values: {} };\n }\n const example = POSTAL_CODE_EXAMPLES[country];\n if (key?.startsWith(POSTAL_CODE_PLACEHOLDER_PREFIX) && example !== undefined) {\n return { id: 'fs/address.placeholder.postal-code', values: { example } };\n }\n return undefined;\n}\n\nfunction error(code: AddressErrorCode, messageId: MessageId, values?: Record<string, string | number>) {\n return values === undefined ? { code, messageId } : { code, messageId, values };\n}\n\n/**\n * Turns the message key the library returned for a field into an error. A key this module does not\n * know is `invalid`, so a newer library never produces an error the form cannot word.\n */\nexport function resolveLibraryError(\n key: string,\n { country, maxLength }: Readonly<{ country: string; maxLength?: number }>,\n): AddressFieldError {\n if (key === 'country-forms.validation.required') {\n return error('required', 'fs/address.error.required');\n }\n if (key === 'country-forms.validation.maxLength' && maxLength !== undefined) {\n return error('tooLong', 'fs/address.error.too-long', { maxLength });\n }\n const example = POSTAL_CODE_EXAMPLES[country];\n if (key.startsWith(POSTAL_CODE_ERROR_PREFIX) && example !== undefined) {\n return error('invalid', country === 'BRA' ? 'fs/address.error.cep' : 'fs/address.error.postal-code', { example });\n }\n return error('invalid', 'fs/address.error.invalid');\n}\n"],"mappings":";AAGA,MAAM,iCAAiC;AACvC,MAAM,2BAA2B;;AAGjC,MAAa,YAAiD;CAC5D,0CAA0C;CAC1C,8CAA8C;CAC9C,sCAAsC;CACtC,sCAAsC;CACtC,0CAA0C;CAC1C,4CAA4C;CAC5C,gDAAgD;CAChD,gDAAgD;CAChD,oCAAoC;CACpC,wCAAwC;CACxC,wCAAwC;CACxC,wCAAwC;CACxC,wCAAwC;CACxC,qCAAqC;CACrC,yCAAyC;CACzC,yCAAyC;CACzC,yCAAyC;CACzC,yCAAyC;CACzC,yCAAyC;CACzC,yCAAyC;CACzC,yCAAyC;CACzC,0CAA0C;AAC5C;;AAGA,MAAM,kBAAiE;CACrE,YAAY;CACZ,QAAQ;CACR,QAAQ;CACR,YAAY;CACZ,cAAc;CACd,OAAO;CACP,MAAM;AACR;AAEA,MAAa,yBAAyB;;AAGtC,MAAa,uBAAyD;CACpE,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;CACL,KAAK;AACP;AAEA,SAAgB,eAAe,KAAa,OAAyB,SAA4B;CAC/F,IAAI,YAAY,SAAS,UAAU,cACjC,OAAO;CAET,OAAO,UAAU,QAAQ,gBAAgB;AAC3C;AAEA,SAAgB,mBACd,KACA,SACmF;CACnF,IAAI,QAAA,4CACF,OAAO;EAAE,IAAI;EAAiC,QAAQ,CAAC;CAAE;CAE3D,MAAM,UAAU,qBAAqB;CACrC,IAAI,KAAK,WAAW,8BAA8B,KAAK,YAAY,KAAA,GACjE,OAAO;EAAE,IAAI;EAAsC,QAAQ,EAAE,QAAQ;CAAE;AAG3E;AAEA,SAAS,MAAM,MAAwB,WAAsB,QAA0C;CACrG,OAAO,WAAW,KAAA,IAAY;EAAE;EAAM;CAAU,IAAI;EAAE;EAAM;EAAW;CAAO;AAChF;;;;;AAMA,SAAgB,oBACd,KACA,EAAE,SAAS,aACQ;CACnB,IAAI,QAAQ,qCACV,OAAO,MAAM,YAAY,2BAA2B;CAEtD,IAAI,QAAQ,wCAAwC,cAAc,KAAA,GAChE,OAAO,MAAM,WAAW,6BAA6B,EAAE,UAAU,CAAC;CAEpE,MAAM,UAAU,qBAAqB;CACrC,IAAI,IAAI,WAAW,wBAAwB,KAAK,YAAY,KAAA,GAC1D,OAAO,MAAM,WAAW,YAAY,QAAQ,yBAAyB,gCAAgC,EAAE,QAAQ,CAAC;CAElH,OAAO,MAAM,WAAW,0BAA0B;AACpD"}
@@ -0,0 +1,54 @@
1
+ import { TypedDocumentNode } from "@apollo/client";
2
+ //#region src/sdk/address/operations.d.ts
3
+ /**
4
+ * The saved-address write documents and the cache-only lookup of the address book.
5
+ *
6
+ * Authored with the hand `gql` tag and excluded from the codegen `documents` glob (see
7
+ * `codegen.ts`), like the identity and region writes: the `gql` tag alone is still plucked by
8
+ * `graphql-codegen`, which would emit duplicates of these hand-written types in `sdk/generated/`.
9
+ *
10
+ * The create and update payloads select every field the list item reads, `__typename` and `id`
11
+ * included, so the response merges into the normalized cache and every subscriber of the entity
12
+ * re-renders with no refetch. A create still needs the list edit the action performs: a new entity
13
+ * is in no list until something appends it.
14
+ *
15
+ * Failures follow ADR-00007's two paths: a refused address arrives as payload `userErrors`, and
16
+ * transport or top-level GraphQL failures are infrastructure, which the handlers map to one
17
+ * client-synthesized code.
18
+ */
19
+ /**
20
+ * A refused write or a client-synthesized failure. `code` is the server's `CustomerAddressErrorCode`
21
+ * (`NOT_FOUND`, `MISSING_REQUIRED_FIELD`, `INVALID_VALUE`, `UNSUPPORTED_COUNTRY`) or one of the two
22
+ * the client adds, `NETWORK_ERROR` and `UNAUTHORIZED`. `field` is a `CustomerAddressField` such as
23
+ * `POSTAL_CODE`, and null when the failure is about the address as a whole.
24
+ */
25
+ export type CustomerAddressUserError = Readonly<{
26
+ code: string;
27
+ message: string;
28
+ field: string | null;
29
+ }>;
30
+ /** The fields an address carries besides its country. */
31
+ export type CustomerAddressFields = Readonly<{
32
+ recipientName?: string;
33
+ street?: string;
34
+ number?: string;
35
+ complement?: string;
36
+ neighborhood?: string;
37
+ city?: string;
38
+ state?: string;
39
+ postalCode?: string;
40
+ reference?: string;
41
+ }>;
42
+ /** Mirrors `CustomerAddressCreateInput`. An omitted or empty field is not written. */
43
+ export type AddressCreatePayload = CustomerAddressFields & Readonly<{
44
+ country: string;
45
+ }>;
46
+ /** Mirrors `CustomerAddressUpdateInput` plus the id. Omit a field to keep it; `''` erases it. */
47
+ export type AddressUpdatePayload = CustomerAddressFields & Readonly<{
48
+ id: string;
49
+ }>;
50
+ export type AddressRemovePayload = Readonly<{
51
+ id: string;
52
+ }>;
53
+ //#endregion
54
+ //# sourceMappingURL=operations.d.ts.map
@@ -0,0 +1,83 @@
1
+ import { gql } from "../graphql-tag.js";
2
+ //#region src/sdk/address/operations.ts
3
+ const CUSTOMER_ADDRESS_CREATE = gql`
4
+ mutation CustomerAddressCreate($input: CustomerAddressCreateInput!) {
5
+ customerAddressCreate(input: $input) {
6
+ __typename
7
+ customerAddress {
8
+ __typename
9
+ id
10
+ country
11
+ recipientName
12
+ street
13
+ number
14
+ complement
15
+ neighborhood
16
+ city
17
+ state
18
+ postalCode
19
+ reference
20
+ }
21
+ userErrors {
22
+ code
23
+ message
24
+ field
25
+ }
26
+ }
27
+ }
28
+ `;
29
+ const CUSTOMER_ADDRESS_UPDATE = gql`
30
+ mutation CustomerAddressUpdate($id: ID!, $input: CustomerAddressUpdateInput!) {
31
+ customerAddressUpdate(id: $id, input: $input) {
32
+ __typename
33
+ customerAddress {
34
+ __typename
35
+ id
36
+ country
37
+ recipientName
38
+ street
39
+ number
40
+ complement
41
+ neighborhood
42
+ city
43
+ state
44
+ postalCode
45
+ reference
46
+ }
47
+ userErrors {
48
+ code
49
+ message
50
+ field
51
+ }
52
+ }
53
+ }
54
+ `;
55
+ const CUSTOMER_ADDRESS_DELETE = gql`
56
+ mutation CustomerAddressDelete($id: ID!) {
57
+ customerAddressDelete(id: $id) {
58
+ __typename
59
+ deletedCustomerAddressId
60
+ userErrors {
61
+ code
62
+ message
63
+ field
64
+ }
65
+ }
66
+ }
67
+ `;
68
+ /**
69
+ * Read from the cache only (`cache.readQuery`), never sent: it names the cached address book so a
70
+ * create can append to its list. `null` when no list is mounted.
71
+ */
72
+ const CUSTOMER_ADDRESS_BOOK_IDENTITY = gql`
73
+ query CustomerAddressBookIdentity {
74
+ customerAddressBook {
75
+ __typename
76
+ id
77
+ }
78
+ }
79
+ `;
80
+ //#endregion
81
+ export { CUSTOMER_ADDRESS_BOOK_IDENTITY, CUSTOMER_ADDRESS_CREATE, CUSTOMER_ADDRESS_DELETE, CUSTOMER_ADDRESS_UPDATE };
82
+
83
+ //# sourceMappingURL=operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"operations.js","names":[],"sources":["../../../src/sdk/address/operations.ts"],"sourcesContent":["import type { TypedDocumentNode } from '@apollo/client';\nimport { gql } from '../graphql-tag.js';\n\n/**\n * The saved-address write documents and the cache-only lookup of the address book.\n *\n * Authored with the hand `gql` tag and excluded from the codegen `documents` glob (see\n * `codegen.ts`), like the identity and region writes: the `gql` tag alone is still plucked by\n * `graphql-codegen`, which would emit duplicates of these hand-written types in `sdk/generated/`.\n *\n * The create and update payloads select every field the list item reads, `__typename` and `id`\n * included, so the response merges into the normalized cache and every subscriber of the entity\n * re-renders with no refetch. A create still needs the list edit the action performs: a new entity\n * is in no list until something appends it.\n *\n * Failures follow ADR-00007's two paths: a refused address arrives as payload `userErrors`, and\n * transport or top-level GraphQL failures are infrastructure, which the handlers map to one\n * client-synthesized code.\n */\n\n/**\n * A refused write or a client-synthesized failure. `code` is the server's `CustomerAddressErrorCode`\n * (`NOT_FOUND`, `MISSING_REQUIRED_FIELD`, `INVALID_VALUE`, `UNSUPPORTED_COUNTRY`) or one of the two\n * the client adds, `NETWORK_ERROR` and `UNAUTHORIZED`. `field` is a `CustomerAddressField` such as\n * `POSTAL_CODE`, and null when the failure is about the address as a whole.\n */\nexport type CustomerAddressUserError = Readonly<{\n code: string;\n message: string;\n field: string | null;\n}>;\n\n/** The fields an address carries besides its country. */\nexport type CustomerAddressFields = Readonly<{\n recipientName?: string;\n street?: string;\n number?: string;\n complement?: string;\n neighborhood?: string;\n city?: string;\n state?: string;\n postalCode?: string;\n reference?: string;\n}>;\n\n/** Mirrors `CustomerAddressCreateInput`. An omitted or empty field is not written. */\nexport type AddressCreatePayload = CustomerAddressFields & Readonly<{ country: string }>;\n\n/** Mirrors `CustomerAddressUpdateInput` plus the id. Omit a field to keep it; `''` erases it. */\nexport type AddressUpdatePayload = CustomerAddressFields & Readonly<{ id: string }>;\n\nexport type AddressRemovePayload = Readonly<{ id: string }>;\n\n/** The `CustomerAddress` slice the create and update payloads select. */\nexport type CustomerAddressEntity = Readonly<{\n __typename?: 'CustomerAddress';\n id: string;\n country: string | null;\n recipientName: string | null;\n street: string | null;\n number: string | null;\n complement: string | null;\n neighborhood: string | null;\n city: string | null;\n state: string | null;\n postalCode: string | null;\n reference: string | null;\n}>;\n\ntype CustomerAddressWriteData<Key extends string> = {\n [K in Key]: Readonly<{\n __typename?: string;\n customerAddress: CustomerAddressEntity | null;\n userErrors: readonly CustomerAddressUserError[];\n }>;\n};\n\nexport type CustomerAddressDeleteData = {\n customerAddressDelete: Readonly<{\n __typename?: 'CustomerAddressDeletePayload';\n deletedCustomerAddressId: string | null;\n userErrors: readonly CustomerAddressUserError[];\n }>;\n};\n\nexport type CustomerAddressBookIdentityData = {\n customerAddressBook: Readonly<{ __typename: 'CustomerAddressBook'; id: string }> | null;\n};\n\nexport const CUSTOMER_ADDRESS_CREATE: TypedDocumentNode<\n CustomerAddressWriteData<'customerAddressCreate'>,\n { input: AddressCreatePayload }\n> = gql`\n mutation CustomerAddressCreate($input: CustomerAddressCreateInput!) {\n customerAddressCreate(input: $input) {\n __typename\n customerAddress {\n __typename\n id\n country\n recipientName\n street\n number\n complement\n neighborhood\n city\n state\n postalCode\n reference\n }\n userErrors {\n code\n message\n field\n }\n }\n }\n`;\n\nexport const CUSTOMER_ADDRESS_UPDATE: TypedDocumentNode<\n CustomerAddressWriteData<'customerAddressUpdate'>,\n { id: string; input: CustomerAddressFields }\n> = gql`\n mutation CustomerAddressUpdate($id: ID!, $input: CustomerAddressUpdateInput!) {\n customerAddressUpdate(id: $id, input: $input) {\n __typename\n customerAddress {\n __typename\n id\n country\n recipientName\n street\n number\n complement\n neighborhood\n city\n state\n postalCode\n reference\n }\n userErrors {\n code\n message\n field\n }\n }\n }\n`;\n\nexport const CUSTOMER_ADDRESS_DELETE: TypedDocumentNode<CustomerAddressDeleteData, { id: string }> = gql`\n mutation CustomerAddressDelete($id: ID!) {\n customerAddressDelete(id: $id) {\n __typename\n deletedCustomerAddressId\n userErrors {\n code\n message\n field\n }\n }\n }\n`;\n\n/**\n * Read from the cache only (`cache.readQuery`), never sent: it names the cached address book so a\n * create can append to its list. `null` when no list is mounted.\n */\nexport const CUSTOMER_ADDRESS_BOOK_IDENTITY: TypedDocumentNode<CustomerAddressBookIdentityData, never> = gql`\n query CustomerAddressBookIdentity {\n customerAddressBook {\n __typename\n id\n }\n }\n`;\n"],"mappings":";;AAyFA,MAAa,0BAGT,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BP,MAAa,0BAGT,GAAG;;;;;;;;;;;;;;;;;;;;;;;;;;AA2BP,MAAa,0BAAwF,GAAG;;;;;;;;;;;;;;;;;AAkBxG,MAAa,iCAA4F,GAAG"}
@@ -0,0 +1,23 @@
1
+ import { graphql } from "../generated/gql.js";
2
+ //#region src/sdk/address/postal-code-lookup-operations.ts
3
+ /**
4
+ * Postal-code lookup GraphQL operation (specs/sfs-3430-address-by-postal-code.md).
5
+ *
6
+ * Authored via the codegen `graphql()` factory so codegen scans this document and generates
7
+ * `AddressByPostalCodeQuery` and its variables. The selection set is the four fields the platform
8
+ * resolves for a code; `useAddressByPostalCode` maps the result onto the lookup's three outcomes.
9
+ */
10
+ const ADDRESS_BY_POSTAL_CODE = graphql(`
11
+ query AddressByPostalCode($country: String!, $postalCode: String!) {
12
+ addressByPostalCode(country: $country, postalCode: $postalCode) {
13
+ city
14
+ state
15
+ street
16
+ neighborhood
17
+ }
18
+ }
19
+ `);
20
+ //#endregion
21
+ export { ADDRESS_BY_POSTAL_CODE };
22
+
23
+ //# sourceMappingURL=postal-code-lookup-operations.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postal-code-lookup-operations.js","names":[],"sources":["../../../src/sdk/address/postal-code-lookup-operations.ts"],"sourcesContent":["import type { TypedDocumentNode } from '@apollo/client';\nimport { graphql } from '../generated/gql.js';\nimport type { AddressByPostalCodeQuery, AddressByPostalCodeQueryVariables } from '../generated/graphql.js';\n\n/**\n * Postal-code lookup GraphQL operation (specs/sfs-3430-address-by-postal-code.md).\n *\n * Authored via the codegen `graphql()` factory so codegen scans this document and generates\n * `AddressByPostalCodeQuery` and its variables. The selection set is the four fields the platform\n * resolves for a code; `useAddressByPostalCode` maps the result onto the lookup's three outcomes.\n */\nexport const ADDRESS_BY_POSTAL_CODE: TypedDocumentNode<AddressByPostalCodeQuery, AddressByPostalCodeQueryVariables> =\n graphql(`\n query AddressByPostalCode($country: String!, $postalCode: String!) {\n addressByPostalCode(country: $country, postalCode: $postalCode) {\n city\n state\n street\n neighborhood\n }\n }\n`);\n"],"mappings":";;;;;;;;;AAWA,MAAa,yBACX,QAAQ;;;;;;;;;CAST"}
@@ -0,0 +1,11 @@
1
+ import { POSTAL_CODE_LOOKUP_COUNTRIES } from "./constants.js";
2
+ import "@vtex/country-forms";
3
+ //#region src/sdk/address/postal-code.ts
4
+ /** Whether the form offers to fill the address from the postal code for this country. */
5
+ function hasPostalCodeLookup(country) {
6
+ return POSTAL_CODE_LOOKUP_COUNTRIES.includes(country.trim().toUpperCase());
7
+ }
8
+ //#endregion
9
+ export { hasPostalCodeLookup };
10
+
11
+ //# sourceMappingURL=postal-code.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"postal-code.js","names":[],"sources":["../../../src/sdk/address/postal-code.ts"],"sourcesContent":["import { formatValue, resolveFieldFormatRef, resolveFieldUnformatRef, unformatValue } from '@vtex/country-forms';\nimport { POSTAL_CODE_LOOKUP_COUNTRIES } from './constants.js';\nimport type { CountryRules } from './types.js';\n\n/**\n * The stored form of a postal code: the country's masked form, such as `01001-000`, `20500-0003`, or\n * `SW1A 1AA`. The library accepts most codes with or without the mask but refuses an unmasked US\n * ZIP+4, so the masked form is the one every country accepts. A country with no mask stores the\n * trimmed value. Apply it to a value that passed `validateAddress`.\n */\nexport function normalizePostalCode(value: string, rules: CountryRules): string {\n const trimmed = value.trim();\n const field = rules.schema.fields.find(({ name }) => name === 'postalCode');\n if (!field) {\n return trimmed;\n }\n const values = { postalCode: trimmed };\n return formatValue(\n resolveFieldFormatRef(field, values),\n unformatValue(resolveFieldUnformatRef(field, values), trimmed),\n );\n}\n\n/** Whether the form offers to fill the address from the postal code for this country. */\nexport function hasPostalCodeLookup(country: string): boolean {\n return POSTAL_CODE_LOOKUP_COUNTRIES.includes(country.trim().toUpperCase());\n}\n"],"mappings":";;;;AAwBA,SAAgB,oBAAoB,SAA0B;CAC5D,OAAO,6BAA6B,SAAS,QAAQ,KAAK,CAAC,CAAC,YAAY,CAAC;AAC3E"}