@eventlook/sdk 1.4.46-beta.2 → 1.4.46-beta.4

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 (654) hide show
  1. package/dist/cjs/_virtual/_commonjsHelpers.js +8 -0
  2. package/dist/cjs/_virtual/_commonjsHelpers.js.map +1 -0
  3. package/dist/cjs/_virtual/index.js +6 -0
  4. package/dist/cjs/_virtual/index.js.map +1 -0
  5. package/dist/cjs/_virtual/index2.js +6 -0
  6. package/dist/cjs/_virtual/index2.js.map +1 -0
  7. package/dist/cjs/_virtual/index3.js +6 -0
  8. package/dist/cjs/_virtual/index3.js.map +1 -0
  9. package/dist/cjs/_virtual/react-is.development.js +6 -0
  10. package/dist/cjs/_virtual/react-is.development.js.map +1 -0
  11. package/dist/cjs/_virtual/react-is.development2.js +6 -0
  12. package/dist/cjs/_virtual/react-is.development2.js.map +1 -0
  13. package/dist/cjs/_virtual/react-is.production.js +6 -0
  14. package/dist/cjs/_virtual/react-is.production.js.map +1 -0
  15. package/dist/cjs/_virtual/react-is.production.min.js +6 -0
  16. package/dist/cjs/_virtual/react-is.production.min.js.map +1 -0
  17. package/dist/cjs/components/ClientOnly.js +19 -0
  18. package/dist/cjs/components/ClientOnly.js.map +1 -0
  19. package/dist/cjs/components/CustomSkeleton.js +15 -0
  20. package/dist/cjs/components/CustomSkeleton.js.map +1 -0
  21. package/dist/cjs/components/Image.js +56 -0
  22. package/dist/cjs/components/Image.js.map +1 -0
  23. package/dist/cjs/components/Label.js +65 -0
  24. package/dist/cjs/components/Label.js.map +1 -0
  25. package/dist/cjs/components/TextIconLabel.js +19 -0
  26. package/dist/cjs/components/TextIconLabel.js.map +1 -0
  27. package/dist/cjs/components/TicketFormSkeleton.js +55 -0
  28. package/dist/cjs/components/TicketFormSkeleton.js.map +1 -0
  29. package/dist/cjs/components/Trans.js +87 -0
  30. package/dist/cjs/components/Trans.js.map +1 -0
  31. package/dist/cjs/components/animate/IconButtonAnimate.js +29 -0
  32. package/dist/cjs/components/animate/IconButtonAnimate.js.map +1 -0
  33. package/dist/cjs/components/animate/MotionContainer.js +18 -0
  34. package/dist/cjs/components/animate/MotionContainer.js.map +1 -0
  35. package/dist/cjs/components/animate/variants/bounce.js +98 -0
  36. package/dist/cjs/components/animate/variants/bounce.js.map +1 -0
  37. package/dist/cjs/components/animate/variants/container.js +25 -0
  38. package/dist/cjs/components/animate/variants/container.js.map +1 -0
  39. package/dist/cjs/components/animate/variants/transition.js +17 -0
  40. package/dist/cjs/components/animate/variants/transition.js.map +1 -0
  41. package/dist/cjs/components/confirm-dialog/ConfirmDialog.js +24 -0
  42. package/dist/cjs/components/confirm-dialog/ConfirmDialog.js.map +1 -0
  43. package/dist/cjs/components/hook-form/FormProvider.js +14 -0
  44. package/dist/cjs/components/hook-form/FormProvider.js.map +1 -0
  45. package/dist/cjs/components/hook-form/RHFCheckbox.js +15 -0
  46. package/dist/cjs/components/hook-form/RHFCheckbox.js.map +1 -0
  47. package/dist/cjs/components/hook-form/RHFDatePicker.js +22 -0
  48. package/dist/cjs/components/hook-form/RHFDatePicker.js.map +1 -0
  49. package/dist/cjs/components/hook-form/RHFPhone.js +24 -0
  50. package/dist/cjs/components/hook-form/RHFPhone.js.map +1 -0
  51. package/dist/cjs/components/hook-form/RHFRadioGroup.js +29 -0
  52. package/dist/cjs/components/hook-form/RHFRadioGroup.js.map +1 -0
  53. package/dist/cjs/components/hook-form/RHFSelect.js +34 -0
  54. package/dist/cjs/components/hook-form/RHFSelect.js.map +1 -0
  55. package/dist/cjs/components/hook-form/RHFTextField.js +15 -0
  56. package/dist/cjs/components/hook-form/RHFTextField.js.map +1 -0
  57. package/dist/cjs/components/iconify/Iconify.js +14 -0
  58. package/dist/cjs/components/iconify/Iconify.js.map +1 -0
  59. package/dist/cjs/context/GlobalContext.js +65 -0
  60. package/dist/cjs/context/GlobalContext.js.map +1 -0
  61. package/dist/cjs/form/ChildEventCard.js +60 -0
  62. package/dist/cjs/form/ChildEventCard.js.map +1 -0
  63. package/dist/cjs/form/ChildEventDialog.js +30 -0
  64. package/dist/cjs/form/ChildEventDialog.js.map +1 -0
  65. package/dist/cjs/form/ChildEvents.js +17 -0
  66. package/dist/cjs/form/ChildEvents.js.map +1 -0
  67. package/dist/cjs/form/ContactPerson.js +40 -0
  68. package/dist/cjs/form/ContactPerson.js.map +1 -0
  69. package/dist/cjs/form/EmailConfirmation.js +28 -0
  70. package/dist/cjs/form/EmailConfirmation.js.map +1 -0
  71. package/dist/cjs/form/MerchandiseSelection.js +17 -0
  72. package/dist/cjs/form/MerchandiseSelection.js.map +1 -0
  73. package/dist/cjs/form/OrderSuccess.js +57 -0
  74. package/dist/cjs/form/OrderSuccess.js.map +1 -0
  75. package/dist/cjs/form/Payment.js +214 -0
  76. package/dist/cjs/form/Payment.js.map +1 -0
  77. package/dist/cjs/form/PaymentOverviewBox.js +405 -0
  78. package/dist/cjs/form/PaymentOverviewBox.js.map +1 -0
  79. package/dist/cjs/form/PaymentOverviewDrawer.js +115 -0
  80. package/dist/cjs/form/PaymentOverviewDrawer.js.map +1 -0
  81. package/dist/cjs/form/PaymentPending.js +23 -0
  82. package/dist/cjs/form/PaymentPending.js.map +1 -0
  83. package/dist/cjs/form/PaymentSuccess.js +203 -0
  84. package/dist/cjs/form/PaymentSuccess.js.map +1 -0
  85. package/dist/cjs/form/ReleaseCountdown.js +34 -0
  86. package/dist/cjs/form/ReleaseCountdown.js.map +1 -0
  87. package/dist/cjs/form/ReleaseWithMerchandise.js +139 -0
  88. package/dist/cjs/form/ReleaseWithMerchandise.js.map +1 -0
  89. package/dist/cjs/form/ScriptLoader.js +21 -0
  90. package/dist/cjs/form/ScriptLoader.js.map +1 -0
  91. package/dist/cjs/form/Shipping.js +119 -0
  92. package/dist/cjs/form/Shipping.js.map +1 -0
  93. package/dist/cjs/form/TicketForm.js +488 -0
  94. package/dist/cjs/form/TicketForm.js.map +1 -0
  95. package/dist/cjs/form/TicketQuantityControl.js +51 -0
  96. package/dist/cjs/form/TicketQuantityControl.js.map +1 -0
  97. package/dist/cjs/form/TicketSelection.js +176 -0
  98. package/dist/cjs/form/TicketSelection.js.map +1 -0
  99. package/dist/cjs/form/TicketSelectionMap.js +67 -0
  100. package/dist/cjs/form/TicketSelectionMap.js.map +1 -0
  101. package/dist/cjs/form/TicketSelectionMobile.js +98 -0
  102. package/dist/cjs/form/TicketSelectionMobile.js.map +1 -0
  103. package/dist/cjs/form/TicketWithMerchandiseSelection.js +119 -0
  104. package/dist/cjs/form/TicketWithMerchandiseSelection.js.map +1 -0
  105. package/dist/cjs/form/TimeslotSelection.js +68 -0
  106. package/dist/cjs/form/TimeslotSelection.js.map +1 -0
  107. package/dist/cjs/form/extra-field/ExtraField.js +20 -0
  108. package/dist/cjs/form/extra-field/ExtraField.js.map +1 -0
  109. package/dist/cjs/form/extra-field/ReleaseExtraFields.js +60 -0
  110. package/dist/cjs/form/extra-field/ReleaseExtraFields.js.map +1 -0
  111. package/dist/cjs/form/index.js +69 -0
  112. package/dist/cjs/form/index.js.map +1 -0
  113. package/dist/cjs/form/merchandise/MerchandiseSelection.js +14 -0
  114. package/dist/cjs/form/merchandise/MerchandiseSelection.js.map +1 -0
  115. package/dist/cjs/form/merchandise/MerchandiseSlider.js +39 -0
  116. package/dist/cjs/form/merchandise/MerchandiseSlider.js.map +1 -0
  117. package/dist/cjs/form/merchendise/MerchandiseSelection.js +19 -0
  118. package/dist/cjs/form/merchendise/MerchandiseSelection.js.map +1 -0
  119. package/dist/cjs/form/merchendise/MerchandiseSlider.js +75 -0
  120. package/dist/cjs/form/merchendise/MerchandiseSlider.js.map +1 -0
  121. package/dist/cjs/form/payment/FeeBox.js +39 -0
  122. package/dist/cjs/form/payment/FeeBox.js.map +1 -0
  123. package/dist/cjs/form/payment/PaymentOverviewCheckbox.js +37 -0
  124. package/dist/cjs/form/payment/PaymentOverviewCheckbox.js.map +1 -0
  125. package/dist/cjs/form/payment/PaymentSkeleton.js +14 -0
  126. package/dist/cjs/form/payment/PaymentSkeleton.js.map +1 -0
  127. package/dist/cjs/form/product/ProductCard.js +71 -0
  128. package/dist/cjs/form/product/ProductCard.js.map +1 -0
  129. package/dist/cjs/form/product/ProductVariantsDialog.js +197 -0
  130. package/dist/cjs/form/product/ProductVariantsDialog.js.map +1 -0
  131. package/dist/cjs/form/services/index.js +115 -0
  132. package/dist/cjs/form/services/index.js.map +1 -0
  133. package/dist/cjs/form/shipping/ShippingSkeleton.js +14 -0
  134. package/dist/cjs/form/shipping/ShippingSkeleton.js.map +1 -0
  135. package/dist/cjs/form/style.js +50 -0
  136. package/dist/cjs/form/style.js.map +1 -0
  137. package/dist/cjs/form/tickets/ReleaseDescription.js +23 -0
  138. package/dist/cjs/form/tickets/ReleaseDescription.js.map +1 -0
  139. package/dist/cjs/form/tickets/ReleaseWithMerchandise.js +139 -0
  140. package/dist/cjs/form/tickets/ReleaseWithMerchandise.js.map +1 -0
  141. package/dist/cjs/form/tickets/TicketQuantityControl.js +51 -0
  142. package/dist/cjs/form/tickets/TicketQuantityControl.js.map +1 -0
  143. package/dist/cjs/form/tickets/TicketSelection.js +134 -0
  144. package/dist/cjs/form/tickets/TicketSelection.js.map +1 -0
  145. package/dist/cjs/form/tickets/TicketSelectionMap.js +67 -0
  146. package/dist/cjs/form/tickets/TicketSelectionMap.js.map +1 -0
  147. package/dist/cjs/form/tickets/TicketSelectionMobile.js +88 -0
  148. package/dist/cjs/form/tickets/TicketSelectionMobile.js.map +1 -0
  149. package/dist/cjs/form/tickets/TicketWithMerchandiseSelection.js +117 -0
  150. package/dist/cjs/form/tickets/TicketWithMerchandiseSelection.js.map +1 -0
  151. package/dist/cjs/form/timeslot/TimeslotCalendar.js +57 -0
  152. package/dist/cjs/form/timeslot/TimeslotCalendar.js.map +1 -0
  153. package/dist/cjs/hooks/data/useActiveEventProducts.js +22 -0
  154. package/dist/cjs/hooks/data/useActiveEventProducts.js.map +1 -0
  155. package/dist/cjs/hooks/data/useAllowedPaymentMethods.js +22 -0
  156. package/dist/cjs/hooks/data/useAllowedPaymentMethods.js.map +1 -0
  157. package/dist/cjs/hooks/data/useEvent.js +22 -0
  158. package/dist/cjs/hooks/data/useEvent.js.map +1 -0
  159. package/dist/cjs/hooks/data/useEventActiveReleases.js +26 -0
  160. package/dist/cjs/hooks/data/useEventActiveReleases.js.map +1 -0
  161. package/dist/cjs/hooks/data/useEventShippingMethods.js +22 -0
  162. package/dist/cjs/hooks/data/useEventShippingMethods.js.map +1 -0
  163. package/dist/cjs/hooks/data/useEventTimeslots.js +23 -0
  164. package/dist/cjs/hooks/data/useEventTimeslots.js.map +1 -0
  165. package/dist/cjs/hooks/useCountdown.js +40 -0
  166. package/dist/cjs/hooks/useCountdown.js.map +1 -0
  167. package/dist/cjs/hooks/useDebounce.js +17 -0
  168. package/dist/cjs/hooks/useDebounce.js.map +1 -0
  169. package/dist/cjs/hooks/useErrors.js +28 -0
  170. package/dist/cjs/hooks/useErrors.js.map +1 -0
  171. package/dist/cjs/hooks/useGlobal.js +11 -0
  172. package/dist/cjs/hooks/useGlobal.js.map +1 -0
  173. package/dist/cjs/hooks/useResponsive.js +29 -0
  174. package/dist/cjs/hooks/useResponsive.js.map +1 -0
  175. package/dist/cjs/index.js.map +1 -0
  176. package/dist/cjs/locales/cs.js +171 -0
  177. package/dist/cjs/locales/cs.js.map +1 -0
  178. package/dist/cjs/locales/en.js +172 -0
  179. package/dist/cjs/locales/en.js.map +1 -0
  180. package/dist/cjs/locales/es.js +172 -0
  181. package/dist/cjs/locales/es.js.map +1 -0
  182. package/dist/cjs/locales/index.js +18 -0
  183. package/dist/cjs/locales/index.js.map +1 -0
  184. package/dist/cjs/locales/pl.js +172 -0
  185. package/dist/cjs/locales/pl.js.map +1 -0
  186. package/dist/cjs/locales/sk.js +172 -0
  187. package/dist/cjs/locales/sk.js.map +1 -0
  188. package/dist/cjs/locales/uk.js +172 -0
  189. package/dist/cjs/locales/uk.js.map +1 -0
  190. package/dist/cjs/modules/event-timeslot.js +12 -0
  191. package/dist/cjs/modules/event-timeslot.js.map +1 -0
  192. package/dist/cjs/modules/event.js +24 -0
  193. package/dist/cjs/modules/event.js.map +1 -0
  194. package/dist/cjs/modules/order.js +14 -0
  195. package/dist/cjs/modules/order.js.map +1 -0
  196. package/dist/cjs/modules/promo-code.js +13 -0
  197. package/dist/cjs/modules/promo-code.js.map +1 -0
  198. package/dist/cjs/modules/shopping-cart.js +16 -0
  199. package/dist/cjs/modules/shopping-cart.js.map +1 -0
  200. package/dist/cjs/utils/axios.js +20 -0
  201. package/dist/cjs/utils/axios.js.map +1 -0
  202. package/dist/cjs/utils/data/cookie.js +6 -0
  203. package/dist/cjs/utils/data/cookie.js.map +1 -0
  204. package/dist/cjs/utils/data/currency.js +9 -0
  205. package/dist/cjs/utils/data/currency.js.map +1 -0
  206. package/dist/cjs/utils/data/event.js +8 -0
  207. package/dist/cjs/utils/data/event.js.map +1 -0
  208. package/dist/cjs/utils/data/extra-field.js +16 -0
  209. package/dist/cjs/utils/data/extra-field.js.map +1 -0
  210. package/dist/cjs/utils/data/gender.js +9 -0
  211. package/dist/cjs/utils/data/gender.js.map +1 -0
  212. package/dist/cjs/utils/data/global.js +8 -0
  213. package/dist/cjs/utils/data/global.js.map +1 -0
  214. package/dist/cjs/utils/data/gopay.js +14 -0
  215. package/dist/cjs/utils/data/gopay.js.map +1 -0
  216. package/dist/cjs/utils/data/language.js +14 -0
  217. package/dist/cjs/utils/data/language.js.map +1 -0
  218. package/dist/cjs/utils/data/lottie/bank-transfer.json.js +20 -0
  219. package/dist/cjs/utils/data/lottie/bank-transfer.json.js.map +1 -0
  220. package/dist/cjs/utils/data/promo-code.js +8 -0
  221. package/dist/cjs/utils/data/promo-code.js.map +1 -0
  222. package/dist/cjs/utils/data/shipping-method.js +8 -0
  223. package/dist/cjs/utils/data/shipping-method.js.map +1 -0
  224. package/dist/cjs/utils/formatNumber.js +19 -0
  225. package/dist/cjs/utils/formatNumber.js.map +1 -0
  226. package/dist/cjs/utils/global.js +26 -0
  227. package/dist/cjs/utils/global.js.map +1 -0
  228. package/dist/cjs/utils/gtm.js +125 -0
  229. package/dist/cjs/utils/gtm.js.map +1 -0
  230. package/dist/cjs/utils/isBrowser.js +6 -0
  231. package/dist/cjs/utils/isBrowser.js.map +1 -0
  232. package/dist/cjs/utils/place.js +6 -0
  233. package/dist/cjs/utils/place.js.map +1 -0
  234. package/dist/cjs/utils/price.js +15 -0
  235. package/dist/cjs/utils/price.js.map +1 -0
  236. package/dist/cjs/utils/product.js +29 -0
  237. package/dist/cjs/utils/product.js.map +1 -0
  238. package/dist/cjs/utils/translation.js +6 -0
  239. package/dist/cjs/utils/translation.js.map +1 -0
  240. package/dist/cjs/utils/url.js +18 -0
  241. package/dist/cjs/utils/url.js.map +1 -0
  242. package/dist/esm/_virtual/_commonjsHelpers.js +6 -0
  243. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
  244. package/dist/esm/_virtual/index.js +4 -0
  245. package/dist/esm/_virtual/index.js.map +1 -0
  246. package/dist/esm/_virtual/index2.js +4 -0
  247. package/dist/esm/_virtual/index2.js.map +1 -0
  248. package/dist/esm/_virtual/index3.js +4 -0
  249. package/dist/esm/_virtual/index3.js.map +1 -0
  250. package/dist/esm/_virtual/react-is.development.js +4 -0
  251. package/dist/esm/_virtual/react-is.development.js.map +1 -0
  252. package/dist/esm/_virtual/react-is.development2.js +4 -0
  253. package/dist/esm/_virtual/react-is.development2.js.map +1 -0
  254. package/dist/esm/_virtual/react-is.production.js +4 -0
  255. package/dist/esm/_virtual/react-is.production.js.map +1 -0
  256. package/dist/esm/_virtual/react-is.production.min.js +4 -0
  257. package/dist/esm/_virtual/react-is.production.min.js.map +1 -0
  258. package/dist/esm/components/ClientOnly.js +15 -0
  259. package/dist/esm/components/ClientOnly.js.map +1 -0
  260. package/dist/esm/components/CustomSkeleton.js +11 -0
  261. package/dist/esm/components/CustomSkeleton.js.map +1 -0
  262. package/dist/esm/components/Image.js +52 -0
  263. package/dist/esm/components/Image.js.map +1 -0
  264. package/dist/esm/components/Label.js +61 -0
  265. package/dist/esm/components/Label.js.map +1 -0
  266. package/dist/esm/components/TextIconLabel.js +15 -0
  267. package/dist/esm/components/TextIconLabel.js.map +1 -0
  268. package/dist/esm/components/TicketFormSkeleton.js +51 -0
  269. package/dist/esm/components/TicketFormSkeleton.js.map +1 -0
  270. package/dist/esm/components/Trans.js +85 -0
  271. package/dist/esm/components/Trans.js.map +1 -0
  272. package/dist/esm/components/animate/IconButtonAnimate.js +27 -0
  273. package/dist/esm/components/animate/IconButtonAnimate.js.map +1 -0
  274. package/dist/esm/components/animate/MotionContainer.js +14 -0
  275. package/dist/esm/components/animate/MotionContainer.js.map +1 -0
  276. package/dist/esm/components/animate/variants/bounce.js +96 -0
  277. package/dist/esm/components/animate/variants/bounce.js.map +1 -0
  278. package/dist/esm/components/animate/variants/container.js +23 -0
  279. package/dist/esm/components/animate/variants/container.js.map +1 -0
  280. package/dist/esm/components/animate/variants/transition.js +14 -0
  281. package/dist/esm/components/animate/variants/transition.js.map +1 -0
  282. package/dist/esm/components/confirm-dialog/ConfirmDialog.js +20 -0
  283. package/dist/esm/components/confirm-dialog/ConfirmDialog.js.map +1 -0
  284. package/dist/esm/components/hook-form/FormProvider.js +10 -0
  285. package/dist/esm/components/hook-form/FormProvider.js.map +1 -0
  286. package/dist/esm/components/hook-form/RHFCheckbox.js +13 -0
  287. package/dist/esm/components/hook-form/RHFCheckbox.js.map +1 -0
  288. package/dist/esm/components/hook-form/RHFDatePicker.js +18 -0
  289. package/dist/esm/components/hook-form/RHFDatePicker.js.map +1 -0
  290. package/dist/esm/components/hook-form/RHFPhone.js +20 -0
  291. package/dist/esm/components/hook-form/RHFPhone.js.map +1 -0
  292. package/dist/esm/components/hook-form/RHFRadioGroup.js +25 -0
  293. package/dist/esm/components/hook-form/RHFRadioGroup.js.map +1 -0
  294. package/dist/esm/components/hook-form/RHFSelect.js +32 -0
  295. package/dist/esm/components/hook-form/RHFSelect.js.map +1 -0
  296. package/dist/esm/components/hook-form/RHFTextField.js +11 -0
  297. package/dist/esm/components/hook-form/RHFTextField.js.map +1 -0
  298. package/dist/esm/components/iconify/Iconify.js +10 -0
  299. package/dist/esm/components/iconify/Iconify.js.map +1 -0
  300. package/dist/esm/context/GlobalContext.js +62 -0
  301. package/dist/esm/context/GlobalContext.js.map +1 -0
  302. package/dist/esm/form/ChildEventCard.js +56 -0
  303. package/dist/esm/form/ChildEventCard.js.map +1 -0
  304. package/dist/esm/form/ChildEventDialog.js +26 -0
  305. package/dist/esm/form/ChildEventDialog.js.map +1 -0
  306. package/dist/esm/form/ChildEvents.js +13 -0
  307. package/dist/esm/form/ChildEvents.js.map +1 -0
  308. package/dist/esm/form/ContactPerson.js +36 -0
  309. package/dist/esm/form/ContactPerson.js.map +1 -0
  310. package/dist/esm/form/EmailConfirmation.js +24 -0
  311. package/dist/esm/form/EmailConfirmation.js.map +1 -0
  312. package/dist/esm/form/MerchandiseSelection.js +13 -0
  313. package/dist/esm/form/MerchandiseSelection.js.map +1 -0
  314. package/dist/esm/form/OrderSuccess.js +53 -0
  315. package/dist/esm/form/OrderSuccess.js.map +1 -0
  316. package/dist/esm/form/Payment.js +210 -0
  317. package/dist/esm/form/Payment.js.map +1 -0
  318. package/dist/esm/form/PaymentOverviewBox.js +401 -0
  319. package/dist/esm/form/PaymentOverviewBox.js.map +1 -0
  320. package/dist/esm/form/PaymentOverviewDrawer.js +111 -0
  321. package/dist/esm/form/PaymentOverviewDrawer.js.map +1 -0
  322. package/dist/esm/form/PaymentPending.js +19 -0
  323. package/dist/esm/form/PaymentPending.js.map +1 -0
  324. package/dist/esm/form/PaymentSuccess.js +199 -0
  325. package/dist/esm/form/PaymentSuccess.js.map +1 -0
  326. package/dist/esm/form/ReleaseCountdown.js +30 -0
  327. package/dist/esm/form/ReleaseCountdown.js.map +1 -0
  328. package/dist/esm/form/ReleaseWithMerchandise.js +135 -0
  329. package/dist/esm/form/ReleaseWithMerchandise.js.map +1 -0
  330. package/dist/esm/form/ScriptLoader.js +17 -0
  331. package/dist/esm/form/ScriptLoader.js.map +1 -0
  332. package/dist/esm/form/Shipping.js +115 -0
  333. package/dist/esm/form/Shipping.js.map +1 -0
  334. package/dist/esm/form/TicketForm.js +465 -0
  335. package/dist/esm/form/TicketForm.js.map +1 -0
  336. package/dist/esm/form/TicketQuantityControl.js +47 -0
  337. package/dist/esm/form/TicketQuantityControl.js.map +1 -0
  338. package/dist/esm/form/TicketSelection.js +172 -0
  339. package/dist/esm/form/TicketSelection.js.map +1 -0
  340. package/dist/esm/form/TicketSelectionMap.js +63 -0
  341. package/dist/esm/form/TicketSelectionMap.js.map +1 -0
  342. package/dist/esm/form/TicketSelectionMobile.js +94 -0
  343. package/dist/esm/form/TicketSelectionMobile.js.map +1 -0
  344. package/dist/esm/form/TicketWithMerchandiseSelection.js +115 -0
  345. package/dist/esm/form/TicketWithMerchandiseSelection.js.map +1 -0
  346. package/dist/esm/form/TimeslotSelection.js +64 -0
  347. package/dist/esm/form/TimeslotSelection.js.map +1 -0
  348. package/dist/esm/form/extra-field/ExtraField.js +16 -0
  349. package/dist/esm/form/extra-field/ExtraField.js.map +1 -0
  350. package/dist/esm/form/extra-field/ReleaseExtraFields.js +56 -0
  351. package/dist/esm/form/extra-field/ReleaseExtraFields.js.map +1 -0
  352. package/dist/esm/form/index.js +65 -0
  353. package/dist/esm/form/index.js.map +1 -0
  354. package/dist/esm/form/merchandise/MerchandiseSelection.js +10 -0
  355. package/dist/esm/form/merchandise/MerchandiseSelection.js.map +1 -0
  356. package/dist/esm/form/merchandise/MerchandiseSlider.js +35 -0
  357. package/dist/esm/form/merchandise/MerchandiseSlider.js.map +1 -0
  358. package/dist/esm/form/merchendise/MerchandiseSelection.js +15 -0
  359. package/dist/esm/form/merchendise/MerchandiseSelection.js.map +1 -0
  360. package/dist/esm/form/merchendise/MerchandiseSlider.js +71 -0
  361. package/dist/esm/form/merchendise/MerchandiseSlider.js.map +1 -0
  362. package/dist/esm/form/payment/FeeBox.js +35 -0
  363. package/dist/esm/form/payment/FeeBox.js.map +1 -0
  364. package/dist/esm/form/payment/PaymentOverviewCheckbox.js +33 -0
  365. package/dist/esm/form/payment/PaymentOverviewCheckbox.js.map +1 -0
  366. package/dist/esm/form/payment/PaymentSkeleton.js +10 -0
  367. package/dist/esm/form/payment/PaymentSkeleton.js.map +1 -0
  368. package/dist/esm/form/product/ProductCard.js +67 -0
  369. package/dist/esm/form/product/ProductCard.js.map +1 -0
  370. package/dist/esm/form/product/ProductVariantsDialog.js +193 -0
  371. package/dist/esm/form/product/ProductVariantsDialog.js.map +1 -0
  372. package/dist/esm/form/services/index.js +111 -0
  373. package/dist/esm/form/services/index.js.map +1 -0
  374. package/dist/esm/form/shipping/ShippingSkeleton.js +10 -0
  375. package/dist/esm/form/shipping/ShippingSkeleton.js.map +1 -0
  376. package/dist/esm/form/style.js +44 -0
  377. package/dist/esm/form/style.js.map +1 -0
  378. package/dist/esm/form/tickets/ReleaseDescription.js +19 -0
  379. package/dist/esm/form/tickets/ReleaseDescription.js.map +1 -0
  380. package/dist/esm/form/tickets/ReleaseWithMerchandise.js +135 -0
  381. package/dist/esm/form/tickets/ReleaseWithMerchandise.js.map +1 -0
  382. package/dist/esm/form/tickets/TicketQuantityControl.js +47 -0
  383. package/dist/esm/form/tickets/TicketQuantityControl.js.map +1 -0
  384. package/dist/esm/form/tickets/TicketSelection.js +130 -0
  385. package/dist/esm/form/tickets/TicketSelection.js.map +1 -0
  386. package/dist/esm/form/tickets/TicketSelectionMap.js +63 -0
  387. package/dist/esm/form/tickets/TicketSelectionMap.js.map +1 -0
  388. package/dist/esm/form/tickets/TicketSelectionMobile.js +84 -0
  389. package/dist/esm/form/tickets/TicketSelectionMobile.js.map +1 -0
  390. package/dist/esm/form/tickets/TicketWithMerchandiseSelection.js +113 -0
  391. package/dist/esm/form/tickets/TicketWithMerchandiseSelection.js.map +1 -0
  392. package/dist/esm/form/timeslot/TimeslotCalendar.js +53 -0
  393. package/dist/esm/form/timeslot/TimeslotCalendar.js.map +1 -0
  394. package/dist/esm/hooks/data/useActiveEventProducts.js +18 -0
  395. package/dist/esm/hooks/data/useActiveEventProducts.js.map +1 -0
  396. package/dist/esm/hooks/data/useAllowedPaymentMethods.js +18 -0
  397. package/dist/esm/hooks/data/useAllowedPaymentMethods.js.map +1 -0
  398. package/dist/esm/hooks/data/useEvent.js +18 -0
  399. package/dist/esm/hooks/data/useEvent.js.map +1 -0
  400. package/dist/esm/hooks/data/useEventActiveReleases.js +22 -0
  401. package/dist/esm/hooks/data/useEventActiveReleases.js.map +1 -0
  402. package/dist/esm/hooks/data/useEventShippingMethods.js +18 -0
  403. package/dist/esm/hooks/data/useEventShippingMethods.js.map +1 -0
  404. package/dist/esm/hooks/data/useEventTimeslots.js +19 -0
  405. package/dist/esm/hooks/data/useEventTimeslots.js.map +1 -0
  406. package/dist/esm/hooks/useCountdown.js +36 -0
  407. package/dist/esm/hooks/useCountdown.js.map +1 -0
  408. package/dist/esm/hooks/useDebounce.js +13 -0
  409. package/dist/esm/hooks/useDebounce.js.map +1 -0
  410. package/dist/esm/hooks/useErrors.js +24 -0
  411. package/dist/esm/hooks/useErrors.js.map +1 -0
  412. package/dist/esm/hooks/useGlobal.js +7 -0
  413. package/dist/esm/hooks/useGlobal.js.map +1 -0
  414. package/dist/esm/hooks/useResponsive.js +25 -0
  415. package/dist/esm/hooks/useResponsive.js.map +1 -0
  416. package/dist/esm/index.js +6 -0
  417. package/dist/esm/index.js.map +1 -0
  418. package/dist/esm/locales/cs.js +167 -0
  419. package/dist/esm/locales/cs.js.map +1 -0
  420. package/dist/esm/locales/en.js +168 -0
  421. package/dist/esm/locales/en.js.map +1 -0
  422. package/dist/esm/locales/es.js +168 -0
  423. package/dist/esm/locales/es.js.map +1 -0
  424. package/dist/esm/locales/index.js +7 -0
  425. package/dist/esm/locales/index.js.map +1 -0
  426. package/dist/esm/locales/pl.js +168 -0
  427. package/dist/esm/locales/pl.js.map +1 -0
  428. package/dist/esm/locales/sk.js +168 -0
  429. package/dist/esm/locales/sk.js.map +1 -0
  430. package/dist/esm/locales/uk.js +168 -0
  431. package/dist/esm/locales/uk.js.map +1 -0
  432. package/dist/esm/modules/event-timeslot.js +10 -0
  433. package/dist/esm/modules/event-timeslot.js.map +1 -0
  434. package/dist/esm/modules/event.js +19 -0
  435. package/dist/esm/modules/event.js.map +1 -0
  436. package/dist/esm/modules/order.js +10 -0
  437. package/dist/esm/modules/order.js.map +1 -0
  438. package/dist/esm/modules/promo-code.js +11 -0
  439. package/dist/esm/modules/promo-code.js.map +1 -0
  440. package/dist/esm/modules/shopping-cart.js +13 -0
  441. package/dist/esm/modules/shopping-cart.js.map +1 -0
  442. package/dist/esm/utils/axios.js +16 -0
  443. package/dist/esm/utils/axios.js.map +1 -0
  444. package/dist/esm/utils/data/cookie.js +4 -0
  445. package/dist/esm/utils/data/cookie.js.map +1 -0
  446. package/dist/esm/utils/data/currency.js +9 -0
  447. package/dist/esm/utils/data/currency.js.map +1 -0
  448. package/dist/esm/utils/data/event.js +8 -0
  449. package/dist/esm/utils/data/event.js.map +1 -0
  450. package/dist/esm/utils/data/extra-field.js +16 -0
  451. package/dist/esm/utils/data/extra-field.js.map +1 -0
  452. package/dist/esm/utils/data/gender.js +9 -0
  453. package/dist/esm/utils/data/gender.js.map +1 -0
  454. package/dist/esm/utils/data/global.js +5 -0
  455. package/dist/esm/utils/data/global.js.map +1 -0
  456. package/dist/esm/utils/data/gopay.js +14 -0
  457. package/dist/esm/utils/data/gopay.js.map +1 -0
  458. package/dist/esm/utils/data/language.js +14 -0
  459. package/dist/esm/utils/data/language.js.map +1 -0
  460. package/dist/esm/utils/data/lottie/bank-transfer.json.js +4 -0
  461. package/dist/esm/utils/data/lottie/bank-transfer.json.js.map +1 -0
  462. package/dist/esm/utils/data/promo-code.js +8 -0
  463. package/dist/esm/utils/data/promo-code.js.map +1 -0
  464. package/dist/esm/utils/data/shipping-method.js +8 -0
  465. package/dist/esm/utils/data/shipping-method.js.map +1 -0
  466. package/dist/esm/utils/formatNumber.js +17 -0
  467. package/dist/esm/utils/formatNumber.js.map +1 -0
  468. package/dist/esm/utils/global.js +21 -0
  469. package/dist/esm/utils/global.js.map +1 -0
  470. package/dist/esm/utils/gtm.js +112 -0
  471. package/dist/esm/utils/gtm.js.map +1 -0
  472. package/dist/esm/utils/isBrowser.js +4 -0
  473. package/dist/esm/utils/isBrowser.js.map +1 -0
  474. package/dist/esm/utils/place.js +4 -0
  475. package/dist/esm/utils/place.js.map +1 -0
  476. package/dist/esm/utils/price.js +12 -0
  477. package/dist/esm/utils/price.js.map +1 -0
  478. package/dist/esm/utils/product.js +27 -0
  479. package/dist/esm/utils/product.js.map +1 -0
  480. package/dist/esm/utils/translation.js +4 -0
  481. package/dist/esm/utils/translation.js.map +1 -0
  482. package/dist/esm/utils/url.js +16 -0
  483. package/dist/esm/utils/url.js.map +1 -0
  484. package/dist/types/components/ClientOnly.d.ts +5 -0
  485. package/dist/types/components/CustomSkeleton.d.ts +4 -0
  486. package/dist/types/components/Image.d.ts +14 -0
  487. package/dist/types/components/Label.d.ts +11 -0
  488. package/dist/types/components/TextIconLabel.d.ts +11 -0
  489. package/dist/types/components/TicketFormSkeleton.d.ts +3 -0
  490. package/dist/types/components/Trans.d.ts +12 -0
  491. package/dist/types/components/animate/DialogAnimate.d.ts +9 -0
  492. package/dist/types/components/animate/IconButtonAnimate.d.ts +7 -0
  493. package/dist/types/components/animate/MotionContainer.d.ts +10 -0
  494. package/dist/types/components/animate/MotionLazyContainer.d.ts +6 -0
  495. package/dist/types/components/animate/MotionViewport.d.ts +10 -0
  496. package/dist/types/components/animate/TextAnimate.d.ts +9 -0
  497. package/dist/types/components/animate/index.d.ts +7 -0
  498. package/dist/types/components/animate/variants/actions.d.ts +5 -0
  499. package/dist/types/components/animate/variants/background.d.ts +104 -0
  500. package/dist/types/components/animate/variants/bounce.d.ts +131 -0
  501. package/dist/types/components/animate/variants/container.d.ts +19 -0
  502. package/dist/types/components/animate/variants/fade.d.ts +217 -0
  503. package/dist/types/components/animate/variants/flip.d.ts +75 -0
  504. package/dist/types/components/animate/variants/index.d.ts +12 -0
  505. package/dist/types/components/animate/variants/path.d.ts +14 -0
  506. package/dist/types/components/animate/variants/rotate.d.ts +39 -0
  507. package/dist/types/components/animate/variants/scale.d.ts +75 -0
  508. package/dist/types/components/animate/variants/slide.d.ts +155 -0
  509. package/dist/types/components/animate/variants/transition.d.ts +13 -0
  510. package/dist/types/components/animate/variants/zoom.d.ts +199 -0
  511. package/dist/types/components/confirm-dialog/ConfirmDialog.d.ts +3 -0
  512. package/dist/types/components/confirm-dialog/index.d.ts +1 -0
  513. package/dist/types/components/confirm-dialog/types.d.ts +8 -0
  514. package/dist/types/components/hook-form/FormProvider.d.ts +9 -0
  515. package/dist/types/components/hook-form/RHFAutocomplete.d.ts +9 -0
  516. package/dist/types/components/hook-form/RHFCheckbox.d.ts +20 -0
  517. package/dist/types/components/hook-form/RHFCodes.d.ts +8 -0
  518. package/dist/types/components/hook-form/RHFDatePicker.d.ts +9 -0
  519. package/dist/types/components/hook-form/RHFPhone.d.ts +8 -0
  520. package/dist/types/components/hook-form/RHFRadioGroup.d.ts +14 -0
  521. package/dist/types/components/hook-form/RHFSelect.d.ts +23 -0
  522. package/dist/types/components/hook-form/RHFSlider.d.ts +8 -0
  523. package/dist/types/components/hook-form/RHFSwitch.d.ts +8 -0
  524. package/dist/types/components/hook-form/RHFTextField.d.ts +7 -0
  525. package/dist/types/components/hook-form/index.d.ts +9 -0
  526. package/dist/types/components/iconify/Iconify.d.ts +10 -0
  527. package/dist/types/components/iconify/index.d.ts +2 -0
  528. package/dist/types/components/iconify/types.d.ts +2 -0
  529. package/dist/types/components/index.d.ts +4 -0
  530. package/dist/types/context/GlobalContext.d.ts +16 -0
  531. package/dist/types/form/ChildEventCard.d.ts +7 -0
  532. package/dist/types/form/ChildEventDialog.d.ts +9 -0
  533. package/dist/types/form/ChildEvents.d.ts +8 -0
  534. package/dist/types/form/ContactPerson.d.ts +7 -0
  535. package/dist/types/form/EmailConfirmation.d.ts +8 -0
  536. package/dist/types/form/MerchandiseSelection.d.ts +9 -0
  537. package/dist/types/form/OrderSuccess.d.ts +9 -0
  538. package/dist/types/form/Payment.d.ts +7 -0
  539. package/dist/types/form/PaymentOverviewBox.d.ts +7 -0
  540. package/dist/types/form/PaymentOverviewDrawer.d.ts +8 -0
  541. package/dist/types/form/PaymentPending.d.ts +3 -0
  542. package/dist/types/form/PaymentSuccess.d.ts +9 -0
  543. package/dist/types/form/ReleaseCountdown.d.ts +8 -0
  544. package/dist/types/form/ReleaseWithMerchandise.d.ts +12 -0
  545. package/dist/types/form/ScriptLoader.d.ts +3 -0
  546. package/dist/types/form/Shipping.d.ts +7 -0
  547. package/dist/types/form/TicketForm.d.ts +11 -0
  548. package/dist/types/form/TicketSelection.d.ts +7 -0
  549. package/dist/types/form/TicketSelectionMap.d.ts +7 -0
  550. package/dist/types/form/TicketWithMerchandiseSelection.d.ts +7 -0
  551. package/dist/types/form/TimeslotSelection.d.ts +7 -0
  552. package/dist/types/form/extra-field/ExtraField.d.ts +9 -0
  553. package/dist/types/form/extra-field/ReleaseExtraFields.d.ts +10 -0
  554. package/dist/types/form/index.d.ts +26 -0
  555. package/dist/types/form/merchendise/MerchandiseSelection.d.ts +9 -0
  556. package/dist/types/form/merchendise/MerchandiseSlider.d.ts +10 -0
  557. package/dist/types/form/merchendise/MerchendiseSlider.d.ts +0 -0
  558. package/dist/types/form/payment/FeeBox.d.ts +8 -0
  559. package/dist/types/form/payment/PaymentOverviewCheckbox.d.ts +12 -0
  560. package/dist/types/form/payment/PaymentSkeleton.d.ts +7 -0
  561. package/dist/types/form/product/ProductCard.d.ts +9 -0
  562. package/dist/types/form/product/ProductVariantsDialog.d.ts +14 -0
  563. package/dist/types/form/shipping/ShippingSkeleton.d.ts +7 -0
  564. package/dist/types/form/style.d.ts +11 -0
  565. package/dist/types/form/timeslot/TimeslotCalendar.d.ts +12 -0
  566. package/dist/types/hooks/data/useActiveEventProducts.d.ts +8 -0
  567. package/dist/types/hooks/data/useAllowedPaymentMethods.d.ts +9 -0
  568. package/dist/types/hooks/data/useEvent.d.ts +8 -0
  569. package/dist/types/hooks/data/useEventActiveReleases.d.ts +8 -0
  570. package/dist/types/hooks/data/useEventShippingMethods.d.ts +8 -0
  571. package/dist/types/hooks/data/useEventTimeslots.d.ts +10 -0
  572. package/dist/types/hooks/useCountdown.d.ts +6 -0
  573. package/dist/types/hooks/useDebounce.d.ts +1 -0
  574. package/dist/types/hooks/useErrors.d.ts +4 -0
  575. package/dist/types/hooks/useEventListener.d.ts +5 -0
  576. package/dist/types/hooks/useFirstRender.d.ts +1 -0
  577. package/dist/types/hooks/useGlobal.d.ts +2 -0
  578. package/dist/types/hooks/useResponsive.d.ts +8 -0
  579. package/dist/types/index.d.ts +4 -0
  580. package/dist/types/locales/cs.d.ts +157 -0
  581. package/dist/types/locales/en.d.ts +158 -0
  582. package/dist/types/locales/es.d.ts +158 -0
  583. package/dist/types/locales/index.d.ts +6 -0
  584. package/dist/types/locales/pl.d.ts +158 -0
  585. package/dist/types/locales/sk.d.ts +158 -0
  586. package/dist/types/locales/uk.d.ts +158 -0
  587. package/dist/types/modules/event-timeslot.d.ts +2 -0
  588. package/dist/types/modules/event.d.ts +5 -0
  589. package/dist/types/modules/order.d.ts +7 -0
  590. package/dist/types/modules/promo-code.d.ts +1 -0
  591. package/dist/types/modules/shopping-cart.d.ts +4 -0
  592. package/dist/types/utils/axios.d.ts +2 -0
  593. package/dist/types/utils/data/cookie.d.ts +1 -0
  594. package/dist/types/utils/data/currency.d.ts +5 -0
  595. package/dist/types/utils/data/event.d.ts +4 -0
  596. package/dist/types/utils/data/extra-field.d.ts +11 -0
  597. package/dist/types/utils/data/gender.d.ts +5 -0
  598. package/dist/types/utils/data/global.d.ts +1 -0
  599. package/dist/types/utils/data/gopay.d.ts +10 -0
  600. package/dist/types/utils/data/language.d.ts +10 -0
  601. package/dist/types/utils/data/order.d.ts +4 -0
  602. package/dist/types/utils/data/product.d.ts +3 -0
  603. package/dist/types/utils/data/promo-code.d.ts +4 -0
  604. package/dist/types/utils/data/shipping-method.d.ts +4 -0
  605. package/dist/types/utils/data/shopping-cart.d.ts +5 -0
  606. package/dist/types/utils/formatNumber.d.ts +8 -0
  607. package/dist/types/utils/global.d.ts +4 -0
  608. package/dist/types/utils/gtm.d.ts +28 -0
  609. package/dist/types/utils/isBrowser.d.ts +1 -0
  610. package/dist/types/utils/place.d.ts +2 -0
  611. package/dist/types/utils/price.d.ts +5 -0
  612. package/dist/types/utils/product.d.ts +3 -0
  613. package/dist/types/utils/translation.d.ts +2 -0
  614. package/dist/types/utils/types/animate.d.ts +26 -0
  615. package/dist/types/utils/types/artist.type.d.ts +17 -0
  616. package/dist/types/utils/types/company.type.d.ts +12 -0
  617. package/dist/types/utils/types/country.type.d.ts +39 -0
  618. package/dist/types/utils/types/customer.type.d.ts +10 -0
  619. package/dist/types/utils/types/event-product.type.d.ts +15 -0
  620. package/dist/types/utils/types/event-timeslot.type.d.ts +15 -0
  621. package/dist/types/utils/types/event.type.d.ts +67 -0
  622. package/dist/types/utils/types/extra-field.type.d.ts +18 -0
  623. package/dist/types/utils/types/file.type.d.ts +6 -0
  624. package/dist/types/utils/types/global.type.d.ts +76 -0
  625. package/dist/types/utils/types/gtm.type.d.ts +90 -0
  626. package/dist/types/utils/types/locale.type.d.ts +4 -0
  627. package/dist/types/utils/types/order.type.d.ts +69 -0
  628. package/dist/types/utils/types/palette.type.d.ts +1 -0
  629. package/dist/types/utils/types/payment-method.type.d.ts +23 -0
  630. package/dist/types/utils/types/pixel.type.d.ts +7 -0
  631. package/dist/types/utils/types/place.type.d.ts +19 -0
  632. package/dist/types/utils/types/product-image.type.d.ts +5 -0
  633. package/dist/types/utils/types/product-parameter.type.d.ts +7 -0
  634. package/dist/types/utils/types/product-variant.type.d.ts +9 -0
  635. package/dist/types/utils/types/product.type.d.ts +57 -0
  636. package/dist/types/utils/types/project.type.d.ts +24 -0
  637. package/dist/types/utils/types/promo-code.type.d.ts +15 -0
  638. package/dist/types/utils/types/release-category.type.d.ts +17 -0
  639. package/dist/types/utils/types/release.type.d.ts +28 -0
  640. package/dist/types/utils/types/shipping-method.type.d.ts +11 -0
  641. package/dist/types/utils/types/shopping-cart.type.d.ts +78 -0
  642. package/dist/types/utils/types/ticket.type.d.ts +110 -0
  643. package/dist/types/utils/types/translation.type.d.ts +18 -0
  644. package/dist/types/utils/types/user.type.d.ts +9 -0
  645. package/dist/types/utils/url.d.ts +1 -0
  646. package/package.json +3 -1
  647. package/src/form/PaymentOverviewDrawer.tsx +29 -17
  648. package/src/form/tickets/ReleaseDescription.tsx +7 -18
  649. package/src/locales/cs.tsx +2 -0
  650. package/src/locales/en.tsx +2 -0
  651. package/src/locales/es.tsx +2 -0
  652. package/src/locales/pl.tsx +2 -0
  653. package/src/locales/sk.tsx +2 -0
  654. package/src/locales/uk.tsx +2 -0
@@ -0,0 +1,115 @@
1
+ import React, { useMemo, useState, useEffect } from 'react';
2
+ import useEventShippingMethods from '../hooks/data/useEventShippingMethods.js';
3
+ import ShippingSkeleton from './shipping/ShippingSkeleton.js';
4
+ import { Typography, FormControl, RadioGroup, FormControlLabel, Stack, Box, Button, Radio, FormHelperText } from '@mui/material';
5
+ import { ShippingMethodItem } from './style.js';
6
+ import Iconify from '../components/iconify/Iconify.js';
7
+ import { useFormContext, useWatch, Controller } from 'react-hook-form';
8
+ import { ShippingTypes } from '../utils/data/shipping-method.js';
9
+ import useGlobal from '../hooks/useGlobal.js';
10
+ import ScriptLoader from './ScriptLoader.js';
11
+
12
+ const Shipping = ({ event }) => {
13
+ const { t, lang, options } = useGlobal();
14
+ const { data: shippingMethods, isLoading } = useEventShippingMethods(event.id, {
15
+ currency: event.currency,
16
+ });
17
+ const { control, watch, setValue } = useFormContext();
18
+ const tickets = useWatch({
19
+ name: 'tickets',
20
+ defaultValue: {},
21
+ });
22
+ const flatTickets = useMemo(() => Object.values(tickets).flat(), [tickets]);
23
+ const products = useWatch({
24
+ name: 'products',
25
+ defaultValue: {},
26
+ });
27
+ const flatProducts = useMemo(() => Object.values(products).flat(), [products]);
28
+ const shippingMethodId = watch('shipping.shippingMethodId');
29
+ const branchId = watch('shipping.branchId');
30
+ const [displayBranchName, setDisplayBranchName] = useState(null);
31
+ const [firstRender, setFirstRender] = useState(true);
32
+ const filteredShippingMethods = useMemo(() => shippingMethods?.filter((shippingMethod) => !flatProducts?.find((product) => product.excludedShippingMethodIds?.includes(shippingMethod?.id)) &&
33
+ !flatTickets.find((ticket) => ticket.products.find((product) => product.excludedShippingMethodIds?.includes(shippingMethod?.id)))), [shippingMethods, shippingMethodId, flatTickets, flatProducts]);
34
+ const paymentImages = {
35
+ [ShippingTypes.PACKETA]: (React.createElement(Iconify, { icon: "arcticons:packeta", color: "rgb(186,27,2)", width: 32, height: 32 })),
36
+ [ShippingTypes.PICK_UP]: React.createElement(Iconify, { icon: "flowbite:store-solid", width: 32, height: 32 }),
37
+ };
38
+ const onSelectBranch = (branch) => {
39
+ if (branch) {
40
+ setValue('shipping.branchId', branch.id);
41
+ setDisplayBranchName(branch.name);
42
+ }
43
+ else {
44
+ setValue('shipping.shippingMethodId', null);
45
+ setValue('shipping.branchId', null);
46
+ setDisplayBranchName(null);
47
+ }
48
+ };
49
+ const handleChangeBranch = () => {
50
+ setValue('shipping.branchId', null);
51
+ setDisplayBranchName(null);
52
+ };
53
+ useEffect(() => {
54
+ if (firstRender && filteredShippingMethods.length === 1) {
55
+ setValue('shipping.shippingMethodId', filteredShippingMethods[0].id);
56
+ setFirstRender(false);
57
+ }
58
+ }, [firstRender, filteredShippingMethods]);
59
+ useEffect(() => {
60
+ const selectedShippingMethod = shippingMethods.find((method) => method.id === Number(shippingMethodId));
61
+ if (selectedShippingMethod) {
62
+ setValue('shipping.price', selectedShippingMethod.price);
63
+ if (selectedShippingMethod.type === ShippingTypes.PACKETA) {
64
+ if (!branchId) {
65
+ const interval = setInterval(() => {
66
+ if (window.Packeta && window.Packeta.Widget) {
67
+ clearInterval(interval);
68
+ window.Packeta.Widget.pick(options?.packetaApiKey, onSelectBranch, {
69
+ language: lang,
70
+ });
71
+ }
72
+ }, 100);
73
+ }
74
+ }
75
+ else {
76
+ setValue('shipping.branchId', null);
77
+ setDisplayBranchName(null);
78
+ }
79
+ }
80
+ else {
81
+ setValue('shipping.price', 0);
82
+ }
83
+ }, [shippingMethodId, shippingMethods, branchId]);
84
+ return (React.createElement(React.Fragment, null,
85
+ React.createElement(ScriptLoader, null),
86
+ React.createElement("div", null, isLoading ? (React.createElement(ShippingSkeleton, null)) : (React.createElement(React.Fragment, null, filteredShippingMethods.length === 0 ? (React.createElement(Typography, { variant: "h4", color: "error" }, t('event.tickets.stepper.5.error'))) : (React.createElement(React.Fragment, null,
87
+ React.createElement(Controller, { name: "shipping.shippingMethodId", control: control, render: ({ field, fieldState: { error } }) => (React.createElement(FormControl, { component: "fieldset", sx: { width: '100%' } },
88
+ React.createElement(RadioGroup, { ...field }, filteredShippingMethods.map((shippingMethod) => (React.createElement(ShippingMethodItem, { key: shippingMethod.id, active: Number(shippingMethodId) === shippingMethod.id },
89
+ React.createElement(FormControlLabel, { value: shippingMethod.id, control: React.createElement(Radio, null), label: React.createElement(Stack, { direction: "row", justifyContent: "space-between", alignItems: "center", width: "100%" },
90
+ React.createElement(Stack, { direction: "row", alignItems: "center" },
91
+ React.createElement(Box, { sx: {
92
+ marginRight: 2,
93
+ } },
94
+ React.createElement(Typography, { sx: { lineHeight: 1.2 } }, t(`shipping_method.types.${shippingMethod.type}`)),
95
+ displayBranchName &&
96
+ shippingMethod.type === ShippingTypes.PACKETA &&
97
+ shippingMethod.id === Number(shippingMethodId) && (React.createElement(Typography, { variant: "caption", sx: { lineHeight: 1 } }, displayBranchName))),
98
+ paymentImages[shippingMethod.type]),
99
+ shippingMethod.type === ShippingTypes.PACKETA &&
100
+ shippingMethod.id === Number(shippingMethodId) &&
101
+ branchId && (React.createElement(Box, null,
102
+ React.createElement(Button, { onClick: handleChangeBranch, variant: "outlined", size: "small" }, t('change'))))), sx: {
103
+ '&:not(:last-of-type)': {
104
+ mb: 0,
105
+ },
106
+ '& .MuiFormControlLabel-label': {
107
+ width: '100%',
108
+ mr: 0,
109
+ },
110
+ } }))))),
111
+ !!error && (React.createElement(FormHelperText, { error: !!error, sx: { mx: 0 } }, error?.message)))) }))))))));
112
+ };
113
+
114
+ export { Shipping as default };
115
+ //# sourceMappingURL=Shipping.js.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"Shipping.js","sources":["../../../src/form/Shipping.tsx"],"sourcesContent":["import React, { useEffect, useMemo, useState } from 'react';\nimport useEventShippingMethods from '@hooks/data/useEventShippingMethods';\nimport { IEvent } from '@utils/types/event.type';\nimport ShippingSkeleton from '@form/shipping/ShippingSkeleton';\nimport {\n Box,\n Button,\n FormControl,\n FormControlLabel,\n FormHelperText,\n Radio,\n RadioGroup,\n Stack,\n Typography,\n} from '@mui/material';\nimport { ShippingMethodItem } from '@form/style';\nimport { Iconify } from '@components/iconify';\nimport { Controller, useFormContext, useWatch } from 'react-hook-form';\nimport { ITicketForm, ITicketFormTicket } from '@utils/types/ticket.type';\nimport { ShippingTypes } from '@utils/data/shipping-method';\nimport useGlobal from '@hooks/useGlobal';\nimport ScriptLoader from '@form/ScriptLoader';\nimport { IEventProductForm } from '@utils/types/product.type';\n\ninterface Props {\n event: IEvent;\n}\n\nconst Shipping: React.FC<Props> = ({ event }) => {\n const { t, lang, options } = useGlobal();\n const { data: shippingMethods, isLoading } = useEventShippingMethods(event.id, {\n currency: event.currency,\n });\n const { control, watch, setValue } = useFormContext<ITicketForm>();\n const tickets: Record<string, ITicketFormTicket[]> = useWatch({\n name: 'tickets',\n defaultValue: {},\n });\n const flatTickets: ITicketFormTicket[] = useMemo(() => Object.values(tickets).flat(), [tickets]);\n const products: Record<string, IEventProductForm[]> = useWatch({\n name: 'products',\n defaultValue: {},\n });\n const flatProducts: IEventProductForm[] = useMemo(\n () => Object.values(products).flat(),\n [products]\n );\n const shippingMethodId = watch('shipping.shippingMethodId');\n const branchId = watch('shipping.branchId');\n const [displayBranchName, setDisplayBranchName] = useState<string | null>(null);\n const [firstRender, setFirstRender] = useState<boolean>(true);\n const filteredShippingMethods = useMemo(\n () =>\n shippingMethods?.filter(\n (shippingMethod) =>\n !flatProducts?.find((product) =>\n product.excludedShippingMethodIds?.includes(shippingMethod?.id)\n ) &&\n !flatTickets.find((ticket) =>\n ticket.products.find((product) =>\n product.excludedShippingMethodIds?.includes(shippingMethod?.id)\n )\n )\n ),\n [shippingMethods, shippingMethodId, flatTickets, flatProducts]\n );\n\n const paymentImages = {\n [ShippingTypes.PACKETA]: (\n <Iconify icon=\"arcticons:packeta\" color=\"rgb(186,27,2)\" width={32} height={32} />\n ),\n [ShippingTypes.PICK_UP]: <Iconify icon=\"flowbite:store-solid\" width={32} height={32} />,\n };\n\n const onSelectBranch = (branch: any) => {\n if (branch) {\n setValue('shipping.branchId', branch.id);\n setDisplayBranchName(branch.name);\n } else {\n setValue('shipping.shippingMethodId', null);\n setValue('shipping.branchId', null);\n setDisplayBranchName(null);\n }\n };\n\n const handleChangeBranch = () => {\n setValue('shipping.branchId', null);\n setDisplayBranchName(null);\n };\n\n useEffect(() => {\n if (firstRender && filteredShippingMethods.length === 1) {\n setValue('shipping.shippingMethodId', filteredShippingMethods[0].id);\n setFirstRender(false);\n }\n }, [firstRender, filteredShippingMethods]);\n\n useEffect(() => {\n const selectedShippingMethod = shippingMethods.find(\n (method) => method.id === Number(shippingMethodId)\n );\n\n if (selectedShippingMethod) {\n setValue('shipping.price', selectedShippingMethod.price);\n\n if (selectedShippingMethod.type === ShippingTypes.PACKETA) {\n if (!branchId) {\n const interval = setInterval(() => {\n if (window.Packeta && window.Packeta.Widget) {\n clearInterval(interval);\n window.Packeta.Widget.pick(options?.packetaApiKey, onSelectBranch, {\n language: lang,\n });\n }\n }, 100);\n }\n } else {\n setValue('shipping.branchId', null);\n setDisplayBranchName(null);\n }\n } else {\n setValue('shipping.price', 0);\n }\n }, [shippingMethodId, shippingMethods, branchId]);\n\n return (\n <>\n <ScriptLoader />\n <div>\n {isLoading ? (\n <ShippingSkeleton />\n ) : (\n <>\n {filteredShippingMethods.length === 0 ? (\n <Typography variant=\"h4\" color=\"error\">\n {t('event.tickets.stepper.5.error')}\n </Typography>\n ) : (\n <>\n <Controller\n name=\"shipping.shippingMethodId\"\n control={control}\n render={({ field, fieldState: { error } }) => (\n <FormControl component=\"fieldset\" sx={{ width: '100%' }}>\n <RadioGroup {...field}>\n {filteredShippingMethods.map((shippingMethod) => (\n <ShippingMethodItem\n key={shippingMethod.id}\n active={Number(shippingMethodId) === shippingMethod.id}\n >\n <FormControlLabel\n value={shippingMethod.id}\n control={<Radio />}\n label={\n <Stack\n direction=\"row\"\n justifyContent=\"space-between\"\n alignItems=\"center\"\n width=\"100%\"\n >\n <Stack direction=\"row\" alignItems=\"center\">\n <Box\n sx={{\n marginRight: 2,\n }}\n >\n <Typography sx={{ lineHeight: 1.2 }}>\n {t(`shipping_method.types.${shippingMethod.type}`)}\n </Typography>\n {displayBranchName &&\n shippingMethod.type === ShippingTypes.PACKETA &&\n shippingMethod.id === Number(shippingMethodId) && (\n <Typography variant=\"caption\" sx={{ lineHeight: 1 }}>\n {displayBranchName}\n </Typography>\n )}\n </Box>\n {paymentImages[shippingMethod.type]}\n </Stack>\n {shippingMethod.type === ShippingTypes.PACKETA &&\n shippingMethod.id === Number(shippingMethodId) &&\n branchId && (\n <Box>\n <Button\n onClick={handleChangeBranch}\n variant=\"outlined\"\n size=\"small\"\n >\n {t('change')}\n </Button>\n </Box>\n )}\n </Stack>\n }\n sx={{\n '&:not(:last-of-type)': {\n mb: 0,\n },\n '& .MuiFormControlLabel-label': {\n width: '100%',\n mr: 0,\n },\n }}\n />\n </ShippingMethodItem>\n ))}\n </RadioGroup>\n\n {!!error && (\n <FormHelperText error={!!error} sx={{ mx: 0 }}>\n {error?.message}\n </FormHelperText>\n )}\n </FormControl>\n )}\n />\n </>\n )}\n </>\n )}\n </div>\n </>\n );\n};\n\nexport default Shipping;\n"],"names":[],"mappings":"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"}
@@ -0,0 +1,465 @@
1
+ import OrderSuccess from './OrderSuccess.js';
2
+ import PaymentSuccess from './PaymentSuccess.js';
3
+ import React, { useState, useRef, useEffect, useMemo } from 'react';
4
+ import { useForm } from 'react-hook-form';
5
+ import { Box, Stack, Typography, Grid, Stepper, Step, StepLabel, StepContent, Link } from '@mui/material';
6
+ import { RHFCheckbox } from '../components/hook-form/RHFCheckbox.js';
7
+ import FormProvider from '../components/hook-form/FormProvider.js';
8
+ import dayjs from 'dayjs';
9
+ import TicketSelection from './tickets/TicketSelection.js';
10
+ import ContactPerson from './ContactPerson.js';
11
+ import Payment from './Payment.js';
12
+ import EmailConfirmation from './EmailConfirmation.js';
13
+ import { getSearchParamsInObject } from '../utils/url.js';
14
+ import * as Yup from 'yup';
15
+ import { yupResolver } from '@hookform/resolvers/yup';
16
+ import { postOrder } from '../modules/order.js';
17
+ import PaymentOverviewBox from './PaymentOverviewBox.js';
18
+ import { getGtmPageView, getGtmViewCart, gtmViewCart, getGtmAddPaymentInfo, mapUserToUserData, gtmAddPaymentInfo, getGtmBeginCheckout, gtmBeginCheckout, getGtmPurchase, gtmPurchase } from '../utils/gtm.js';
19
+ import ReleaseCountdown from './ReleaseCountdown.js';
20
+ import { cloneObject } from '../utils/global.js';
21
+ import PaymentPending from './PaymentPending.js';
22
+ import MerchandiseSelection from './merchandise/MerchandiseSelection.js';
23
+ import TicketWithMerchandiseSelection from './tickets/TicketWithMerchandiseSelection.js';
24
+ import useActiveEventProducts from '../hooks/data/useActiveEventProducts.js';
25
+ import Shipping from './Shipping.js';
26
+ import useErrors from '../hooks/useErrors.js';
27
+ import { EventType } from '../utils/data/event.js';
28
+ import TimeslotSelection from './TimeslotSelection.js';
29
+ import useGlobal from '../hooks/useGlobal.js';
30
+ import { Trans } from '../components/Trans.js';
31
+ import { EVENTLOOK_ORDER_FORM_CONTAINER_ID, EVENTLOOK_ORDER_FORM_ID } from '../utils/data/global.js';
32
+ import ChildEventSection from './ChildEvents.js';
33
+ import TicketSelectionMap from './tickets/TicketSelectionMap.js';
34
+ import PaymentOverviewDrawer from './PaymentOverviewDrawer.js';
35
+ import { getPlaceAsString } from '../utils/place.js';
36
+ import Services from './services/index.js';
37
+
38
+ const TicketForm = ({ event, hasGopayIdSsr, selectedReleaseId, isIframe, isInline, headerSlot, }) => {
39
+ const { t, setGlobal, callbacks, links, user, options, showSnackbar, content, seatingIframeUrl } = useGlobal();
40
+ const { transformErrors } = useErrors(t('event.tickets.error.order'));
41
+ const { data: eventProducts, isLoading } = useActiveEventProducts(event.id);
42
+ const [paymentRedirect, setPaymentRedirect] = useState(null);
43
+ const [hasGopayId, setHasGopayId] = useState(hasGopayIdSsr);
44
+ const [isPaying, setIsPaying] = useState(false);
45
+ const [formStep, setFormStep] = useState(1);
46
+ const [showReleaseDate, setShowReleaseDate] = useState(dayjs(event.releaseDate).diff(dayjs()) > 0);
47
+ const [matchIsValidTel, setMatchIsValidTel] = useState(() => false);
48
+ const isNotReleased = dayjs(event.releaseDate).diff(dayjs()) > 0;
49
+ const hasFiredViewCart = useRef(false);
50
+ const hasFiredBeginCheckout = useRef(false);
51
+ const hasFiredPaymentMethod = useRef(false);
52
+ const item = {
53
+ currency: event.currency,
54
+ items: [
55
+ {
56
+ item_id: `event_${event.id}`,
57
+ item_name: event.name,
58
+ quantity: 1,
59
+ },
60
+ ],
61
+ };
62
+ const pixels = {
63
+ fb_pixel_id: event.facebookPixel?.facebookId,
64
+ tiktok_pixel_id: event.tiktokPixel?.tiktokId,
65
+ };
66
+ useEffect(() => {
67
+ import('mui-tel-input').then((mod) => {
68
+ setMatchIsValidTel(() => mod.matchIsValidTel);
69
+ });
70
+ }, []);
71
+ useEffect(() => {
72
+ setGlobal({
73
+ options: {
74
+ isIframe: isIframe === undefined ? false : isIframe,
75
+ },
76
+ });
77
+ if (!isIframe &&
78
+ event &&
79
+ (isNotReleased ||
80
+ (!!event.releaseEndDate && dayjs(event.releaseEndDate).isBefore(dayjs())) ||
81
+ dayjs(event.endDate).isBefore(dayjs()) ||
82
+ event.isSoldout ||
83
+ event.dateUnknown ||
84
+ event.isCanceled)) {
85
+ callbacks.detail();
86
+ }
87
+ if (event && !hasGopayId && !hasFiredViewCart.current) {
88
+ if (isIframe) {
89
+ setTimeout(() => {
90
+ parent.postMessage({
91
+ type: 'eventlookFrameGtm',
92
+ item: getGtmPageView(location.href),
93
+ }, '*');
94
+ parent.postMessage({
95
+ type: 'eventlookFrameGtm',
96
+ item: getGtmViewCart(item, pixels),
97
+ }, '*');
98
+ }, 1000);
99
+ }
100
+ else {
101
+ gtmViewCart(item, pixels);
102
+ }
103
+ hasFiredViewCart.current = true;
104
+ }
105
+ if (!hasFiredPaymentMethod.current) {
106
+ const item = {
107
+ currency: event.currency,
108
+ value: 0,
109
+ payment_type: 'PAYMENT_CARD',
110
+ items: [],
111
+ };
112
+ if (isIframe) {
113
+ setTimeout(() => {
114
+ parent.postMessage({
115
+ type: 'eventlookFrameGtm',
116
+ item: getGtmAddPaymentInfo(item, pixels, user ? mapUserToUserData(user) : undefined),
117
+ }, '*');
118
+ }, 1000);
119
+ }
120
+ else {
121
+ gtmAddPaymentInfo(item, pixels);
122
+ }
123
+ hasFiredPaymentMethod.current = true;
124
+ }
125
+ }, [event]);
126
+ const defaultValues = useMemo(() => {
127
+ const makeTicket = (overrides = {}) => ({
128
+ releaseId: '',
129
+ quantity: '',
130
+ itemName: '',
131
+ price: 0,
132
+ products: [],
133
+ extraFields: [],
134
+ ...overrides,
135
+ });
136
+ const tickets = {
137
+ [String(event.id)]: [
138
+ makeTicket({
139
+ releaseId: selectedReleaseId ?? '',
140
+ }),
141
+ ],
142
+ };
143
+ event.children?.forEach((child) => {
144
+ tickets[String(child.id)] = [makeTicket()];
145
+ });
146
+ return {
147
+ uuid: null,
148
+ eventId: event.id,
149
+ tickets,
150
+ total: 0,
151
+ originalPrice: 0,
152
+ firstName: user?.firstName || '',
153
+ lastName: user?.lastName || '',
154
+ email: user?.email || '',
155
+ phone: user?.phone || '',
156
+ birthdate: user?.birthdate ? dayjs(user.birthdate) : null,
157
+ gender: user?.gender || '',
158
+ callback: '',
159
+ paymentMethodId: null,
160
+ paymentMethodOptionId: null,
161
+ termsAndConditions: false,
162
+ ticketInsurance: false,
163
+ ticketInsurancePrice: 0,
164
+ ticketInsurancePricePerUnit: 0,
165
+ smsNotification: false,
166
+ smsNotificationPrice: 0,
167
+ iframeCampaignId: undefined,
168
+ promoCodes: [],
169
+ products: {},
170
+ shipping: {
171
+ shippingMethodId: null,
172
+ branchId: null,
173
+ price: 0,
174
+ },
175
+ extraFields: event?.extraFields.map((field) => ({
176
+ eventExtraFieldId: field.id,
177
+ value: '',
178
+ })) || [],
179
+ selectedDate: null,
180
+ eventTimeslotId: null,
181
+ isPaymentVerify: false,
182
+ };
183
+ }, [user]);
184
+ const ValidationSchema = Yup.object().shape({
185
+ firstName: Yup.string().required(t('form.validation.required')),
186
+ lastName: Yup.string().required(t('form.validation.required')),
187
+ email: Yup.string().email(t('form.validation.email')).required(t('form.validation.required')),
188
+ phone: Yup.string()
189
+ .required(t('form.validation.required'))
190
+ .test('phone-checker', t('form.validation.phone'), (value) => value ? matchIsValidTel(value) : false),
191
+ birthdate: Yup.object()
192
+ .nullable()
193
+ .default(null)
194
+ .when([], {
195
+ is: () => !content?.form?.disableBirthDate,
196
+ then: (s) => s.required(t('form.validation.required')),
197
+ otherwise: (s) => s.notRequired(),
198
+ }),
199
+ gender: Yup.string().when([], {
200
+ is: () => !content?.form?.disableGender,
201
+ then: (schema) => schema.required(t('form.validation.required')),
202
+ otherwise: (schema) => schema.notRequired(),
203
+ }),
204
+ // tickets: Yup.object().test('tickets-validation', function (tickets) {
205
+ // if (!tickets || typeof tickets !== 'object') return false;
206
+ // for (const key of Object.keys(tickets)) {
207
+ // const arr = tickets[key];
208
+ // if (!Array.isArray(arr)) return false;
209
+ // for (const t of arr) {
210
+ // if (!t.releaseId || !t.quantity) {
211
+ // return this.createError({ message: 'Invalid ticket selection' });
212
+ // }
213
+ // }
214
+ // }
215
+ // return true;
216
+ // }),
217
+ shipping: Yup.object().shape({
218
+ shippingMethodId: Yup.number().nullable(),
219
+ branchId: Yup.string().nullable(),
220
+ price: Yup.number(),
221
+ }),
222
+ paymentMethodId: Yup.number().nullable().required(t('form.validation.required')),
223
+ paymentMethodOptionId: Yup.number().nullable(),
224
+ termsAndConditions: Yup.boolean().isTrue(t('form.validation.terms_and_conditions')),
225
+ ticketInsurance: Yup.boolean(),
226
+ smsNotification: Yup.boolean(),
227
+ extraFields: Yup.array().of(Yup.object().shape({
228
+ value: Yup.string().test('is-required', function (value) {
229
+ const options = this.options;
230
+ if (event.extraFields[options.index].required && !value) {
231
+ return this.createError({
232
+ message: t('form.validation.required'),
233
+ });
234
+ }
235
+ return true;
236
+ }),
237
+ })),
238
+ });
239
+ const methods = useForm({
240
+ // @ts-ignore
241
+ resolver: yupResolver(ValidationSchema),
242
+ defaultValues,
243
+ });
244
+ const values = methods.watch();
245
+ const onSubmit = async (values) => {
246
+ const allTickets = Object.values(values.tickets).flat();
247
+ if (allTickets.length === 1 &&
248
+ !allTickets[0].releaseId &&
249
+ !allTickets[0].quantity &&
250
+ !values.products.length) {
251
+ showSnackbar(t('form.validation.count_tickets_or_products'), {
252
+ variant: 'error',
253
+ });
254
+ return;
255
+ }
256
+ if (formStep === 1 && !isIframe) {
257
+ setFormStep(2);
258
+ }
259
+ else {
260
+ try {
261
+ const data = cloneObject(values);
262
+ data.paymentMethodId = Number(values.paymentMethodId);
263
+ data.promoCodeIds = values.promoCodes?.map((item) => item.id);
264
+ const urlParams = new URLSearchParams(window.location.search);
265
+ const iframeCallback = urlParams.get('callback');
266
+ data.callback = isIframe && iframeCallback ? String(iframeCallback) : window.location.href;
267
+ data.tickets = Object.entries(values.tickets).reduce((acc, [eventId, items]) => {
268
+ acc[Number(eventId)] = items
269
+ .filter((item) => !!item.quantity && !!item.releaseId)
270
+ .map((item) => ({
271
+ releaseId: Number(item.releaseId),
272
+ quantity: Number(item.quantity),
273
+ price: Number(item.price),
274
+ itemName: item.itemName,
275
+ products: item.products,
276
+ extraFields: item.extraFields,
277
+ eventTimeslotId: item.eventTimeslotId,
278
+ location: item.location,
279
+ }));
280
+ return acc;
281
+ }, {});
282
+ const { data: orderData } = await postOrder(data);
283
+ localStorage.removeItem('cartToken');
284
+ const items = [
285
+ ...orderData.tickets.map((ticket) => ({
286
+ item_id: ticket.number,
287
+ item_name: `${orderData.orderEntity.event.name} - ${ticket.releaseCategoryName} - ${ticket.releaseName}`,
288
+ price: ticket.price,
289
+ quantity: 1,
290
+ })),
291
+ ];
292
+ if (orderData.orderEntity.extraFee) {
293
+ items.push({
294
+ item_id: 'service_fee',
295
+ item_name: `Service fee`,
296
+ price: orderData.orderEntity.extraFee,
297
+ quantity: 1,
298
+ });
299
+ }
300
+ const item = {
301
+ uuid: values.uuid,
302
+ currency: orderData.orderEntity.currency,
303
+ value: orderData.orderEntity.totalPrice,
304
+ tax: 0,
305
+ payment_type: orderData.orderEntity.paymentType,
306
+ transaction_id: String(orderData.orderEntity.number),
307
+ coupon: orderData?.orderEntity?.promoCodes?.map((p) => p.code) || [],
308
+ items,
309
+ };
310
+ const userData = {
311
+ fn: orderData.customer.firstName,
312
+ ln: orderData.customer.lastName,
313
+ em: orderData.customer.email,
314
+ ph: orderData.customer.phone,
315
+ };
316
+ if (isIframe) {
317
+ parent.postMessage({
318
+ type: 'eventlookFrameGtm',
319
+ item: getGtmPurchase(null),
320
+ }, '*');
321
+ parent.postMessage({
322
+ type: 'eventlookFrameGtm',
323
+ item: getGtmPurchase(item, pixels, userData),
324
+ }, '*');
325
+ }
326
+ else {
327
+ gtmPurchase(null);
328
+ gtmPurchase(item, pixels, userData);
329
+ }
330
+ setPaymentRedirect(orderData.gwUrl);
331
+ methods.reset();
332
+ }
333
+ catch (err) {
334
+ transformErrors(err.message);
335
+ }
336
+ }
337
+ };
338
+ const showShippingMethods = () => {
339
+ const hasProducts = Object.values(values.products ?? {}).some((arr) => arr.length > 0);
340
+ const ticketArrays = Object.values(values.tickets ?? {});
341
+ const allTickets = ticketArrays.flat();
342
+ const hasTicketProducts = allTickets.some((t) => (t.products?.length ?? 0) > 0);
343
+ const showShippingMethods = hasProducts || hasTicketProducts;
344
+ if (values.shipping.shippingMethodId !== null && !showShippingMethods) {
345
+ methods.setValue('shipping', { shippingMethodId: null, branchId: null, price: 0 });
346
+ }
347
+ return showShippingMethods;
348
+ };
349
+ useEffect(() => {
350
+ methods.reset(defaultValues);
351
+ }, [user, defaultValues]);
352
+ useEffect(() => {
353
+ const searchParams = getSearchParamsInObject(window.location.search);
354
+ const paymentId = searchParams.id;
355
+ const iframeCampaignId = Number(searchParams.iframeCampaignId);
356
+ setHasGopayId(!!paymentId);
357
+ if (!isNaN(iframeCampaignId)) {
358
+ methods.setValue('iframeCampaignId', iframeCampaignId);
359
+ }
360
+ }, [window.location.search]);
361
+ useEffect(() => {
362
+ const subscription = methods.watch((value) => {
363
+ if (JSON.stringify(defaultValues) !== JSON.stringify(value) &&
364
+ !hasFiredBeginCheckout.current) {
365
+ if (isIframe) {
366
+ setTimeout(() => {
367
+ parent.postMessage({
368
+ type: 'eventlookFrameGtm',
369
+ item: getGtmBeginCheckout(item, pixels),
370
+ }, '*');
371
+ }, 1000);
372
+ }
373
+ else {
374
+ gtmBeginCheckout(item, pixels, user ? mapUserToUserData(user) : undefined);
375
+ }
376
+ hasFiredBeginCheckout.current = true;
377
+ }
378
+ });
379
+ return () => subscription.unsubscribe();
380
+ }, [methods.watch, defaultValues]);
381
+ useEffect(() => {
382
+ if (hasGopayId || isPaying || paymentRedirect) {
383
+ if (options?.autoscrollAfterViewChange) {
384
+ const orderForm = document.getElementById(EVENTLOOK_ORDER_FORM_CONTAINER_ID);
385
+ if (orderForm) {
386
+ orderForm.scrollIntoView({ behavior: 'smooth' });
387
+ }
388
+ }
389
+ }
390
+ }, [hasGopayId, isPaying, paymentRedirect]);
391
+ if (isIframe && isNotReleased && showReleaseDate)
392
+ return React.createElement(ReleaseCountdown, { event: event, setShowReleaseDate: setShowReleaseDate });
393
+ return (React.createElement(Box, { id: EVENTLOOK_ORDER_FORM_CONTAINER_ID }, hasGopayId ? (React.createElement(PaymentSuccess, { setIsPaying: setIsPaying, isIframe: isIframe, pixels: pixels })) : isPaying ? (React.createElement(PaymentPending, null)) : paymentRedirect ? (React.createElement(OrderSuccess, { gwUrl: paymentRedirect, isIframe: isIframe, setIsPaying: setIsPaying, isInline: isInline })) : (React.createElement(FormProvider, { methods: methods,
394
+ // @ts-ignore
395
+ onSubmit: methods.handleSubmit(onSubmit), formId: EVENTLOOK_ORDER_FORM_ID },
396
+ React.createElement(Stack, { className: "overview-card__event-info", display: { md: 'none' }, sx: {
397
+ mb: 2,
398
+ } },
399
+ React.createElement(Typography, { variant: "h3", component: "h1" }, event.name),
400
+ React.createElement(Typography, { variant: "h4", component: "h2" }, dayjs(event.startDate).format('DD.MM.YYYY HH:mm')),
401
+ React.createElement(Typography, { variant: "body2" }, getPlaceAsString(event.place)),
402
+ headerSlot ? React.createElement(React.Fragment, null, headerSlot) : null),
403
+ React.createElement(Grid, { container: true, spacing: 2 },
404
+ React.createElement(Grid, { item: true, xs: 12, md: 8 },
405
+ React.createElement(Stepper, { orientation: "vertical", sx: (theme) => ({
406
+ [theme.breakpoints.down('sm')]: {
407
+ '& .MuiStepContent-root': {
408
+ borderLeftWidth: 0,
409
+ paddingLeft: 0,
410
+ marginLeft: 0,
411
+ },
412
+ '& .MuiStepConnector-line': { borderLeftWidth: 0 },
413
+ },
414
+ }) },
415
+ event.type === EventType.RECURRING && (React.createElement(Step, { active: true },
416
+ React.createElement(StepLabel, null, t('event.tickets.stepper.6.title')),
417
+ React.createElement(StepContent, null,
418
+ React.createElement(TimeslotSelection, { event: event })))),
419
+ React.createElement(Step, { active: true },
420
+ React.createElement(StepLabel, null, t('event.tickets.stepper.1.title')),
421
+ React.createElement(StepContent, null, event.mapId && seatingIframeUrl ? (React.createElement(TicketSelectionMap, { event: event })) : event.hasMerchandise ? (React.createElement(TicketWithMerchandiseSelection, { event: event })) : (React.createElement(TicketSelection, { event: event })))),
422
+ event.hasMerchandise && eventProducts.length && (React.createElement(Step, { active: true },
423
+ React.createElement(StepLabel, null, t('event.tickets.stepper.4.title')),
424
+ React.createElement(StepContent, null,
425
+ React.createElement(MerchandiseSelection, { eventProducts: eventProducts, eventId: event.id, isLoading: isLoading })))),
426
+ React.createElement(Step, { active: true },
427
+ React.createElement(StepLabel, null, t('event.tickets.stepper.8.title')),
428
+ React.createElement(StepContent, null,
429
+ React.createElement(Services, { event: event }))),
430
+ event.children.length && (React.createElement(Step, { active: true },
431
+ React.createElement(StepLabel, null, t('event.tickets.stepper.7.title')),
432
+ React.createElement(StepContent, null,
433
+ React.createElement(ChildEventSection, { events: event.children })))),
434
+ React.createElement(Step, { active: true },
435
+ React.createElement(StepLabel, null, t('event.tickets.stepper.2.title')),
436
+ React.createElement(StepContent, null,
437
+ React.createElement(ContactPerson, { event: event }))),
438
+ event.hasMerchandise && showShippingMethods() && (React.createElement(Step, { active: true },
439
+ React.createElement(StepLabel, null, t('event.tickets.stepper.5.title')),
440
+ React.createElement(StepContent, null,
441
+ React.createElement(Shipping, { event: event })))),
442
+ React.createElement(Step, { active: true },
443
+ React.createElement(StepLabel, null, t(`event.tickets.stepper.3.${values.isPaymentVerify ? 'title_verify' : 'title'}`)),
444
+ React.createElement(StepContent, null,
445
+ React.createElement(Payment, { event: event })))),
446
+ React.createElement(Stack, { mt: 2, ml: { xs: 1, md: 4 } },
447
+ React.createElement(RHFCheckbox, { name: "termsAndConditions", label: React.createElement(Trans, { text: "event.tickets.terms_and_conditions", values: {
448
+ termsAndConditionsCompanies: options?.termsAndConditionsCompanies
449
+ ? options.termsAndConditionsCompanies.join(t('and'))
450
+ : ['Eventlook', 'GoPay'].join(` ${t('and')} `),
451
+ }, components: {
452
+ 0: React.createElement(CustomLink, { key: 2, href: links.termsAndConditions, target: "_blank" }),
453
+ 1: React.createElement(CustomLink, { key: 1, href: links.gdpr, target: "_blank" }),
454
+ } }) }))),
455
+ React.createElement(Grid, { item: true, xs: 12, md: 4, sx: { display: { xs: 'none', md: 'block' } } },
456
+ React.createElement(PaymentOverviewBox, { event: event }))),
457
+ React.createElement(PaymentOverviewDrawer, { event: event, totalPrice: values.total }),
458
+ React.createElement(EmailConfirmation, { open: formStep === 2 && !isIframe, onClose: () => setFormStep(1),
459
+ // @ts-ignore
460
+ onConfirm: methods.handleSubmit(onSubmit) })))));
461
+ };
462
+ const CustomLink = ({ href = '', children, ...other }) => (React.createElement(Link, { href: href, ...other }, children));
463
+
464
+ export { TicketForm as default };
465
+ //# sourceMappingURL=TicketForm.js.map