@shadowmkj/plugin-ecommerce 3.85.1

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 (369) hide show
  1. package/LICENSE.md +22 -0
  2. package/README.md +3 -0
  3. package/dist/collections/addresses/createAddressesCollection.d.ts.map +1 -0
  4. package/dist/collections/addresses/createAddressesCollection.js +73 -0
  5. package/dist/collections/addresses/createAddressesCollection.js.map +1 -0
  6. package/dist/collections/addresses/defaultAddressFields.d.ts.map +1 -0
  7. package/dist/collections/addresses/defaultAddressFields.js +72 -0
  8. package/dist/collections/addresses/defaultAddressFields.js.map +1 -0
  9. package/dist/collections/addresses/defaultCountries.d.ts.map +1 -0
  10. package/dist/collections/addresses/defaultCountries.js +169 -0
  11. package/dist/collections/addresses/defaultCountries.js.map +1 -0
  12. package/dist/collections/addresses/hooks/beforeChange.d.ts.map +1 -0
  13. package/dist/collections/addresses/hooks/beforeChange.js +16 -0
  14. package/dist/collections/addresses/hooks/beforeChange.js.map +1 -0
  15. package/dist/collections/carts/beforeChange.d.ts.map +1 -0
  16. package/dist/collections/carts/beforeChange.js +49 -0
  17. package/dist/collections/carts/beforeChange.js.map +1 -0
  18. package/dist/collections/carts/createCartsCollection.d.ts.map +1 -0
  19. package/dist/collections/carts/createCartsCollection.js +194 -0
  20. package/dist/collections/carts/createCartsCollection.js.map +1 -0
  21. package/dist/collections/carts/endpoints/addItem.d.ts.map +1 -0
  22. package/dist/collections/carts/endpoints/addItem.js +54 -0
  23. package/dist/collections/carts/endpoints/addItem.js.map +1 -0
  24. package/dist/collections/carts/endpoints/clearCart.d.ts.map +1 -0
  25. package/dist/collections/carts/endpoints/clearCart.js +41 -0
  26. package/dist/collections/carts/endpoints/clearCart.js.map +1 -0
  27. package/dist/collections/carts/endpoints/mergeCart.d.ts.map +1 -0
  28. package/dist/collections/carts/endpoints/mergeCart.js +72 -0
  29. package/dist/collections/carts/endpoints/mergeCart.js.map +1 -0
  30. package/dist/collections/carts/endpoints/removeItem.d.ts.map +1 -0
  31. package/dist/collections/carts/endpoints/removeItem.js +51 -0
  32. package/dist/collections/carts/endpoints/removeItem.js.map +1 -0
  33. package/dist/collections/carts/endpoints/updateItem.d.ts.map +1 -0
  34. package/dist/collections/carts/endpoints/updateItem.js +95 -0
  35. package/dist/collections/carts/endpoints/updateItem.js.map +1 -0
  36. package/dist/collections/carts/hasCartSecretAccess.d.ts.map +1 -0
  37. package/dist/collections/carts/hasCartSecretAccess.js +24 -0
  38. package/dist/collections/carts/hasCartSecretAccess.js.map +1 -0
  39. package/dist/collections/carts/operations/addItem.d.ts.map +1 -0
  40. package/dist/collections/carts/operations/addItem.js +95 -0
  41. package/dist/collections/carts/operations/addItem.js.map +1 -0
  42. package/dist/collections/carts/operations/clearCart.d.ts.map +1 -0
  43. package/dist/collections/carts/operations/clearCart.js +53 -0
  44. package/dist/collections/carts/operations/clearCart.js.map +1 -0
  45. package/dist/collections/carts/operations/createRequestWithSecret.d.ts.map +1 -0
  46. package/dist/collections/carts/operations/createRequestWithSecret.js +21 -0
  47. package/dist/collections/carts/operations/createRequestWithSecret.js.map +1 -0
  48. package/dist/collections/carts/operations/defaultCartItemMatcher.d.ts.map +1 -0
  49. package/dist/collections/carts/operations/defaultCartItemMatcher.js +25 -0
  50. package/dist/collections/carts/operations/defaultCartItemMatcher.js.map +1 -0
  51. package/dist/collections/carts/operations/defaultCartItemMatcher.spec.js +358 -0
  52. package/dist/collections/carts/operations/defaultCartItemMatcher.spec.js.map +1 -0
  53. package/dist/collections/carts/operations/mergeCart.d.ts.map +1 -0
  54. package/dist/collections/carts/operations/mergeCart.js +144 -0
  55. package/dist/collections/carts/operations/mergeCart.js.map +1 -0
  56. package/dist/collections/carts/operations/removeItem.d.ts.map +1 -0
  57. package/dist/collections/carts/operations/removeItem.js +69 -0
  58. package/dist/collections/carts/operations/removeItem.js.map +1 -0
  59. package/dist/collections/carts/operations/types.d.ts.map +1 -0
  60. package/dist/collections/carts/operations/types.js +7 -0
  61. package/dist/collections/carts/operations/types.js.map +1 -0
  62. package/dist/collections/carts/operations/updateItem.d.ts.map +1 -0
  63. package/dist/collections/carts/operations/updateItem.js +110 -0
  64. package/dist/collections/carts/operations/updateItem.js.map +1 -0
  65. package/dist/collections/carts/statusBeforeRead.d.ts.map +1 -0
  66. package/dist/collections/carts/statusBeforeRead.js +18 -0
  67. package/dist/collections/carts/statusBeforeRead.js.map +1 -0
  68. package/dist/collections/orders/createOrdersCollection.d.ts.map +1 -0
  69. package/dist/collections/orders/createOrdersCollection.js +163 -0
  70. package/dist/collections/orders/createOrdersCollection.js.map +1 -0
  71. package/dist/collections/products/createProductsCollection.d.ts.map +1 -0
  72. package/dist/collections/products/createProductsCollection.js +62 -0
  73. package/dist/collections/products/createProductsCollection.js.map +1 -0
  74. package/dist/collections/transactions/createTransactionsCollection.d.ts.map +1 -0
  75. package/dist/collections/transactions/createTransactionsCollection.js +157 -0
  76. package/dist/collections/transactions/createTransactionsCollection.js.map +1 -0
  77. package/dist/collections/variants/createVariantOptionsCollection.d.ts.map +1 -0
  78. package/dist/collections/variants/createVariantOptionsCollection.js +53 -0
  79. package/dist/collections/variants/createVariantOptionsCollection.js.map +1 -0
  80. package/dist/collections/variants/createVariantTypesCollection.d.ts.map +1 -0
  81. package/dist/collections/variants/createVariantTypesCollection.js +49 -0
  82. package/dist/collections/variants/createVariantTypesCollection.js.map +1 -0
  83. package/dist/collections/variants/createVariantsCollection/hooks/beforeChange.d.ts.map +1 -0
  84. package/dist/collections/variants/createVariantsCollection/hooks/beforeChange.js +38 -0
  85. package/dist/collections/variants/createVariantsCollection/hooks/beforeChange.js.map +1 -0
  86. package/dist/collections/variants/createVariantsCollection/hooks/validateOptions.d.ts.map +1 -0
  87. package/dist/collections/variants/createVariantsCollection/hooks/validateOptions.js +58 -0
  88. package/dist/collections/variants/createVariantsCollection/hooks/validateOptions.js.map +1 -0
  89. package/dist/collections/variants/createVariantsCollection/index.d.ts.map +1 -0
  90. package/dist/collections/variants/createVariantsCollection/index.js +107 -0
  91. package/dist/collections/variants/createVariantsCollection/index.js.map +1 -0
  92. package/dist/currencies/index.d.ts.map +1 -0
  93. package/dist/currencies/index.js +20 -0
  94. package/dist/currencies/index.js.map +1 -0
  95. package/dist/endpoints/confirmOrder.d.ts.map +1 -0
  96. package/dist/endpoints/confirmOrder.js +150 -0
  97. package/dist/endpoints/confirmOrder.js.map +1 -0
  98. package/dist/endpoints/initiatePayment.d.ts.map +1 -0
  99. package/dist/endpoints/initiatePayment.js +226 -0
  100. package/dist/endpoints/initiatePayment.js.map +1 -0
  101. package/dist/exports/client/index.d.ts.map +1 -0
  102. package/dist/exports/client/index.js +4 -0
  103. package/dist/exports/client/index.js.map +1 -0
  104. package/dist/exports/client/react.d.ts.map +1 -0
  105. package/dist/exports/client/react.js +5 -0
  106. package/dist/exports/client/react.js.map +1 -0
  107. package/dist/exports/payments/cod.d.ts +2 -0
  108. package/dist/exports/payments/cod.d.ts.map +1 -0
  109. package/dist/exports/payments/cod.js +3 -0
  110. package/dist/exports/payments/cod.js.map +1 -0
  111. package/dist/exports/payments/stripe.d.ts.map +1 -0
  112. package/dist/exports/payments/stripe.js +3 -0
  113. package/dist/exports/payments/stripe.js.map +1 -0
  114. package/dist/exports/rsc.d.ts.map +1 -0
  115. package/dist/exports/rsc.js +4 -0
  116. package/dist/exports/rsc.js.map +1 -0
  117. package/dist/exports/types.d.ts.map +1 -0
  118. package/dist/exports/types.js +3 -0
  119. package/dist/exports/types.js.map +1 -0
  120. package/dist/fields/amountField.d.ts.map +1 -0
  121. package/dist/fields/amountField.js +33 -0
  122. package/dist/fields/amountField.js.map +1 -0
  123. package/dist/fields/cartItemsField.d.ts.map +1 -0
  124. package/dist/fields/cartItemsField.js +55 -0
  125. package/dist/fields/cartItemsField.js.map +1 -0
  126. package/dist/fields/currencyField.d.ts.map +1 -0
  127. package/dist/fields/currencyField.js +29 -0
  128. package/dist/fields/currencyField.js.map +1 -0
  129. package/dist/fields/inventoryField.d.ts.map +1 -0
  130. package/dist/fields/inventoryField.js +16 -0
  131. package/dist/fields/inventoryField.js.map +1 -0
  132. package/dist/fields/pricesField.d.ts.map +1 -0
  133. package/dist/fields/pricesField.js +54 -0
  134. package/dist/fields/pricesField.js.map +1 -0
  135. package/dist/fields/statusField.d.ts.map +1 -0
  136. package/dist/fields/statusField.js +49 -0
  137. package/dist/fields/statusField.js.map +1 -0
  138. package/dist/fields/variantsFields.d.ts.map +1 -0
  139. package/dist/fields/variantsFields.js +48 -0
  140. package/dist/fields/variantsFields.js.map +1 -0
  141. package/dist/index.d.ts.map +1 -0
  142. package/dist/index.js +258 -0
  143. package/dist/index.js.map +1 -0
  144. package/dist/payments/adapters/cod/confirmOrder.d.ts +5 -0
  145. package/dist/payments/adapters/cod/confirmOrder.d.ts.map +1 -0
  146. package/dist/payments/adapters/cod/confirmOrder.js +83 -0
  147. package/dist/payments/adapters/cod/confirmOrder.js.map +1 -0
  148. package/dist/payments/adapters/cod/confirmOrder.spec.js +166 -0
  149. package/dist/payments/adapters/cod/confirmOrder.spec.js.map +1 -0
  150. package/dist/payments/adapters/cod/endpoints/webhooks.d.ts +5 -0
  151. package/dist/payments/adapters/cod/endpoints/webhooks.d.ts.map +1 -0
  152. package/dist/payments/adapters/cod/endpoints/webhooks.js +18 -0
  153. package/dist/payments/adapters/cod/endpoints/webhooks.js.map +1 -0
  154. package/dist/payments/adapters/cod/index.d.ts +12 -0
  155. package/dist/payments/adapters/cod/index.d.ts.map +1 -0
  156. package/dist/payments/adapters/cod/index.js +64 -0
  157. package/dist/payments/adapters/cod/index.js.map +1 -0
  158. package/dist/payments/adapters/cod/initiatePayment.d.ts +5 -0
  159. package/dist/payments/adapters/cod/initiatePayment.d.ts.map +1 -0
  160. package/dist/payments/adapters/cod/initiatePayment.js +91 -0
  161. package/dist/payments/adapters/cod/initiatePayment.js.map +1 -0
  162. package/dist/payments/adapters/stripe/confirmOrder.d.ts.map +1 -0
  163. package/dist/payments/adapters/stripe/confirmOrder.js +113 -0
  164. package/dist/payments/adapters/stripe/confirmOrder.js.map +1 -0
  165. package/dist/payments/adapters/stripe/confirmOrder.spec.js +166 -0
  166. package/dist/payments/adapters/stripe/confirmOrder.spec.js.map +1 -0
  167. package/dist/payments/adapters/stripe/endpoints/webhooks.d.ts.map +1 -0
  168. package/dist/payments/adapters/stripe/endpoints/webhooks.js +53 -0
  169. package/dist/payments/adapters/stripe/endpoints/webhooks.js.map +1 -0
  170. package/dist/payments/adapters/stripe/index.d.ts +61 -0
  171. package/dist/payments/adapters/stripe/index.d.ts.map +1 -0
  172. package/dist/payments/adapters/stripe/index.js +68 -0
  173. package/dist/payments/adapters/stripe/index.js.map +1 -0
  174. package/dist/payments/adapters/stripe/initiatePayment.d.ts.map +1 -0
  175. package/dist/payments/adapters/stripe/initiatePayment.js +113 -0
  176. package/dist/payments/adapters/stripe/initiatePayment.js.map +1 -0
  177. package/dist/react/provider/index.d.ts.map +1 -0
  178. package/dist/react/provider/index.js +1094 -0
  179. package/dist/react/provider/index.js.map +1 -0
  180. package/dist/react/provider/utilities.d.ts.map +1 -0
  181. package/dist/react/provider/utilities.js +13 -0
  182. package/dist/react/provider/utilities.js.map +1 -0
  183. package/dist/translations/index.d.ts.map +1 -0
  184. package/dist/translations/index.js +84 -0
  185. package/dist/translations/index.js.map +1 -0
  186. package/dist/translations/languages/ar.d.ts.map +1 -0
  187. package/dist/translations/languages/ar.js +92 -0
  188. package/dist/translations/languages/ar.js.map +1 -0
  189. package/dist/translations/languages/az.d.ts.map +1 -0
  190. package/dist/translations/languages/az.js +92 -0
  191. package/dist/translations/languages/az.js.map +1 -0
  192. package/dist/translations/languages/bg.d.ts.map +1 -0
  193. package/dist/translations/languages/bg.js +92 -0
  194. package/dist/translations/languages/bg.js.map +1 -0
  195. package/dist/translations/languages/ca.d.ts.map +1 -0
  196. package/dist/translations/languages/ca.js +92 -0
  197. package/dist/translations/languages/ca.js.map +1 -0
  198. package/dist/translations/languages/cs.d.ts.map +1 -0
  199. package/dist/translations/languages/cs.js +92 -0
  200. package/dist/translations/languages/cs.js.map +1 -0
  201. package/dist/translations/languages/da.d.ts.map +1 -0
  202. package/dist/translations/languages/da.js +92 -0
  203. package/dist/translations/languages/da.js.map +1 -0
  204. package/dist/translations/languages/de.d.ts.map +1 -0
  205. package/dist/translations/languages/de.js +92 -0
  206. package/dist/translations/languages/de.js.map +1 -0
  207. package/dist/translations/languages/en.d.ts.map +1 -0
  208. package/dist/translations/languages/en.js +92 -0
  209. package/dist/translations/languages/en.js.map +1 -0
  210. package/dist/translations/languages/es.d.ts.map +1 -0
  211. package/dist/translations/languages/es.js +92 -0
  212. package/dist/translations/languages/es.js.map +1 -0
  213. package/dist/translations/languages/et.d.ts.map +1 -0
  214. package/dist/translations/languages/et.js +92 -0
  215. package/dist/translations/languages/et.js.map +1 -0
  216. package/dist/translations/languages/fa.d.ts.map +1 -0
  217. package/dist/translations/languages/fa.js +92 -0
  218. package/dist/translations/languages/fa.js.map +1 -0
  219. package/dist/translations/languages/fr.d.ts.map +1 -0
  220. package/dist/translations/languages/fr.js +92 -0
  221. package/dist/translations/languages/fr.js.map +1 -0
  222. package/dist/translations/languages/he.d.ts.map +1 -0
  223. package/dist/translations/languages/he.js +92 -0
  224. package/dist/translations/languages/he.js.map +1 -0
  225. package/dist/translations/languages/hr.d.ts.map +1 -0
  226. package/dist/translations/languages/hr.js +92 -0
  227. package/dist/translations/languages/hr.js.map +1 -0
  228. package/dist/translations/languages/hu.d.ts.map +1 -0
  229. package/dist/translations/languages/hu.js +92 -0
  230. package/dist/translations/languages/hu.js.map +1 -0
  231. package/dist/translations/languages/hy.d.ts.map +1 -0
  232. package/dist/translations/languages/hy.js +92 -0
  233. package/dist/translations/languages/hy.js.map +1 -0
  234. package/dist/translations/languages/is.d.ts.map +1 -0
  235. package/dist/translations/languages/is.js +92 -0
  236. package/dist/translations/languages/is.js.map +1 -0
  237. package/dist/translations/languages/it.d.ts.map +1 -0
  238. package/dist/translations/languages/it.js +92 -0
  239. package/dist/translations/languages/it.js.map +1 -0
  240. package/dist/translations/languages/ja.d.ts.map +1 -0
  241. package/dist/translations/languages/ja.js +92 -0
  242. package/dist/translations/languages/ja.js.map +1 -0
  243. package/dist/translations/languages/ko.d.ts.map +1 -0
  244. package/dist/translations/languages/ko.js +92 -0
  245. package/dist/translations/languages/ko.js.map +1 -0
  246. package/dist/translations/languages/lt.d.ts.map +1 -0
  247. package/dist/translations/languages/lt.js +92 -0
  248. package/dist/translations/languages/lt.js.map +1 -0
  249. package/dist/translations/languages/my.d.ts.map +1 -0
  250. package/dist/translations/languages/my.js +92 -0
  251. package/dist/translations/languages/my.js.map +1 -0
  252. package/dist/translations/languages/nb.d.ts.map +1 -0
  253. package/dist/translations/languages/nb.js +92 -0
  254. package/dist/translations/languages/nb.js.map +1 -0
  255. package/dist/translations/languages/nl.d.ts.map +1 -0
  256. package/dist/translations/languages/nl.js +92 -0
  257. package/dist/translations/languages/nl.js.map +1 -0
  258. package/dist/translations/languages/pl.d.ts.map +1 -0
  259. package/dist/translations/languages/pl.js +92 -0
  260. package/dist/translations/languages/pl.js.map +1 -0
  261. package/dist/translations/languages/pt.d.ts.map +1 -0
  262. package/dist/translations/languages/pt.js +92 -0
  263. package/dist/translations/languages/pt.js.map +1 -0
  264. package/dist/translations/languages/ro.d.ts.map +1 -0
  265. package/dist/translations/languages/ro.js +92 -0
  266. package/dist/translations/languages/ro.js.map +1 -0
  267. package/dist/translations/languages/rs.d.ts.map +1 -0
  268. package/dist/translations/languages/rs.js +92 -0
  269. package/dist/translations/languages/rs.js.map +1 -0
  270. package/dist/translations/languages/rsLatin.d.ts.map +1 -0
  271. package/dist/translations/languages/rsLatin.js +92 -0
  272. package/dist/translations/languages/rsLatin.js.map +1 -0
  273. package/dist/translations/languages/ru.d.ts.map +1 -0
  274. package/dist/translations/languages/ru.js +92 -0
  275. package/dist/translations/languages/ru.js.map +1 -0
  276. package/dist/translations/languages/sk.d.ts.map +1 -0
  277. package/dist/translations/languages/sk.js +92 -0
  278. package/dist/translations/languages/sk.js.map +1 -0
  279. package/dist/translations/languages/sl.d.ts.map +1 -0
  280. package/dist/translations/languages/sl.js +92 -0
  281. package/dist/translations/languages/sl.js.map +1 -0
  282. package/dist/translations/languages/sv.d.ts.map +1 -0
  283. package/dist/translations/languages/sv.js +92 -0
  284. package/dist/translations/languages/sv.js.map +1 -0
  285. package/dist/translations/languages/ta.d.ts.map +1 -0
  286. package/dist/translations/languages/ta.js +92 -0
  287. package/dist/translations/languages/ta.js.map +1 -0
  288. package/dist/translations/languages/th.d.ts.map +1 -0
  289. package/dist/translations/languages/th.js +92 -0
  290. package/dist/translations/languages/th.js.map +1 -0
  291. package/dist/translations/languages/tr.d.ts.map +1 -0
  292. package/dist/translations/languages/tr.js +92 -0
  293. package/dist/translations/languages/tr.js.map +1 -0
  294. package/dist/translations/languages/uk.d.ts.map +1 -0
  295. package/dist/translations/languages/uk.js +92 -0
  296. package/dist/translations/languages/uk.js.map +1 -0
  297. package/dist/translations/languages/vi.d.ts.map +1 -0
  298. package/dist/translations/languages/vi.js +92 -0
  299. package/dist/translations/languages/vi.js.map +1 -0
  300. package/dist/translations/languages/zh.d.ts.map +1 -0
  301. package/dist/translations/languages/zh.js +92 -0
  302. package/dist/translations/languages/zh.js.map +1 -0
  303. package/dist/translations/languages/zhTw.d.ts.map +1 -0
  304. package/dist/translations/languages/zhTw.js +92 -0
  305. package/dist/translations/languages/zhTw.js.map +1 -0
  306. package/dist/translations/translation-schema.json +343 -0
  307. package/dist/translations/types.d.ts.map +1 -0
  308. package/dist/translations/types.js +3 -0
  309. package/dist/translations/types.js.map +1 -0
  310. package/dist/types/index.d.ts.map +1 -0
  311. package/dist/types/index.js +3 -0
  312. package/dist/types/index.js.map +1 -0
  313. package/dist/types/utilities.d.ts.map +1 -0
  314. package/dist/types/utilities.js +3 -0
  315. package/dist/types/utilities.js.map +1 -0
  316. package/dist/ui/PriceCell/index.d.ts.map +1 -0
  317. package/dist/ui/PriceCell/index.js +36 -0
  318. package/dist/ui/PriceCell/index.js.map +1 -0
  319. package/dist/ui/PriceInput/FormattedInput.d.ts.map +1 -0
  320. package/dist/ui/PriceInput/FormattedInput.js +147 -0
  321. package/dist/ui/PriceInput/FormattedInput.js.map +1 -0
  322. package/dist/ui/PriceInput/index.css +35 -0
  323. package/dist/ui/PriceInput/index.d.ts.map +1 -0
  324. package/dist/ui/PriceInput/index.js +21 -0
  325. package/dist/ui/PriceInput/index.js.map +1 -0
  326. package/dist/ui/PriceRowLabel/index.css +13 -0
  327. package/dist/ui/PriceRowLabel/index.d.ts.map +1 -0
  328. package/dist/ui/PriceRowLabel/index.js +66 -0
  329. package/dist/ui/PriceRowLabel/index.js.map +1 -0
  330. package/dist/ui/VariantOptionsSelector/ErrorBox.d.ts.map +1 -0
  331. package/dist/ui/VariantOptionsSelector/ErrorBox.js +28 -0
  332. package/dist/ui/VariantOptionsSelector/ErrorBox.js.map +1 -0
  333. package/dist/ui/VariantOptionsSelector/OptionsSelect.d.ts.map +1 -0
  334. package/dist/ui/VariantOptionsSelector/OptionsSelect.js +71 -0
  335. package/dist/ui/VariantOptionsSelector/OptionsSelect.js.map +1 -0
  336. package/dist/ui/VariantOptionsSelector/index.css +37 -0
  337. package/dist/ui/VariantOptionsSelector/index.d.ts.map +1 -0
  338. package/dist/ui/VariantOptionsSelector/index.js +81 -0
  339. package/dist/ui/VariantOptionsSelector/index.js.map +1 -0
  340. package/dist/ui/utilities.d.ts.map +1 -0
  341. package/dist/ui/utilities.js +40 -0
  342. package/dist/ui/utilities.js.map +1 -0
  343. package/dist/utilities/accessComposition.d.ts.map +1 -0
  344. package/dist/utilities/accessComposition.js +103 -0
  345. package/dist/utilities/accessComposition.js.map +1 -0
  346. package/dist/utilities/accessComposition.spec.js +765 -0
  347. package/dist/utilities/accessComposition.spec.js.map +1 -0
  348. package/dist/utilities/defaultProductsValidation.d.ts.map +1 -0
  349. package/dist/utilities/defaultProductsValidation.js +40 -0
  350. package/dist/utilities/defaultProductsValidation.js.map +1 -0
  351. package/dist/utilities/defaultProductsValidation.spec.js +384 -0
  352. package/dist/utilities/defaultProductsValidation.spec.js.map +1 -0
  353. package/dist/utilities/errorCodes.d.ts.map +1 -0
  354. package/dist/utilities/errorCodes.js +4 -0
  355. package/dist/utilities/errorCodes.js.map +1 -0
  356. package/dist/utilities/getCollectionSlugMap.d.ts.map +1 -0
  357. package/dist/utilities/getCollectionSlugMap.js +36 -0
  358. package/dist/utilities/getCollectionSlugMap.js.map +1 -0
  359. package/dist/utilities/getCollectionSlugMap.spec.js +254 -0
  360. package/dist/utilities/getCollectionSlugMap.spec.js.map +1 -0
  361. package/dist/utilities/pushTypeScriptProperties.d.ts.map +1 -0
  362. package/dist/utilities/pushTypeScriptProperties.js +37 -0
  363. package/dist/utilities/pushTypeScriptProperties.js.map +1 -0
  364. package/dist/utilities/sanitizePluginConfig.d.ts.map +1 -0
  365. package/dist/utilities/sanitizePluginConfig.js +75 -0
  366. package/dist/utilities/sanitizePluginConfig.js.map +1 -0
  367. package/dist/utilities/sanitizePluginConfig.spec.js +516 -0
  368. package/dist/utilities/sanitizePluginConfig.spec.js.map +1 -0
  369. package/package.json +114 -0
package/LICENSE.md ADDED
@@ -0,0 +1,22 @@
1
+ MIT License
2
+
3
+ Copyright (c) 2018-2025 Payload CMS, Inc. <info@payloadcms.com>
4
+
5
+ Permission is hereby granted, free of charge, to any person obtaining
6
+ a copy of this software and associated documentation files (the
7
+ 'Software'), to deal in the Software without restriction, including
8
+ without limitation the rights to use, copy, modify, merge, publish,
9
+ distribute, sublicense, and/or sell copies of the Software, and to
10
+ permit persons to whom the Software is furnished to do so, subject to
11
+ the following conditions:
12
+
13
+ The above copyright notice and this permission notice shall be
14
+ included in all copies or substantial portions of the Software.
15
+
16
+ THE SOFTWARE IS PROVIDED 'AS IS', WITHOUT WARRANTY OF ANY KIND,
17
+ EXPRESS OR IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF
18
+ MERCHANTABILITY, FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT.
19
+ IN NO EVENT SHALL THE AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY
20
+ CLAIM, DAMAGES OR OTHER LIABILITY, WHETHER IN AN ACTION OF CONTRACT,
21
+ TORT OR OTHERWISE, ARISING FROM, OUT OF OR IN CONNECTION WITH THE
22
+ SOFTWARE OR THE USE OR OTHER DEALINGS IN THE SOFTWARE.
package/README.md ADDED
@@ -0,0 +1,3 @@
1
+ # Payload Ecommerce
2
+
3
+ A set of utilities... more to come
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createAddressesCollection.d.ts","sourceRoot":"","sources":["../../../src/collections/addresses/createAddressesCollection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEtD,OAAO,KAAK,EAAE,YAAY,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAMrE,KAAK,KAAK,GAAG;IACX,MAAM,EAAE,IAAI,CACV,YAAY,EACZ,yBAAyB,GAAG,SAAS,GAAG,iBAAiB,GAAG,YAAY,GAAG,iBAAiB,CAC7F,CAAA;IACD;;OAEG;IACH,aAAa,EAAE,KAAK,EAAE,CAAA;IACtB;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB,kBAAkB,CAAC,EAAE,WAAW,EAAE,CAAA;CACnC,CAAA;AAED,eAAO,MAAM,yBAAyB,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,gBA2EzD,CAAA"}
@@ -0,0 +1,73 @@
1
+ import { accessOR } from '../../utilities/accessComposition.js';
2
+ import { defaultCountries } from './defaultCountries.js';
3
+ import { beforeChange } from './hooks/beforeChange.js';
4
+ export const createAddressesCollection = (props)=>{
5
+ const { access, addressFields, customersSlug = 'users' } = props || {};
6
+ const { supportedCountries: supportedCountriesFromProps } = props || {};
7
+ const supportedCountries = supportedCountriesFromProps || defaultCountries;
8
+ const hasOnlyOneCountry = supportedCountries && supportedCountries.length === 1;
9
+ const fields = [
10
+ {
11
+ name: 'customer',
12
+ type: 'relationship',
13
+ admin: {
14
+ position: 'sidebar'
15
+ },
16
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
17
+ t('plugin-ecommerce:customer'),
18
+ relationTo: customersSlug
19
+ },
20
+ ...addressFields.map((field)=>{
21
+ if ('name' in field && field.name === 'country') {
22
+ return {
23
+ name: 'country',
24
+ type: 'select',
25
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
26
+ t('plugin-ecommerce:addressCountry'),
27
+ options: supportedCountries || defaultCountries,
28
+ required: true,
29
+ ...supportedCountries && supportedCountries?.[0] && hasOnlyOneCountry ? {
30
+ defaultValue: supportedCountries?.[0].value
31
+ } : {}
32
+ };
33
+ }
34
+ return field;
35
+ })
36
+ ];
37
+ const baseConfig = {
38
+ slug: 'addresses',
39
+ access: {
40
+ create: access.isAuthenticated,
41
+ delete: accessOR(access.isAdmin, access.isDocumentOwner),
42
+ read: accessOR(access.isAdmin, access.isDocumentOwner),
43
+ update: accessOR(access.isAdmin, access.isDocumentOwner)
44
+ },
45
+ admin: {
46
+ description: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
47
+ t('plugin-ecommerce:addressesCollectionDescription'),
48
+ group: 'Ecommerce',
49
+ hidden: true,
50
+ useAsTitle: 'createdAt'
51
+ },
52
+ fields,
53
+ hooks: {
54
+ beforeChange: [
55
+ beforeChange({
56
+ isCustomer: access.isCustomer ?? access.customerOnlyFieldAccess
57
+ })
58
+ ]
59
+ },
60
+ labels: {
61
+ plural: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
62
+ t('plugin-ecommerce:addresses'),
63
+ singular: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
64
+ t('plugin-ecommerce:address')
65
+ },
66
+ timestamps: true
67
+ };
68
+ return {
69
+ ...baseConfig
70
+ };
71
+ };
72
+
73
+ //# sourceMappingURL=createAddressesCollection.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/collections/addresses/createAddressesCollection.ts"],"sourcesContent":["import type { CollectionConfig, Field } from 'payload'\n\nimport type { AccessConfig, CountryType } from '../../types/index.js'\n\nimport { accessOR } from '../../utilities/accessComposition.js'\nimport { defaultCountries } from './defaultCountries.js'\nimport { beforeChange } from './hooks/beforeChange.js'\n\ntype Props = {\n access: Pick<\n AccessConfig,\n 'customerOnlyFieldAccess' | 'isAdmin' | 'isAuthenticated' | 'isCustomer' | 'isDocumentOwner'\n >\n /**\n * Array of fields used for capturing the address data. Use this over overrides to customise the fields here as it's reused across the plugin.\n */\n addressFields: Field[]\n /**\n * Slug of the customers collection, defaults to 'users'.\n */\n customersSlug?: string\n supportedCountries?: CountryType[]\n}\n\nexport const createAddressesCollection: (props: Props) => CollectionConfig = (props) => {\n const { access, addressFields, customersSlug = 'users' } = props || {}\n\n const { supportedCountries: supportedCountriesFromProps } = props || {}\n const supportedCountries = supportedCountriesFromProps || defaultCountries\n const hasOnlyOneCountry = supportedCountries && supportedCountries.length === 1\n\n const fields: Field[] = [\n {\n name: 'customer',\n type: 'relationship',\n admin: {\n position: 'sidebar',\n },\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:customer'),\n relationTo: customersSlug,\n },\n ...addressFields.map((field) => {\n if ('name' in field && field.name === 'country') {\n return {\n name: 'country',\n type: 'select',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressCountry'),\n options: supportedCountries || defaultCountries,\n required: true,\n ...(supportedCountries && supportedCountries?.[0] && hasOnlyOneCountry\n ? {\n defaultValue: supportedCountries?.[0].value,\n }\n : {}),\n } as Field\n }\n\n return field\n }),\n ]\n\n const baseConfig: CollectionConfig = {\n slug: 'addresses',\n access: {\n create: access.isAuthenticated,\n delete: accessOR(access.isAdmin, access.isDocumentOwner),\n read: accessOR(access.isAdmin, access.isDocumentOwner),\n update: accessOR(access.isAdmin, access.isDocumentOwner),\n },\n admin: {\n description: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressesCollectionDescription'),\n group: 'Ecommerce',\n hidden: true,\n useAsTitle: 'createdAt',\n },\n fields,\n hooks: {\n beforeChange: [\n beforeChange({ isCustomer: access.isCustomer ?? access.customerOnlyFieldAccess }),\n ],\n },\n labels: {\n plural: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addresses'),\n singular: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:address'),\n },\n timestamps: true,\n }\n\n return { ...baseConfig }\n}\n"],"names":["accessOR","defaultCountries","beforeChange","createAddressesCollection","props","access","addressFields","customersSlug","supportedCountries","supportedCountriesFromProps","hasOnlyOneCountry","length","fields","name","type","admin","position","label","t","relationTo","map","field","options","required","defaultValue","value","baseConfig","slug","create","isAuthenticated","delete","isAdmin","isDocumentOwner","read","update","description","group","hidden","useAsTitle","hooks","isCustomer","customerOnlyFieldAccess","labels","plural","singular","timestamps"],"mappings":"AAIA,SAASA,QAAQ,QAAQ,uCAAsC;AAC/D,SAASC,gBAAgB,QAAQ,wBAAuB;AACxD,SAASC,YAAY,QAAQ,0BAAyB;AAkBtD,OAAO,MAAMC,4BAAgE,CAACC;IAC5E,MAAM,EAAEC,MAAM,EAAEC,aAAa,EAAEC,gBAAgB,OAAO,EAAE,GAAGH,SAAS,CAAC;IAErE,MAAM,EAAEI,oBAAoBC,2BAA2B,EAAE,GAAGL,SAAS,CAAC;IACtE,MAAMI,qBAAqBC,+BAA+BR;IAC1D,MAAMS,oBAAoBF,sBAAsBA,mBAAmBG,MAAM,KAAK;IAE9E,MAAMC,SAAkB;QACtB;YACEC,MAAM;YACNC,MAAM;YACNC,OAAO;gBACLC,UAAU;YACZ;YACAC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;YACJC,YAAYZ;QACd;WACGD,cAAcc,GAAG,CAAC,CAACC;YACpB,IAAI,UAAUA,SAASA,MAAMR,IAAI,KAAK,WAAW;gBAC/C,OAAO;oBACLA,MAAM;oBACNC,MAAM;oBACNG,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;wBAC/DA,EAAE;oBACJI,SAASd,sBAAsBP;oBAC/BsB,UAAU;oBACV,GAAIf,sBAAsBA,oBAAoB,CAAC,EAAE,IAAIE,oBACjD;wBACEc,cAAchB,oBAAoB,CAAC,EAAE,CAACiB;oBACxC,IACA,CAAC,CAAC;gBACR;YACF;YAEA,OAAOJ;QACT;KACD;IAED,MAAMK,aAA+B;QACnCC,MAAM;QACNtB,QAAQ;YACNuB,QAAQvB,OAAOwB,eAAe;YAC9BC,QAAQ9B,SAASK,OAAO0B,OAAO,EAAE1B,OAAO2B,eAAe;YACvDC,MAAMjC,SAASK,OAAO0B,OAAO,EAAE1B,OAAO2B,eAAe;YACrDE,QAAQlC,SAASK,OAAO0B,OAAO,EAAE1B,OAAO2B,eAAe;QACzD;QACAjB,OAAO;YACLoB,aAAa,CAAC,EAAEjB,CAAC,EAAE,GACjB,+DAA+D;gBAC/DA,EAAE;YACJkB,OAAO;YACPC,QAAQ;YACRC,YAAY;QACd;QACA1B;QACA2B,OAAO;YACLrC,cAAc;gBACZA,aAAa;oBAAEsC,YAAYnC,OAAOmC,UAAU,IAAInC,OAAOoC,uBAAuB;gBAAC;aAChF;QACH;QACAC,QAAQ;YACNC,QAAQ,CAAC,EAAEzB,CAAC,EAAE,GACZ,+DAA+D;gBAC/DA,EAAE;YACJ0B,UAAU,CAAC,EAAE1B,CAAC,EAAE,GACd,+DAA+D;gBAC/DA,EAAE;QACN;QACA2B,YAAY;IACd;IAEA,OAAO;QAAE,GAAGnB,UAAU;IAAC;AACzB,EAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultAddressFields.d.ts","sourceRoot":"","sources":["../../../src/collections/addresses/defaultAddressFields.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,SAAS,CAAA;AAEpC,eAAO,MAAM,oBAAoB,EAAE,MAAM,KAAK,EAgF7C,CAAA"}
@@ -0,0 +1,72 @@
1
+ export const defaultAddressFields = ()=>{
2
+ return [
3
+ {
4
+ name: 'title',
5
+ type: 'text',
6
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
7
+ t('plugin-ecommerce:addressTitle')
8
+ },
9
+ {
10
+ name: 'firstName',
11
+ type: 'text',
12
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
13
+ t('plugin-ecommerce:addressFirstName')
14
+ },
15
+ {
16
+ name: 'lastName',
17
+ type: 'text',
18
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
19
+ t('plugin-ecommerce:addressLastName')
20
+ },
21
+ {
22
+ name: 'company',
23
+ type: 'text',
24
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
25
+ t('plugin-ecommerce:addressCompany')
26
+ },
27
+ {
28
+ name: 'addressLine1',
29
+ type: 'text',
30
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
31
+ t('plugin-ecommerce:addressLine1')
32
+ },
33
+ {
34
+ name: 'addressLine2',
35
+ type: 'text',
36
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
37
+ t('plugin-ecommerce:addressLine2')
38
+ },
39
+ {
40
+ name: 'city',
41
+ type: 'text',
42
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
43
+ t('plugin-ecommerce:addressCity')
44
+ },
45
+ {
46
+ name: 'state',
47
+ type: 'text',
48
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
49
+ t('plugin-ecommerce:addressState')
50
+ },
51
+ {
52
+ name: 'postalCode',
53
+ type: 'text',
54
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
55
+ t('plugin-ecommerce:addressPostalCode')
56
+ },
57
+ {
58
+ name: 'country',
59
+ type: 'text',
60
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
61
+ t('plugin-ecommerce:addressCountry')
62
+ },
63
+ {
64
+ name: 'phone',
65
+ type: 'text',
66
+ label: ({ t })=>// @ts-expect-error - translations are not typed in plugins yet
67
+ t('plugin-ecommerce:addressPhone')
68
+ }
69
+ ];
70
+ };
71
+
72
+ //# sourceMappingURL=defaultAddressFields.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/collections/addresses/defaultAddressFields.ts"],"sourcesContent":["import type { Field } from 'payload'\n\nexport const defaultAddressFields: () => Field[] = () => {\n return [\n {\n name: 'title',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressTitle'),\n },\n {\n name: 'firstName',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressFirstName'),\n },\n {\n name: 'lastName',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressLastName'),\n },\n {\n name: 'company',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressCompany'),\n },\n {\n name: 'addressLine1',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressLine1'),\n },\n {\n name: 'addressLine2',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressLine2'),\n },\n {\n name: 'city',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressCity'),\n },\n {\n name: 'state',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressState'),\n },\n {\n name: 'postalCode',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressPostalCode'),\n },\n {\n name: 'country',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressCountry'),\n },\n {\n name: 'phone',\n type: 'text',\n label: ({ t }) =>\n // @ts-expect-error - translations are not typed in plugins yet\n t('plugin-ecommerce:addressPhone'),\n },\n ]\n}\n"],"names":["defaultAddressFields","name","type","label","t"],"mappings":"AAEA,OAAO,MAAMA,uBAAsC;IACjD,OAAO;QACL;YACEC,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;QACA;YACEH,MAAM;YACNC,MAAM;YACNC,OAAO,CAAC,EAAEC,CAAC,EAAE,GACX,+DAA+D;gBAC/DA,EAAE;QACN;KACD;AACH,EAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"defaultCountries.d.ts","sourceRoot":"","sources":["../../../src/collections/addresses/defaultCountries.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,sBAAsB,CAAA;AAEvD;;;;;GAKG;AACH,eAAO,MAAM,gBAAgB,EAAE,WAAW,EAyCzC,CAAA"}
@@ -0,0 +1,169 @@
1
+ /**
2
+ * Default list of countries supported for forms and payments.
3
+ * This can be overriden or reused in other parts of the application.
4
+ *
5
+ * The label is the human-readable name of the country, and the value is the ISO 3166-1 alpha-2 code.
6
+ */ export const defaultCountries = [
7
+ {
8
+ label: 'United States',
9
+ value: 'US'
10
+ },
11
+ {
12
+ label: 'United Kingdom',
13
+ value: 'GB'
14
+ },
15
+ {
16
+ label: 'Canada',
17
+ value: 'CA'
18
+ },
19
+ {
20
+ label: 'Australia',
21
+ value: 'AU'
22
+ },
23
+ {
24
+ label: 'Austria',
25
+ value: 'AT'
26
+ },
27
+ {
28
+ label: 'Belgium',
29
+ value: 'BE'
30
+ },
31
+ {
32
+ label: 'Brazil',
33
+ value: 'BR'
34
+ },
35
+ {
36
+ label: 'Bulgaria',
37
+ value: 'BG'
38
+ },
39
+ {
40
+ label: 'Cyprus',
41
+ value: 'CY'
42
+ },
43
+ {
44
+ label: 'Czech Republic',
45
+ value: 'CZ'
46
+ },
47
+ {
48
+ label: 'Denmark',
49
+ value: 'DK'
50
+ },
51
+ {
52
+ label: 'Estonia',
53
+ value: 'EE'
54
+ },
55
+ {
56
+ label: 'Finland',
57
+ value: 'FI'
58
+ },
59
+ {
60
+ label: 'France',
61
+ value: 'FR'
62
+ },
63
+ {
64
+ label: 'Germany',
65
+ value: 'DE'
66
+ },
67
+ {
68
+ label: 'Greece',
69
+ value: 'GR'
70
+ },
71
+ {
72
+ label: 'Hong Kong',
73
+ value: 'HK'
74
+ },
75
+ {
76
+ label: 'Hungary',
77
+ value: 'HU'
78
+ },
79
+ {
80
+ label: 'India',
81
+ value: 'IN'
82
+ },
83
+ {
84
+ label: 'Ireland',
85
+ value: 'IE'
86
+ },
87
+ {
88
+ label: 'Italy',
89
+ value: 'IT'
90
+ },
91
+ {
92
+ label: 'Japan',
93
+ value: 'JP'
94
+ },
95
+ {
96
+ label: 'Latvia',
97
+ value: 'LV'
98
+ },
99
+ {
100
+ label: 'Lithuania',
101
+ value: 'LT'
102
+ },
103
+ {
104
+ label: 'Luxembourg',
105
+ value: 'LU'
106
+ },
107
+ {
108
+ label: 'Malaysia',
109
+ value: 'MY'
110
+ },
111
+ {
112
+ label: 'Malta',
113
+ value: 'MT'
114
+ },
115
+ {
116
+ label: 'Mexico',
117
+ value: 'MX'
118
+ },
119
+ {
120
+ label: 'Netherlands',
121
+ value: 'NL'
122
+ },
123
+ {
124
+ label: 'New Zealand',
125
+ value: 'NZ'
126
+ },
127
+ {
128
+ label: 'Norway',
129
+ value: 'NO'
130
+ },
131
+ {
132
+ label: 'Poland',
133
+ value: 'PL'
134
+ },
135
+ {
136
+ label: 'Portugal',
137
+ value: 'PT'
138
+ },
139
+ {
140
+ label: 'Romania',
141
+ value: 'RO'
142
+ },
143
+ {
144
+ label: 'Singapore',
145
+ value: 'SG'
146
+ },
147
+ {
148
+ label: 'Slovakia',
149
+ value: 'SK'
150
+ },
151
+ {
152
+ label: 'Slovenia',
153
+ value: 'SI'
154
+ },
155
+ {
156
+ label: 'Spain',
157
+ value: 'ES'
158
+ },
159
+ {
160
+ label: 'Sweden',
161
+ value: 'SE'
162
+ },
163
+ {
164
+ label: 'Switzerland',
165
+ value: 'CH'
166
+ }
167
+ ];
168
+
169
+ //# sourceMappingURL=defaultCountries.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/collections/addresses/defaultCountries.ts"],"sourcesContent":["import type { CountryType } from '../../types/index.js'\n\n/**\n * Default list of countries supported for forms and payments.\n * This can be overriden or reused in other parts of the application.\n *\n * The label is the human-readable name of the country, and the value is the ISO 3166-1 alpha-2 code.\n */\nexport const defaultCountries: CountryType[] = [\n { label: 'United States', value: 'US' },\n { label: 'United Kingdom', value: 'GB' },\n { label: 'Canada', value: 'CA' },\n { label: 'Australia', value: 'AU' },\n { label: 'Austria', value: 'AT' },\n { label: 'Belgium', value: 'BE' },\n { label: 'Brazil', value: 'BR' },\n { label: 'Bulgaria', value: 'BG' },\n { label: 'Cyprus', value: 'CY' },\n { label: 'Czech Republic', value: 'CZ' },\n { label: 'Denmark', value: 'DK' },\n { label: 'Estonia', value: 'EE' },\n { label: 'Finland', value: 'FI' },\n { label: 'France', value: 'FR' },\n { label: 'Germany', value: 'DE' },\n { label: 'Greece', value: 'GR' },\n { label: 'Hong Kong', value: 'HK' },\n { label: 'Hungary', value: 'HU' },\n { label: 'India', value: 'IN' },\n { label: 'Ireland', value: 'IE' },\n { label: 'Italy', value: 'IT' },\n { label: 'Japan', value: 'JP' },\n { label: 'Latvia', value: 'LV' },\n { label: 'Lithuania', value: 'LT' },\n { label: 'Luxembourg', value: 'LU' },\n { label: 'Malaysia', value: 'MY' },\n { label: 'Malta', value: 'MT' },\n { label: 'Mexico', value: 'MX' },\n { label: 'Netherlands', value: 'NL' },\n { label: 'New Zealand', value: 'NZ' },\n { label: 'Norway', value: 'NO' },\n { label: 'Poland', value: 'PL' },\n { label: 'Portugal', value: 'PT' },\n { label: 'Romania', value: 'RO' },\n { label: 'Singapore', value: 'SG' },\n { label: 'Slovakia', value: 'SK' },\n { label: 'Slovenia', value: 'SI' },\n { label: 'Spain', value: 'ES' },\n { label: 'Sweden', value: 'SE' },\n { label: 'Switzerland', value: 'CH' },\n]\n"],"names":["defaultCountries","label","value"],"mappings":"AAEA;;;;;CAKC,GACD,OAAO,MAAMA,mBAAkC;IAC7C;QAAEC,OAAO;QAAiBC,OAAO;IAAK;IACtC;QAAED,OAAO;QAAkBC,OAAO;IAAK;IACvC;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAaC,OAAO;IAAK;IAClC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAYC,OAAO;IAAK;IACjC;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAkBC,OAAO;IAAK;IACvC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAaC,OAAO;IAAK;IAClC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAASC,OAAO;IAAK;IAC9B;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAASC,OAAO;IAAK;IAC9B;QAAED,OAAO;QAASC,OAAO;IAAK;IAC9B;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAaC,OAAO;IAAK;IAClC;QAAED,OAAO;QAAcC,OAAO;IAAK;IACnC;QAAED,OAAO;QAAYC,OAAO;IAAK;IACjC;QAAED,OAAO;QAASC,OAAO;IAAK;IAC9B;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAeC,OAAO;IAAK;IACpC;QAAED,OAAO;QAAeC,OAAO;IAAK;IACpC;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAYC,OAAO;IAAK;IACjC;QAAED,OAAO;QAAWC,OAAO;IAAK;IAChC;QAAED,OAAO;QAAaC,OAAO;IAAK;IAClC;QAAED,OAAO;QAAYC,OAAO;IAAK;IACjC;QAAED,OAAO;QAAYC,OAAO;IAAK;IACjC;QAAED,OAAO;QAASC,OAAO;IAAK;IAC9B;QAAED,OAAO;QAAUC,OAAO;IAAK;IAC/B;QAAED,OAAO;QAAeC,OAAO;IAAK;CACrC,CAAA"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beforeChange.d.ts","sourceRoot":"","sources":["../../../../src/collections/addresses/hooks/beforeChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,WAAW,EAAE,MAAM,SAAS,CAAA;AAEtE,UAAU,KAAK;IACb,UAAU,CAAC,EAAE,WAAW,CAAA;CACzB;AAED,eAAO,MAAM,YAAY,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,0BAgBzC,CAAA"}
@@ -0,0 +1,16 @@
1
+ export const beforeChange = ({ isCustomer })=>async ({ data, req })=>{
2
+ if (!isCustomer) {
3
+ return data;
4
+ }
5
+ const userIsCustomer = await isCustomer({
6
+ req
7
+ });
8
+ // Ensure that the customer field is set to the current user's ID if the user is a customer.
9
+ // Admins can set to any customer.
10
+ if (req.user && userIsCustomer) {
11
+ data.customer = req.user.id;
12
+ }
13
+ return data;
14
+ };
15
+
16
+ //# sourceMappingURL=beforeChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../../src/collections/addresses/hooks/beforeChange.ts"],"sourcesContent":["import type { CollectionBeforeChangeHook, FieldAccess } from 'payload'\n\ninterface Props {\n isCustomer?: FieldAccess\n}\n\nexport const beforeChange: (args: Props) => CollectionBeforeChangeHook =\n ({ isCustomer }) =>\n async ({ data, req }) => {\n if (!isCustomer) {\n return data\n }\n\n const userIsCustomer = await isCustomer({ req })\n\n // Ensure that the customer field is set to the current user's ID if the user is a customer.\n // Admins can set to any customer.\n if (req.user && userIsCustomer) {\n data.customer = req.user.id\n }\n\n return data\n }\n"],"names":["beforeChange","isCustomer","data","req","userIsCustomer","user","customer","id"],"mappings":"AAMA,OAAO,MAAMA,eACX,CAAC,EAAEC,UAAU,EAAE,GACf,OAAO,EAAEC,IAAI,EAAEC,GAAG,EAAE;QAClB,IAAI,CAACF,YAAY;YACf,OAAOC;QACT;QAEA,MAAME,iBAAiB,MAAMH,WAAW;YAAEE;QAAI;QAE9C,4FAA4F;QAC5F,kCAAkC;QAClC,IAAIA,IAAIE,IAAI,IAAID,gBAAgB;YAC9BF,KAAKI,QAAQ,GAAGH,IAAIE,IAAI,CAACE,EAAE;QAC7B;QAEA,OAAOL;IACT,EAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"beforeChange.d.ts","sourceRoot":"","sources":["../../../src/collections/carts/beforeChange.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,0BAA0B,EAAE,MAAM,SAAS,CAAA;AAIzD,KAAK,KAAK,GAAG;IACX,YAAY,EAAE,MAAM,CAAA;IACpB,YAAY,EAAE,MAAM,CAAA;CACrB,CAAA;AAED,eAAO,MAAM,gBAAgB,EAAE,CAAC,IAAI,EAAE,KAAK,KAAK,0BAwD7C,CAAA"}
@@ -0,0 +1,49 @@
1
+ import crypto from 'crypto';
2
+ export const beforeChangeCart = ({ productsSlug, variantsSlug })=>async ({ data, operation, req })=>{
3
+ // Generate a secret for guest cart access on creation
4
+ if (operation === 'create' && !data.customer && !data.secret) {
5
+ // Generate a cryptographically secure random string
6
+ const secret = crypto.randomBytes(20).toString('hex');
7
+ data.secret = secret;
8
+ // Store in context so afterRead hook can include it in the creation response
9
+ if (!req.context) {
10
+ req.context = {};
11
+ }
12
+ req.context.newCartSecret = secret;
13
+ }
14
+ // Update subtotal based on items in the cart
15
+ if (data.items && Array.isArray(data.items)) {
16
+ const priceField = `priceIn${data.currency}`;
17
+ let subtotal = 0;
18
+ for (const item of data.items){
19
+ if (item.variant) {
20
+ const id = typeof item.variant === 'object' ? item.variant.id : item.variant;
21
+ const variant = await req.payload.findByID({
22
+ id,
23
+ collection: variantsSlug,
24
+ depth: 0,
25
+ select: {
26
+ [priceField]: true
27
+ }
28
+ });
29
+ subtotal += variant[priceField] * item.quantity;
30
+ } else {
31
+ const id = typeof item.product === 'object' ? item.product.id : item.product;
32
+ const product = await req.payload.findByID({
33
+ id,
34
+ collection: productsSlug,
35
+ depth: 0,
36
+ select: {
37
+ [priceField]: true
38
+ }
39
+ });
40
+ subtotal += product[priceField] * item.quantity;
41
+ }
42
+ }
43
+ data.subtotal = subtotal;
44
+ } else {
45
+ data.subtotal = 0;
46
+ }
47
+ };
48
+
49
+ //# sourceMappingURL=beforeChange.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"sources":["../../../src/collections/carts/beforeChange.ts"],"sourcesContent":["import type { CollectionBeforeChangeHook } from 'payload'\n\nimport crypto from 'crypto'\n\ntype Props = {\n productsSlug: string\n variantsSlug: string\n}\n\nexport const beforeChangeCart: (args: Props) => CollectionBeforeChangeHook =\n ({ productsSlug, variantsSlug }) =>\n async ({ data, operation, req }) => {\n // Generate a secret for guest cart access on creation\n if (operation === 'create' && !data.customer && !data.secret) {\n // Generate a cryptographically secure random string\n const secret = crypto.randomBytes(20).toString('hex')\n data.secret = secret\n\n // Store in context so afterRead hook can include it in the creation response\n if (!req.context) {\n req.context = {}\n }\n req.context.newCartSecret = secret\n }\n\n // Update subtotal based on items in the cart\n if (data.items && Array.isArray(data.items)) {\n const priceField = `priceIn${data.currency}`\n\n let subtotal = 0\n\n for (const item of data.items) {\n if (item.variant) {\n const id = typeof item.variant === 'object' ? item.variant.id : item.variant\n\n const variant = await req.payload.findByID({\n id,\n collection: variantsSlug,\n depth: 0,\n select: {\n [priceField]: true,\n },\n })\n\n subtotal += variant[priceField] * item.quantity\n } else {\n const id = typeof item.product === 'object' ? item.product.id : item.product\n\n const product = await req.payload.findByID({\n id,\n collection: productsSlug,\n depth: 0,\n select: {\n [priceField]: true,\n },\n })\n\n subtotal += product[priceField] * item.quantity\n }\n }\n\n data.subtotal = subtotal\n } else {\n data.subtotal = 0\n }\n }\n"],"names":["crypto","beforeChangeCart","productsSlug","variantsSlug","data","operation","req","customer","secret","randomBytes","toString","context","newCartSecret","items","Array","isArray","priceField","currency","subtotal","item","variant","id","payload","findByID","collection","depth","select","quantity","product"],"mappings":"AAEA,OAAOA,YAAY,SAAQ;AAO3B,OAAO,MAAMC,mBACX,CAAC,EAAEC,YAAY,EAAEC,YAAY,EAAE,GAC/B,OAAO,EAAEC,IAAI,EAAEC,SAAS,EAAEC,GAAG,EAAE;QAC7B,sDAAsD;QACtD,IAAID,cAAc,YAAY,CAACD,KAAKG,QAAQ,IAAI,CAACH,KAAKI,MAAM,EAAE;YAC5D,oDAAoD;YACpD,MAAMA,SAASR,OAAOS,WAAW,CAAC,IAAIC,QAAQ,CAAC;YAC/CN,KAAKI,MAAM,GAAGA;YAEd,6EAA6E;YAC7E,IAAI,CAACF,IAAIK,OAAO,EAAE;gBAChBL,IAAIK,OAAO,GAAG,CAAC;YACjB;YACAL,IAAIK,OAAO,CAACC,aAAa,GAAGJ;QAC9B;QAEA,6CAA6C;QAC7C,IAAIJ,KAAKS,KAAK,IAAIC,MAAMC,OAAO,CAACX,KAAKS,KAAK,GAAG;YAC3C,MAAMG,aAAa,CAAC,OAAO,EAAEZ,KAAKa,QAAQ,EAAE;YAE5C,IAAIC,WAAW;YAEf,KAAK,MAAMC,QAAQf,KAAKS,KAAK,CAAE;gBAC7B,IAAIM,KAAKC,OAAO,EAAE;oBAChB,MAAMC,KAAK,OAAOF,KAAKC,OAAO,KAAK,WAAWD,KAAKC,OAAO,CAACC,EAAE,GAAGF,KAAKC,OAAO;oBAE5E,MAAMA,UAAU,MAAMd,IAAIgB,OAAO,CAACC,QAAQ,CAAC;wBACzCF;wBACAG,YAAYrB;wBACZsB,OAAO;wBACPC,QAAQ;4BACN,CAACV,WAAW,EAAE;wBAChB;oBACF;oBAEAE,YAAYE,OAAO,CAACJ,WAAW,GAAGG,KAAKQ,QAAQ;gBACjD,OAAO;oBACL,MAAMN,KAAK,OAAOF,KAAKS,OAAO,KAAK,WAAWT,KAAKS,OAAO,CAACP,EAAE,GAAGF,KAAKS,OAAO;oBAE5E,MAAMA,UAAU,MAAMtB,IAAIgB,OAAO,CAACC,QAAQ,CAAC;wBACzCF;wBACAG,YAAYtB;wBACZuB,OAAO;wBACPC,QAAQ;4BACN,CAACV,WAAW,EAAE;wBAChB;oBACF;oBAEAE,YAAYU,OAAO,CAACZ,WAAW,GAAGG,KAAKQ,QAAQ;gBACjD;YACF;YAEAvB,KAAKc,QAAQ,GAAGA;QAClB,OAAO;YACLd,KAAKc,QAAQ,GAAG;QAClB;IACF,EAAC"}
@@ -0,0 +1 @@
1
+ {"version":3,"file":"createCartsCollection.d.ts","sourceRoot":"","sources":["../../../src/collections/carts/createCartsCollection.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAU,gBAAgB,EAAS,MAAM,SAAS,CAAA;AAE9D,OAAO,KAAK,EAAE,YAAY,EAAE,gBAAgB,EAAE,MAAM,sBAAsB,CAAA;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,uBAAuB,CAAA;AAe5D,KAAK,KAAK,GAAG;IACX,MAAM,EAAE,IAAI,CAAC,QAAQ,CAAC,YAAY,CAAC,EAAE,SAAS,GAAG,iBAAiB,GAAG,iBAAiB,CAAC,CAAA;IACvF;;;OAGG;IACH,eAAe,CAAC,EAAE,OAAO,CAAA;IACzB;;;;;;;;;;;;;;;;;;OAkBG;IACH,eAAe,CAAC,EAAE,eAAe,CAAA;IACjC,gBAAgB,CAAC,EAAE,gBAAgB,CAAA;IACnC;;OAEG;IACH,aAAa,CAAC,EAAE,MAAM,CAAA;IACtB;;;OAGG;IACH,cAAc,CAAC,EAAE,OAAO,CAAA;IACxB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;IACrB;;OAEG;IACH,YAAY,CAAC,EAAE,MAAM,CAAA;CACtB,CAAA;AAED,eAAO,MAAM,qBAAqB,EAAE,CAAC,KAAK,EAAE,KAAK,KAAK,gBAqMrD,CAAA"}