@eventlook/sdk 1.4.4 → 1.4.5-1.beta.2

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 (447) hide show
  1. package/.env.example +1 -0
  2. package/dev-frontend.sh +32 -0
  3. package/dist/cjs/_virtual/_commonjsHelpers.js +4 -2
  4. package/dist/cjs/_virtual/_commonjsHelpers.js.map +1 -1
  5. package/dist/cjs/_virtual/index.js +2 -2
  6. package/dist/cjs/_virtual/index2.js +2 -2
  7. package/dist/cjs/_virtual/index3.js +2 -2
  8. package/dist/cjs/components/Image.js +29 -14
  9. package/dist/cjs/components/Image.js.map +1 -1
  10. package/dist/cjs/components/hook-form/FormProvider.js +2 -2
  11. package/dist/cjs/components/hook-form/FormProvider.js.map +1 -1
  12. package/dist/cjs/context/GlobalContext.js +2 -1
  13. package/dist/cjs/context/GlobalContext.js.map +1 -1
  14. package/dist/cjs/form/ChildEventDialog.js +3 -3
  15. package/dist/cjs/form/ChildEventDialog.js.map +1 -1
  16. package/dist/cjs/form/ContactPerson.js +1 -1
  17. package/dist/cjs/form/ContactPerson.js.map +1 -1
  18. package/dist/cjs/form/Payment.js +2 -4
  19. package/dist/cjs/form/Payment.js.map +1 -1
  20. package/dist/cjs/form/PaymentOverviewBox.js +104 -115
  21. package/dist/cjs/form/PaymentOverviewBox.js.map +1 -1
  22. package/dist/cjs/form/PaymentOverviewDrawer.js +317 -0
  23. package/dist/cjs/form/PaymentOverviewDrawer.js.map +1 -0
  24. package/dist/cjs/form/PaymentPending.js +15 -3
  25. package/dist/cjs/form/PaymentPending.js.map +1 -1
  26. package/dist/cjs/form/PaymentSuccess.js +39 -2
  27. package/dist/cjs/form/PaymentSuccess.js.map +1 -1
  28. package/dist/cjs/form/ReleaseWithMerchandise.js +57 -48
  29. package/dist/cjs/form/ReleaseWithMerchandise.js.map +1 -1
  30. package/dist/cjs/form/Shipping.js +33 -27
  31. package/dist/cjs/form/Shipping.js.map +1 -1
  32. package/dist/cjs/form/TicketForm.js +102 -35
  33. package/dist/cjs/form/TicketForm.js.map +1 -1
  34. package/dist/cjs/form/TicketQuantityControl.js +51 -0
  35. package/dist/cjs/form/TicketQuantityControl.js.map +1 -0
  36. package/dist/cjs/form/TicketSelection.js +29 -11
  37. package/dist/cjs/form/TicketSelection.js.map +1 -1
  38. package/dist/cjs/form/TicketSelectionMap.js +67 -0
  39. package/dist/cjs/form/TicketSelectionMap.js.map +1 -0
  40. package/dist/cjs/form/TicketSelectionMobile.js +98 -0
  41. package/dist/cjs/form/TicketSelectionMobile.js.map +1 -0
  42. package/dist/cjs/form/TicketWithMerchandiseSelection.js +46 -10
  43. package/dist/cjs/form/TicketWithMerchandiseSelection.js.map +1 -1
  44. package/dist/cjs/form/extra-field/ExtraField.js.map +1 -1
  45. package/dist/cjs/form/extra-field/ReleaseExtraFields.js +1 -1
  46. package/dist/cjs/form/extra-field/ReleaseExtraFields.js.map +1 -1
  47. package/dist/cjs/form/index.js +2 -2
  48. package/dist/cjs/form/index.js.map +1 -1
  49. package/dist/cjs/form/merchandise/MerchandiseSelection.js +14 -0
  50. package/dist/cjs/form/merchandise/MerchandiseSelection.js.map +1 -0
  51. package/dist/cjs/form/merchandise/MerchandiseSlider.js +40 -0
  52. package/dist/cjs/form/merchandise/MerchandiseSlider.js.map +1 -0
  53. package/dist/cjs/form/merchendise/MerchandiseSelection.js +19 -0
  54. package/dist/cjs/form/merchendise/MerchandiseSelection.js.map +1 -0
  55. package/dist/cjs/form/merchendise/MerchandiseSlider.js +75 -0
  56. package/dist/cjs/form/merchendise/MerchandiseSlider.js.map +1 -0
  57. package/dist/cjs/form/payment/FeeBox.js +5 -17
  58. package/dist/cjs/form/payment/FeeBox.js.map +1 -1
  59. package/dist/cjs/form/payment/PaymentOverviewCheckbox.js +52 -0
  60. package/dist/cjs/form/payment/PaymentOverviewCheckbox.js.map +1 -0
  61. package/dist/cjs/form/product/ProductCard.js +147 -36
  62. package/dist/cjs/form/product/ProductCard.js.map +1 -1
  63. package/dist/cjs/form/product/ProductVariantsDialog.js +182 -97
  64. package/dist/cjs/form/product/ProductVariantsDialog.js.map +1 -1
  65. package/dist/cjs/form/services/index.js +116 -0
  66. package/dist/cjs/form/services/index.js.map +1 -0
  67. package/dist/cjs/form/style.js +13 -4
  68. package/dist/cjs/form/style.js.map +1 -1
  69. package/dist/cjs/form/tickets/ReleaseDescription.js +23 -0
  70. package/dist/cjs/form/tickets/ReleaseDescription.js.map +1 -0
  71. package/dist/cjs/form/tickets/ReleaseWithMerchandise.js +165 -0
  72. package/dist/cjs/form/tickets/ReleaseWithMerchandise.js.map +1 -0
  73. package/dist/cjs/form/tickets/TicketQuantityControl.js +54 -0
  74. package/dist/cjs/form/tickets/TicketQuantityControl.js.map +1 -0
  75. package/dist/cjs/form/tickets/TicketSelection.js +162 -0
  76. package/dist/cjs/form/tickets/TicketSelection.js.map +1 -0
  77. package/dist/cjs/form/tickets/TicketSelectionMap.js +79 -0
  78. package/dist/cjs/form/tickets/TicketSelectionMap.js.map +1 -0
  79. package/dist/cjs/form/tickets/TicketSelectionMobile.js +100 -0
  80. package/dist/cjs/form/tickets/TicketSelectionMobile.js.map +1 -0
  81. package/dist/cjs/form/tickets/TicketWithMerchandiseSelection.js +127 -0
  82. package/dist/cjs/form/tickets/TicketWithMerchandiseSelection.js.map +1 -0
  83. package/dist/cjs/hooks/useConsentScrollOnDrawerOpen.js +59 -0
  84. package/dist/cjs/hooks/useConsentScrollOnDrawerOpen.js.map +1 -0
  85. package/dist/cjs/hooks/useScrollToFirstError.js +73 -0
  86. package/dist/cjs/hooks/useScrollToFirstError.js.map +1 -0
  87. package/dist/cjs/locales/cs.js +47 -2
  88. package/dist/cjs/locales/cs.js.map +1 -1
  89. package/dist/cjs/locales/en.js +47 -1
  90. package/dist/cjs/locales/en.js.map +1 -1
  91. package/dist/cjs/locales/es.js +47 -1
  92. package/dist/cjs/locales/es.js.map +1 -1
  93. package/dist/cjs/locales/pl.js +47 -1
  94. package/dist/cjs/locales/pl.js.map +1 -1
  95. package/dist/cjs/locales/sk.js +47 -1
  96. package/dist/cjs/locales/sk.js.map +1 -1
  97. package/dist/cjs/locales/uk.js +47 -1
  98. package/dist/cjs/locales/uk.js.map +1 -1
  99. package/dist/cjs/modules/shopping-cart.js +10 -9
  100. package/dist/cjs/modules/shopping-cart.js.map +1 -1
  101. package/dist/cjs/utils/data/global.js +2 -0
  102. package/dist/cjs/utils/data/global.js.map +1 -1
  103. package/dist/cjs/utils/data/ticket.js +6 -0
  104. package/dist/cjs/utils/data/ticket.js.map +1 -0
  105. package/dist/cjs/utils/gtm.js +20 -0
  106. package/dist/cjs/utils/gtm.js.map +1 -1
  107. package/dist/esm/_virtual/_commonjsHelpers.js +4 -2
  108. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -1
  109. package/dist/esm/_virtual/index.js +2 -2
  110. package/dist/esm/_virtual/index2.js +2 -2
  111. package/dist/esm/_virtual/index3.js +2 -2
  112. package/dist/esm/components/Image.js +30 -15
  113. package/dist/esm/components/Image.js.map +1 -1
  114. package/dist/esm/components/hook-form/FormProvider.js +2 -2
  115. package/dist/esm/components/hook-form/FormProvider.js.map +1 -1
  116. package/dist/esm/context/GlobalContext.js +2 -1
  117. package/dist/esm/context/GlobalContext.js.map +1 -1
  118. package/dist/esm/form/ChildEventDialog.js +3 -3
  119. package/dist/esm/form/ChildEventDialog.js.map +1 -1
  120. package/dist/esm/form/ContactPerson.js +1 -1
  121. package/dist/esm/form/ContactPerson.js.map +1 -1
  122. package/dist/esm/form/Payment.js +2 -4
  123. package/dist/esm/form/Payment.js.map +1 -1
  124. package/dist/esm/form/PaymentOverviewBox.js +107 -118
  125. package/dist/esm/form/PaymentOverviewBox.js.map +1 -1
  126. package/dist/esm/form/PaymentOverviewDrawer.js +313 -0
  127. package/dist/esm/form/PaymentOverviewDrawer.js.map +1 -0
  128. package/dist/esm/form/PaymentPending.js +16 -4
  129. package/dist/esm/form/PaymentPending.js.map +1 -1
  130. package/dist/esm/form/PaymentSuccess.js +39 -2
  131. package/dist/esm/form/PaymentSuccess.js.map +1 -1
  132. package/dist/esm/form/ReleaseWithMerchandise.js +58 -49
  133. package/dist/esm/form/ReleaseWithMerchandise.js.map +1 -1
  134. package/dist/esm/form/Shipping.js +33 -27
  135. package/dist/esm/form/Shipping.js.map +1 -1
  136. package/dist/esm/form/TicketForm.js +104 -37
  137. package/dist/esm/form/TicketForm.js.map +1 -1
  138. package/dist/esm/form/TicketQuantityControl.js +47 -0
  139. package/dist/esm/form/TicketQuantityControl.js.map +1 -0
  140. package/dist/esm/form/TicketSelection.js +30 -12
  141. package/dist/esm/form/TicketSelection.js.map +1 -1
  142. package/dist/esm/form/TicketSelectionMap.js +63 -0
  143. package/dist/esm/form/TicketSelectionMap.js.map +1 -0
  144. package/dist/esm/form/TicketSelectionMobile.js +94 -0
  145. package/dist/esm/form/TicketSelectionMobile.js.map +1 -0
  146. package/dist/esm/form/TicketWithMerchandiseSelection.js +48 -12
  147. package/dist/esm/form/TicketWithMerchandiseSelection.js.map +1 -1
  148. package/dist/esm/form/extra-field/ExtraField.js.map +1 -1
  149. package/dist/esm/form/extra-field/ReleaseExtraFields.js +1 -1
  150. package/dist/esm/form/extra-field/ReleaseExtraFields.js.map +1 -1
  151. package/dist/esm/form/index.js +2 -2
  152. package/dist/esm/form/index.js.map +1 -1
  153. package/dist/esm/form/merchandise/MerchandiseSelection.js +10 -0
  154. package/dist/esm/form/merchandise/MerchandiseSelection.js.map +1 -0
  155. package/dist/esm/form/merchandise/MerchandiseSlider.js +36 -0
  156. package/dist/esm/form/merchandise/MerchandiseSlider.js.map +1 -0
  157. package/dist/esm/form/merchendise/MerchandiseSelection.js +15 -0
  158. package/dist/esm/form/merchendise/MerchandiseSelection.js.map +1 -0
  159. package/dist/esm/form/merchendise/MerchandiseSlider.js +71 -0
  160. package/dist/esm/form/merchendise/MerchandiseSlider.js.map +1 -0
  161. package/dist/esm/form/payment/FeeBox.js +6 -18
  162. package/dist/esm/form/payment/FeeBox.js.map +1 -1
  163. package/dist/esm/form/payment/PaymentOverviewCheckbox.js +48 -0
  164. package/dist/esm/form/payment/PaymentOverviewCheckbox.js.map +1 -0
  165. package/dist/esm/form/product/ProductCard.js +148 -37
  166. package/dist/esm/form/product/ProductCard.js.map +1 -1
  167. package/dist/esm/form/product/ProductVariantsDialog.js +184 -99
  168. package/dist/esm/form/product/ProductVariantsDialog.js.map +1 -1
  169. package/dist/esm/form/services/index.js +112 -0
  170. package/dist/esm/form/services/index.js.map +1 -0
  171. package/dist/esm/form/style.js +13 -4
  172. package/dist/esm/form/style.js.map +1 -1
  173. package/dist/esm/form/tickets/ReleaseDescription.js +19 -0
  174. package/dist/esm/form/tickets/ReleaseDescription.js.map +1 -0
  175. package/dist/esm/form/tickets/ReleaseWithMerchandise.js +161 -0
  176. package/dist/esm/form/tickets/ReleaseWithMerchandise.js.map +1 -0
  177. package/dist/esm/form/tickets/TicketQuantityControl.js +50 -0
  178. package/dist/esm/form/tickets/TicketQuantityControl.js.map +1 -0
  179. package/dist/esm/form/tickets/TicketSelection.js +158 -0
  180. package/dist/esm/form/tickets/TicketSelection.js.map +1 -0
  181. package/dist/esm/form/tickets/TicketSelectionMap.js +75 -0
  182. package/dist/esm/form/tickets/TicketSelectionMap.js.map +1 -0
  183. package/dist/esm/form/tickets/TicketSelectionMobile.js +96 -0
  184. package/dist/esm/form/tickets/TicketSelectionMobile.js.map +1 -0
  185. package/dist/esm/form/tickets/TicketWithMerchandiseSelection.js +123 -0
  186. package/dist/esm/form/tickets/TicketWithMerchandiseSelection.js.map +1 -0
  187. package/dist/esm/hooks/useConsentScrollOnDrawerOpen.js +55 -0
  188. package/dist/esm/hooks/useConsentScrollOnDrawerOpen.js.map +1 -0
  189. package/dist/esm/hooks/useScrollToFirstError.js +69 -0
  190. package/dist/esm/hooks/useScrollToFirstError.js.map +1 -0
  191. package/dist/esm/locales/cs.js +47 -2
  192. package/dist/esm/locales/cs.js.map +1 -1
  193. package/dist/esm/locales/en.js +47 -1
  194. package/dist/esm/locales/en.js.map +1 -1
  195. package/dist/esm/locales/es.js +47 -1
  196. package/dist/esm/locales/es.js.map +1 -1
  197. package/dist/esm/locales/pl.js +47 -1
  198. package/dist/esm/locales/pl.js.map +1 -1
  199. package/dist/esm/locales/sk.js +47 -1
  200. package/dist/esm/locales/sk.js.map +1 -1
  201. package/dist/esm/locales/uk.js +47 -1
  202. package/dist/esm/locales/uk.js.map +1 -1
  203. package/dist/esm/modules/shopping-cart.js +9 -8
  204. package/dist/esm/modules/shopping-cart.js.map +1 -1
  205. package/dist/esm/utils/data/global.js +2 -1
  206. package/dist/esm/utils/data/global.js.map +1 -1
  207. package/dist/esm/utils/data/ticket.js +4 -0
  208. package/dist/esm/utils/data/ticket.js.map +1 -0
  209. package/dist/esm/utils/gtm.js +19 -1
  210. package/dist/esm/utils/gtm.js.map +1 -1
  211. package/dist/types/context/GlobalContext.d.ts +2 -1
  212. package/dist/types/form/PaymentOverviewDrawer.d.ts +8 -0
  213. package/dist/types/form/PaymentSuccess.d.ts +2 -0
  214. package/dist/types/form/TicketSelectionMap.d.ts +7 -0
  215. package/dist/types/form/extra-field/ExtraField.d.ts +1 -1
  216. package/dist/types/form/index.d.ts +1 -0
  217. package/dist/types/form/merchendise/MerchandiseSelection.d.ts +9 -0
  218. package/dist/types/form/merchendise/MerchandiseSlider.d.ts +10 -0
  219. package/dist/types/form/merchendise/MerchendiseSlider.d.ts +0 -0
  220. package/dist/types/form/payment/PaymentOverviewCheckbox.d.ts +12 -0
  221. package/dist/types/locales/cs.d.ts +23 -0
  222. package/dist/types/locales/en.d.ts +24 -0
  223. package/dist/types/locales/es.d.ts +24 -0
  224. package/dist/types/locales/pl.d.ts +24 -0
  225. package/dist/types/locales/sk.d.ts +24 -0
  226. package/dist/types/locales/uk.d.ts +24 -0
  227. package/dist/types/modules/shopping-cart.d.ts +3 -5
  228. package/dist/types/utils/data/shopping-cart.d.ts +5 -0
  229. package/dist/types/utils/gtm.d.ts +3 -1
  230. package/dist/types/utils/types/event.type.d.ts +1 -0
  231. package/dist/types/utils/types/global.type.d.ts +1 -0
  232. package/dist/types/utils/types/gtm.type.d.ts +5 -0
  233. package/dist/types/utils/types/order.type.d.ts +1 -0
  234. package/dist/types/utils/types/shopping-cart.type.d.ts +44 -35
  235. package/dist/types/utils/types/ticket.type.d.ts +21 -5
  236. package/package.json +11 -6
  237. package/rollup.config.mjs +16 -1
  238. package/src/components/Image.tsx +49 -27
  239. package/src/components/hook-form/FormProvider.tsx +5 -2
  240. package/src/context/GlobalContext.tsx +3 -0
  241. package/src/form/ChildEventDialog.tsx +3 -3
  242. package/src/form/ContactPerson.tsx +1 -1
  243. package/src/form/Payment.tsx +2 -4
  244. package/src/form/PaymentOverviewBox.tsx +178 -139
  245. package/src/form/PaymentOverviewDrawer.tsx +446 -0
  246. package/src/form/PaymentPending.tsx +19 -3
  247. package/src/form/PaymentSuccess.tsx +46 -3
  248. package/src/form/Shipping.tsx +48 -33
  249. package/src/form/TicketForm.tsx +162 -43
  250. package/src/form/extra-field/ExtraField.tsx +3 -1
  251. package/src/form/extra-field/ReleaseExtraFields.tsx +1 -1
  252. package/src/form/index.tsx +6 -1
  253. package/src/form/merchandise/MerchandiseSelection.tsx +24 -0
  254. package/src/form/merchandise/MerchandiseSlider.tsx +62 -0
  255. package/src/form/payment/FeeBox.tsx +6 -34
  256. package/src/form/payment/PaymentOverviewCheckbox.tsx +88 -0
  257. package/src/form/product/ProductCard.tsx +258 -59
  258. package/src/form/product/ProductVariantsDialog.tsx +292 -139
  259. package/src/form/services/index.tsx +263 -0
  260. package/src/form/style.ts +16 -4
  261. package/src/form/tickets/ReleaseDescription.tsx +46 -0
  262. package/src/form/tickets/ReleaseWithMerchandise.tsx +271 -0
  263. package/src/form/tickets/TicketQuantityControl.tsx +100 -0
  264. package/src/form/tickets/TicketSelection.tsx +236 -0
  265. package/src/form/tickets/TicketSelectionMap.tsx +99 -0
  266. package/src/form/tickets/TicketSelectionMobile.tsx +188 -0
  267. package/src/form/tickets/TicketWithMerchandiseSelection.tsx +192 -0
  268. package/src/hooks/useScrollToFirstError.ts +99 -0
  269. package/src/locales/cs.tsx +50 -2
  270. package/src/locales/en.tsx +50 -1
  271. package/src/locales/es.tsx +50 -1
  272. package/src/locales/pl.tsx +50 -1
  273. package/src/locales/sk.tsx +50 -1
  274. package/src/locales/uk.tsx +50 -1
  275. package/src/modules/shopping-cart.ts +14 -11
  276. package/src/utils/data/global.ts +1 -0
  277. package/src/utils/data/shopping-cart.ts +5 -0
  278. package/src/utils/data/ticket.ts +1 -0
  279. package/src/utils/gtm.ts +29 -0
  280. package/src/utils/types/event.type.ts +1 -0
  281. package/src/utils/types/global.type.ts +1 -0
  282. package/src/utils/types/gtm.type.ts +6 -0
  283. package/src/utils/types/order.type.ts +1 -0
  284. package/src/utils/types/shopping-cart.type.ts +42 -31
  285. package/src/utils/types/ticket.type.ts +23 -3
  286. package/tsconfig.json +2 -1
  287. package/dist/cjs/_virtual/colorManipulator.js +0 -6
  288. package/dist/cjs/_virtual/colorManipulator.js.map +0 -1
  289. package/dist/cjs/_virtual/createStyled.js +0 -6
  290. package/dist/cjs/_virtual/createStyled.js.map +0 -1
  291. package/dist/cjs/_virtual/customParseFormat.js +0 -6
  292. package/dist/cjs/_virtual/customParseFormat.js.map +0 -1
  293. package/dist/cjs/_virtual/dayjs.min.js +0 -6
  294. package/dist/cjs/_virtual/dayjs.min.js.map +0 -1
  295. package/dist/cjs/_virtual/extends.js +0 -6
  296. package/dist/cjs/_virtual/extends.js.map +0 -1
  297. package/dist/cjs/_virtual/index.umd.js +0 -6
  298. package/dist/cjs/_virtual/index.umd.js.map +0 -1
  299. package/dist/cjs/_virtual/index10.js +0 -11
  300. package/dist/cjs/_virtual/index10.js.map +0 -1
  301. package/dist/cjs/_virtual/index11.js +0 -11
  302. package/dist/cjs/_virtual/index11.js.map +0 -1
  303. package/dist/cjs/_virtual/index12.js +0 -6
  304. package/dist/cjs/_virtual/index12.js.map +0 -1
  305. package/dist/cjs/_virtual/index13.js +0 -6
  306. package/dist/cjs/_virtual/index13.js.map +0 -1
  307. package/dist/cjs/_virtual/index14.js +0 -6
  308. package/dist/cjs/_virtual/index14.js.map +0 -1
  309. package/dist/cjs/_virtual/index15.js +0 -6
  310. package/dist/cjs/_virtual/index15.js.map +0 -1
  311. package/dist/cjs/_virtual/index4.js +0 -11
  312. package/dist/cjs/_virtual/index4.js.map +0 -1
  313. package/dist/cjs/_virtual/index5.js +0 -11
  314. package/dist/cjs/_virtual/index5.js.map +0 -1
  315. package/dist/cjs/_virtual/index6.js +0 -11
  316. package/dist/cjs/_virtual/index6.js.map +0 -1
  317. package/dist/cjs/_virtual/index7.js +0 -11
  318. package/dist/cjs/_virtual/index7.js.map +0 -1
  319. package/dist/cjs/_virtual/index8.js +0 -11
  320. package/dist/cjs/_virtual/index8.js.map +0 -1
  321. package/dist/cjs/_virtual/index9.js +0 -11
  322. package/dist/cjs/_virtual/index9.js.map +0 -1
  323. package/dist/cjs/_virtual/interopRequireDefault.js +0 -6
  324. package/dist/cjs/_virtual/interopRequireDefault.js.map +0 -1
  325. package/dist/cjs/_virtual/isBetween.js +0 -6
  326. package/dist/cjs/_virtual/isBetween.js.map +0 -1
  327. package/dist/cjs/_virtual/jsx-runtime.js +0 -6
  328. package/dist/cjs/_virtual/jsx-runtime.js.map +0 -1
  329. package/dist/cjs/_virtual/localizedFormat.js +0 -6
  330. package/dist/cjs/_virtual/localizedFormat.js.map +0 -1
  331. package/dist/cjs/_virtual/lodash.js +0 -6
  332. package/dist/cjs/_virtual/lodash.js.map +0 -1
  333. package/dist/cjs/_virtual/lottie.js +0 -6
  334. package/dist/cjs/_virtual/lottie.js.map +0 -1
  335. package/dist/cjs/_virtual/numeral.js +0 -6
  336. package/dist/cjs/_virtual/numeral.js.map +0 -1
  337. package/dist/cjs/_virtual/objectWithoutPropertiesLoose.js +0 -6
  338. package/dist/cjs/_virtual/objectWithoutPropertiesLoose.js.map +0 -1
  339. package/dist/cjs/_virtual/react-is.development3.js +0 -6
  340. package/dist/cjs/_virtual/react-is.development3.js.map +0 -1
  341. package/dist/cjs/_virtual/react-is.production.min2.js +0 -6
  342. package/dist/cjs/_virtual/react-is.production.min2.js.map +0 -1
  343. package/dist/cjs/_virtual/react-jsx-runtime.development.js +0 -6
  344. package/dist/cjs/_virtual/react-jsx-runtime.development.js.map +0 -1
  345. package/dist/cjs/_virtual/react-jsx-runtime.production.min.js +0 -6
  346. package/dist/cjs/_virtual/react-jsx-runtime.production.min.js.map +0 -1
  347. package/dist/cjs/_virtual/timezone.js +0 -6
  348. package/dist/cjs/_virtual/timezone.js.map +0 -1
  349. package/dist/cjs/_virtual/use-sync-external-store-shim.development.js +0 -6
  350. package/dist/cjs/_virtual/use-sync-external-store-shim.development.js.map +0 -1
  351. package/dist/cjs/_virtual/use-sync-external-store-shim.production.js +0 -6
  352. package/dist/cjs/_virtual/use-sync-external-store-shim.production.js.map +0 -1
  353. package/dist/cjs/_virtual/useThemeWithoutDefault.js +0 -6
  354. package/dist/cjs/_virtual/useThemeWithoutDefault.js.map +0 -1
  355. package/dist/cjs/_virtual/utc.js +0 -6
  356. package/dist/cjs/_virtual/utc.js.map +0 -1
  357. package/dist/cjs/_virtual/weekOfYear.js +0 -6
  358. package/dist/cjs/_virtual/weekOfYear.js.map +0 -1
  359. package/dist/cjs/hooks/useFirstRender.js +0 -14
  360. package/dist/cjs/hooks/useFirstRender.js.map +0 -1
  361. package/dist/cjs/utils/data/order.js +0 -8
  362. package/dist/cjs/utils/data/order.js.map +0 -1
  363. package/dist/esm/_virtual/colorManipulator.js +0 -4
  364. package/dist/esm/_virtual/colorManipulator.js.map +0 -1
  365. package/dist/esm/_virtual/createStyled.js +0 -4
  366. package/dist/esm/_virtual/createStyled.js.map +0 -1
  367. package/dist/esm/_virtual/customParseFormat.js +0 -4
  368. package/dist/esm/_virtual/customParseFormat.js.map +0 -1
  369. package/dist/esm/_virtual/dayjs.min.js +0 -4
  370. package/dist/esm/_virtual/dayjs.min.js.map +0 -1
  371. package/dist/esm/_virtual/extends.js +0 -4
  372. package/dist/esm/_virtual/extends.js.map +0 -1
  373. package/dist/esm/_virtual/index.umd.js +0 -4
  374. package/dist/esm/_virtual/index.umd.js.map +0 -1
  375. package/dist/esm/_virtual/index10.js +0 -7
  376. package/dist/esm/_virtual/index10.js.map +0 -1
  377. package/dist/esm/_virtual/index11.js +0 -7
  378. package/dist/esm/_virtual/index11.js.map +0 -1
  379. package/dist/esm/_virtual/index12.js +0 -4
  380. package/dist/esm/_virtual/index12.js.map +0 -1
  381. package/dist/esm/_virtual/index13.js +0 -4
  382. package/dist/esm/_virtual/index13.js.map +0 -1
  383. package/dist/esm/_virtual/index14.js +0 -4
  384. package/dist/esm/_virtual/index14.js.map +0 -1
  385. package/dist/esm/_virtual/index15.js +0 -4
  386. package/dist/esm/_virtual/index15.js.map +0 -1
  387. package/dist/esm/_virtual/index4.js +0 -7
  388. package/dist/esm/_virtual/index4.js.map +0 -1
  389. package/dist/esm/_virtual/index5.js +0 -7
  390. package/dist/esm/_virtual/index5.js.map +0 -1
  391. package/dist/esm/_virtual/index6.js +0 -7
  392. package/dist/esm/_virtual/index6.js.map +0 -1
  393. package/dist/esm/_virtual/index7.js +0 -7
  394. package/dist/esm/_virtual/index7.js.map +0 -1
  395. package/dist/esm/_virtual/index8.js +0 -7
  396. package/dist/esm/_virtual/index8.js.map +0 -1
  397. package/dist/esm/_virtual/index9.js +0 -7
  398. package/dist/esm/_virtual/index9.js.map +0 -1
  399. package/dist/esm/_virtual/interopRequireDefault.js +0 -4
  400. package/dist/esm/_virtual/interopRequireDefault.js.map +0 -1
  401. package/dist/esm/_virtual/isBetween.js +0 -4
  402. package/dist/esm/_virtual/isBetween.js.map +0 -1
  403. package/dist/esm/_virtual/jsx-runtime.js +0 -4
  404. package/dist/esm/_virtual/jsx-runtime.js.map +0 -1
  405. package/dist/esm/_virtual/localizedFormat.js +0 -4
  406. package/dist/esm/_virtual/localizedFormat.js.map +0 -1
  407. package/dist/esm/_virtual/lodash.js +0 -4
  408. package/dist/esm/_virtual/lodash.js.map +0 -1
  409. package/dist/esm/_virtual/lottie.js +0 -4
  410. package/dist/esm/_virtual/lottie.js.map +0 -1
  411. package/dist/esm/_virtual/numeral.js +0 -4
  412. package/dist/esm/_virtual/numeral.js.map +0 -1
  413. package/dist/esm/_virtual/objectWithoutPropertiesLoose.js +0 -4
  414. package/dist/esm/_virtual/objectWithoutPropertiesLoose.js.map +0 -1
  415. package/dist/esm/_virtual/react-is.development3.js +0 -4
  416. package/dist/esm/_virtual/react-is.development3.js.map +0 -1
  417. package/dist/esm/_virtual/react-is.production.min2.js +0 -4
  418. package/dist/esm/_virtual/react-is.production.min2.js.map +0 -1
  419. package/dist/esm/_virtual/react-jsx-runtime.development.js +0 -4
  420. package/dist/esm/_virtual/react-jsx-runtime.development.js.map +0 -1
  421. package/dist/esm/_virtual/react-jsx-runtime.production.min.js +0 -4
  422. package/dist/esm/_virtual/react-jsx-runtime.production.min.js.map +0 -1
  423. package/dist/esm/_virtual/timezone.js +0 -4
  424. package/dist/esm/_virtual/timezone.js.map +0 -1
  425. package/dist/esm/_virtual/use-sync-external-store-shim.development.js +0 -4
  426. package/dist/esm/_virtual/use-sync-external-store-shim.development.js.map +0 -1
  427. package/dist/esm/_virtual/use-sync-external-store-shim.production.js +0 -4
  428. package/dist/esm/_virtual/use-sync-external-store-shim.production.js.map +0 -1
  429. package/dist/esm/_virtual/useThemeWithoutDefault.js +0 -4
  430. package/dist/esm/_virtual/useThemeWithoutDefault.js.map +0 -1
  431. package/dist/esm/_virtual/utc.js +0 -4
  432. package/dist/esm/_virtual/utc.js.map +0 -1
  433. package/dist/esm/_virtual/weekOfYear.js +0 -4
  434. package/dist/esm/_virtual/weekOfYear.js.map +0 -1
  435. package/dist/esm/hooks/useFirstRender.js +0 -12
  436. package/dist/esm/hooks/useFirstRender.js.map +0 -1
  437. package/dist/esm/utils/data/order.js +0 -8
  438. package/dist/esm/utils/data/order.js.map +0 -1
  439. package/dist/index.cjs.js +0 -90295
  440. package/dist/index.cjs.js.map +0 -1
  441. package/dist/index.esm.js +0 -90275
  442. package/dist/index.esm.js.map +0 -1
  443. package/dist/types/hooks/data/useShoppingCart.d.ts +0 -8
  444. package/src/form/MerchandiseSelection.tsx +0 -29
  445. package/src/form/ReleaseWithMerchandise.tsx +0 -230
  446. package/src/form/TicketSelection.tsx +0 -284
  447. package/src/form/TicketWithMerchandiseSelection.tsx +0 -131
package/.env.example ADDED
@@ -0,0 +1 @@
1
+ GITLAB_TOKEN=
@@ -0,0 +1,32 @@
1
+ #!/bin/bash
2
+
3
+ set -e
4
+
5
+ FRONTEND_DIR="../frontend"
6
+
7
+ echo "linking sdk to frontend for local development..."
8
+ echo ""
9
+
10
+ SDK_DIR="$(cd "$(dirname "$0")" && pwd)"
11
+
12
+ if [ ! -d "$SDK_DIR/dist" ] || [ -z "$(ls -A $SDK_DIR/dist 2>/dev/null)" ]; then
13
+ echo "building sdk first (dist/ directory not found)..."
14
+ cd "$SDK_DIR"
15
+ yarn build
16
+ fi
17
+
18
+ echo "pushing sdk to yalc..."
19
+ cd "$SDK_DIR"
20
+ yalc push --force
21
+
22
+ cd "$FRONTEND_DIR"
23
+
24
+ if [ -d "node_modules/@eventlook" ]; then
25
+ echo "removing existing sdk link..."
26
+ yalc remove @eventlook/sdk 2>/dev/null || true
27
+ fi
28
+
29
+ echo "adding sdk via yalc..."
30
+ yalc add @eventlook/sdk
31
+
32
+ echo "linked successfully"
@@ -1,6 +1,8 @@
1
1
  'use strict';
2
2
 
3
- var commonjsGlobal = typeof globalThis !== 'undefined' ? globalThis : typeof window !== 'undefined' ? window : typeof global !== 'undefined' ? global : typeof self !== 'undefined' ? self : {};
3
+ function getDefaultExportFromCjs (x) {
4
+ return x && x.__esModule && Object.prototype.hasOwnProperty.call(x, 'default') ? x['default'] : x;
5
+ }
4
6
 
5
- exports.commonjsGlobal = commonjsGlobal;
7
+ exports.getDefaultExportFromCjs = getDefaultExportFromCjs;
6
8
  //# sourceMappingURL=_commonjsHelpers.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"_commonjsHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;"}
1
+ {"version":3,"file":"_commonjsHelpers.js","sources":[],"sourcesContent":[],"names":[],"mappings":";;;;;;;;"}
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var build = {exports: {}};
3
+ var propTypes = {exports: {}};
4
4
 
5
- exports.__module = build;
5
+ exports.__module = propTypes;
6
6
  //# sourceMappingURL=index.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var shim = {exports: {}};
3
+ var reactIs = {exports: {}};
4
4
 
5
- exports.__module = shim;
5
+ exports.__module = reactIs;
6
6
  //# sourceMappingURL=index2.js.map
@@ -1,6 +1,6 @@
1
1
  'use strict';
2
2
 
3
- var toposort = {exports: {}};
3
+ var reactIs = {exports: {}};
4
4
 
5
- exports.__module = toposort;
5
+ exports.__module = reactIs;
6
6
  //# sourceMappingURL=index3.js.map
@@ -3,10 +3,12 @@
3
3
  Object.defineProperty(exports, '__esModule', { value: true });
4
4
 
5
5
  var React = require('react');
6
- var reactLazyLoadImageComponent = require('react-lazy-load-image-component');
7
6
  var material = require('@mui/material');
8
7
 
9
- function Image({ ratio, disabledEffect = false, effect = 'blur', objectFit = 'cover', sx, ...other }) {
8
+ function Image({ ratio, disabledEffect = false, objectFit = 'cover', sx, src, alt = '', ...other }) {
9
+ const [imgError, setImgError] = React.useState(false);
10
+ const [loaded, setLoaded] = React.useState(false);
11
+ const imgSrc = imgError || !src ? '/assets/img_placeholder.svg' : src;
10
12
  if (ratio) {
11
13
  return (React.createElement(material.Box, { component: "span", sx: {
12
14
  width: 1,
@@ -15,27 +17,40 @@ function Image({ ratio, disabledEffect = false, effect = 'blur', objectFit = 'co
15
17
  overflow: 'hidden',
16
18
  position: 'relative',
17
19
  pt: getRatio(ratio),
18
- '& .wrapper': {
20
+ ...sx,
21
+ }, ...other },
22
+ React.createElement(material.Box, { component: "img", src: imgSrc, alt: alt, loading: "lazy", decoding: "async", onLoad: () => setLoaded(true), onError: () => {
23
+ if (!imgError)
24
+ setImgError(true);
25
+ }, sx: {
26
+ position: 'absolute',
19
27
  top: 0,
20
28
  left: 0,
21
- right: 0,
22
- bottom: 0,
23
- lineHeight: 0,
24
- position: 'absolute',
25
- backgroundSize: 'cover !important',
26
- },
27
- ...sx,
28
- } },
29
- React.createElement(material.Box, { component: reactLazyLoadImageComponent.LazyLoadImage, wrapperClassName: "wrapper", effect: disabledEffect ? undefined : effect, placeholderSrc: "/assets/img_placeholder.svg", sx: { width: 1, height: 1, objectFit: 'cover' }, ...other })));
29
+ width: 1,
30
+ height: 1,
31
+ objectFit: 'cover',
32
+ ...(disabledEffect
33
+ ? {}
34
+ : { opacity: loaded ? 1 : 0, transition: 'opacity 0.3s ease-in-out' }),
35
+ } })));
30
36
  }
31
37
  return (React.createElement(material.Box, { component: "span", sx: {
32
38
  lineHeight: 1,
33
39
  display: 'block',
34
40
  overflow: 'hidden',
35
- '& .wrapper': { width: 1, height: 1, backgroundSize: 'cover !important' },
36
41
  ...sx,
37
42
  } },
38
- React.createElement(material.Box, { component: reactLazyLoadImageComponent.LazyLoadImage, wrapperClassName: "wrapper", effect: disabledEffect ? undefined : effect, placeholderSrc: "/assets/img_placeholder.svg", sx: { width: 1, height: 1, objectFit }, ...other })));
43
+ React.createElement(material.Box, { component: "img", src: imgSrc, alt: alt, loading: "lazy", decoding: "async", onLoad: () => setLoaded(true), onError: () => {
44
+ if (!imgError)
45
+ setImgError(true);
46
+ }, sx: {
47
+ width: 1,
48
+ height: 1,
49
+ objectFit,
50
+ ...(disabledEffect
51
+ ? {}
52
+ : { opacity: loaded ? 1 : 0, transition: 'opacity 0.3s ease-in-out' }),
53
+ }, ...other })));
39
54
  }
40
55
  // ----------------------------------------------------------------------
41
56
  function getRatio(ratio = '1/1') {
@@ -1 +1 @@
1
- {"version":3,"file":"Image.js","sources":["../../../src/components/Image.tsx"],"sourcesContent":["import React from 'react';\nimport { LazyLoadImage, LazyLoadImageProps } from 'react-lazy-load-image-component';\nimport { Theme } from '@mui/material/styles';\nimport { Box, BoxProps, SxProps } from '@mui/material';\n\n// ----------------------------------------------------------------------\n\nexport type ImageRatio = '4/3' | '3/4' | '6/4' | '4/6' | '16/9' | '9/16' | '21/9' | '9/21' | '1/1';\n\ntype IProps = BoxProps & LazyLoadImageProps;\n\ninterface Props extends IProps {\n sx?: SxProps<Theme>;\n ratio?: ImageRatio;\n disabledEffect?: boolean;\n objectFit?: 'cover' | 'contain';\n}\n\nexport default function Image({\n ratio,\n disabledEffect = false,\n effect = 'blur',\n objectFit = 'cover',\n sx,\n ...other\n}: Props) {\n if (ratio) {\n return (\n <Box\n component=\"span\"\n sx={{\n width: 1,\n lineHeight: 0,\n display: 'block',\n overflow: 'hidden',\n position: 'relative',\n pt: getRatio(ratio),\n '& .wrapper': {\n top: 0,\n left: 0,\n right: 0,\n bottom: 0,\n lineHeight: 0,\n position: 'absolute',\n backgroundSize: 'cover !important',\n },\n ...sx,\n }}\n >\n <Box\n component={LazyLoadImage}\n wrapperClassName=\"wrapper\"\n effect={disabledEffect ? undefined : effect}\n placeholderSrc=\"/assets/img_placeholder.svg\"\n sx={{ width: 1, height: 1, objectFit: 'cover' }}\n {...other}\n />\n </Box>\n );\n }\n\n return (\n <Box\n component=\"span\"\n sx={{\n lineHeight: 1,\n display: 'block',\n overflow: 'hidden',\n '& .wrapper': { width: 1, height: 1, backgroundSize: 'cover !important' },\n ...sx,\n }}\n >\n <Box\n component={LazyLoadImage}\n wrapperClassName=\"wrapper\"\n effect={disabledEffect ? undefined : effect}\n placeholderSrc=\"/assets/img_placeholder.svg\"\n sx={{ width: 1, height: 1, objectFit }}\n {...other}\n />\n </Box>\n );\n}\n\n// ----------------------------------------------------------------------\n\nfunction getRatio(ratio = '1/1') {\n return {\n '4/3': 'calc(100% / 4 * 3)',\n '3/4': 'calc(100% / 3 * 4)',\n '6/4': 'calc(100% / 6 * 4)',\n '4/6': 'calc(100% / 4 * 6)',\n '16/9': 'calc(100% / 16 * 9)',\n '9/16': 'calc(100% / 9 * 16)',\n '21/9': 'calc(100% / 21 * 9)',\n '9/21': 'calc(100% / 9 * 21)',\n '1/1': '100%',\n }[ratio];\n}\n"],"names":["Box","LazyLoadImage"],"mappings":";;;;;;;;AAkBc,SAAU,KAAK,CAAC,EAC5B,KAAK,EACL,cAAc,GAAG,KAAK,EACtB,MAAM,GAAG,MAAM,EACf,SAAS,GAAG,OAAO,EACnB,EAAE,EACF,GAAG,KAAK,EACF,EAAA;IACN,IAAI,KAAK,EAAE;QACT,QACE,oBAACA,YAAG,EAAA,EACF,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE;AACF,gBAAA,KAAK,EAAE,CAAC;AACR,gBAAA,UAAU,EAAE,CAAC;AACb,gBAAA,OAAO,EAAE,OAAO;AAChB,gBAAA,QAAQ,EAAE,QAAQ;AAClB,gBAAA,QAAQ,EAAE,UAAU;AACpB,gBAAA,EAAE,EAAE,QAAQ,CAAC,KAAK,CAAC;AACnB,gBAAA,YAAY,EAAE;AACZ,oBAAA,GAAG,EAAE,CAAC;AACN,oBAAA,IAAI,EAAE,CAAC;AACP,oBAAA,KAAK,EAAE,CAAC;AACR,oBAAA,MAAM,EAAE,CAAC;AACT,oBAAA,UAAU,EAAE,CAAC;AACb,oBAAA,QAAQ,EAAE,UAAU;AACpB,oBAAA,cAAc,EAAE,kBAAkB;AACnC,iBAAA;AACD,gBAAA,GAAG,EAAE;AACN,aAAA,EAAA;YAED,KAAA,CAAA,aAAA,CAACA,YAAG,IACF,SAAS,EAAEC,yCAAa,EACxB,gBAAgB,EAAC,SAAS,EAC1B,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,EAC3C,cAAc,EAAC,6BAA6B,EAC5C,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,OAAO,EAAE,KAC3C,KAAK,EAAA,CACT,CACE;;IAIV,QACE,oBAACD,YAAG,EAAA,EACF,SAAS,EAAC,MAAM,EAChB,EAAE,EAAE;AACF,YAAA,UAAU,EAAE,CAAC;AACb,YAAA,OAAO,EAAE,OAAO;AAChB,YAAA,QAAQ,EAAE,QAAQ;AAClB,YAAA,YAAY,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,cAAc,EAAE,kBAAkB,EAAE;AACzE,YAAA,GAAG,EAAE;AACN,SAAA,EAAA;QAED,KAAA,CAAA,aAAA,CAACA,YAAG,IACF,SAAS,EAAEC,yCAAa,EACxB,gBAAgB,EAAC,SAAS,EAC1B,MAAM,EAAE,cAAc,GAAG,SAAS,GAAG,MAAM,EAC3C,cAAc,EAAC,6BAA6B,EAC5C,EAAE,EAAE,EAAE,KAAK,EAAE,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,SAAS,EAAE,EAAA,GAClC,KAAK,EAAA,CACT,CACE;AAEV;AAEA;AAEA,SAAS,QAAQ,CAAC,KAAK,GAAG,KAAK,EAAA;IAC7B,OAAO;AACL,QAAA,KAAK,EAAE,oBAAoB;AAC3B,QAAA,KAAK,EAAE,oBAAoB;AAC3B,QAAA,KAAK,EAAE,oBAAoB;AAC3B,QAAA,KAAK,EAAE,oBAAoB;AAC3B,QAAA,MAAM,EAAE,qBAAqB;AAC7B,QAAA,MAAM,EAAE,qBAAqB;AAC7B,QAAA,MAAM,EAAE,qBAAqB;AAC7B,QAAA,MAAM,EAAE,qBAAqB;AAC7B,QAAA,KAAK,EAAE,MAAM;KACd,CAAC,KAAK,CAAC;AACV;;;;"}
1
+ {"version":3,"file":"Image.js","sources":["../../../src/components/Image.tsx"],"sourcesContent":["import React, { useState } from 'react';\nimport { Theme } from '@mui/material/styles';\nimport { Box, BoxProps, SxProps } from '@mui/material';\n\n// ----------------------------------------------------------------------\n\nexport type ImageRatio = '4/3' | '3/4' | '6/4' | '4/6' | '16/9' | '9/16' | '21/9' | '9/21' | '1/1';\n\ninterface Props extends BoxProps {\n src?: string;\n alt?: string;\n sx?: SxProps<Theme>;\n ratio?: ImageRatio;\n disabledEffect?: boolean;\n objectFit?: 'cover' | 'contain';\n}\n\nexport default function Image({\n ratio,\n disabledEffect = false,\n objectFit = 'cover',\n sx,\n src,\n alt = '',\n ...other\n}: Props) {\n const [imgError, setImgError] = useState(false);\n const [loaded, setLoaded] = useState(false);\n\n const imgSrc = imgError || !src ? '/assets/img_placeholder.svg' : src;\n\n if (ratio) {\n return (\n <Box\n component=\"span\"\n sx={{\n width: 1,\n lineHeight: 0,\n display: 'block',\n overflow: 'hidden',\n position: 'relative',\n pt: getRatio(ratio),\n ...sx,\n }}\n {...other}\n >\n <Box\n component=\"img\"\n src={imgSrc}\n alt={alt}\n loading=\"lazy\"\n decoding=\"async\"\n onLoad={() => setLoaded(true)}\n onError={() => {\n if (!imgError) setImgError(true);\n }}\n sx={{\n position: 'absolute',\n top: 0,\n left: 0,\n width: 1,\n height: 1,\n objectFit: 'cover',\n ...(disabledEffect\n ? {}\n : { opacity: loaded ? 1 : 0, transition: 'opacity 0.3s ease-in-out' }),\n }}\n />\n </Box>\n );\n }\n\n return (\n <Box\n component=\"span\"\n sx={{\n lineHeight: 1,\n display: 'block',\n overflow: 'hidden',\n ...sx,\n }}\n >\n <Box\n component=\"img\"\n src={imgSrc}\n alt={alt}\n loading=\"lazy\"\n decoding=\"async\"\n onLoad={() => setLoaded(true)}\n onError={() => {\n if (!imgError) setImgError(true);\n }}\n sx={{\n width: 1,\n height: 1,\n objectFit,\n ...(disabledEffect\n ? {}\n : { opacity: loaded ? 1 : 0, transition: 'opacity 0.3s ease-in-out' }),\n }}\n {...other}\n />\n </Box>\n );\n}\n\n// ----------------------------------------------------------------------\n\nfunction getRatio(ratio = '1/1') {\n return {\n '4/3': 'calc(100% / 4 * 3)',\n '3/4': 'calc(100% / 3 * 4)',\n '6/4': 'calc(100% / 6 * 4)',\n '4/6': 'calc(100% / 4 * 6)',\n '16/9': 'calc(100% / 16 * 9)',\n '9/16': 'calc(100% / 9 * 16)',\n '21/9': 'calc(100% / 21 * 9)',\n '9/21': 'calc(100% / 9 * 21)',\n '1/1': '100%',\n }[ratio];\n}\n"],"names":["useState","Box"],"mappings":"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"}
@@ -5,9 +5,9 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var React = require('react');
6
6
  var reactHookForm = require('react-hook-form');
7
7
 
8
- function FormProvider({ children, onSubmit, methods }) {
8
+ function FormProvider({ children, onSubmit, methods, formId }) {
9
9
  return (React.createElement(reactHookForm.FormProvider, { ...methods },
10
- React.createElement("form", { onSubmit: onSubmit }, children)));
10
+ React.createElement("form", { id: formId, onSubmit: onSubmit }, children)));
11
11
  }
12
12
 
13
13
  exports.default = FormProvider;
@@ -1 +1 @@
1
- {"version":3,"file":"FormProvider.js","sources":["../../../../src/components/hook-form/FormProvider.tsx"],"sourcesContent":["import React from 'react';\nimport { FormProvider as Form, UseFormReturn } from 'react-hook-form';\n\n// ----------------------------------------------------------------------\n\ntype Props = {\n children: React.ReactNode;\n methods: UseFormReturn<any>;\n onSubmit?: VoidFunction;\n};\n\nexport default function FormProvider({ children, onSubmit, methods }: Props) {\n return (\n <Form {...methods}>\n <form onSubmit={onSubmit}>{children}</form>\n </Form>\n );\n}\n"],"names":["Form"],"mappings":";;;;;;;AAWc,SAAU,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAS,EAAA;AACzE,IAAA,QACE,KAAA,CAAA,aAAA,CAACA,0BAAI,EAAA,EAAA,GAAK,OAAO,EAAA;QACf,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,QAAQ,EAAE,QAAQ,EAAA,EAAG,QAAQ,CAAQ,CACtC;AAEX;;;;"}
1
+ {"version":3,"file":"FormProvider.js","sources":["../../../../src/components/hook-form/FormProvider.tsx"],"sourcesContent":["import React from 'react';\nimport { FormProvider as Form, UseFormReturn } from 'react-hook-form';\n\n// ----------------------------------------------------------------------\n\ntype Props = {\n children: React.ReactNode;\n methods: UseFormReturn<any>;\n onSubmit?: VoidFunction;\n formId?: string;\n};\n\nexport default function FormProvider({ children, onSubmit, methods, formId }: Props) {\n return (\n <Form {...methods}>\n <form id={formId} onSubmit={onSubmit}>\n {children}\n </form>\n </Form>\n );\n}\n"],"names":["Form"],"mappings":";;;;;;;AAYc,SAAU,YAAY,CAAC,EAAE,QAAQ,EAAE,QAAQ,EAAE,OAAO,EAAE,MAAM,EAAS,EAAA;AACjF,IAAA,QACE,KAAA,CAAA,aAAA,CAACA,0BAAI,EAAA,EAAA,GAAK,OAAO,EAAA;AACf,QAAA,KAAA,CAAA,aAAA,CAAA,MAAA,EAAA,EAAM,EAAE,EAAE,MAAM,EAAE,QAAQ,EAAE,QAAQ,EAAA,EACjC,QAAQ,CACJ,CACF;AAEX;;;;"}
@@ -21,7 +21,7 @@ const initialState = {
21
21
  },
22
22
  };
23
23
  const GlobalContext = React.createContext(initialState);
24
- function GlobalProvider({ children, lang, showSnackbar, callbacks, links, options, content, }) {
24
+ function GlobalProvider({ children, lang, showSnackbar, callbacks, links, options, content, seatingIframeUrl, }) {
25
25
  const [global$1, setGlobal] = React.useState({
26
26
  ...initialState,
27
27
  showSnackbar: showSnackbar || initialState.showSnackbar,
@@ -30,6 +30,7 @@ function GlobalProvider({ children, lang, showSnackbar, callbacks, links, option
30
30
  links,
31
31
  options,
32
32
  content,
33
+ seatingIframeUrl,
33
34
  });
34
35
  const handleSetGlobal = (value) => {
35
36
  setGlobal({
@@ -1 +1 @@
1
- {"version":3,"file":"GlobalContext.js","sources":["../../../src/context/GlobalContext.tsx"],"sourcesContent":["import React, { createContext, ReactNode, useMemo, useState } from 'react';\nimport { IGlobalContext } from '@utils/types/global.type';\nimport { Languages } from '@utils/data/language';\nimport * as locales from '@locales';\nimport { getNestedValue } from '@utils/global.ts';\n\nconst initialState: IGlobalContext = {\n lang: Languages.CS,\n setGlobal: (value: Partial<IGlobalContext>) => {},\n showSnackbar: (text: string, options?: { variant: 'success' | 'error' }) => alert(text),\n t: (key) => key,\n callbacks: {\n homepage: () => {},\n tickets: () => {},\n detail: () => {},\n },\n links: {\n termsAndConditions: '',\n gdpr: '',\n },\n};\n\nconst GlobalContext = createContext(initialState);\n\ntype Props = {\n children: ReactNode;\n lang: Languages;\n callbacks: IGlobalContext['callbacks'];\n links: IGlobalContext['links'];\n showSnackbar?: IGlobalContext['showSnackbar'];\n options?: IGlobalContext['options'];\n content?: IGlobalContext['content'];\n};\n\nfunction GlobalProvider({\n children,\n lang,\n showSnackbar,\n callbacks,\n links,\n options,\n content,\n}: Props) {\n const [global, setGlobal] = useState<IGlobalContext>({\n ...initialState,\n showSnackbar: showSnackbar || initialState.showSnackbar,\n lang,\n callbacks,\n links,\n options,\n content,\n });\n\n const handleSetGlobal = (value: Partial<IGlobalContext>) => {\n setGlobal({\n ...global,\n ...value,\n options: {\n ...global.options,\n ...value.options,\n },\n });\n };\n\n const t = (key: string, params?: Record<string, string | number>) => {\n const translation = (locales as Record<Languages, any>)[lang];\n let template = getNestedValue(translation, key) || key;\n\n if (params) {\n for (const [paramKey, paramValue] of Object.entries(params)) {\n template = template.replaceAll(`{{${paramKey}}}`, String(paramValue));\n }\n }\n\n return template;\n };\n\n const memoizedValue = useMemo(\n () => ({\n ...global,\n setGlobal: handleSetGlobal,\n t,\n }),\n [global]\n );\n\n return <GlobalContext.Provider value={memoizedValue}>{children}</GlobalContext.Provider>;\n}\n\nexport { GlobalProvider, GlobalContext };\n"],"names":["Languages","createContext","global","useState","locales","getNestedValue","useMemo"],"mappings":";;;;;;;AAMA,MAAM,YAAY,GAAmB;IACnC,IAAI,EAAEA,kBAAS,CAAC,EAAE;AAClB,IAAA,SAAS,EAAE,CAAC,KAA8B,QAAO;IACjD,YAAY,EAAE,CAAC,IAAY,EAAE,OAA0C,KAAK,KAAK,CAAC,IAAI,CAAC;AACvF,IAAA,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG;AACf,IAAA,SAAS,EAAE;AACT,QAAA,QAAQ,EAAE,MAAK,GAAG;AAClB,QAAA,OAAO,EAAE,MAAK,GAAG;AACjB,QAAA,MAAM,EAAE,MAAK,GAAG;AACjB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,kBAAkB,EAAE,EAAE;AACtB,QAAA,IAAI,EAAE,EAAE;AACT,KAAA;CACF;AAED,MAAM,aAAa,GAAGC,mBAAa,CAAC,YAAY;AAYhD,SAAS,cAAc,CAAC,EACtB,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,KAAK,EACL,OAAO,EACP,OAAO,GACD,EAAA;AACN,IAAA,MAAM,CAACC,QAAM,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAiB;AACnD,QAAA,GAAG,YAAY;AACf,QAAA,YAAY,EAAE,YAAY,IAAI,YAAY,CAAC,YAAY;QACvD,IAAI;QACJ,SAAS;QACT,KAAK;QACL,OAAO;QACP,OAAO;AACR,KAAA,CAAC;AAEF,IAAA,MAAM,eAAe,GAAG,CAAC,KAA8B,KAAI;AACzD,QAAA,SAAS,CAAC;AACR,YAAA,GAAGD,QAAM;AACT,YAAA,GAAG,KAAK;AACR,YAAA,OAAO,EAAE;gBACP,GAAGA,QAAM,CAAC,OAAO;gBACjB,GAAG,KAAK,CAAC,OAAO;AACjB,aAAA;AACF,SAAA,CAAC;AACJ,KAAC;AAED,IAAA,MAAM,CAAC,GAAG,CAAC,GAAW,EAAE,MAAwC,KAAI;AAClE,QAAA,MAAM,WAAW,GAAIE,KAAkC,CAAC,IAAI,CAAC;QAC7D,IAAI,QAAQ,GAAGC,qBAAc,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,GAAG;QAEtD,IAAI,MAAM,EAAE;AACV,YAAA,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC3D,gBAAA,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA,EAAA,EAAK,QAAQ,CAAA,EAAA,CAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;;;AAIzE,QAAA,OAAO,QAAQ;AACjB,KAAC;AAED,IAAA,MAAM,aAAa,GAAGC,aAAO,CAC3B,OAAO;AACL,QAAA,GAAGJ,QAAM;AACT,QAAA,SAAS,EAAE,eAAe;QAC1B,CAAC;AACF,KAAA,CAAC,EACF,CAACA,QAAM,CAAC,CACT;IAED,OAAO,KAAA,CAAA,aAAA,CAAC,aAAa,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,aAAa,EAAA,EAAG,QAAQ,CAA0B;AAC1F;;;;;"}
1
+ {"version":3,"file":"GlobalContext.js","sources":["../../../src/context/GlobalContext.tsx"],"sourcesContent":["import React, { createContext, ReactNode, useMemo, useState } from 'react';\nimport { IGlobalContext } from '@utils/types/global.type';\nimport { Languages } from '@utils/data/language';\nimport * as locales from '@locales';\nimport { getNestedValue } from '@utils/global.ts';\n\nconst initialState: IGlobalContext = {\n lang: Languages.CS,\n setGlobal: (value: Partial<IGlobalContext>) => {},\n showSnackbar: (text: string, options?: { variant: 'success' | 'error' }) => alert(text),\n t: (key) => key,\n callbacks: {\n homepage: () => {},\n tickets: () => {},\n detail: () => {},\n },\n links: {\n termsAndConditions: '',\n gdpr: '',\n },\n};\n\nconst GlobalContext = createContext(initialState);\n\ntype Props = {\n children: ReactNode;\n lang: Languages;\n callbacks: IGlobalContext['callbacks'];\n links: IGlobalContext['links'];\n showSnackbar?: IGlobalContext['showSnackbar'];\n options?: IGlobalContext['options'];\n content?: IGlobalContext['content'];\n seatingIframeUrl?: IGlobalContext['seatingIframeUrl'];\n};\n\nfunction GlobalProvider({\n children,\n lang,\n showSnackbar,\n callbacks,\n links,\n options,\n content,\n seatingIframeUrl,\n}: Props) {\n const [global, setGlobal] = useState<IGlobalContext>({\n ...initialState,\n showSnackbar: showSnackbar || initialState.showSnackbar,\n lang,\n callbacks,\n links,\n options,\n content,\n seatingIframeUrl,\n });\n\n const handleSetGlobal = (value: Partial<IGlobalContext>) => {\n setGlobal({\n ...global,\n ...value,\n options: {\n ...global.options,\n ...value.options,\n },\n });\n };\n\n const t = (key: string, params?: Record<string, string | number>) => {\n const translation = (locales as Record<Languages, any>)[lang];\n let template = getNestedValue(translation, key) || key;\n\n if (params) {\n for (const [paramKey, paramValue] of Object.entries(params)) {\n template = template.replaceAll(`{{${paramKey}}}`, String(paramValue));\n }\n }\n\n return template;\n };\n\n const memoizedValue = useMemo(\n () => ({\n ...global,\n setGlobal: handleSetGlobal,\n t,\n }),\n [global]\n );\n\n return <GlobalContext.Provider value={memoizedValue}>{children}</GlobalContext.Provider>;\n}\n\nexport { GlobalProvider, GlobalContext };\n"],"names":["Languages","createContext","global","useState","locales","getNestedValue","useMemo"],"mappings":";;;;;;;AAMA,MAAM,YAAY,GAAmB;IACnC,IAAI,EAAEA,kBAAS,CAAC,EAAE;AAClB,IAAA,SAAS,EAAE,CAAC,KAA8B,QAAO;IACjD,YAAY,EAAE,CAAC,IAAY,EAAE,OAA0C,KAAK,KAAK,CAAC,IAAI,CAAC;AACvF,IAAA,CAAC,EAAE,CAAC,GAAG,KAAK,GAAG;AACf,IAAA,SAAS,EAAE;AACT,QAAA,QAAQ,EAAE,MAAK,GAAG;AAClB,QAAA,OAAO,EAAE,MAAK,GAAG;AACjB,QAAA,MAAM,EAAE,MAAK,GAAG;AACjB,KAAA;AACD,IAAA,KAAK,EAAE;AACL,QAAA,kBAAkB,EAAE,EAAE;AACtB,QAAA,IAAI,EAAE,EAAE;AACT,KAAA;CACF;AAED,MAAM,aAAa,GAAGC,mBAAa,CAAC,YAAY;AAahD,SAAS,cAAc,CAAC,EACtB,QAAQ,EACR,IAAI,EACJ,YAAY,EACZ,SAAS,EACT,KAAK,EACL,OAAO,EACP,OAAO,EACP,gBAAgB,GACV,EAAA;AACN,IAAA,MAAM,CAACC,QAAM,EAAE,SAAS,CAAC,GAAGC,cAAQ,CAAiB;AACnD,QAAA,GAAG,YAAY;AACf,QAAA,YAAY,EAAE,YAAY,IAAI,YAAY,CAAC,YAAY;QACvD,IAAI;QACJ,SAAS;QACT,KAAK;QACL,OAAO;QACP,OAAO;QACP,gBAAgB;AACjB,KAAA,CAAC;AAEF,IAAA,MAAM,eAAe,GAAG,CAAC,KAA8B,KAAI;AACzD,QAAA,SAAS,CAAC;AACR,YAAA,GAAGD,QAAM;AACT,YAAA,GAAG,KAAK;AACR,YAAA,OAAO,EAAE;gBACP,GAAGA,QAAM,CAAC,OAAO;gBACjB,GAAG,KAAK,CAAC,OAAO;AACjB,aAAA;AACF,SAAA,CAAC;AACJ,KAAC;AAED,IAAA,MAAM,CAAC,GAAG,CAAC,GAAW,EAAE,MAAwC,KAAI;AAClE,QAAA,MAAM,WAAW,GAAIE,KAAkC,CAAC,IAAI,CAAC;QAC7D,IAAI,QAAQ,GAAGC,qBAAc,CAAC,WAAW,EAAE,GAAG,CAAC,IAAI,GAAG;QAEtD,IAAI,MAAM,EAAE;AACV,YAAA,KAAK,MAAM,CAAC,QAAQ,EAAE,UAAU,CAAC,IAAI,MAAM,CAAC,OAAO,CAAC,MAAM,CAAC,EAAE;AAC3D,gBAAA,QAAQ,GAAG,QAAQ,CAAC,UAAU,CAAC,CAAA,EAAA,EAAK,QAAQ,CAAA,EAAA,CAAI,EAAE,MAAM,CAAC,UAAU,CAAC,CAAC;;;AAIzE,QAAA,OAAO,QAAQ;AACjB,KAAC;AAED,IAAA,MAAM,aAAa,GAAGC,aAAO,CAC3B,OAAO;AACL,QAAA,GAAGJ,QAAM;AACT,QAAA,SAAS,EAAE,eAAe;QAC1B,CAAC;AACF,KAAA,CAAC,EACF,CAACA,QAAM,CAAC,CACT;IAED,OAAO,KAAA,CAAA,aAAA,CAAC,aAAa,CAAC,QAAQ,EAAA,EAAC,KAAK,EAAE,aAAa,EAAA,EAAG,QAAQ,CAA0B;AAC1F;;;;;"}
@@ -5,10 +5,10 @@ Object.defineProperty(exports, '__esModule', { value: true });
5
5
  var useActiveEventProducts = require('../hooks/data/useActiveEventProducts.js');
6
6
  var material = require('@mui/material');
7
7
  var React = require('react');
8
- var TicketWithMerchandiseSelection = require('./TicketWithMerchandiseSelection.js');
9
- var TicketSelection = require('./TicketSelection.js');
8
+ var TicketWithMerchandiseSelection = require('./tickets/TicketWithMerchandiseSelection.js');
9
+ var TicketSelection = require('./tickets/TicketSelection.js');
10
10
  var useGlobal = require('../hooks/useGlobal.js');
11
- var MerchandiseSelection = require('./MerchandiseSelection.js');
11
+ var MerchandiseSelection = require('./merchandise/MerchandiseSelection.js');
12
12
 
13
13
  const ChildEventDialog = ({ event, openDialog, onClose }) => {
14
14
  const { t } = useGlobal.default();
@@ -1 +1 @@
1
- {"version":3,"file":"ChildEventDialog.js","sources":["../../../src/form/ChildEventDialog.tsx"],"sourcesContent":["import useActiveEventProducts from '@hooks/data/useActiveEventProducts';\nimport { Dialog, DialogContent, Stack, Step, StepContent, StepLabel, Stepper } from '@mui/material';\nimport { IEvent } from '@utils/types/event.type';\nimport React from 'react';\nimport TicketWithMerchandiseSelection from './TicketWithMerchandiseSelection';\nimport TicketSelection from './TicketSelection';\nimport useGlobal from '@hooks/useGlobal';\nimport MerchandiseSelection from './MerchandiseSelection';\n\ninterface Props {\n event: IEvent;\n openDialog: boolean;\n onClose?: () => void;\n}\n\nconst ChildEventDialog: React.FC<Props> = ({ event, openDialog, onClose }) => {\n const { t } = useGlobal();\n const { data: eventProducts, isLoading } = useActiveEventProducts(event.id);\n\n return (\n <Dialog open={openDialog} onClose={() => onClose && onClose()} fullWidth>\n <DialogContent>\n <Stack spacing={1}>\n <Stepper orientation=\"vertical\">\n <Step active>\n <StepLabel>{t('event.tickets.stepper.1.title')}</StepLabel>\n <StepContent>\n {event.hasMerchandise ? (\n <TicketWithMerchandiseSelection event={event} />\n ) : (\n <TicketSelection event={event} />\n )}\n </StepContent>\n </Step>\n {event.hasMerchandise && eventProducts.length && (\n <Step active>\n <StepLabel>{t('event.tickets.stepper.4.title')}</StepLabel>\n <StepContent>\n <MerchandiseSelection\n eventProducts={eventProducts}\n eventId={event.id}\n isLoading={isLoading}\n />\n </StepContent>\n </Step>\n )}\n </Stepper>\n </Stack>\n </DialogContent>\n </Dialog>\n );\n};\n\nexport default ChildEventDialog;\n"],"names":["useGlobal","useActiveEventProducts","Dialog","DialogContent","Stack","Stepper","Step","StepLabel","StepContent","TicketWithMerchandiseSelection","TicketSelection","MerchandiseSelection"],"mappings":";;;;;;;;;;;;AAeA,MAAM,gBAAgB,GAAoB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAI;AAC3E,IAAA,MAAM,EAAE,CAAC,EAAE,GAAGA,iBAAS,EAAE;AACzB,IAAA,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,GAAGC,8BAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;AAE3E,IAAA,QACE,KAAA,CAAA,aAAA,CAACC,eAAM,IAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,IAAI,OAAO,EAAE,EAAE,SAAS,EAAA,IAAA,EAAA;AACtE,QAAA,KAAA,CAAA,aAAA,CAACC,sBAAa,EAAA,IAAA;AACZ,YAAA,KAAA,CAAA,aAAA,CAACC,cAAK,EAAA,EAAC,OAAO,EAAE,CAAC,EAAA;AACf,gBAAA,KAAA,CAAA,aAAA,CAACC,gBAAO,EAAA,EAAC,WAAW,EAAC,UAAU,EAAA;oBAC7B,KAAA,CAAA,aAAA,CAACC,aAAI,IAAC,MAAM,EAAA,IAAA,EAAA;AACV,wBAAA,KAAA,CAAA,aAAA,CAACC,kBAAS,EAAA,IAAA,EAAE,CAAC,CAAC,+BAA+B,CAAC,CAAa;AAC3D,wBAAA,KAAA,CAAA,aAAA,CAACC,oBAAW,EAAA,IAAA,EACT,KAAK,CAAC,cAAc,IACnB,KAAA,CAAA,aAAA,CAACC,sCAA8B,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,CAAI,KAEhD,KAAA,CAAA,aAAA,CAACC,uBAAe,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,CAAI,CAClC,CACW,CACT;oBACN,KAAK,CAAC,cAAc,IAAI,aAAa,CAAC,MAAM,KAC3C,KAAA,CAAA,aAAA,CAACJ,aAAI,EAAA,EAAC,MAAM,EAAA,IAAA,EAAA;AACV,wBAAA,KAAA,CAAA,aAAA,CAACC,kBAAS,EAAA,IAAA,EAAE,CAAC,CAAC,+BAA+B,CAAC,CAAa;AAC3D,wBAAA,KAAA,CAAA,aAAA,CAACC,oBAAW,EAAA,IAAA;4BACV,KAAA,CAAA,aAAA,CAACG,4BAAoB,EAAA,EACnB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,KAAK,CAAC,EAAE,EACjB,SAAS,EAAE,SAAS,EAAA,CACpB,CACU,CACT,CACR,CACO,CACJ,CACM,CACT;AAEb;;;;"}
1
+ {"version":3,"file":"ChildEventDialog.js","sources":["../../../src/form/ChildEventDialog.tsx"],"sourcesContent":["import useActiveEventProducts from '@hooks/data/useActiveEventProducts';\nimport { Dialog, DialogContent, Stack, Step, StepContent, StepLabel, Stepper } from '@mui/material';\nimport { IEvent } from '@utils/types/event.type';\nimport React from 'react';\nimport TicketWithMerchandiseSelection from './tickets/TicketWithMerchandiseSelection';\nimport TicketSelection from './tickets/TicketSelection';\nimport useGlobal from '@hooks/useGlobal';\nimport MerchandiseSelection from './merchandise/MerchandiseSelection';\n\ninterface Props {\n event: IEvent;\n openDialog: boolean;\n onClose?: () => void;\n}\n\nconst ChildEventDialog: React.FC<Props> = ({ event, openDialog, onClose }) => {\n const { t } = useGlobal();\n const { data: eventProducts, isLoading } = useActiveEventProducts(event.id);\n\n return (\n <Dialog open={openDialog} onClose={() => onClose && onClose()} fullWidth>\n <DialogContent>\n <Stack spacing={1}>\n <Stepper orientation=\"vertical\">\n <Step active>\n <StepLabel>{t('event.tickets.stepper.1.title')}</StepLabel>\n <StepContent>\n {event.hasMerchandise ? (\n <TicketWithMerchandiseSelection event={event} />\n ) : (\n <TicketSelection event={event} />\n )}\n </StepContent>\n </Step>\n {event.hasMerchandise && eventProducts.length && (\n <Step active>\n <StepLabel>{t('event.tickets.stepper.4.title')}</StepLabel>\n <StepContent>\n <MerchandiseSelection\n eventProducts={eventProducts}\n eventId={event.id}\n isLoading={isLoading}\n />\n </StepContent>\n </Step>\n )}\n </Stepper>\n </Stack>\n </DialogContent>\n </Dialog>\n );\n};\n\nexport default ChildEventDialog;\n"],"names":["useGlobal","useActiveEventProducts","Dialog","DialogContent","Stack","Stepper","Step","StepLabel","StepContent","TicketWithMerchandiseSelection","TicketSelection","MerchandiseSelection"],"mappings":";;;;;;;;;;;;AAeA,MAAM,gBAAgB,GAAoB,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,OAAO,EAAE,KAAI;AAC3E,IAAA,MAAM,EAAE,CAAC,EAAE,GAAGA,iBAAS,EAAE;AACzB,IAAA,MAAM,EAAE,IAAI,EAAE,aAAa,EAAE,SAAS,EAAE,GAAGC,8BAAsB,CAAC,KAAK,CAAC,EAAE,CAAC;AAE3E,IAAA,QACE,KAAA,CAAA,aAAA,CAACC,eAAM,IAAC,IAAI,EAAE,UAAU,EAAE,OAAO,EAAE,MAAM,OAAO,IAAI,OAAO,EAAE,EAAE,SAAS,EAAA,IAAA,EAAA;AACtE,QAAA,KAAA,CAAA,aAAA,CAACC,sBAAa,EAAA,IAAA;AACZ,YAAA,KAAA,CAAA,aAAA,CAACC,cAAK,EAAA,EAAC,OAAO,EAAE,CAAC,EAAA;AACf,gBAAA,KAAA,CAAA,aAAA,CAACC,gBAAO,EAAA,EAAC,WAAW,EAAC,UAAU,EAAA;oBAC7B,KAAA,CAAA,aAAA,CAACC,aAAI,IAAC,MAAM,EAAA,IAAA,EAAA;AACV,wBAAA,KAAA,CAAA,aAAA,CAACC,kBAAS,EAAA,IAAA,EAAE,CAAC,CAAC,+BAA+B,CAAC,CAAa;AAC3D,wBAAA,KAAA,CAAA,aAAA,CAACC,oBAAW,EAAA,IAAA,EACT,KAAK,CAAC,cAAc,IACnB,KAAA,CAAA,aAAA,CAACC,sCAA8B,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,CAAI,KAEhD,KAAA,CAAA,aAAA,CAACC,uBAAe,EAAA,EAAC,KAAK,EAAE,KAAK,EAAA,CAAI,CAClC,CACW,CACT;oBACN,KAAK,CAAC,cAAc,IAAI,aAAa,CAAC,MAAM,KAC3C,KAAA,CAAA,aAAA,CAACJ,aAAI,EAAA,EAAC,MAAM,EAAA,IAAA,EAAA;AACV,wBAAA,KAAA,CAAA,aAAA,CAACC,kBAAS,EAAA,IAAA,EAAE,CAAC,CAAC,+BAA+B,CAAC,CAAa;AAC3D,wBAAA,KAAA,CAAA,aAAA,CAACC,oBAAW,EAAA,IAAA;4BACV,KAAA,CAAA,aAAA,CAACG,4BAAoB,EAAA,EACnB,aAAa,EAAE,aAAa,EAC5B,OAAO,EAAE,KAAK,CAAC,EAAE,EACjB,SAAS,EAAE,SAAS,EAAA,CACpB,CACU,CACT,CACR,CACO,CACJ,CACM,CACT;AAEb;;;;"}
@@ -16,7 +16,7 @@ var useGlobal = require('../hooks/useGlobal.js');
16
16
 
17
17
  const ContactPerson = ({ event }) => {
18
18
  const { t, content } = useGlobal.default();
19
- return (React.createElement(material.Grid, { container: true, spacing: 3 },
19
+ return (React.createElement(material.Grid, { container: true, spacing: { xs: 1, md: 2 } },
20
20
  React.createElement(material.Grid, { item: true, xs: 12, md: 6 },
21
21
  React.createElement(RHFTextField.default, { name: "firstName", label: t('form.labels.first_name') })),
22
22
  React.createElement(material.Grid, { item: true, xs: 12, md: 6 },
@@ -1 +1 @@
1
- {"version":3,"file":"ContactPerson.js","sources":["../../../src/form/ContactPerson.tsx"],"sourcesContent":["import React from 'react';\nimport { Grid, MenuItem } from '@mui/material';\nimport { RHFSelect, RHFTextField } from '@components/hook-form';\nimport RHFDatePicker from '@components/hook-form/RHFDatePicker';\nimport { Gender } from '@utils/data/gender';\nimport RHFPhone from '@components/hook-form/RHFPhone';\nimport dayjs from 'dayjs';\nimport { IEvent } from '@utils/types/event.type';\nimport { MuiTelInputCountry } from 'mui-tel-input';\nimport ExtraField from '@form/extra-field/ExtraField';\nimport useGlobal from '@hooks/useGlobal.ts';\n\ninterface Props {\n event: IEvent;\n}\n\nconst ContactPerson: React.FC<Props> = ({ event }) => {\n const { t, content } = useGlobal();\n\n return (\n <Grid container spacing={3}>\n <Grid item xs={12} md={6}>\n <RHFTextField name=\"firstName\" label={t('form.labels.first_name')} />\n </Grid>\n <Grid item xs={12} md={6}>\n <RHFTextField name=\"lastName\" label={t('form.labels.last_name')} />\n </Grid>\n <Grid item xs={12} md={6}>\n <RHFTextField name=\"email\" label={t('form.labels.email')} />\n </Grid>\n <Grid item xs={12} md={6}>\n <RHFPhone\n name=\"phone\"\n label={t('form.labels.phone')}\n defaultCountry={event.place.countryCode as MuiTelInputCountry}\n />\n </Grid>\n {!content?.form?.disableBirthDate && (\n <Grid item xs={12} md={6}>\n <RHFDatePicker\n name=\"birthdate\"\n label={t('form.labels.birthdate')}\n openTo=\"year\"\n views={['year', 'month', 'day']}\n maxDate={dayjs()}\n />\n </Grid>\n )}\n {!content?.form?.disableGender && (\n <Grid item xs={12} md={6}>\n <RHFSelect name=\"gender\" label={t('form.labels.gender')}>\n <MenuItem value={Gender.MALE}>{t('form.labels.male')}</MenuItem>\n <MenuItem value={Gender.FEMALE}>{t('form.labels.female')}</MenuItem>\n <MenuItem value={Gender.OTHER}>{t('form.labels.other')}</MenuItem>\n </RHFSelect>\n </Grid>\n )}\n {event?.extraFields.map((field, index) => (\n <Grid key={field.id} item xs={12} md={6}>\n <ExtraField extraField={field} name={`extraFields.${index}.value`} />\n </Grid>\n ))}\n </Grid>\n );\n};\n\nexport default ContactPerson;\n"],"names":["useGlobal","Grid","RHFTextField","RHFPhone","RHFDatePicker","RHFSelect","MenuItem","Gender","ExtraField"],"mappings":"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"}
1
+ {"version":3,"file":"ContactPerson.js","sources":["../../../src/form/ContactPerson.tsx"],"sourcesContent":["import React from 'react';\nimport { Grid, MenuItem } from '@mui/material';\nimport { RHFSelect, RHFTextField } from '@components/hook-form';\nimport RHFDatePicker from '@components/hook-form/RHFDatePicker';\nimport { Gender } from '@utils/data/gender';\nimport RHFPhone from '@components/hook-form/RHFPhone';\nimport dayjs from 'dayjs';\nimport { IEvent } from '@utils/types/event.type';\nimport { MuiTelInputCountry } from 'mui-tel-input';\nimport ExtraField from '@form/extra-field/ExtraField';\nimport useGlobal from '@hooks/useGlobal.ts';\n\ninterface Props {\n event: IEvent;\n}\n\nconst ContactPerson: React.FC<Props> = ({ event }) => {\n const { t, content } = useGlobal();\n\n return (\n <Grid container spacing={{ xs: 1, md: 2 }}>\n <Grid item xs={12} md={6}>\n <RHFTextField name=\"firstName\" label={t('form.labels.first_name')} />\n </Grid>\n <Grid item xs={12} md={6}>\n <RHFTextField name=\"lastName\" label={t('form.labels.last_name')} />\n </Grid>\n <Grid item xs={12} md={6}>\n <RHFTextField name=\"email\" label={t('form.labels.email')} />\n </Grid>\n <Grid item xs={12} md={6}>\n <RHFPhone\n name=\"phone\"\n label={t('form.labels.phone')}\n defaultCountry={event.place.countryCode as MuiTelInputCountry}\n />\n </Grid>\n {!content?.form?.disableBirthDate && (\n <Grid item xs={12} md={6}>\n <RHFDatePicker\n name=\"birthdate\"\n label={t('form.labels.birthdate')}\n openTo=\"year\"\n views={['year', 'month', 'day']}\n maxDate={dayjs()}\n />\n </Grid>\n )}\n {!content?.form?.disableGender && (\n <Grid item xs={12} md={6}>\n <RHFSelect name=\"gender\" label={t('form.labels.gender')}>\n <MenuItem value={Gender.MALE}>{t('form.labels.male')}</MenuItem>\n <MenuItem value={Gender.FEMALE}>{t('form.labels.female')}</MenuItem>\n <MenuItem value={Gender.OTHER}>{t('form.labels.other')}</MenuItem>\n </RHFSelect>\n </Grid>\n )}\n {event?.extraFields.map((field, index) => (\n <Grid key={field.id} item xs={12} md={6}>\n <ExtraField extraField={field} name={`extraFields.${index}.value`} />\n </Grid>\n ))}\n </Grid>\n );\n};\n\nexport default ContactPerson;\n"],"names":["useGlobal","Grid","RHFTextField","RHFPhone","RHFDatePicker","RHFSelect","MenuItem","Gender","ExtraField"],"mappings":"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"}
@@ -66,13 +66,11 @@ const Payment = ({ event }) => {
66
66
  setValue('promoCodes', [...promoCodes, promo]);
67
67
  showSnackbar(res.message);
68
68
  setPromoCodeError(null);
69
- setValue('promoCode', promo);
70
69
  setPromoCode('');
71
70
  }
72
71
  catch (err) {
73
72
  setPromoCodeError(t('form.validation.promo_code_invalid'));
74
73
  console.error(err);
75
- setValue('promoCode', null);
76
74
  }
77
75
  }, 1000, { leading: true, trailing: false } // Allow immediate execution but prevent spam
78
76
  );
@@ -179,7 +177,7 @@ const Payment = ({ event }) => {
179
177
  } }, payment.label[lang]),
180
178
  React.createElement(Image.default, { src: payment.image.url, sx: {
181
179
  height: '20px',
182
- '& .wrapper img': {
180
+ '& img': {
183
181
  objectFit: 'contain',
184
182
  },
185
183
  } })), sx: {
@@ -201,7 +199,7 @@ const Payment = ({ event }) => {
201
199
  maxWidth: '70px',
202
200
  display: 'inline-block',
203
201
  marginRight: 1,
204
- '& .wrapper img': {
202
+ '& img': {
205
203
  objectFit: 'contain',
206
204
  objectPosition: 'left',
207
205
  },
@@ -1 +1 @@
1
- {"version":3,"file":"Payment.js","sources":["../../../src/form/Payment.tsx"],"sourcesContent":["import React, { KeyboardEvent, useEffect, useMemo, useState } from 'react';\nimport {\n Box,\n Button,\n Divider,\n FormControl,\n FormControlLabel,\n FormHelperText,\n IconButton,\n Radio,\n RadioGroup,\n Stack,\n TextField,\n Typography,\n} from '@mui/material';\nimport useAllowedPaymentMethods from '@hooks/data/useAllowedPaymentMethods';\nimport { Controller, useFormContext, useWatch } from 'react-hook-form';\nimport { PaymentItem, PaymentWrapper, PaymentSwiftWrapper } from '@form/style';\nimport Image from '@components/Image';\nimport Label from '@components/Label';\nimport PaymentSkeleton from '@form/payment/PaymentSkeleton';\nimport { RHFRadioGroup } from '@components/hook-form';\nimport { postPromoCodeApply } from '@modules/promo-code';\nimport { IEvent } from '@utils/types/event.type';\nimport { ITicketForm, ITicketFormTicket } from '@utils/types/ticket.type';\nimport useGlobal from '@hooks/useGlobal.ts';\nimport { IPromoCode } from '@utils/types/promo-code.type';\nimport { PromoCodeTypes } from '@utils/data/promo-code';\nimport { throttle } from 'lodash';\nimport { Iconify } from '@components';\nimport { IEventProductForm } from '@utils/types/product.type';\n\ninterface Props {\n event: IEvent;\n}\n\nconst Payment: React.FC<Props> = ({ event }) => {\n const { t, lang } = useGlobal();\n const { showSnackbar } = useGlobal();\n const { data, isLoading } = useAllowedPaymentMethods(event.currency, event.id);\n const { control, watch, setValue } = useFormContext<ITicketForm>();\n const paymentMethodId = watch('paymentMethodId');\n const paymentMethodOptionId = watch('paymentMethodOptionId');\n const [promoCode, setPromoCode] = useState<string>('');\n const [promoCodeError, setPromoCodeError] = useState<string | null>(null);\n const [combine, setCombine] = useState<boolean>(true);\n const promoCodes: IPromoCode[] = watch('promoCodes');\n const originalPrice: number = watch('originalPrice');\n\n const handleSubmit = throttle(\n async () => {\n if (!promoCode) {\n setPromoCodeError(t('form.validation.required'));\n return;\n }\n\n try {\n if (promoCodes.find((i) => i.code === promoCode)) {\n setPromoCodeError(t('form.validation.promo_code_applied'));\n return;\n }\n if (!combine) {\n setPromoCodeError(t('form.validation.promo_code_cant_combine'));\n return;\n }\n\n const res = await postPromoCodeApply(promoCode, event.id);\n const promo = res.data.data;\n\n if (promo && promo.minPurchaseAmount && promo.minPurchaseAmount > originalPrice) {\n setPromoCodeError(\n t('form.validation.min_purchase_not_met') +\n promo.minPurchaseAmount +\n ' ' +\n event.currency\n );\n return;\n }\n\n if (!promo.combine && promoCodes.length === 0) {\n setCombine(false);\n } else if (!promo.combine) {\n setPromoCodeError(t('form.validation.promo_code_cant_combine'));\n return;\n }\n\n setValue('promoCodes', [...promoCodes, promo]);\n showSnackbar(res.message);\n setPromoCodeError(null);\n setValue('promoCode', promo);\n setPromoCode('');\n } catch (err) {\n setPromoCodeError(t('form.validation.promo_code_invalid'));\n console.error(err);\n setValue('promoCode', null);\n }\n },\n 1000,\n { leading: true, trailing: false } // Allow immediate execution but prevent spam\n );\n\n const removePromoCode = (promoCodeToRemove: string) => {\n const newPromoCodes: IPromoCode[] = promoCodes.filter(\n (promoC) => promoC.code !== promoCodeToRemove\n );\n\n if (!newPromoCodes.find((promoC) => promoC.combine)) setCombine(true);\n\n setValue('promoCodes', newPromoCodes);\n };\n\n const handleKeyDown = async (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (promoCode) await handleSubmit();\n }\n };\n\n useEffect(() => {\n if (promoCodes.length === 0) return;\n\n const highest = promoCodes.sort((a, b) => b.minPurchaseAmount - a.minPurchaseAmount)[0]\n .minPurchaseAmount;\n\n if (originalPrice < highest) {\n const newPromoCodes = promoCodes.filter(\n (promoCode) => promoCode.minPurchaseAmount <= originalPrice\n );\n if (newPromoCodes.length === 0) {\n setCombine(true);\n }\n setValue('promoCodes', newPromoCodes);\n }\n }, [originalPrice]);\n\n useEffect(() => {\n if (data) {\n if (!paymentMethodId && !!data.length) {\n setValue('paymentMethodId', data[0].id);\n }\n const selectedPayment =\n data && data?.length && data.find((payment) => payment.id === Number(paymentMethodId));\n if (selectedPayment && !!selectedPayment.options.length && !paymentMethodOptionId) {\n setValue('paymentMethodOptionId', selectedPayment.options[0].id);\n } else if (selectedPayment && !!selectedPayment.options.length && !!paymentMethodOptionId) {\n const existingOption = selectedPayment.options.find(\n (option) => option.id === Number(paymentMethodOptionId)\n );\n if (!existingOption) {\n setValue('paymentMethodOptionId', selectedPayment.options[0].id);\n }\n } else if (selectedPayment && !selectedPayment?.options.length) {\n setValue('paymentMethodOptionId', null);\n }\n }\n }, [data, paymentMethodId, paymentMethodOptionId]);\n\n const tickets: Record<string, ITicketFormTicket[]> = useWatch({\n name: 'tickets',\n defaultValue: {},\n });\n const products: Record<string, IEventProductForm[]> = useWatch({\n name: 'products',\n defaultValue: {},\n });\n const total: number = useWatch({ name: 'total' });\n\n const paymentMethods = useMemo(() => {\n if (!data) return [];\n\n const hasTickets =\n Object.values(tickets)\n .flat()\n .filter((t) => t.quantity).length > 0;\n const hasProducts = Object.values(products).flat().length > 0;\n\n if (total === 0 && (hasTickets || hasProducts)) {\n setValue('isPaymentVerify', true);\n return data.filter((payment) =>\n ['PAYMENT_CARD', 'APPLE_PAY', 'GPAY', 'CLICK_TO_PAY'].includes(payment.type)\n );\n } else {\n setValue('isPaymentVerify', false);\n return data;\n }\n }, [data, total, tickets, products]);\n\n return (\n <Box>\n <Box className=\"payment__promo-code\">\n <Stack direction=\"row\" spacing={2}>\n <TextField\n name=\"promoCode\"\n size=\"small\"\n label={t('form.labels.promo_code')}\n value={promoCode}\n onChange={(e) => setPromoCode(e.target.value)}\n onBlur={(e) => {\n if (!e.target.value.trim()) setPromoCodeError(null);\n }}\n onKeyDown={handleKeyDown}\n error={!!promoCodeError}\n helperText={promoCodeError}\n fullWidth\n />\n <Box>\n <Button\n size=\"large\"\n type=\"button\"\n variant=\"contained\"\n onClick={handleSubmit}\n disabled={!promoCode}\n sx={{ height: 51 }}\n >\n {t('apply')}\n </Button>\n </Box>\n </Stack>\n <Stack paddingTop={3} direction=\"column\" spacing={1}>\n {promoCodes.length > 0 &&\n promoCodes.map((item: IPromoCode) => (\n <Stack\n marginTop={3}\n direction=\"row\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n spacing={2}\n key={item.code}\n >\n <>\n <Stack direction=\"row\" alignItems=\"center\">\n <Label variant=\"filled\" sx={{ textTransform: 'none', cursor: 'pointer' }}>\n {item.code}\n </Label>\n <Typography variant=\"subtitle2\" sx={{ ml: 1 }}>\n -{' '}\n {item.value +\n `${item.type === PromoCodeTypes.FIXED ? ' ' + event.currency : '%'}`}\n </Typography>\n </Stack>\n <Box>\n <IconButton\n color=\"primary\"\n onClick={() => removePromoCode(item.code)}\n aria-label=\"delete\"\n >\n <Iconify icon=\"carbon:trash-can\" />\n </IconButton>\n </Box>\n </>\n </Stack>\n ))}\n </Stack>\n </Box>\n\n <Typography variant=\"h4\" mt={2}>\n {t('event.tickets.stepper.3.subtitle')}\n </Typography>\n\n {isLoading ? (\n <PaymentSkeleton sx={{ marginTop: 1 }} />\n ) : (\n <PaymentWrapper>\n <Controller\n name=\"paymentMethodId\"\n control={control}\n render={({ field, fieldState: { error } }) => (\n <FormControl component=\"fieldset\">\n <RadioGroup {...field}>\n {paymentMethods.map((payment) => (\n <PaymentItem\n key={payment.type}\n active={!!paymentMethodId && Number(paymentMethodId) === payment.id}\n >\n <FormControlLabel\n value={payment.id}\n control={<Radio />}\n label={\n <Stack direction=\"row\" alignItems=\"center\">\n <Typography\n sx={{\n marginRight: 2,\n }}\n >\n {payment.label[lang]}\n </Typography>\n <Image\n src={payment.image.url}\n sx={{\n height: '20px',\n '& .wrapper img': {\n objectFit: 'contain',\n },\n }}\n />\n </Stack>\n }\n sx={{\n '&:not(:last-of-type)': {\n mb: 0,\n },\n }}\n />\n {!!payment.options.length &&\n !!paymentMethodId &&\n Number(paymentMethodId) === payment.id && (\n <PaymentSwiftWrapper>\n <Divider sx={{ mb: 2 }} />\n <RHFRadioGroup\n name=\"paymentMethodOptionId\"\n row\n options={payment.options\n .filter((item) => !item.label.en.includes('eshop.api.swifts'))\n .map((option) => ({\n label: (\n <Stack direction=\"row\" alignItems=\"center\">\n <Image\n src={option.image.url}\n sx={{\n width: 'auto',\n height: '15px',\n maxWidth: '70px',\n display: 'inline-block',\n marginRight: 1,\n '& .wrapper img': {\n objectFit: 'contain',\n objectPosition: 'left',\n },\n }}\n />\n <Typography variant=\"body2\">{option.label[lang]}</Typography>\n </Stack>\n ),\n value: option.id,\n }))}\n />\n </PaymentSwiftWrapper>\n )}\n </PaymentItem>\n ))}\n </RadioGroup>\n\n {!!error && (\n <FormHelperText error={!!error} sx={{ mx: 0 }}>\n {error?.message}\n </FormHelperText>\n )}\n </FormControl>\n )}\n />\n </PaymentWrapper>\n )}\n </Box>\n );\n};\n\nexport default Payment;\n"],"names":["useGlobal","useAllowedPaymentMethods","useFormContext","promoCode","useState","throttle","postPromoCodeApply","useEffect","useWatch","useMemo","Box","Stack","TextField","Button","Label","Typography","PromoCodeTypes","IconButton","Iconify","PaymentSkeleton","PaymentWrapper","Controller","FormControl","RadioGroup","PaymentItem","FormControlLabel","Radio","Image","PaymentSwiftWrapper","Divider","RHFRadioGroup","FormHelperText"],"mappings":"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"}
1
+ {"version":3,"file":"Payment.js","sources":["../../../src/form/Payment.tsx"],"sourcesContent":["import React, { KeyboardEvent, useEffect, useMemo, useState } from 'react';\nimport {\n Box,\n Button,\n Divider,\n FormControl,\n FormControlLabel,\n FormHelperText,\n IconButton,\n Radio,\n RadioGroup,\n Stack,\n TextField,\n Typography,\n} from '@mui/material';\nimport useAllowedPaymentMethods from '@hooks/data/useAllowedPaymentMethods';\nimport { Controller, useFormContext, useWatch } from 'react-hook-form';\nimport { PaymentItem, PaymentWrapper, PaymentSwiftWrapper } from '@form/style';\nimport Image from '@components/Image';\nimport Label from '@components/Label';\nimport PaymentSkeleton from '@form/payment/PaymentSkeleton';\nimport { RHFRadioGroup } from '@components/hook-form';\nimport { postPromoCodeApply } from '@modules/promo-code';\nimport { IEvent } from '@utils/types/event.type';\nimport { ITicketForm, ITicketFormTicket } from '@utils/types/ticket.type';\nimport useGlobal from '@hooks/useGlobal.ts';\nimport { IPromoCode } from '@utils/types/promo-code.type';\nimport { PromoCodeTypes } from '@utils/data/promo-code';\nimport { throttle } from 'lodash';\nimport { Iconify } from '@components';\nimport { IEventProductForm } from '@utils/types/product.type';\n\ninterface Props {\n event: IEvent;\n}\n\nconst Payment: React.FC<Props> = ({ event }) => {\n const { t, lang } = useGlobal();\n const { showSnackbar } = useGlobal();\n const { data, isLoading } = useAllowedPaymentMethods(event.currency, event.id);\n const { control, watch, setValue } = useFormContext<ITicketForm>();\n const paymentMethodId = watch('paymentMethodId');\n const paymentMethodOptionId = watch('paymentMethodOptionId');\n const [promoCode, setPromoCode] = useState<string>('');\n const [promoCodeError, setPromoCodeError] = useState<string | null>(null);\n const [combine, setCombine] = useState<boolean>(true);\n const promoCodes: IPromoCode[] = watch('promoCodes');\n const originalPrice: number = watch('originalPrice');\n\n const handleSubmit = throttle(\n async () => {\n if (!promoCode) {\n setPromoCodeError(t('form.validation.required'));\n return;\n }\n\n try {\n if (promoCodes.find((i) => i.code === promoCode)) {\n setPromoCodeError(t('form.validation.promo_code_applied'));\n return;\n }\n if (!combine) {\n setPromoCodeError(t('form.validation.promo_code_cant_combine'));\n return;\n }\n\n const res = await postPromoCodeApply(promoCode, event.id);\n const promo = res.data.data;\n\n if (promo && promo.minPurchaseAmount && promo.minPurchaseAmount > originalPrice) {\n setPromoCodeError(\n t('form.validation.min_purchase_not_met') +\n promo.minPurchaseAmount +\n ' ' +\n event.currency\n );\n return;\n }\n\n if (!promo.combine && promoCodes.length === 0) {\n setCombine(false);\n } else if (!promo.combine) {\n setPromoCodeError(t('form.validation.promo_code_cant_combine'));\n return;\n }\n\n setValue('promoCodes', [...promoCodes, promo]);\n showSnackbar(res.message);\n setPromoCodeError(null);\n setPromoCode('');\n } catch (err) {\n setPromoCodeError(t('form.validation.promo_code_invalid'));\n console.error(err);\n }\n },\n 1000,\n { leading: true, trailing: false } // Allow immediate execution but prevent spam\n );\n\n const removePromoCode = (promoCodeToRemove: string) => {\n const newPromoCodes: IPromoCode[] = promoCodes.filter(\n (promoC) => promoC.code !== promoCodeToRemove\n );\n\n if (!newPromoCodes.find((promoC) => promoC.combine)) setCombine(true);\n\n setValue('promoCodes', newPromoCodes);\n };\n\n const handleKeyDown = async (e: KeyboardEvent<HTMLDivElement>) => {\n if (e.key === 'Enter') {\n e.preventDefault();\n if (promoCode) await handleSubmit();\n }\n };\n\n useEffect(() => {\n if (promoCodes.length === 0) return;\n\n const highest = promoCodes.sort((a, b) => b.minPurchaseAmount - a.minPurchaseAmount)[0]\n .minPurchaseAmount;\n\n if (originalPrice < highest) {\n const newPromoCodes = promoCodes.filter(\n (promoCode) => promoCode.minPurchaseAmount <= originalPrice\n );\n if (newPromoCodes.length === 0) {\n setCombine(true);\n }\n setValue('promoCodes', newPromoCodes);\n }\n }, [originalPrice]);\n\n useEffect(() => {\n if (data) {\n if (!paymentMethodId && !!data.length) {\n setValue('paymentMethodId', data[0].id);\n }\n const selectedPayment =\n data && data?.length && data.find((payment) => payment.id === Number(paymentMethodId));\n if (selectedPayment && !!selectedPayment.options.length && !paymentMethodOptionId) {\n setValue('paymentMethodOptionId', selectedPayment.options[0].id);\n } else if (selectedPayment && !!selectedPayment.options.length && !!paymentMethodOptionId) {\n const existingOption = selectedPayment.options.find(\n (option) => option.id === Number(paymentMethodOptionId)\n );\n if (!existingOption) {\n setValue('paymentMethodOptionId', selectedPayment.options[0].id);\n }\n } else if (selectedPayment && !selectedPayment?.options.length) {\n setValue('paymentMethodOptionId', null);\n }\n }\n }, [data, paymentMethodId, paymentMethodOptionId]);\n\n const tickets: Record<string, ITicketFormTicket[]> = useWatch({\n name: 'tickets',\n defaultValue: {},\n });\n const products: Record<string, IEventProductForm[]> = useWatch({\n name: 'products',\n defaultValue: {},\n });\n const total: number = useWatch({ name: 'total' });\n\n const paymentMethods = useMemo(() => {\n if (!data) return [];\n\n const hasTickets =\n Object.values(tickets)\n .flat()\n .filter((t) => t.quantity).length > 0;\n const hasProducts = Object.values(products).flat().length > 0;\n\n if (total === 0 && (hasTickets || hasProducts)) {\n setValue('isPaymentVerify', true);\n return data.filter((payment) =>\n ['PAYMENT_CARD', 'APPLE_PAY', 'GPAY', 'CLICK_TO_PAY'].includes(payment.type)\n );\n } else {\n setValue('isPaymentVerify', false);\n return data;\n }\n }, [data, total, tickets, products]);\n\n return (\n <Box>\n <Box className=\"payment__promo-code\">\n <Stack direction=\"row\" spacing={2}>\n <TextField\n name=\"promoCode\"\n size=\"small\"\n label={t('form.labels.promo_code')}\n value={promoCode}\n onChange={(e) => setPromoCode(e.target.value)}\n onBlur={(e) => {\n if (!e.target.value.trim()) setPromoCodeError(null);\n }}\n onKeyDown={handleKeyDown}\n error={!!promoCodeError}\n helperText={promoCodeError}\n fullWidth\n />\n <Box>\n <Button\n size=\"large\"\n type=\"button\"\n variant=\"contained\"\n onClick={handleSubmit}\n disabled={!promoCode}\n sx={{ height: 51 }}\n >\n {t('apply')}\n </Button>\n </Box>\n </Stack>\n <Stack paddingTop={3} direction=\"column\" spacing={1}>\n {promoCodes.length > 0 &&\n promoCodes.map((item: IPromoCode) => (\n <Stack\n marginTop={3}\n direction=\"row\"\n alignItems=\"center\"\n justifyContent=\"space-between\"\n spacing={2}\n key={item.code}\n >\n <>\n <Stack direction=\"row\" alignItems=\"center\">\n <Label variant=\"filled\" sx={{ textTransform: 'none', cursor: 'pointer' }}>\n {item.code}\n </Label>\n <Typography variant=\"subtitle2\" sx={{ ml: 1 }}>\n -{' '}\n {item.value +\n `${item.type === PromoCodeTypes.FIXED ? ' ' + event.currency : '%'}`}\n </Typography>\n </Stack>\n <Box>\n <IconButton\n color=\"primary\"\n onClick={() => removePromoCode(item.code)}\n aria-label=\"delete\"\n >\n <Iconify icon=\"carbon:trash-can\" />\n </IconButton>\n </Box>\n </>\n </Stack>\n ))}\n </Stack>\n </Box>\n\n <Typography variant=\"h4\" mt={2}>\n {t('event.tickets.stepper.3.subtitle')}\n </Typography>\n\n {isLoading ? (\n <PaymentSkeleton sx={{ marginTop: 1 }} />\n ) : (\n <PaymentWrapper>\n <Controller\n name=\"paymentMethodId\"\n control={control}\n render={({ field, fieldState: { error } }) => (\n <FormControl component=\"fieldset\">\n <RadioGroup {...field}>\n {paymentMethods.map((payment) => (\n <PaymentItem\n key={payment.type}\n active={!!paymentMethodId && Number(paymentMethodId) === payment.id}\n >\n <FormControlLabel\n value={payment.id}\n control={<Radio />}\n label={\n <Stack direction=\"row\" alignItems=\"center\">\n <Typography\n sx={{\n marginRight: 2,\n }}\n >\n {payment.label[lang]}\n </Typography>\n <Image\n src={payment.image.url}\n sx={{\n height: '20px',\n '& img': {\n objectFit: 'contain',\n },\n }}\n />\n </Stack>\n }\n sx={{\n '&:not(:last-of-type)': {\n mb: 0,\n },\n }}\n />\n {!!payment.options.length &&\n !!paymentMethodId &&\n Number(paymentMethodId) === payment.id && (\n <PaymentSwiftWrapper>\n <Divider sx={{ mb: 2 }} />\n <RHFRadioGroup\n name=\"paymentMethodOptionId\"\n row\n options={payment.options\n .filter((item) => !item.label.en.includes('eshop.api.swifts'))\n .map((option) => ({\n label: (\n <Stack direction=\"row\" alignItems=\"center\">\n <Image\n src={option.image.url}\n sx={{\n width: 'auto',\n height: '15px',\n maxWidth: '70px',\n display: 'inline-block',\n marginRight: 1,\n '& img': {\n objectFit: 'contain',\n objectPosition: 'left',\n },\n }}\n />\n <Typography variant=\"body2\">{option.label[lang]}</Typography>\n </Stack>\n ),\n value: option.id,\n }))}\n />\n </PaymentSwiftWrapper>\n )}\n </PaymentItem>\n ))}\n </RadioGroup>\n\n {!!error && (\n <FormHelperText error={!!error} sx={{ mx: 0 }}>\n {error?.message}\n </FormHelperText>\n )}\n </FormControl>\n )}\n />\n </PaymentWrapper>\n )}\n </Box>\n );\n};\n\nexport default Payment;\n"],"names":["useGlobal","useAllowedPaymentMethods","useFormContext","promoCode","useState","throttle","postPromoCodeApply","useEffect","useWatch","useMemo","Box","Stack","TextField","Button","Label","Typography","PromoCodeTypes","IconButton","Iconify","PaymentSkeleton","PaymentWrapper","Controller","FormControl","RadioGroup","PaymentItem","FormControlLabel","Radio","Image","PaymentSwiftWrapper","Divider","RHFRadioGroup","FormHelperText"],"mappings":"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"}