@eventlook/sdk 1.4.48 → 1.4.49-beta.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (233) hide show
  1. package/.env.example +1 -0
  2. package/dist/cjs/_virtual/_commonjsHelpers.js +8 -0
  3. package/dist/cjs/_virtual/_commonjsHelpers.js.map +1 -0
  4. package/dist/cjs/_virtual/index.js +6 -0
  5. package/dist/cjs/_virtual/index.js.map +1 -0
  6. package/dist/cjs/_virtual/index2.js +6 -0
  7. package/dist/cjs/_virtual/index2.js.map +1 -0
  8. package/dist/cjs/_virtual/index3.js +6 -0
  9. package/dist/cjs/_virtual/index3.js.map +1 -0
  10. package/dist/cjs/_virtual/react-is.development.js +6 -0
  11. package/dist/cjs/_virtual/react-is.development.js.map +1 -0
  12. package/dist/cjs/_virtual/react-is.development2.js +6 -0
  13. package/dist/cjs/_virtual/react-is.development2.js.map +1 -0
  14. package/dist/cjs/_virtual/react-is.production.js +6 -0
  15. package/dist/cjs/_virtual/react-is.production.js.map +1 -0
  16. package/dist/cjs/_virtual/react-is.production.min.js +6 -0
  17. package/dist/cjs/_virtual/react-is.production.min.js.map +1 -0
  18. package/dist/cjs/components/hook-form/FormProvider.js +2 -2
  19. package/dist/cjs/components/hook-form/FormProvider.js.map +1 -1
  20. package/dist/cjs/form/ChildEventDialog.js +3 -3
  21. package/dist/cjs/form/ChildEventDialog.js.map +1 -1
  22. package/dist/cjs/form/ContactPerson.js +1 -1
  23. package/dist/cjs/form/ContactPerson.js.map +1 -1
  24. package/dist/cjs/form/PaymentOverviewBox.js +47 -61
  25. package/dist/cjs/form/PaymentOverviewBox.js.map +1 -1
  26. package/dist/cjs/form/PaymentOverviewDrawer.js +157 -0
  27. package/dist/cjs/form/PaymentOverviewDrawer.js.map +1 -0
  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 +21 -18
  31. package/dist/cjs/form/Shipping.js.map +1 -1
  32. package/dist/cjs/form/TicketForm.js +94 -33
  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 +5 -6
  37. package/dist/cjs/form/TicketSelection.js.map +1 -1
  38. package/dist/cjs/form/TicketSelectionMobile.js +98 -0
  39. package/dist/cjs/form/TicketSelectionMobile.js.map +1 -0
  40. package/dist/cjs/form/TicketWithMerchandiseSelection.js +3 -5
  41. package/dist/cjs/form/TicketWithMerchandiseSelection.js.map +1 -1
  42. package/dist/cjs/form/index.js +1 -1
  43. package/dist/cjs/form/index.js.map +1 -1
  44. package/dist/cjs/form/merchandise/MerchandiseSelection.js +14 -0
  45. package/dist/cjs/form/merchandise/MerchandiseSelection.js.map +1 -0
  46. package/dist/cjs/form/merchandise/MerchandiseSlider.js +40 -0
  47. package/dist/cjs/form/merchandise/MerchandiseSlider.js.map +1 -0
  48. package/dist/cjs/form/merchendise/MerchandiseSelection.js +19 -0
  49. package/dist/cjs/form/merchendise/MerchandiseSelection.js.map +1 -0
  50. package/dist/cjs/form/merchendise/MerchandiseSlider.js +75 -0
  51. package/dist/cjs/form/merchendise/MerchandiseSlider.js.map +1 -0
  52. package/dist/cjs/form/payment/FeeBox.js +4 -16
  53. package/dist/cjs/form/payment/FeeBox.js.map +1 -1
  54. package/dist/cjs/form/payment/PaymentOverviewCheckbox.js +33 -28
  55. package/dist/cjs/form/payment/PaymentOverviewCheckbox.js.map +1 -1
  56. package/dist/cjs/form/product/ProductCard.js +139 -36
  57. package/dist/cjs/form/product/ProductCard.js.map +1 -1
  58. package/dist/cjs/form/product/ProductVariantsDialog.js +157 -96
  59. package/dist/cjs/form/product/ProductVariantsDialog.js.map +1 -1
  60. package/dist/cjs/form/services/index.js +133 -0
  61. package/dist/cjs/form/services/index.js.map +1 -0
  62. package/dist/cjs/form/style.js +7 -3
  63. package/dist/cjs/form/style.js.map +1 -1
  64. package/dist/cjs/form/tickets/ReleaseDescription.js +23 -0
  65. package/dist/cjs/form/tickets/ReleaseDescription.js.map +1 -0
  66. package/dist/cjs/form/tickets/ReleaseWithMerchandise.js +141 -0
  67. package/dist/cjs/form/tickets/ReleaseWithMerchandise.js.map +1 -0
  68. package/dist/cjs/form/tickets/TicketQuantityControl.js +52 -0
  69. package/dist/cjs/form/tickets/TicketQuantityControl.js.map +1 -0
  70. package/dist/cjs/form/tickets/TicketSelection.js +139 -0
  71. package/dist/cjs/form/tickets/TicketSelection.js.map +1 -0
  72. package/dist/cjs/form/tickets/TicketSelectionMap.js +73 -0
  73. package/dist/cjs/form/tickets/TicketSelectionMap.js.map +1 -0
  74. package/dist/cjs/form/tickets/TicketSelectionMobile.js +90 -0
  75. package/dist/cjs/form/tickets/TicketSelectionMobile.js.map +1 -0
  76. package/dist/cjs/form/tickets/TicketWithMerchandiseSelection.js +117 -0
  77. package/dist/cjs/form/tickets/TicketWithMerchandiseSelection.js.map +1 -0
  78. package/dist/cjs/hooks/useConsentScrollOnDrawerOpen.js +59 -0
  79. package/dist/cjs/hooks/useConsentScrollOnDrawerOpen.js.map +1 -0
  80. package/dist/cjs/hooks/useScrollToFirstError.js +64 -0
  81. package/dist/cjs/hooks/useScrollToFirstError.js.map +1 -0
  82. package/dist/cjs/locales/cs.js +18 -3
  83. package/dist/cjs/locales/cs.js.map +1 -1
  84. package/dist/cjs/locales/en.js +17 -2
  85. package/dist/cjs/locales/en.js.map +1 -1
  86. package/dist/cjs/locales/es.js +16 -1
  87. package/dist/cjs/locales/es.js.map +1 -1
  88. package/dist/cjs/locales/pl.js +16 -1
  89. package/dist/cjs/locales/pl.js.map +1 -1
  90. package/dist/cjs/locales/sk.js +17 -2
  91. package/dist/cjs/locales/sk.js.map +1 -1
  92. package/dist/cjs/locales/uk.js +16 -1
  93. package/dist/cjs/locales/uk.js.map +1 -1
  94. package/dist/cjs/utils/data/global.js +2 -0
  95. package/dist/cjs/utils/data/global.js.map +1 -1
  96. package/dist/esm/_virtual/_commonjsHelpers.js +6 -0
  97. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
  98. package/dist/esm/_virtual/index.js +4 -0
  99. package/dist/esm/_virtual/index.js.map +1 -0
  100. package/dist/esm/_virtual/index2.js +4 -0
  101. package/dist/esm/_virtual/index2.js.map +1 -0
  102. package/dist/esm/_virtual/index3.js +4 -0
  103. package/dist/esm/_virtual/index3.js.map +1 -0
  104. package/dist/esm/_virtual/react-is.development.js +4 -0
  105. package/dist/esm/_virtual/react-is.development.js.map +1 -0
  106. package/dist/esm/_virtual/react-is.development2.js +4 -0
  107. package/dist/esm/_virtual/react-is.development2.js.map +1 -0
  108. package/dist/esm/_virtual/react-is.production.js +4 -0
  109. package/dist/esm/_virtual/react-is.production.js.map +1 -0
  110. package/dist/esm/_virtual/react-is.production.min.js +4 -0
  111. package/dist/esm/_virtual/react-is.production.min.js.map +1 -0
  112. package/dist/esm/components/hook-form/FormProvider.js +2 -2
  113. package/dist/esm/components/hook-form/FormProvider.js.map +1 -1
  114. package/dist/esm/form/ChildEventDialog.js +3 -3
  115. package/dist/esm/form/ChildEventDialog.js.map +1 -1
  116. package/dist/esm/form/ContactPerson.js +1 -1
  117. package/dist/esm/form/ContactPerson.js.map +1 -1
  118. package/dist/esm/form/PaymentOverviewBox.js +48 -62
  119. package/dist/esm/form/PaymentOverviewBox.js.map +1 -1
  120. package/dist/esm/form/PaymentOverviewDrawer.js +153 -0
  121. package/dist/esm/form/PaymentOverviewDrawer.js.map +1 -0
  122. package/dist/esm/form/ReleaseWithMerchandise.js +58 -49
  123. package/dist/esm/form/ReleaseWithMerchandise.js.map +1 -1
  124. package/dist/esm/form/Shipping.js +21 -18
  125. package/dist/esm/form/Shipping.js.map +1 -1
  126. package/dist/esm/form/TicketForm.js +96 -35
  127. package/dist/esm/form/TicketForm.js.map +1 -1
  128. package/dist/esm/form/TicketQuantityControl.js +47 -0
  129. package/dist/esm/form/TicketQuantityControl.js.map +1 -0
  130. package/dist/esm/form/TicketSelection.js +5 -6
  131. package/dist/esm/form/TicketSelection.js.map +1 -1
  132. package/dist/esm/form/TicketSelectionMobile.js +94 -0
  133. package/dist/esm/form/TicketSelectionMobile.js.map +1 -0
  134. package/dist/esm/form/TicketWithMerchandiseSelection.js +4 -6
  135. package/dist/esm/form/TicketWithMerchandiseSelection.js.map +1 -1
  136. package/dist/esm/form/index.js +1 -1
  137. package/dist/esm/form/index.js.map +1 -1
  138. package/dist/esm/form/merchandise/MerchandiseSelection.js +10 -0
  139. package/dist/esm/form/merchandise/MerchandiseSelection.js.map +1 -0
  140. package/dist/esm/form/merchandise/MerchandiseSlider.js +36 -0
  141. package/dist/esm/form/merchandise/MerchandiseSlider.js.map +1 -0
  142. package/dist/esm/form/merchendise/MerchandiseSelection.js +15 -0
  143. package/dist/esm/form/merchendise/MerchandiseSelection.js.map +1 -0
  144. package/dist/esm/form/merchendise/MerchandiseSlider.js +71 -0
  145. package/dist/esm/form/merchendise/MerchandiseSlider.js.map +1 -0
  146. package/dist/esm/form/payment/FeeBox.js +5 -17
  147. package/dist/esm/form/payment/FeeBox.js.map +1 -1
  148. package/dist/esm/form/payment/PaymentOverviewCheckbox.js +35 -30
  149. package/dist/esm/form/payment/PaymentOverviewCheckbox.js.map +1 -1
  150. package/dist/esm/form/product/ProductCard.js +140 -37
  151. package/dist/esm/form/product/ProductCard.js.map +1 -1
  152. package/dist/esm/form/product/ProductVariantsDialog.js +159 -98
  153. package/dist/esm/form/product/ProductVariantsDialog.js.map +1 -1
  154. package/dist/esm/form/services/index.js +129 -0
  155. package/dist/esm/form/services/index.js.map +1 -0
  156. package/dist/esm/form/style.js +7 -3
  157. package/dist/esm/form/style.js.map +1 -1
  158. package/dist/esm/form/tickets/ReleaseDescription.js +19 -0
  159. package/dist/esm/form/tickets/ReleaseDescription.js.map +1 -0
  160. package/dist/esm/form/tickets/ReleaseWithMerchandise.js +137 -0
  161. package/dist/esm/form/tickets/ReleaseWithMerchandise.js.map +1 -0
  162. package/dist/esm/form/tickets/TicketQuantityControl.js +48 -0
  163. package/dist/esm/form/tickets/TicketQuantityControl.js.map +1 -0
  164. package/dist/esm/form/tickets/TicketSelection.js +135 -0
  165. package/dist/esm/form/tickets/TicketSelection.js.map +1 -0
  166. package/dist/esm/form/tickets/TicketSelectionMap.js +69 -0
  167. package/dist/esm/form/tickets/TicketSelectionMap.js.map +1 -0
  168. package/dist/esm/form/tickets/TicketSelectionMobile.js +86 -0
  169. package/dist/esm/form/tickets/TicketSelectionMobile.js.map +1 -0
  170. package/dist/esm/form/tickets/TicketWithMerchandiseSelection.js +113 -0
  171. package/dist/esm/form/tickets/TicketWithMerchandiseSelection.js.map +1 -0
  172. package/dist/esm/hooks/useConsentScrollOnDrawerOpen.js +55 -0
  173. package/dist/esm/hooks/useConsentScrollOnDrawerOpen.js.map +1 -0
  174. package/dist/esm/hooks/useScrollToFirstError.js +60 -0
  175. package/dist/esm/hooks/useScrollToFirstError.js.map +1 -0
  176. package/dist/esm/locales/cs.js +18 -3
  177. package/dist/esm/locales/cs.js.map +1 -1
  178. package/dist/esm/locales/en.js +17 -2
  179. package/dist/esm/locales/en.js.map +1 -1
  180. package/dist/esm/locales/es.js +16 -1
  181. package/dist/esm/locales/es.js.map +1 -1
  182. package/dist/esm/locales/pl.js +16 -1
  183. package/dist/esm/locales/pl.js.map +1 -1
  184. package/dist/esm/locales/sk.js +17 -2
  185. package/dist/esm/locales/sk.js.map +1 -1
  186. package/dist/esm/locales/uk.js +16 -1
  187. package/dist/esm/locales/uk.js.map +1 -1
  188. package/dist/esm/utils/data/global.js +2 -1
  189. package/dist/esm/utils/data/global.js.map +1 -1
  190. package/dist/types/components/Image.d.ts +4 -4
  191. package/dist/types/form/PaymentOverviewDrawer.d.ts +8 -0
  192. package/dist/types/form/merchendise/MerchandiseSelection.d.ts +9 -0
  193. package/dist/types/form/merchendise/MerchandiseSlider.d.ts +10 -0
  194. package/dist/types/form/merchendise/MerchendiseSlider.d.ts +0 -0
  195. package/dist/types/form/style.d.ts +1 -1
  196. package/package.json +5 -1
  197. package/rollup.config.mjs +2 -0
  198. package/src/components/hook-form/FormProvider.tsx +5 -2
  199. package/src/form/ChildEventDialog.tsx +3 -3
  200. package/src/form/ContactPerson.tsx +1 -1
  201. package/src/form/PaymentOverviewBox.tsx +89 -122
  202. package/src/form/PaymentOverviewDrawer.tsx +238 -0
  203. package/src/form/Shipping.tsx +29 -17
  204. package/src/form/TicketForm.tsx +140 -39
  205. package/src/form/index.tsx +3 -1
  206. package/src/form/merchandise/MerchandiseSelection.tsx +24 -0
  207. package/src/form/merchandise/MerchandiseSlider.tsx +62 -0
  208. package/src/form/payment/FeeBox.tsx +4 -31
  209. package/src/form/payment/PaymentOverviewCheckbox.tsx +57 -56
  210. package/src/form/product/ProductCard.tsx +250 -59
  211. package/src/form/product/ProductVariantsDialog.tsx +253 -140
  212. package/src/form/services/index.tsx +263 -0
  213. package/src/form/style.ts +9 -3
  214. package/src/form/tickets/ReleaseDescription.tsx +46 -0
  215. package/src/form/tickets/ReleaseWithMerchandise.tsx +239 -0
  216. package/src/form/tickets/TicketQuantityControl.tsx +94 -0
  217. package/src/form/{TicketSelection.tsx → tickets/TicketSelection.tsx} +24 -128
  218. package/src/form/{TicketSelectionMap.tsx → tickets/TicketSelectionMap.tsx} +9 -1
  219. package/src/form/tickets/TicketSelectionMobile.tsx +177 -0
  220. package/src/form/{TicketWithMerchandiseSelection.tsx → tickets/TicketWithMerchandiseSelection.tsx} +3 -7
  221. package/src/hooks/useConsentScrollOnDrawerOpen.ts +73 -0
  222. package/src/hooks/useScrollToFirstError.ts +94 -0
  223. package/src/locales/cs.tsx +18 -3
  224. package/src/locales/en.tsx +17 -2
  225. package/src/locales/es.tsx +16 -1
  226. package/src/locales/pl.tsx +16 -1
  227. package/src/locales/sk.tsx +17 -2
  228. package/src/locales/uk.tsx +16 -1
  229. package/src/utils/data/global.ts +1 -0
  230. package/tsconfig.json +2 -1
  231. package/.claude/settings.local.json +0 -9
  232. package/src/form/MerchandiseSelection.tsx +0 -29
  233. package/src/form/ReleaseWithMerchandise.tsx +0 -230
@@ -7,6 +7,8 @@ const en = {
7
7
  add: 'Add',
8
8
  confirm: 'Confirm',
9
9
  cancel: 'Cancel',
10
+ close: 'Close',
11
+ remove: 'Remove',
10
12
  pay: 'Pay',
11
13
  change: 'Change',
12
14
  free: 'Free',
@@ -53,6 +55,8 @@ const en = {
53
55
  category: 'Category',
54
56
  sms_notification: 'SMS notification',
55
57
  open_map: 'Open map',
58
+ payment_overview_open: 'Open payment overview',
59
+ payment_overview_close: 'Close payment overview',
56
60
  },
57
61
  validation: {
58
62
  required: 'This field is required.',
@@ -105,9 +109,13 @@ const en = {
105
109
  7: {
106
110
  title: 'Associated events',
107
111
  },
112
+ 8: {
113
+ title: 'EventLook services',
114
+ additional_info: 'More information about services',
115
+ },
108
116
  },
109
117
  terms_and_conditions:
110
- 'By submitting the order, I agree to the <0>Terms and Conditions</0> of {{termsAndConditionsCompanies}} and acknowledge the <1>Privacy Policy</1>.',
118
+ 'I agree with the <0>Terms and Conditions</0> {{termsAndConditionsCompanies}} and the <1>Privacy Policy</1>.',
111
119
  insurance: {
112
120
  label: 'Ticket insurance',
113
121
  per_ticket: 'pc',
@@ -124,10 +132,17 @@ const en = {
124
132
  label: 'SMS event reminder',
125
133
  modal: {
126
134
  description:
127
- 'Event reminder the day before: SMS will notify you about the upcoming event so you don\'t forget and have time to prepare.',
135
+ "Event reminder the day before: SMS will notify you about the upcoming event so you don't forget and have time to prepare.",
128
136
  price: 'SMS event reminder price',
129
137
  },
130
138
  },
139
+ merchandise: {
140
+ show_sizes: 'Show sizes',
141
+ show_added: 'Show added',
142
+ },
143
+ services: {
144
+ add_tickets_first: 'Please add tickets first',
145
+ },
131
146
  order_success: {
132
147
  title: 'Tickets have been successfully reserved. Now you just need to pay.',
133
148
  description:
@@ -7,6 +7,8 @@ const es = {
7
7
  add: 'Añadir',
8
8
  confirm: 'Confirmar',
9
9
  cancel: 'Cancelar',
10
+ close: 'Cerrar',
11
+ remove: 'Eliminar',
10
12
  pay: 'Pagar',
11
13
  change: 'Cambiar',
12
14
  free: 'Gratis',
@@ -53,6 +55,8 @@ const es = {
53
55
  category: 'Categoría',
54
56
  sms_notification: 'Notificación SMS',
55
57
  open_map: 'Abrir mapa',
58
+ payment_overview_open: 'Abrir resumen de pago',
59
+ payment_overview_close: 'Cerrar resumen de pago',
56
60
  },
57
61
  validation: {
58
62
  required: 'Este campo es obligatorio.',
@@ -105,9 +109,13 @@ const es = {
105
109
  7: {
106
110
  title: 'Eventos asociados',
107
111
  },
112
+ 8: {
113
+ title: 'EventLook servicios',
114
+ additional_info: 'Más información sobre los servicios',
115
+ },
108
116
  },
109
117
  terms_and_conditions:
110
- 'Al enviar el pedido, acepto los <0>Términos y Condiciones</0> de {{termsAndConditionsCompanies}} y reconozco la <1>Política de Privacidad</1>.',
118
+ 'Estoy de acuerdo con los <0>Términos y Condiciones</0> de {{termsAndConditionsCompanies}} y la <1>Política de Privacidad</1>.',
111
119
  insurance: {
112
120
  label: 'Seguro de entrada',
113
121
  per_ticket: 'pc',
@@ -128,6 +136,13 @@ const es = {
128
136
  price: 'Precio del recordatorio por SMS del evento',
129
137
  },
130
138
  },
139
+ merchandise: {
140
+ show_sizes: 'Mostrar tallas',
141
+ show_added: 'Mostrar añadidos',
142
+ },
143
+ services: {
144
+ add_tickets_first: 'Por favor, agregue entradas primero',
145
+ },
131
146
  order_success: {
132
147
  title: 'Las entradas han sido reservadas con éxito. Ahora solo tienes que pagar.',
133
148
  description:
@@ -7,6 +7,8 @@ const pl = {
7
7
  add: 'Dodaj',
8
8
  confirm: 'Potwierdź',
9
9
  cancel: 'Anuluj',
10
+ close: 'Zamknij',
11
+ remove: 'Usuń',
10
12
  pay: 'Zapłać',
11
13
  change: 'Zmień',
12
14
  free: 'Darmowe',
@@ -53,6 +55,8 @@ const pl = {
53
55
  category: 'Kategoria',
54
56
  sms_notification: 'Powiadomienie SMS',
55
57
  open_map: 'Otwórz mapę',
58
+ payment_overview_open: 'Otwórz podsumowanie płatności',
59
+ payment_overview_close: 'Zamknij podsumowanie płatności',
56
60
  },
57
61
  validation: {
58
62
  required: 'To pole jest wymagane.',
@@ -105,9 +109,13 @@ const pl = {
105
109
  7: {
106
110
  title: 'Powiązane wydarzenia',
107
111
  },
112
+ 8: {
113
+ title: 'EventLook usługi',
114
+ additional_info: 'Więcej informacji o usługach',
115
+ },
108
116
  },
109
117
  terms_and_conditions:
110
- 'Składając zamówienie, akceptuję <0>Regulamin</0> {{termsAndConditionsCompanies}} oraz potwierdzam <1>Politykę prywatności</1>.',
118
+ 'Zgadzam się z <0>Regulaminem</0> {{termsAndConditionsCompanies}} i <1>Polityką prywatności</1>.',
111
119
  insurance: {
112
120
  label: 'Ubezpieczenie biletu',
113
121
  per_ticket: 'pc',
@@ -128,6 +136,13 @@ const pl = {
128
136
  price: 'Cena przypomnienia SMS o wydarzeniu',
129
137
  },
130
138
  },
139
+ merchandise: {
140
+ show_sizes: 'Pokaż rozmiary',
141
+ show_added: 'Pokaż dodane',
142
+ },
143
+ services: {
144
+ add_tickets_first: 'Najpierw dodaj bilety',
145
+ },
131
146
  order_success: {
132
147
  title: 'Bilety zostały pomyślnie zarezerwowane. Teraz wystarczy zapłacić.',
133
148
  description:
@@ -7,6 +7,8 @@ const sk = {
7
7
  add: 'Pridať',
8
8
  confirm: 'Potvrdiť',
9
9
  cancel: 'Zrušiť',
10
+ close: 'Zavrieť',
11
+ remove: 'Odstrániť',
10
12
  pay: 'Zaplaťte',
11
13
  change: 'Zmeniť',
12
14
  free: 'Zadarmo',
@@ -53,6 +55,8 @@ const sk = {
53
55
  category: 'Kategória',
54
56
  sms_notification: 'SMS notifikácia',
55
57
  open_map: 'Otvoriť mapu',
58
+ payment_overview_open: 'Otvoriť prehľad platby',
59
+ payment_overview_close: 'Zavrieť prehľad platby',
56
60
  },
57
61
  validation: {
58
62
  required: 'Toto pole je povinné.',
@@ -105,9 +109,13 @@ const sk = {
105
109
  7: {
106
110
  title: 'Pridružené eventy',
107
111
  },
112
+ 8: {
113
+ title: 'EventLook služby',
114
+ additional_info: 'Viac informácií o službách',
115
+ },
108
116
  },
109
117
  terms_and_conditions:
110
- 'Odoslaním objednávky súhlasím s <0>Obchodnými podmienkami</0> {{termsAndConditionsCompanies}} a beriem na vedomie <1>Zásady ochrany osobných údajov</1>.',
118
+ 'Súhlasím s <0>Obchodnými podmienkami</0> {{termsAndConditionsCompanies}} a <1>Zásadami ochrany osobných údajov</1>.',
111
119
  insurance: {
112
120
  label: 'Poistenie vstupenky',
113
121
  per_ticket: 'pc',
@@ -121,13 +129,20 @@ const sk = {
121
129
  },
122
130
  },
123
131
  sms_notification: {
124
- label: 'SMS pripomenutie termínu akcie',
132
+ label: 'SMS pripomenutie termínu',
125
133
  modal: {
126
134
  description:
127
135
  'Pripomienka akcie deň vopred: SMS vás upozorní na blížiacu sa udalosť, aby ste na ňu nezabudli a stihli sa včas pripraviť.',
128
136
  price: 'Cena SMS pripomenutia termínu akcie',
129
137
  },
130
138
  },
139
+ merchandise: {
140
+ show_sizes: 'Zobraziť veľkosti',
141
+ show_added: 'Zobraziť pridané',
142
+ },
143
+ services: {
144
+ add_tickets_first: 'Najskôr prosím pridajte lístky',
145
+ },
131
146
  order_success: {
132
147
  title: 'Vstupenky boli úspešne rezervované. Teraz už len zaplatiť.',
133
148
  description:
@@ -7,6 +7,8 @@ const uk = {
7
7
  add: 'Додати',
8
8
  confirm: 'Підтвердити',
9
9
  cancel: 'Скасувати',
10
+ close: 'Закрити',
11
+ remove: 'Видалити',
10
12
  pay: 'Оплатити',
11
13
  change: 'Змінити',
12
14
  free: 'Безкоштовно',
@@ -53,6 +55,8 @@ const uk = {
53
55
  category: 'Категорія',
54
56
  sms_notification: 'SMS-сповіщення',
55
57
  open_map: 'Відкрити карту',
58
+ payment_overview_open: 'Відкрити огляд платежу',
59
+ payment_overview_close: 'Закрити огляд платежу',
56
60
  },
57
61
  validation: {
58
62
  required: "Це поле обов'язкове.",
@@ -105,9 +109,13 @@ const uk = {
105
109
  7: {
106
110
  title: 'Пов’язані події',
107
111
  },
112
+ 8: {
113
+ title: 'EventLook послуги',
114
+ additional_info: 'Додаткова інформація про послуги',
115
+ },
108
116
  },
109
117
  terms_and_conditions:
110
- 'Надсилаючи замовлення, я погоджуюсь з <0>Правилами та умовами</0> {{termsAndConditionsCompanies}} та підтверджую <1>Політику конфіденційності</1>.',
118
+ 'Я погоджуюся з <0>Правилами та умовами</0> {{termsAndConditionsCompanies}} та <1>Політикою конфіденційності</1>.',
111
119
  insurance: {
112
120
  label: 'Страхування квитка',
113
121
  per_ticket: 'pc',
@@ -128,6 +136,13 @@ const uk = {
128
136
  price: 'Ціна SMS-нагадування про подію',
129
137
  },
130
138
  },
139
+ merchandise: {
140
+ show_sizes: 'Показати розміри',
141
+ show_added: 'Показати додані',
142
+ },
143
+ services: {
144
+ add_tickets_first: 'Будь ласка, спочатку додайте квитки',
145
+ },
131
146
  order_success: {
132
147
  title: 'Квитки успішно зарезервовані. Тепер залишилося оплатити.',
133
148
  description:
@@ -1 +1,2 @@
1
+ export const EVENTLOOK_ORDER_FORM_CONTAINER_ID = 'eventlook-order-form-container';
1
2
  export const EVENTLOOK_ORDER_FORM_ID = 'eventlook-order-form';
package/tsconfig.json CHANGED
@@ -10,6 +10,7 @@
10
10
  "skipLibCheck": true,
11
11
  "resolveJsonModule": true,
12
12
  "allowImportingTsExtensions": true,
13
+ "noEmit": true,
13
14
  "declaration": false,
14
15
  "emitDeclarationOnly": false,
15
16
  "baseUrl": ".",
@@ -25,4 +26,4 @@
25
26
  }
26
27
  },
27
28
  "include": ["src/**/*"]
28
- }
29
+ }
@@ -1,9 +0,0 @@
1
- {
2
- "permissions": {
3
- "allow": [
4
- "Bash(yarn install:*)",
5
- "Bash(yarn add:*)",
6
- "Bash(yarn remove:*)"
7
- ]
8
- }
9
- }
@@ -1,29 +0,0 @@
1
- import React from 'react';
2
- import { Grid } from '@mui/material';
3
- import ProductCard from '@form/product/ProductCard';
4
- import { IEventProduct } from '@utils/types/event-product.type';
5
- import CustomSkeleton from '@components/CustomSkeleton';
6
-
7
- interface Props {
8
- eventProducts: IEventProduct[];
9
- eventId: number;
10
- isLoading?: boolean;
11
- }
12
-
13
- const MerchandiseSelection: React.FC<Props> = ({ eventProducts, eventId, isLoading }) => (
14
- <Grid container spacing={3}>
15
- {isLoading
16
- ? [...Array(3)].map((item) => (
17
- <Grid key={item} item xs={12} md={4}>
18
- <CustomSkeleton height={334} />
19
- </Grid>
20
- ))
21
- : eventProducts.map((eventProduct) => (
22
- <Grid key={eventProduct.id} item xs={12} md={4}>
23
- <ProductCard eventProduct={eventProduct} eventId={eventId} isOnlyMerchandise />
24
- </Grid>
25
- ))}
26
- </Grid>
27
- );
28
-
29
- export default MerchandiseSelection;
@@ -1,230 +0,0 @@
1
- import React, { useCallback, useState } from 'react';
2
- import { Box, Button, IconButton, Stack, Typography } from '@mui/material';
3
- import { Iconify } from '@components/iconify';
4
- import ProductVariantsDialog from '@form/product/ProductVariantsDialog';
5
- import { IReleaseShort } from '@utils/types/release.type';
6
- import { ITicketForm, ITicketFormTicket } from '@utils/types/ticket.type';
7
- import { useFormContext, useWatch } from 'react-hook-form';
8
- import { IEventProductForm } from '@utils/types/product.type';
9
- import { fCurrency } from '@utils/formatNumber';
10
- import { Currencies } from '@utils/data/currency';
11
- import { getSelectedQuantityByVariant } from '@utils/product';
12
- import ReleaseExtraFields from '@form/extra-field/ReleaseExtraFields';
13
- import useGlobal from '@hooks/useGlobal.ts';
14
-
15
- interface Props {
16
- eventId: number;
17
- release: IReleaseShort;
18
- activeReleases: IReleaseShort[];
19
- currency: Currencies;
20
- index: number;
21
- }
22
-
23
- const ReleaseWithMerchandise: React.FC<Props> = ({
24
- eventId,
25
- release,
26
- activeReleases,
27
- currency,
28
- index,
29
- }) => {
30
- const { t, lang } = useGlobal();
31
- const [openVariantDialog, setOpenVariantDialog] = useState<'add' | 'increase' | null>(null);
32
- const { setValue } = useFormContext<ITicketForm>();
33
- const tickets: ITicketFormTicket[] = useWatch({ name: `tickets.${eventId}`, defaultValue: [] });
34
- const products: IEventProductForm[] = useWatch({ name: `products.${eventId}`, defaultValue: [] });
35
- const addedRelease = tickets.find((ticket) => ticket.releaseId === release.id);
36
- const countTickets = addedRelease?.quantity || 0;
37
-
38
- const isReleaseSelected = (id: number) => !!tickets.find((ticket) => ticket.releaseId === id);
39
-
40
- const getSelectedQuantity = (id: number) =>
41
- tickets.find((ticket) => ticket.releaseId === id)?.quantity || 0;
42
-
43
- const getAvailableTicketsForRelease = (release: ITicketFormTicket): number => {
44
- const selectedRelease = activeReleases?.find((item) => item.id === release.releaseId);
45
- const availableQuantity = selectedRelease ? selectedRelease.availableTickets : 0;
46
- return availableQuantity > 10 ? 10 : availableQuantity;
47
- };
48
-
49
- const isMaxQuantity = (releaseId: number) => {
50
- const release = tickets.find((ticket) => ticket.releaseId === releaseId);
51
- if (!release) return false;
52
- return getSelectedQuantity(releaseId) >= getAvailableTicketsForRelease(release);
53
- };
54
-
55
- const addRelease = (product?: IEventProductForm) => {
56
- setValue(`tickets.${eventId}`, [
57
- ...tickets,
58
- {
59
- releaseId: release.id,
60
- quantity: 1,
61
- itemName: '',
62
- price: 0,
63
- products: product ? [product] : [],
64
- extraFields: release.extraFields?.length
65
- ? [
66
- release.extraFields.map((field) => ({
67
- eventExtraFieldId: field.id,
68
- value: '',
69
- })),
70
- ]
71
- : [],
72
- },
73
- ]);
74
- setOpenVariantDialog(null);
75
- };
76
-
77
- const increaseQuantity = (product?: IEventProductForm) => {
78
- const addedRelease = tickets.find((ticket) => ticket.releaseId === release.id);
79
- if (addedRelease) {
80
- const newQuantity = Number(addedRelease.quantity) + 1;
81
- const maxQuantity = getAvailableTicketsForRelease(addedRelease);
82
- setValue(
83
- `tickets.${eventId}`,
84
- tickets.map((ticket) =>
85
- ticket.releaseId === release.id
86
- ? {
87
- ...ticket,
88
- quantity: newQuantity > maxQuantity ? maxQuantity : newQuantity,
89
- products: product ? [...ticket.products, product] : ticket.products,
90
- extraFields: release.extraFields?.length
91
- ? [
92
- ...ticket.extraFields,
93
- release.extraFields.map((field) => ({
94
- eventExtraFieldId: field.id,
95
- value: '',
96
- })),
97
- ]
98
- : [],
99
- }
100
- : ticket
101
- )
102
- );
103
- setOpenVariantDialog(null);
104
- }
105
- };
106
-
107
- const decreaseQuantity = useCallback(() => {
108
- const addedRelease = tickets.find((ticket) => ticket.releaseId === release.id);
109
- if (addedRelease) {
110
- const newQuantity = Number(addedRelease.quantity) - 1;
111
- if (newQuantity < 1) {
112
- setValue(
113
- `tickets.${eventId}`,
114
- tickets.filter((ticket) => ticket.releaseId !== release.id)
115
- );
116
- } else {
117
- setValue(
118
- `tickets.${eventId}`,
119
- tickets.map((ticket) => {
120
- if (ticket.releaseId !== release.id) return ticket;
121
-
122
- return {
123
- ...ticket,
124
- quantity: newQuantity,
125
- products: ticket?.products?.slice(0, -1), // non-mutating "pop"
126
- extraFields: ticket?.extraFields?.slice(0, -1),
127
- };
128
- })
129
- );
130
- }
131
- }
132
- }, [tickets, release.id, setValue]);
133
-
134
- return (
135
- <Box>
136
- <Stack direction="row" spacing={1}>
137
- <Stack
138
- direction="row"
139
- spacing={1}
140
- justifyContent="space-between"
141
- alignItems="center"
142
- sx={{ width: '100%', backgroundColor: 'grey.200', p: 1, pl: 1.5, borderRadius: 1 }}
143
- >
144
- <Stack direction="row" spacing={2} alignItems="center">
145
- <Stack direction="row" spacing={0.5} alignItems="center">
146
- <Iconify
147
- icon="ion:ticket-outline"
148
- color="primary.main"
149
- sx={{ width: 24, height: 24 }}
150
- />
151
- {release.product && (
152
- <>
153
- <Typography fontSize={20} lineHeight={1}>
154
- +
155
- </Typography>
156
- <Iconify
157
- icon="lucide-lab:shirt-t"
158
- color="primary.main"
159
- sx={{ width: 24, height: 24 }}
160
- />
161
- </>
162
- )}
163
- </Stack>
164
- <Typography color="grey.500">
165
- {release.releaseCategoryName} - {release.name} -{' '}
166
- {fCurrency(release.price, lang, currency)}
167
- </Typography>
168
- </Stack>
169
- {isReleaseSelected(release.id) ? (
170
- <Stack direction="row" spacing={1} py={0.5}>
171
- <IconButton onClick={() => decreaseQuantity()} size="small" color="primary">
172
- <Iconify icon="eva:minus-fill" />
173
- </IconButton>
174
- <Typography color="grey.500">{getSelectedQuantity(release.id)}</Typography>
175
- <IconButton
176
- onClick={() =>
177
- release.product ? setOpenVariantDialog('increase') : increaseQuantity()
178
- }
179
- size="small"
180
- color="primary"
181
- disabled={isMaxQuantity(release.id)}
182
- >
183
- <Iconify icon="eva:plus-fill" />
184
- </IconButton>
185
- </Stack>
186
- ) : (
187
- <Button
188
- onClick={() =>
189
- !release.locked && (release.product ? setOpenVariantDialog('add') : addRelease())
190
- }
191
- variant="contained"
192
- disabled={release.locked}
193
- >
194
- {t('add')}
195
- </Button>
196
- )}
197
- </Stack>
198
- </Stack>
199
- <Typography
200
- variant="caption"
201
- content="div"
202
- mt={2}
203
- mb={release.extraFields?.length ? 2 : 0}
204
- display="block"
205
- >
206
- {release.description}
207
- </Typography>
208
- {release.extraFields && release.extraFields.length > 0 && (
209
- <ReleaseExtraFields
210
- release={release}
211
- eventId={eventId}
212
- releaseIndex={index}
213
- quantity={countTickets}
214
- />
215
- )}
216
- {release.product && (
217
- <ProductVariantsDialog
218
- eventProduct={release.product}
219
- openDialog={!!openVariantDialog}
220
- callback={openVariantDialog === 'increase' ? increaseQuantity : addRelease}
221
- onClose={() => setOpenVariantDialog(null)}
222
- selectedQuantityByVariant={getSelectedQuantityByVariant(products, tickets)}
223
- eventId={eventId}
224
- />
225
- )}
226
- </Box>
227
- );
228
- };
229
-
230
- export default ReleaseWithMerchandise;