@eventlook/sdk 1.4.2 → 1.4.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (251) hide show
  1. package/dist/cjs/_virtual/_commonjsHelpers.js +6 -0
  2. package/dist/cjs/_virtual/_commonjsHelpers.js.map +1 -0
  3. package/dist/cjs/_virtual/colorManipulator.js +6 -0
  4. package/dist/cjs/_virtual/colorManipulator.js.map +1 -0
  5. package/dist/cjs/_virtual/createStyled.js +6 -0
  6. package/dist/cjs/_virtual/createStyled.js.map +1 -0
  7. package/dist/cjs/_virtual/customParseFormat.js +6 -0
  8. package/dist/cjs/_virtual/customParseFormat.js.map +1 -0
  9. package/dist/cjs/_virtual/dayjs.min.js +6 -0
  10. package/dist/cjs/_virtual/dayjs.min.js.map +1 -0
  11. package/dist/cjs/_virtual/extends.js +6 -0
  12. package/dist/cjs/_virtual/extends.js.map +1 -0
  13. package/dist/cjs/_virtual/index.js +6 -0
  14. package/dist/cjs/_virtual/index.js.map +1 -0
  15. package/dist/cjs/_virtual/index.umd.js +6 -0
  16. package/dist/cjs/_virtual/index.umd.js.map +1 -0
  17. package/dist/cjs/_virtual/index10.js +11 -0
  18. package/dist/cjs/_virtual/index10.js.map +1 -0
  19. package/dist/cjs/_virtual/index11.js +11 -0
  20. package/dist/cjs/_virtual/index11.js.map +1 -0
  21. package/dist/cjs/_virtual/index12.js +6 -0
  22. package/dist/cjs/_virtual/index12.js.map +1 -0
  23. package/dist/cjs/_virtual/index13.js +6 -0
  24. package/dist/cjs/_virtual/index13.js.map +1 -0
  25. package/dist/cjs/_virtual/index14.js +6 -0
  26. package/dist/cjs/_virtual/index14.js.map +1 -0
  27. package/dist/cjs/_virtual/index15.js +6 -0
  28. package/dist/cjs/_virtual/index15.js.map +1 -0
  29. package/dist/cjs/_virtual/index2.js +6 -0
  30. package/dist/cjs/_virtual/index2.js.map +1 -0
  31. package/dist/cjs/_virtual/index3.js +6 -0
  32. package/dist/cjs/_virtual/index3.js.map +1 -0
  33. package/dist/cjs/_virtual/index4.js +11 -0
  34. package/dist/cjs/_virtual/index4.js.map +1 -0
  35. package/dist/cjs/_virtual/index5.js +11 -0
  36. package/dist/cjs/_virtual/index5.js.map +1 -0
  37. package/dist/cjs/_virtual/index6.js +11 -0
  38. package/dist/cjs/_virtual/index6.js.map +1 -0
  39. package/dist/cjs/_virtual/index7.js +11 -0
  40. package/dist/cjs/_virtual/index7.js.map +1 -0
  41. package/dist/cjs/_virtual/index8.js +11 -0
  42. package/dist/cjs/_virtual/index8.js.map +1 -0
  43. package/dist/cjs/_virtual/index9.js +11 -0
  44. package/dist/cjs/_virtual/index9.js.map +1 -0
  45. package/dist/cjs/_virtual/interopRequireDefault.js +6 -0
  46. package/dist/cjs/_virtual/interopRequireDefault.js.map +1 -0
  47. package/dist/cjs/_virtual/isBetween.js +6 -0
  48. package/dist/cjs/_virtual/isBetween.js.map +1 -0
  49. package/dist/cjs/_virtual/jsx-runtime.js +6 -0
  50. package/dist/cjs/_virtual/jsx-runtime.js.map +1 -0
  51. package/dist/cjs/_virtual/localizedFormat.js +6 -0
  52. package/dist/cjs/_virtual/localizedFormat.js.map +1 -0
  53. package/dist/cjs/_virtual/lodash.js +6 -0
  54. package/dist/cjs/_virtual/lodash.js.map +1 -0
  55. package/dist/cjs/_virtual/lottie.js +6 -0
  56. package/dist/cjs/_virtual/lottie.js.map +1 -0
  57. package/dist/cjs/_virtual/numeral.js +6 -0
  58. package/dist/cjs/_virtual/numeral.js.map +1 -0
  59. package/dist/cjs/_virtual/objectWithoutPropertiesLoose.js +6 -0
  60. package/dist/cjs/_virtual/objectWithoutPropertiesLoose.js.map +1 -0
  61. package/dist/cjs/_virtual/react-is.development.js +6 -0
  62. package/dist/cjs/_virtual/react-is.development.js.map +1 -0
  63. package/dist/cjs/_virtual/react-is.development2.js +6 -0
  64. package/dist/cjs/_virtual/react-is.development2.js.map +1 -0
  65. package/dist/cjs/_virtual/react-is.development3.js +6 -0
  66. package/dist/cjs/_virtual/react-is.development3.js.map +1 -0
  67. package/dist/cjs/_virtual/react-is.production.js +6 -0
  68. package/dist/cjs/_virtual/react-is.production.js.map +1 -0
  69. package/dist/cjs/_virtual/react-is.production.min.js +6 -0
  70. package/dist/cjs/_virtual/react-is.production.min.js.map +1 -0
  71. package/dist/cjs/_virtual/react-is.production.min2.js +6 -0
  72. package/dist/cjs/_virtual/react-is.production.min2.js.map +1 -0
  73. package/dist/cjs/_virtual/react-jsx-runtime.development.js +6 -0
  74. package/dist/cjs/_virtual/react-jsx-runtime.development.js.map +1 -0
  75. package/dist/cjs/_virtual/react-jsx-runtime.production.min.js +6 -0
  76. package/dist/cjs/_virtual/react-jsx-runtime.production.min.js.map +1 -0
  77. package/dist/cjs/_virtual/timezone.js +6 -0
  78. package/dist/cjs/_virtual/timezone.js.map +1 -0
  79. package/dist/cjs/_virtual/use-sync-external-store-shim.development.js +6 -0
  80. package/dist/cjs/_virtual/use-sync-external-store-shim.development.js.map +1 -0
  81. package/dist/cjs/_virtual/use-sync-external-store-shim.production.js +6 -0
  82. package/dist/cjs/_virtual/use-sync-external-store-shim.production.js.map +1 -0
  83. package/dist/cjs/_virtual/useThemeWithoutDefault.js +6 -0
  84. package/dist/cjs/_virtual/useThemeWithoutDefault.js.map +1 -0
  85. package/dist/cjs/_virtual/utc.js +6 -0
  86. package/dist/cjs/_virtual/utc.js.map +1 -0
  87. package/dist/cjs/_virtual/weekOfYear.js +6 -0
  88. package/dist/cjs/_virtual/weekOfYear.js.map +1 -0
  89. package/dist/cjs/form/Payment.js +1 -1
  90. package/dist/cjs/form/Payment.js.map +1 -1
  91. package/dist/cjs/form/TicketSelection.js +3 -1
  92. package/dist/cjs/form/TicketSelection.js.map +1 -1
  93. package/dist/cjs/form/index.js +1 -1
  94. package/dist/cjs/form/index.js.map +1 -1
  95. package/dist/cjs/hooks/data/useAllowedPaymentMethods.js +1 -1
  96. package/dist/cjs/hooks/data/useAllowedPaymentMethods.js.map +1 -1
  97. package/dist/cjs/locales/cs.js +1 -0
  98. package/dist/cjs/locales/cs.js.map +1 -1
  99. package/dist/cjs/locales/en.js +1 -0
  100. package/dist/cjs/locales/en.js.map +1 -1
  101. package/dist/cjs/locales/es.js +1 -0
  102. package/dist/cjs/locales/es.js.map +1 -1
  103. package/dist/cjs/locales/pl.js +1 -0
  104. package/dist/cjs/locales/pl.js.map +1 -1
  105. package/dist/cjs/locales/sk.js +1 -0
  106. package/dist/cjs/locales/sk.js.map +1 -1
  107. package/dist/cjs/locales/uk.js +1 -0
  108. package/dist/cjs/locales/uk.js.map +1 -1
  109. package/dist/cjs/modules/order.js +1 -1
  110. package/dist/cjs/modules/order.js.map +1 -1
  111. package/dist/cjs/utils/data/order.js +8 -0
  112. package/dist/cjs/utils/data/order.js.map +1 -0
  113. package/dist/esm/_virtual/_commonjsHelpers.js +4 -0
  114. package/dist/esm/_virtual/_commonjsHelpers.js.map +1 -0
  115. package/dist/esm/_virtual/colorManipulator.js +4 -0
  116. package/dist/esm/_virtual/colorManipulator.js.map +1 -0
  117. package/dist/esm/_virtual/createStyled.js +4 -0
  118. package/dist/esm/_virtual/createStyled.js.map +1 -0
  119. package/dist/esm/_virtual/customParseFormat.js +4 -0
  120. package/dist/esm/_virtual/customParseFormat.js.map +1 -0
  121. package/dist/esm/_virtual/dayjs.min.js +4 -0
  122. package/dist/esm/_virtual/dayjs.min.js.map +1 -0
  123. package/dist/esm/_virtual/extends.js +4 -0
  124. package/dist/esm/_virtual/extends.js.map +1 -0
  125. package/dist/esm/_virtual/index.js +4 -0
  126. package/dist/esm/_virtual/index.js.map +1 -0
  127. package/dist/esm/_virtual/index.umd.js +4 -0
  128. package/dist/esm/_virtual/index.umd.js.map +1 -0
  129. package/dist/esm/_virtual/index10.js +7 -0
  130. package/dist/esm/_virtual/index10.js.map +1 -0
  131. package/dist/esm/_virtual/index11.js +7 -0
  132. package/dist/esm/_virtual/index11.js.map +1 -0
  133. package/dist/esm/_virtual/index12.js +4 -0
  134. package/dist/esm/_virtual/index12.js.map +1 -0
  135. package/dist/esm/_virtual/index13.js +4 -0
  136. package/dist/esm/_virtual/index13.js.map +1 -0
  137. package/dist/esm/_virtual/index14.js +4 -0
  138. package/dist/esm/_virtual/index14.js.map +1 -0
  139. package/dist/esm/_virtual/index15.js +4 -0
  140. package/dist/esm/_virtual/index15.js.map +1 -0
  141. package/dist/esm/_virtual/index2.js +4 -0
  142. package/dist/esm/_virtual/index2.js.map +1 -0
  143. package/dist/esm/_virtual/index3.js +4 -0
  144. package/dist/esm/_virtual/index3.js.map +1 -0
  145. package/dist/esm/_virtual/index4.js +7 -0
  146. package/dist/esm/_virtual/index4.js.map +1 -0
  147. package/dist/esm/_virtual/index5.js +7 -0
  148. package/dist/esm/_virtual/index5.js.map +1 -0
  149. package/dist/esm/_virtual/index6.js +7 -0
  150. package/dist/esm/_virtual/index6.js.map +1 -0
  151. package/dist/esm/_virtual/index7.js +7 -0
  152. package/dist/esm/_virtual/index7.js.map +1 -0
  153. package/dist/esm/_virtual/index8.js +7 -0
  154. package/dist/esm/_virtual/index8.js.map +1 -0
  155. package/dist/esm/_virtual/index9.js +7 -0
  156. package/dist/esm/_virtual/index9.js.map +1 -0
  157. package/dist/esm/_virtual/interopRequireDefault.js +4 -0
  158. package/dist/esm/_virtual/interopRequireDefault.js.map +1 -0
  159. package/dist/esm/_virtual/isBetween.js +4 -0
  160. package/dist/esm/_virtual/isBetween.js.map +1 -0
  161. package/dist/esm/_virtual/jsx-runtime.js +4 -0
  162. package/dist/esm/_virtual/jsx-runtime.js.map +1 -0
  163. package/dist/esm/_virtual/localizedFormat.js +4 -0
  164. package/dist/esm/_virtual/localizedFormat.js.map +1 -0
  165. package/dist/esm/_virtual/lodash.js +4 -0
  166. package/dist/esm/_virtual/lodash.js.map +1 -0
  167. package/dist/esm/_virtual/lottie.js +4 -0
  168. package/dist/esm/_virtual/lottie.js.map +1 -0
  169. package/dist/esm/_virtual/numeral.js +4 -0
  170. package/dist/esm/_virtual/numeral.js.map +1 -0
  171. package/dist/esm/_virtual/objectWithoutPropertiesLoose.js +4 -0
  172. package/dist/esm/_virtual/objectWithoutPropertiesLoose.js.map +1 -0
  173. package/dist/esm/_virtual/react-is.development.js +4 -0
  174. package/dist/esm/_virtual/react-is.development.js.map +1 -0
  175. package/dist/esm/_virtual/react-is.development2.js +4 -0
  176. package/dist/esm/_virtual/react-is.development2.js.map +1 -0
  177. package/dist/esm/_virtual/react-is.development3.js +4 -0
  178. package/dist/esm/_virtual/react-is.development3.js.map +1 -0
  179. package/dist/esm/_virtual/react-is.production.js +4 -0
  180. package/dist/esm/_virtual/react-is.production.js.map +1 -0
  181. package/dist/esm/_virtual/react-is.production.min.js +4 -0
  182. package/dist/esm/_virtual/react-is.production.min.js.map +1 -0
  183. package/dist/esm/_virtual/react-is.production.min2.js +4 -0
  184. package/dist/esm/_virtual/react-is.production.min2.js.map +1 -0
  185. package/dist/esm/_virtual/react-jsx-runtime.development.js +4 -0
  186. package/dist/esm/_virtual/react-jsx-runtime.development.js.map +1 -0
  187. package/dist/esm/_virtual/react-jsx-runtime.production.min.js +4 -0
  188. package/dist/esm/_virtual/react-jsx-runtime.production.min.js.map +1 -0
  189. package/dist/esm/_virtual/timezone.js +4 -0
  190. package/dist/esm/_virtual/timezone.js.map +1 -0
  191. package/dist/esm/_virtual/use-sync-external-store-shim.development.js +4 -0
  192. package/dist/esm/_virtual/use-sync-external-store-shim.development.js.map +1 -0
  193. package/dist/esm/_virtual/use-sync-external-store-shim.production.js +4 -0
  194. package/dist/esm/_virtual/use-sync-external-store-shim.production.js.map +1 -0
  195. package/dist/esm/_virtual/useThemeWithoutDefault.js +4 -0
  196. package/dist/esm/_virtual/useThemeWithoutDefault.js.map +1 -0
  197. package/dist/esm/_virtual/utc.js +4 -0
  198. package/dist/esm/_virtual/utc.js.map +1 -0
  199. package/dist/esm/_virtual/weekOfYear.js +4 -0
  200. package/dist/esm/_virtual/weekOfYear.js.map +1 -0
  201. package/dist/esm/form/Payment.js +1 -1
  202. package/dist/esm/form/Payment.js.map +1 -1
  203. package/dist/esm/form/TicketSelection.js +3 -1
  204. package/dist/esm/form/TicketSelection.js.map +1 -1
  205. package/dist/esm/form/index.js +1 -1
  206. package/dist/esm/form/index.js.map +1 -1
  207. package/dist/esm/hooks/data/useAllowedPaymentMethods.js +1 -1
  208. package/dist/esm/hooks/data/useAllowedPaymentMethods.js.map +1 -1
  209. package/dist/esm/locales/cs.js +1 -0
  210. package/dist/esm/locales/cs.js.map +1 -1
  211. package/dist/esm/locales/en.js +1 -0
  212. package/dist/esm/locales/en.js.map +1 -1
  213. package/dist/esm/locales/es.js +1 -0
  214. package/dist/esm/locales/es.js.map +1 -1
  215. package/dist/esm/locales/pl.js +1 -0
  216. package/dist/esm/locales/pl.js.map +1 -1
  217. package/dist/esm/locales/sk.js +1 -0
  218. package/dist/esm/locales/sk.js.map +1 -1
  219. package/dist/esm/locales/uk.js +1 -0
  220. package/dist/esm/locales/uk.js.map +1 -1
  221. package/dist/esm/modules/order.js +1 -1
  222. package/dist/esm/modules/order.js.map +1 -1
  223. package/dist/esm/utils/data/order.js +8 -0
  224. package/dist/esm/utils/data/order.js.map +1 -0
  225. package/dist/index.cjs.js +90295 -0
  226. package/dist/index.cjs.js.map +1 -0
  227. package/dist/index.esm.js +90275 -0
  228. package/dist/index.esm.js.map +1 -0
  229. package/dist/types/hooks/data/useShoppingCart.d.ts +8 -0
  230. package/dist/types/locales/cs.d.ts +1 -0
  231. package/dist/types/locales/en.d.ts +1 -0
  232. package/dist/types/locales/es.d.ts +1 -0
  233. package/dist/types/locales/pl.d.ts +1 -0
  234. package/dist/types/locales/sk.d.ts +1 -0
  235. package/dist/types/locales/uk.d.ts +1 -0
  236. package/dist/types/utils/types/global.type.d.ts +1 -0
  237. package/package.json +1 -1
  238. package/src/form/Payment.tsx +1 -1
  239. package/src/form/TicketSelection.tsx +3 -2
  240. package/src/form/index.tsx +6 -1
  241. package/src/locales/cs.tsx +1 -0
  242. package/src/locales/en.tsx +1 -0
  243. package/src/locales/es.tsx +1 -0
  244. package/src/locales/pl.tsx +1 -0
  245. package/src/locales/sk.tsx +1 -0
  246. package/src/locales/uk.tsx +1 -0
  247. package/src/utils/types/global.type.ts +1 -0
  248. package/dist/cjs/form/PaymentStep.js +0 -219
  249. package/dist/cjs/form/PaymentStep.js.map +0 -1
  250. package/dist/esm/form/PaymentStep.js +0 -215
  251. package/dist/esm/form/PaymentStep.js.map +0 -1
@@ -0,0 +1,8 @@
1
+ import { IShoppingCart, ICalculateShoppingCartDto } from '@utils/types/shopping-cart.type';
2
+ export default function useShoppingCart(body: ICalculateShoppingCartDto): {
3
+ data: IShoppingCart | undefined;
4
+ error: any;
5
+ isValidating: boolean;
6
+ mutate: import("swr").KeyedMutator<IShoppingCart>;
7
+ isLoading: boolean;
8
+ };
@@ -9,6 +9,7 @@ declare const cs: {
9
9
  cancel: string;
10
10
  pay: string;
11
11
  change: string;
12
+ free: string;
12
13
  back_to_tickets: string;
13
14
  unselected: string;
14
15
  go_home: string;
@@ -9,6 +9,7 @@ declare const en: {
9
9
  cancel: string;
10
10
  pay: string;
11
11
  change: string;
12
+ free: string;
12
13
  back_to_tickets: string;
13
14
  unselected: string;
14
15
  go_home: string;
@@ -9,6 +9,7 @@ declare const es: {
9
9
  cancel: string;
10
10
  pay: string;
11
11
  change: string;
12
+ free: string;
12
13
  back_to_tickets: string;
13
14
  unselected: string;
14
15
  go_home: string;
@@ -9,6 +9,7 @@ declare const pl: {
9
9
  cancel: string;
10
10
  pay: string;
11
11
  change: string;
12
+ free: string;
12
13
  back_to_tickets: string;
13
14
  unselected: string;
14
15
  go_home: string;
@@ -9,6 +9,7 @@ declare const sk: {
9
9
  cancel: string;
10
10
  pay: string;
11
11
  change: string;
12
+ free: string;
12
13
  back_to_tickets: string;
13
14
  unselected: string;
14
15
  go_home: string;
@@ -9,6 +9,7 @@ declare const uk: {
9
9
  cancel: string;
10
10
  pay: string;
11
11
  change: string;
12
+ free: string;
12
13
  back_to_tickets: string;
13
14
  unselected: string;
14
15
  go_home: string;
@@ -32,6 +32,7 @@ export interface IGlobalContextOptions {
32
32
  stickyHeaderTop?: number;
33
33
  termsAndConditionsCompanies?: string[];
34
34
  autoscrollAfterViewChange?: boolean;
35
+ hasGopayId?: boolean;
35
36
  }
36
37
  export interface IBase {
37
38
  id: number;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@eventlook/sdk",
3
- "version": "1.4.2",
3
+ "version": "1.4.4",
4
4
  "main": "dist/cjs/index.js",
5
5
  "module": "dist/esm/index.js",
6
6
  "types": "dist/types/index.d.ts",
@@ -37,7 +37,7 @@ interface Props {
37
37
  const Payment: React.FC<Props> = ({ event }) => {
38
38
  const { t, lang } = useGlobal();
39
39
  const { showSnackbar } = useGlobal();
40
- const { data, isLoading } = useAllowedPaymentMethods(event.currency);
40
+ const { data, isLoading } = useAllowedPaymentMethods(event.currency, event.id);
41
41
  const { control, watch, setValue } = useFormContext<ITicketForm>();
42
42
  const paymentMethodId = watch('paymentMethodId');
43
43
  const paymentMethodOptionId = watch('paymentMethodOptionId');
@@ -23,7 +23,6 @@ import useResponsive from '@hooks/useResponsive';
23
23
  import ReleaseExtraFields from '@form/extra-field/ReleaseExtraFields';
24
24
  import { EventType } from '@utils/data/event';
25
25
  import useGlobal from '@hooks/useGlobal.ts';
26
- import { isEqual } from 'lodash';
27
26
 
28
27
  interface Props {
29
28
  event: IEvent;
@@ -208,7 +207,9 @@ const TicketSelection: React.FC<Props> = ({ event }) => {
208
207
  }
209
208
  >
210
209
  {activeRelease.releaseCategoryName} - {activeRelease.name}:{' '}
211
- {fCurrency(activeRelease.price, lang, event.currency)}
210
+ {activeRelease.price === 0
211
+ ? t('free')
212
+ : fCurrency(activeRelease.price, lang, event.currency)}
212
213
  </MenuItem>
213
214
  ))}
214
215
  </RHFSelect>
@@ -104,7 +104,12 @@ const ClientRender: React.FC<OrderFormProps> = ({
104
104
  {!data || !!error ? (
105
105
  <TicketFormSkeleton />
106
106
  ) : (
107
- <TicketForm event={data} hasGopayIdSsr={false} selectedReleaseId={selectedReleaseId} />
107
+ <TicketForm
108
+ event={data}
109
+ hasGopayIdSsr={options?.hasGopayId || false}
110
+ isIframe={options?.isIframe}
111
+ selectedReleaseId={selectedReleaseId}
112
+ />
108
113
  )}
109
114
  </GlobalProvider>
110
115
  </LocalizationProvider>
@@ -9,6 +9,7 @@ const cs = {
9
9
  cancel: 'Zrušit',
10
10
  pay: 'Zaplatit',
11
11
  change: 'Změnit',
12
+ free: 'Zdarma',
12
13
  back_to_tickets: 'Zpět na vstupenky',
13
14
  unselected: 'Nevybráno',
14
15
  go_home: 'Přejít na úvodní stránku',
@@ -9,6 +9,7 @@ const en = {
9
9
  cancel: 'Cancel',
10
10
  pay: 'Pay',
11
11
  change: 'Change',
12
+ free: 'Free',
12
13
  back_to_tickets: 'Back to tickets',
13
14
  unselected: 'Unselected',
14
15
  go_home: 'Go to homepage',
@@ -9,6 +9,7 @@ const es = {
9
9
  cancel: 'Cancelar',
10
10
  pay: 'Pagar',
11
11
  change: 'Cambiar',
12
+ free: 'Gratis',
12
13
  back_to_tickets: 'Volver a las entradas',
13
14
  unselected: 'No seleccionado',
14
15
  go_home: 'Ir a la página principal',
@@ -9,6 +9,7 @@ const pl = {
9
9
  cancel: 'Anuluj',
10
10
  pay: 'Zapłać',
11
11
  change: 'Zmień',
12
+ free: 'Darmowe',
12
13
  back_to_tickets: 'Powrót do biletów',
13
14
  unselected: 'Niewybrany',
14
15
  go_home: 'Przejdź do strony głównej',
@@ -9,6 +9,7 @@ const sk = {
9
9
  cancel: 'Zrušiť',
10
10
  pay: 'Zaplaťte',
11
11
  change: 'Zmeniť',
12
+ free: 'Zadarmo',
12
13
  back_to_tickets: 'Späť na vstupenky',
13
14
  unselected: 'Nevybrané',
14
15
  go_home: 'Prejsť na domovskú stránku',
@@ -9,6 +9,7 @@ const uk = {
9
9
  cancel: 'Скасувати',
10
10
  pay: 'Оплатити',
11
11
  change: 'Змінити',
12
+ free: 'Безкоштовно',
12
13
  back_to_tickets: 'Повернутися до квитків',
13
14
  unselected: 'Не вибрано',
14
15
  go_home: 'Перейти на головну',
@@ -33,6 +33,7 @@ export interface IGlobalContextOptions {
33
33
  stickyHeaderTop?: number;
34
34
  termsAndConditionsCompanies?: string[];
35
35
  autoscrollAfterViewChange?: boolean;
36
+ hasGopayId?: boolean;
36
37
  }
37
38
 
38
39
  export interface IBase {
@@ -1,219 +0,0 @@
1
- 'use strict';
2
-
3
- Object.defineProperty(exports, '__esModule', { value: true });
4
-
5
- var React = require('react');
6
- var material = require('@mui/material');
7
- var useAllowedPaymentMethods = require('../hooks/data/useAllowedPaymentMethods.js');
8
- var reactHookForm = require('react-hook-form');
9
- var style = require('./style.js');
10
- var Image = require('../components/Image.js');
11
- var Label = require('../components/Label.js');
12
- var PaymentSkeleton = require('./payment/PaymentSkeleton.js');
13
- var RHFRadioGroup = require('../components/hook-form/RHFRadioGroup.js');
14
- var promoCode = require('../modules/promo-code.js');
15
- var useGlobal = require('../hooks/useGlobal.js');
16
- var promoCode$1 = require('../utils/data/promo-code.js');
17
- var lodash = require('lodash');
18
- require('framer-motion');
19
- require('../components/animate/IconButtonAnimate.js');
20
- require('@mui/material/styles');
21
- require('@mui/material/useMediaQuery');
22
- var Iconify = require('../components/iconify/Iconify.js');
23
-
24
- const PaymentStep = ({ event }) => {
25
- const { t, lang } = useGlobal.default();
26
- const { showSnackbar } = useGlobal.default();
27
- const { data, isLoading } = useAllowedPaymentMethods.default(event.currency);
28
- const { control, watch, setValue } = reactHookForm.useFormContext();
29
- const paymentMethodId = watch('paymentMethodId');
30
- const paymentMethodOptionId = watch('paymentMethodOptionId');
31
- const [promoCode$2, setPromoCode] = React.useState('');
32
- const [promoCodeError, setPromoCodeError] = React.useState(null);
33
- const [combine, setCombine] = React.useState(true);
34
- const promoCodes = watch('promoCodes');
35
- const originalPrice = watch('originalPrice');
36
- const handleSubmit = lodash.throttle(async () => {
37
- if (!promoCode$2) {
38
- setPromoCodeError(t('form.validation.required'));
39
- return;
40
- }
41
- try {
42
- if (promoCodes.find((i) => i.code === promoCode$2)) {
43
- setPromoCodeError(t('form.validation.promo_code_applied'));
44
- return;
45
- }
46
- if (!combine) {
47
- setPromoCodeError(t('form.validation.promo_code_cant_combine'));
48
- return;
49
- }
50
- const res = await promoCode.postPromoCodeApply(promoCode$2, event.id);
51
- const promo = res.data.data;
52
- if (promo && promo.minPurchaseAmount && promo.minPurchaseAmount > originalPrice) {
53
- setPromoCodeError(t('form.validation.min_purchase_not_met') +
54
- promo.minPurchaseAmount +
55
- ' ' +
56
- event.currency);
57
- return;
58
- }
59
- if (!promo.combine && promoCodes.length === 0) {
60
- setCombine(false);
61
- }
62
- else if (!promo.combine) {
63
- setPromoCodeError(t('form.validation.promo_code_cant_combine'));
64
- return;
65
- }
66
- setValue('promoCodes', [...promoCodes, promo]);
67
- showSnackbar(res.message);
68
- setPromoCodeError(null);
69
- setValue('promoCode', promo);
70
- setPromoCode('');
71
- }
72
- catch (err) {
73
- setPromoCodeError(t('form.validation.promo_code_invalid'));
74
- console.error(err);
75
- setValue('promoCode', null);
76
- }
77
- }, 1000, { leading: true, trailing: false } // Allow immediate execution but prevent spam
78
- );
79
- const removePromoCode = (promoCodeToRemove) => {
80
- const newPromoCodes = promoCodes.filter((promoC) => promoC.code !== promoCodeToRemove);
81
- if (!newPromoCodes.find((promoC) => promoC.combine))
82
- setCombine(true);
83
- setValue('promoCodes', newPromoCodes);
84
- };
85
- const handleKeyDown = async (e) => {
86
- if (e.key === 'Enter') {
87
- e.preventDefault();
88
- if (promoCode$2)
89
- await handleSubmit();
90
- }
91
- };
92
- React.useEffect(() => {
93
- if (promoCodes.length === 0)
94
- return;
95
- const highest = promoCodes.sort((a, b) => b.minPurchaseAmount - a.minPurchaseAmount)[0]
96
- .minPurchaseAmount;
97
- if (originalPrice < highest) {
98
- const newPromoCodes = promoCodes.filter((promoCode) => promoCode.minPurchaseAmount <= originalPrice);
99
- if (newPromoCodes.length === 0) {
100
- setCombine(true);
101
- }
102
- setValue('promoCodes', newPromoCodes);
103
- }
104
- }, [originalPrice]);
105
- React.useEffect(() => {
106
- if (data) {
107
- if (!paymentMethodId && !!data.length) {
108
- setValue('paymentMethodId', data[0].id);
109
- }
110
- const selectedPayment = data && data?.length && data.find((payment) => payment.id === Number(paymentMethodId));
111
- if (selectedPayment && !!selectedPayment.options.length && !paymentMethodOptionId) {
112
- setValue('paymentMethodOptionId', selectedPayment.options[0].id);
113
- }
114
- else if (selectedPayment && !!selectedPayment.options.length && !!paymentMethodOptionId) {
115
- const existingOption = selectedPayment.options.find((option) => option.id === Number(paymentMethodOptionId));
116
- if (!existingOption) {
117
- setValue('paymentMethodOptionId', selectedPayment.options[0].id);
118
- }
119
- }
120
- else if (selectedPayment && !selectedPayment?.options.length) {
121
- setValue('paymentMethodOptionId', null);
122
- }
123
- }
124
- }, [data, paymentMethodId, paymentMethodOptionId]);
125
- const tickets = reactHookForm.useWatch({
126
- name: 'tickets',
127
- defaultValue: {},
128
- });
129
- const hasTickets = React.useMemo(() => Object.values(tickets)
130
- .flat()
131
- .filter((t) => t.quantity).length > 0, [tickets]);
132
- const products = reactHookForm.useWatch({
133
- name: 'products',
134
- defaultValue: {},
135
- });
136
- const hasProducts = React.useMemo(() => Object.values(products).flat().length > 0, [products]);
137
- const total = reactHookForm.useWatch({ name: 'total' });
138
- const isZero = React.useMemo(() => total === 0 && (hasTickets || hasProducts), [total]);
139
- const paymentMethods = React.useMemo(() => {
140
- if (!data)
141
- return [];
142
- if (isZero) {
143
- return data.filter((payment) => ['PAYMENT_CARD', 'APPLE_PAY', 'GPAY', 'CLICK_TO_PAY'].includes(payment.type));
144
- }
145
- else {
146
- return data;
147
- }
148
- // hasTickets and hasProducts are intentionally not in the dependecies
149
- }, [data, isZero]);
150
- return (React.createElement(material.Step, { active: true },
151
- React.createElement(material.StepLabel, null, isZero ? t('event.tickets.stepper.3.title') : t('event.tickets.stepper.3.title_verify')),
152
- React.createElement(material.StepContent, null,
153
- React.createElement(material.Box, null,
154
- React.createElement(material.Box, { className: "payment__promo-code" },
155
- React.createElement(material.Stack, { direction: "row", spacing: 2 },
156
- React.createElement(material.TextField, { name: "promoCode", size: "small", label: t('form.labels.promo_code'), value: promoCode$2, onChange: (e) => setPromoCode(e.target.value), onBlur: (e) => {
157
- if (!e.target.value.trim())
158
- setPromoCodeError(null);
159
- }, onKeyDown: handleKeyDown, error: !!promoCodeError, helperText: promoCodeError, fullWidth: true }),
160
- React.createElement(material.Box, null,
161
- React.createElement(material.Button, { size: "large", type: "button", variant: "contained", onClick: handleSubmit, disabled: !promoCode$2, sx: { height: 51 } }, t('apply')))),
162
- React.createElement(material.Stack, { paddingTop: 3, direction: "column", spacing: 1 }, promoCodes.length > 0 &&
163
- promoCodes.map((item) => (React.createElement(material.Stack, { marginTop: 3, direction: "row", alignItems: "center", justifyContent: "space-between", spacing: 2, key: item.code },
164
- React.createElement(React.Fragment, null,
165
- React.createElement(material.Stack, { direction: "row", alignItems: "center" },
166
- React.createElement(Label.default, { variant: "filled", sx: { textTransform: 'none', cursor: 'pointer' } }, item.code),
167
- React.createElement(material.Typography, { variant: "subtitle2", sx: { ml: 1 } },
168
- "-",
169
- ' ',
170
- item.value +
171
- `${item.type === promoCode$1.PromoCodeTypes.FIXED ? ' ' + event.currency : '%'}`)),
172
- React.createElement(material.Box, null,
173
- React.createElement(material.IconButton, { color: "primary", onClick: () => removePromoCode(item.code), "aria-label": "delete" },
174
- React.createElement(Iconify.default, { icon: "carbon:trash-can" }))))))))),
175
- React.createElement(material.Typography, { variant: "h4", mt: 2 }, t('event.tickets.stepper.3.subtitle')),
176
- isLoading ? (React.createElement(PaymentSkeleton.default, { sx: { marginTop: 1 } })) : (React.createElement(style.PaymentWrapper, null,
177
- React.createElement(reactHookForm.Controller, { name: "paymentMethodId", control: control, render: ({ field, fieldState: { error } }) => (React.createElement(material.FormControl, { component: "fieldset" },
178
- React.createElement(material.RadioGroup, { ...field }, paymentMethods.map((payment) => (React.createElement(style.PaymentItem, { key: payment.type, active: !!paymentMethodId && Number(paymentMethodId) === payment.id },
179
- React.createElement(material.FormControlLabel, { value: payment.id, control: React.createElement(material.Radio, null), label: React.createElement(material.Stack, { direction: "row", alignItems: "center" },
180
- React.createElement(material.Typography, { sx: {
181
- marginRight: 2,
182
- } }, payment.label[lang]),
183
- React.createElement(Image.default, { src: payment.image.url, sx: {
184
- height: '20px',
185
- '& .wrapper img': {
186
- objectFit: 'contain',
187
- },
188
- } })), sx: {
189
- '&:not(:last-of-type)': {
190
- mb: 0,
191
- },
192
- } }),
193
- !!payment.options.length &&
194
- !!paymentMethodId &&
195
- Number(paymentMethodId) === payment.id && (React.createElement(style.PaymentSwiftWrapper, null,
196
- React.createElement(material.Divider, { sx: { mb: 2 } }),
197
- React.createElement(RHFRadioGroup.default, { name: "paymentMethodOptionId", row: true, options: payment.options
198
- .filter((item) => !item.label.en.includes('eshop.api.swifts'))
199
- .map((option) => ({
200
- label: (React.createElement(material.Stack, { direction: "row", alignItems: "center" },
201
- React.createElement(Image.default, { src: option.image.url, sx: {
202
- width: 'auto',
203
- height: '15px',
204
- maxWidth: '70px',
205
- display: 'inline-block',
206
- marginRight: 1,
207
- '& .wrapper img': {
208
- objectFit: 'contain',
209
- objectPosition: 'left',
210
- },
211
- } }),
212
- React.createElement(material.Typography, { variant: "body2" }, option.label[lang]))),
213
- value: option.id,
214
- })) }))))))),
215
- !!error && (React.createElement(material.FormHelperText, { error: !!error, sx: { mx: 0 } }, error?.message)))) })))))));
216
- };
217
-
218
- exports.default = PaymentStep;
219
- //# sourceMappingURL=PaymentStep.js.map
@@ -1 +0,0 @@
1
- {"version":3,"file":"PaymentStep.js","sources":["../../../src/form/PaymentStep.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 Step,\n StepContent,\n StepLabel,\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 PaymentStep: React.FC<Props> = ({ event }) => {\n const { t, lang } = useGlobal();\n const { showSnackbar } = useGlobal();\n const { data, isLoading } = useAllowedPaymentMethods(event.currency);\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 hasTickets: boolean = useMemo(\n () =>\n Object.values(tickets)\n .flat()\n .filter((t) => t.quantity).length > 0,\n [tickets]\n );\n const products: Record<string, IEventProductForm[]> = useWatch({\n name: 'products',\n defaultValue: {},\n });\n const hasProducts: boolean = useMemo(() => Object.values(products).flat().length > 0, [products]);\n const total: number = useWatch({ name: 'total' });\n\n const isZero = useMemo(() => total === 0 && (hasTickets || hasProducts), [total]);\n\n const paymentMethods = useMemo(() => {\n if (!data) return [];\n if (isZero) {\n return data.filter((payment) =>\n ['PAYMENT_CARD', 'APPLE_PAY', 'GPAY', 'CLICK_TO_PAY'].includes(payment.type)\n );\n } else {\n return data;\n }\n // hasTickets and hasProducts are intentionally not in the dependecies\n }, [data, isZero]);\n\n return (\n <Step active>\n <StepLabel>\n {isZero ? t('event.tickets.stepper.3.title') : t('event.tickets.stepper.3.title_verify')}\n </StepLabel>\n <StepContent>\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\">\n {option.label[lang]}\n </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 </StepContent>\n </Step>\n );\n};\n\nexport default PaymentStep;\n"],"names":["useGlobal","useAllowedPaymentMethods","useFormContext","promoCode","useState","throttle","postPromoCodeApply","useEffect","useWatch","useMemo","Step","StepLabel","StepContent","Box","Stack","TextField","Button","Label","Typography","PromoCodeTypes","IconButton","Iconify","PaymentSkeleton","PaymentWrapper","Controller","FormControl","RadioGroup","PaymentItem","FormControlLabel","Radio","Image","PaymentSwiftWrapper","Divider","RHFRadioGroup","FormHelperText"],"mappings":";;;;;;;;;;;;;;;;;;;;;;;AAuCA,MAAM,WAAW,GAAoB,CAAC,EAAE,KAAK,EAAE,KAAI;IACjD,MAAM,EAAE,CAAC,EAAE,IAAI,EAAE,GAAGA,iBAAS,EAAE;AAC/B,IAAA,MAAM,EAAE,YAAY,EAAE,GAAGA,iBAAS,EAAE;AACpC,IAAA,MAAM,EAAE,IAAI,EAAE,SAAS,EAAE,GAAGC,gCAAwB,CAAC,KAAK,CAAC,QAAQ,CAAC;IACpE,MAAM,EAAE,OAAO,EAAE,KAAK,EAAE,QAAQ,EAAE,GAAGC,4BAAc,EAAe;AAClE,IAAA,MAAM,eAAe,GAAG,KAAK,CAAC,iBAAiB,CAAC;AAChD,IAAA,MAAM,qBAAqB,GAAG,KAAK,CAAC,uBAAuB,CAAC;IAC5D,MAAM,CAACC,WAAS,EAAE,YAAY,CAAC,GAAGC,cAAQ,CAAS,EAAE,CAAC;IACtD,MAAM,CAAC,cAAc,EAAE,iBAAiB,CAAC,GAAGA,cAAQ,CAAgB,IAAI,CAAC;IACzE,MAAM,CAAC,OAAO,EAAE,UAAU,CAAC,GAAGA,cAAQ,CAAU,IAAI,CAAC;AACrD,IAAA,MAAM,UAAU,GAAiB,KAAK,CAAC,YAAY,CAAC;AACpD,IAAA,MAAM,aAAa,GAAW,KAAK,CAAC,eAAe,CAAC;AAEpD,IAAA,MAAM,YAAY,GAAGC,eAAQ,CAC3B,YAAW;QACT,IAAI,CAACF,WAAS,EAAE;AACd,YAAA,iBAAiB,CAAC,CAAC,CAAC,0BAA0B,CAAC,CAAC;YAChD;;AAGF,QAAA,IAAI;AACF,YAAA,IAAI,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,IAAI,KAAKA,WAAS,CAAC,EAAE;AAChD,gBAAA,iBAAiB,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC;gBAC1D;;YAEF,IAAI,CAAC,OAAO,EAAE;AACZ,gBAAA,iBAAiB,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC;gBAC/D;;YAGF,MAAM,GAAG,GAAG,MAAMG,4BAAkB,CAACH,WAAS,EAAE,KAAK,CAAC,EAAE,CAAC;AACzD,YAAA,MAAM,KAAK,GAAG,GAAG,CAAC,IAAI,CAAC,IAAI;AAE3B,YAAA,IAAI,KAAK,IAAI,KAAK,CAAC,iBAAiB,IAAI,KAAK,CAAC,iBAAiB,GAAG,aAAa,EAAE;AAC/E,gBAAA,iBAAiB,CACf,CAAC,CAAC,sCAAsC,CAAC;AACvC,oBAAA,KAAK,CAAC,iBAAiB;oBACvB,GAAG;oBACH,KAAK,CAAC,QAAQ,CACjB;gBACD;;YAGF,IAAI,CAAC,KAAK,CAAC,OAAO,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC7C,UAAU,CAAC,KAAK,CAAC;;AACZ,iBAAA,IAAI,CAAC,KAAK,CAAC,OAAO,EAAE;AACzB,gBAAA,iBAAiB,CAAC,CAAC,CAAC,yCAAyC,CAAC,CAAC;gBAC/D;;YAGF,QAAQ,CAAC,YAAY,EAAE,CAAC,GAAG,UAAU,EAAE,KAAK,CAAC,CAAC;AAC9C,YAAA,YAAY,CAAC,GAAG,CAAC,OAAO,CAAC;YACzB,iBAAiB,CAAC,IAAI,CAAC;AACvB,YAAA,QAAQ,CAAC,WAAW,EAAE,KAAK,CAAC;YAC5B,YAAY,CAAC,EAAE,CAAC;;QAChB,OAAO,GAAG,EAAE;AACZ,YAAA,iBAAiB,CAAC,CAAC,CAAC,oCAAoC,CAAC,CAAC;AAC1D,YAAA,OAAO,CAAC,KAAK,CAAC,GAAG,CAAC;AAClB,YAAA,QAAQ,CAAC,WAAW,EAAE,IAAI,CAAC;;AAE/B,KAAC,EACD,IAAI,EACJ,EAAE,OAAO,EAAE,IAAI,EAAE,QAAQ,EAAE,KAAK,EAAE;KACnC;AAED,IAAA,MAAM,eAAe,GAAG,CAAC,iBAAyB,KAAI;AACpD,QAAA,MAAM,aAAa,GAAiB,UAAU,CAAC,MAAM,CACnD,CAAC,MAAM,KAAK,MAAM,CAAC,IAAI,KAAK,iBAAiB,CAC9C;AAED,QAAA,IAAI,CAAC,aAAa,CAAC,IAAI,CAAC,CAAC,MAAM,KAAK,MAAM,CAAC,OAAO,CAAC;YAAE,UAAU,CAAC,IAAI,CAAC;AAErE,QAAA,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;AACvC,KAAC;AAED,IAAA,MAAM,aAAa,GAAG,OAAO,CAAgC,KAAI;AAC/D,QAAA,IAAI,CAAC,CAAC,GAAG,KAAK,OAAO,EAAE;YACrB,CAAC,CAAC,cAAc,EAAE;AAClB,YAAA,IAAIA,WAAS;gBAAE,MAAM,YAAY,EAAE;;AAEvC,KAAC;IAEDI,eAAS,CAAC,MAAK;AACb,QAAA,IAAI,UAAU,CAAC,MAAM,KAAK,CAAC;YAAE;QAE7B,MAAM,OAAO,GAAG,UAAU,CAAC,IAAI,CAAC,CAAC,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC,iBAAiB,GAAG,CAAC,CAAC,iBAAiB,CAAC,CAAC,CAAC;AACnF,aAAA,iBAAiB;AAEpB,QAAA,IAAI,aAAa,GAAG,OAAO,EAAE;AAC3B,YAAA,MAAM,aAAa,GAAG,UAAU,CAAC,MAAM,CACrC,CAAC,SAAS,KAAK,SAAS,CAAC,iBAAiB,IAAI,aAAa,CAC5D;AACD,YAAA,IAAI,aAAa,CAAC,MAAM,KAAK,CAAC,EAAE;gBAC9B,UAAU,CAAC,IAAI,CAAC;;AAElB,YAAA,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC;;AAEzC,KAAC,EAAE,CAAC,aAAa,CAAC,CAAC;IAEnBA,eAAS,CAAC,MAAK;QACb,IAAI,IAAI,EAAE;YACR,IAAI,CAAC,eAAe,IAAI,CAAC,CAAC,IAAI,CAAC,MAAM,EAAE;gBACrC,QAAQ,CAAC,iBAAiB,EAAE,IAAI,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;;YAEzC,MAAM,eAAe,GACnB,IAAI,IAAI,IAAI,EAAE,MAAM,IAAI,IAAI,CAAC,IAAI,CAAC,CAAC,OAAO,KAAK,OAAO,CAAC,EAAE,KAAK,MAAM,CAAC,eAAe,CAAC,CAAC;AACxF,YAAA,IAAI,eAAe,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,qBAAqB,EAAE;AACjF,gBAAA,QAAQ,CAAC,uBAAuB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;;AAC3D,iBAAA,IAAI,eAAe,IAAI,CAAC,CAAC,eAAe,CAAC,OAAO,CAAC,MAAM,IAAI,CAAC,CAAC,qBAAqB,EAAE;gBACzF,MAAM,cAAc,GAAG,eAAe,CAAC,OAAO,CAAC,IAAI,CACjD,CAAC,MAAM,KAAK,MAAM,CAAC,EAAE,KAAK,MAAM,CAAC,qBAAqB,CAAC,CACxD;gBACD,IAAI,CAAC,cAAc,EAAE;AACnB,oBAAA,QAAQ,CAAC,uBAAuB,EAAE,eAAe,CAAC,OAAO,CAAC,CAAC,CAAC,CAAC,EAAE,CAAC;;;iBAE7D,IAAI,eAAe,IAAI,CAAC,eAAe,EAAE,OAAO,CAAC,MAAM,EAAE;AAC9D,gBAAA,QAAQ,CAAC,uBAAuB,EAAE,IAAI,CAAC;;;KAG5C,EAAE,CAAC,IAAI,EAAE,eAAe,EAAE,qBAAqB,CAAC,CAAC;IAElD,MAAM,OAAO,GAAwCC,sBAAQ,CAAC;AAC5D,QAAA,IAAI,EAAE,SAAS;AACf,QAAA,YAAY,EAAE,EAAE;AACjB,KAAA,CAAC;AACF,IAAA,MAAM,UAAU,GAAYC,aAAO,CACjC,MACE,MAAM,CAAC,MAAM,CAAC,OAAO;AAClB,SAAA,IAAI;AACJ,SAAA,MAAM,CAAC,CAAC,CAAC,KAAK,CAAC,CAAC,QAAQ,CAAC,CAAC,MAAM,GAAG,CAAC,EACzC,CAAC,OAAO,CAAC,CACV;IACD,MAAM,QAAQ,GAAwCD,sBAAQ,CAAC;AAC7D,QAAA,IAAI,EAAE,UAAU;AAChB,QAAA,YAAY,EAAE,EAAE;AACjB,KAAA,CAAC;IACF,MAAM,WAAW,GAAYC,aAAO,CAAC,MAAM,MAAM,CAAC,MAAM,CAAC,QAAQ,CAAC,CAAC,IAAI,EAAE,CAAC,MAAM,GAAG,CAAC,EAAE,CAAC,QAAQ,CAAC,CAAC;IACjG,MAAM,KAAK,GAAWD,sBAAQ,CAAC,EAAE,IAAI,EAAE,OAAO,EAAE,CAAC;IAEjD,MAAM,MAAM,GAAGC,aAAO,CAAC,MAAM,KAAK,KAAK,CAAC,KAAK,UAAU,IAAI,WAAW,CAAC,EAAE,CAAC,KAAK,CAAC,CAAC;AAEjF,IAAA,MAAM,cAAc,GAAGA,aAAO,CAAC,MAAK;AAClC,QAAA,IAAI,CAAC,IAAI;AAAE,YAAA,OAAO,EAAE;QACpB,IAAI,MAAM,EAAE;YACV,OAAO,IAAI,CAAC,MAAM,CAAC,CAAC,OAAO,KACzB,CAAC,cAAc,EAAE,WAAW,EAAE,MAAM,EAAE,cAAc,CAAC,CAAC,QAAQ,CAAC,OAAO,CAAC,IAAI,CAAC,CAC7E;;aACI;AACL,YAAA,OAAO,IAAI;;;AAGf,KAAC,EAAE,CAAC,IAAI,EAAE,MAAM,CAAC,CAAC;AAElB,IAAA,QACE,KAAA,CAAA,aAAA,CAACC,aAAI,EAAA,EAAC,MAAM,EAAA,IAAA,EAAA;AACV,QAAA,KAAA,CAAA,aAAA,CAACC,kBAAS,EAAA,IAAA,EACP,MAAM,GAAG,CAAC,CAAC,+BAA+B,CAAC,GAAG,CAAC,CAAC,sCAAsC,CAAC,CAC9E;AACZ,QAAA,KAAA,CAAA,aAAA,CAACC,oBAAW,EAAA,IAAA;AACV,YAAA,KAAA,CAAA,aAAA,CAACC,YAAG,EAAA,IAAA;AACF,gBAAA,KAAA,CAAA,aAAA,CAACA,YAAG,EAAA,EAAC,SAAS,EAAC,qBAAqB,EAAA;oBAClC,KAAA,CAAA,aAAA,CAACC,cAAK,IAAC,SAAS,EAAC,KAAK,EAAC,OAAO,EAAE,CAAC,EAAA;AAC/B,wBAAA,KAAA,CAAA,aAAA,CAACC,kBAAS,EAAA,EACR,IAAI,EAAC,WAAW,EAChB,IAAI,EAAC,OAAO,EACZ,KAAK,EAAE,CAAC,CAAC,wBAAwB,CAAC,EAClC,KAAK,EAAEZ,WAAS,EAChB,QAAQ,EAAE,CAAC,CAAC,KAAK,YAAY,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,EAC7C,MAAM,EAAE,CAAC,CAAC,KAAI;gCACZ,IAAI,CAAC,CAAC,CAAC,MAAM,CAAC,KAAK,CAAC,IAAI,EAAE;oCAAE,iBAAiB,CAAC,IAAI,CAAC;AACrD,6BAAC,EACD,SAAS,EAAE,aAAa,EACxB,KAAK,EAAE,CAAC,CAAC,cAAc,EACvB,UAAU,EAAE,cAAc,EAC1B,SAAS,EAAA,IAAA,EAAA,CACT;AACF,wBAAA,KAAA,CAAA,aAAA,CAACU,YAAG,EAAA,IAAA;AACF,4BAAA,KAAA,CAAA,aAAA,CAACG,eAAM,EAAA,EACL,IAAI,EAAC,OAAO,EACZ,IAAI,EAAC,QAAQ,EACb,OAAO,EAAC,WAAW,EACnB,OAAO,EAAE,YAAY,EACrB,QAAQ,EAAE,CAACb,WAAS,EACpB,EAAE,EAAE,EAAE,MAAM,EAAE,EAAE,EAAE,IAEjB,CAAC,CAAC,OAAO,CAAC,CACJ,CACL,CACA;AACR,oBAAA,KAAA,CAAA,aAAA,CAACW,cAAK,EAAA,EAAC,UAAU,EAAE,CAAC,EAAE,SAAS,EAAC,QAAQ,EAAC,OAAO,EAAE,CAAC,EAAA,EAChD,UAAU,CAAC,MAAM,GAAG,CAAC;AACpB,wBAAA,UAAU,CAAC,GAAG,CAAC,CAAC,IAAgB,MAC9B,KAAA,CAAA,aAAA,CAACA,cAAK,EAAA,EACJ,SAAS,EAAE,CAAC,EACZ,SAAS,EAAC,KAAK,EACf,UAAU,EAAC,QAAQ,EACnB,cAAc,EAAC,eAAe,EAC9B,OAAO,EAAE,CAAC,EACV,GAAG,EAAE,IAAI,CAAC,IAAI,EAAA;AAEd,4BAAA,KAAA,CAAA,aAAA,CAAA,KAAA,CAAA,QAAA,EAAA,IAAA;gCACE,KAAA,CAAA,aAAA,CAACA,cAAK,IAAC,SAAS,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAA;oCACxC,KAAA,CAAA,aAAA,CAACG,aAAK,IAAC,OAAO,EAAC,QAAQ,EAAC,EAAE,EAAE,EAAE,aAAa,EAAE,MAAM,EAAE,MAAM,EAAE,SAAS,EAAE,EAAA,EACrE,IAAI,CAAC,IAAI,CACJ;AACR,oCAAA,KAAA,CAAA,aAAA,CAACC,mBAAU,EAAA,EAAC,OAAO,EAAC,WAAW,EAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAA;;wCACzC,GAAG;AACJ,wCAAA,IAAI,CAAC,KAAK;4CACT,CAAA,EAAG,IAAI,CAAC,IAAI,KAAKC,0BAAc,CAAC,KAAK,GAAG,GAAG,GAAG,KAAK,CAAC,QAAQ,GAAG,GAAG,CAAA,CAAE,CAC3D,CACP;AACR,gCAAA,KAAA,CAAA,aAAA,CAACN,YAAG,EAAA,IAAA;AACF,oCAAA,KAAA,CAAA,aAAA,CAACO,mBAAU,EAAA,EACT,KAAK,EAAC,SAAS,EACf,OAAO,EAAE,MAAM,eAAe,CAAC,IAAI,CAAC,IAAI,CAAC,gBAC9B,QAAQ,EAAA;AAEnB,wCAAA,KAAA,CAAA,aAAA,CAACC,eAAO,EAAA,EAAC,IAAI,EAAC,kBAAkB,EAAA,CAAG,CACxB,CACT,CACL,CACG,CACT,CAAC,CACE,CACJ;AAEN,gBAAA,KAAA,CAAA,aAAA,CAACH,mBAAU,EAAA,EAAC,OAAO,EAAC,IAAI,EAAC,EAAE,EAAE,CAAC,EAAA,EAC3B,CAAC,CAAC,kCAAkC,CAAC,CAC3B;gBAEZ,SAAS,IACR,oBAACI,uBAAe,EAAA,EAAC,EAAE,EAAE,EAAE,SAAS,EAAE,CAAC,EAAE,EAAA,CAAI,KAEzC,KAAA,CAAA,aAAA,CAACC,oBAAc,EAAA,IAAA;AACb,oBAAA,KAAA,CAAA,aAAA,CAACC,wBAAU,EAAA,EACT,IAAI,EAAC,iBAAiB,EACtB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,CAAC,EAAE,KAAK,EAAE,UAAU,EAAE,EAAE,KAAK,EAAE,EAAE,MACvC,KAAA,CAAA,aAAA,CAACC,oBAAW,EAAA,EAAC,SAAS,EAAC,UAAU,EAAA;AAC/B,4BAAA,KAAA,CAAA,aAAA,CAACC,mBAAU,EAAA,EAAA,GAAK,KAAK,EAAA,EAClB,cAAc,CAAC,GAAG,CAAC,CAAC,OAAO,MAC1B,KAAA,CAAA,aAAA,CAACC,iBAAW,EAAA,EACV,GAAG,EAAE,OAAO,CAAC,IAAI,EACjB,MAAM,EAAE,CAAC,CAAC,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,KAAK,OAAO,CAAC,EAAE,EAAA;gCAEnE,KAAA,CAAA,aAAA,CAACC,yBAAgB,EAAA,EACf,KAAK,EAAE,OAAO,CAAC,EAAE,EACjB,OAAO,EAAE,KAAA,CAAA,aAAA,CAACC,cAAK,OAAG,EAClB,KAAK,EACH,KAAA,CAAA,aAAA,CAACf,cAAK,EAAA,EAAC,SAAS,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAA;wCACxC,KAAA,CAAA,aAAA,CAACI,mBAAU,EAAA,EACT,EAAE,EAAE;AACF,gDAAA,WAAW,EAAE,CAAC;AACf,6CAAA,EAAA,EAEA,OAAO,CAAC,KAAK,CAAC,IAAI,CAAC,CACT;wCACb,KAAA,CAAA,aAAA,CAACY,aAAK,EAAA,EACJ,GAAG,EAAE,OAAO,CAAC,KAAK,CAAC,GAAG,EACtB,EAAE,EAAE;AACF,gDAAA,MAAM,EAAE,MAAM;AACd,gDAAA,gBAAgB,EAAE;AAChB,oDAAA,SAAS,EAAE,SAAS;AACrB,iDAAA;6CACF,EAAA,CACD,CACI,EAEV,EAAE,EAAE;AACF,wCAAA,sBAAsB,EAAE;AACtB,4CAAA,EAAE,EAAE,CAAC;AACN,yCAAA;qCACF,EAAA,CACD;AACD,gCAAA,CAAC,CAAC,OAAO,CAAC,OAAO,CAAC,MAAM;AACvB,oCAAA,CAAC,CAAC,eAAe;oCACjB,MAAM,CAAC,eAAe,CAAC,KAAK,OAAO,CAAC,EAAE,KACpC,KAAA,CAAA,aAAA,CAACC,yBAAmB,EAAA,IAAA;oCAClB,KAAA,CAAA,aAAA,CAACC,gBAAO,IAAC,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAA,CAAI;AAC1B,oCAAA,KAAA,CAAA,aAAA,CAACC,qBAAa,EAAA,EACZ,IAAI,EAAC,uBAAuB,EAC5B,GAAG,EAAA,IAAA,EACH,OAAO,EAAE,OAAO,CAAC;AACd,6CAAA,MAAM,CAAC,CAAC,IAAI,KAAK,CAAC,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,QAAQ,CAAC,kBAAkB,CAAC;AAC5D,6CAAA,GAAG,CAAC,CAAC,MAAM,MAAM;4CAChB,KAAK,GACH,KAAA,CAAA,aAAA,CAACnB,cAAK,EAAA,EAAC,SAAS,EAAC,KAAK,EAAC,UAAU,EAAC,QAAQ,EAAA;gDACxC,KAAA,CAAA,aAAA,CAACgB,aAAK,EAAA,EACJ,GAAG,EAAE,MAAM,CAAC,KAAK,CAAC,GAAG,EACrB,EAAE,EAAE;AACF,wDAAA,KAAK,EAAE,MAAM;AACb,wDAAA,MAAM,EAAE,MAAM;AACd,wDAAA,QAAQ,EAAE,MAAM;AAChB,wDAAA,OAAO,EAAE,cAAc;AACvB,wDAAA,WAAW,EAAE,CAAC;AACd,wDAAA,gBAAgB,EAAE;AAChB,4DAAA,SAAS,EAAE,SAAS;AACpB,4DAAA,cAAc,EAAE,MAAM;AACvB,yDAAA;qDACF,EAAA,CACD;AACF,gDAAA,KAAA,CAAA,aAAA,CAACZ,mBAAU,EAAA,EAAC,OAAO,EAAC,OAAO,EAAA,EACxB,MAAM,CAAC,KAAK,CAAC,IAAI,CAAC,CACR,CACP,CACT;4CACD,KAAK,EAAE,MAAM,CAAC,EAAE;AACjB,yCAAA,CAAC,CAAC,EAAA,CACL,CACkB,CACvB,CACS,CACf,CAAC,CACS;AAEZ,4BAAA,CAAC,CAAC,KAAK,KACN,oBAACgB,uBAAc,EAAA,EAAC,KAAK,EAAE,CAAC,CAAC,KAAK,EAAE,EAAE,EAAE,EAAE,EAAE,EAAE,CAAC,EAAE,EAAA,EAC1C,KAAK,EAAE,OAAO,CACA,CAClB,CACW,CACf,EAAA,CACD,CACa,CAClB,CACG,CACM,CACT;AAEX;;;;"}