tf-checkout-react-native 1.0.47 → 2.0.0-beta.0

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 (683) hide show
  1. package/README.md +150 -3340
  2. package/dist/index.d.mts +3810 -0
  3. package/dist/index.d.ts +3810 -0
  4. package/dist/index.js +8348 -0
  5. package/dist/index.js.map +1 -0
  6. package/dist/index.mjs +8348 -0
  7. package/dist/index.mjs.map +1 -0
  8. package/package.json +31 -57
  9. package/src/CardInput.tsx +49 -0
  10. package/src/EmbeddedCheckout.tsx +323 -0
  11. package/src/auth/AuthModal.tsx +221 -0
  12. package/src/auth/ForgotPasswordForm.tsx +98 -0
  13. package/src/auth/LoginForm.tsx +99 -0
  14. package/src/auth/PasswordInput.tsx +45 -0
  15. package/src/auth/RegisterForm.tsx +247 -0
  16. package/src/auth/ResetPasswordForm.tsx +112 -0
  17. package/src/auth/index.ts +7 -0
  18. package/src/configure.ts +26 -0
  19. package/src/confirmer.ts +180 -0
  20. package/src/index.tsx +25 -227
  21. package/src/instance.ts +13 -0
  22. package/src/sections/AddOns.tsx +335 -0
  23. package/src/sections/BillingInfo.tsx +770 -0
  24. package/src/sections/Confirmation.tsx +143 -0
  25. package/src/sections/IDVerification.tsx +77 -0
  26. package/src/sections/OrderSummary.tsx +116 -0
  27. package/src/sections/Payment.tsx +417 -0
  28. package/src/sections/Tickets.tsx +680 -0
  29. package/src/sections/billing/BillingAddressFields.tsx +126 -0
  30. package/src/sections/billing/BuyerField.tsx +78 -0
  31. package/src/sections/billing/TicketHoldersCard.tsx +119 -0
  32. package/src/sections/billing/types.ts +10 -0
  33. package/src/sections/index.ts +8 -0
  34. package/src/storage.ts +27 -0
  35. package/src/ui/CheckoutProvider.tsx +140 -0
  36. package/src/ui/CustomFields.tsx +176 -0
  37. package/src/ui/Field.tsx +171 -0
  38. package/src/ui/InstallmentPicker.tsx +158 -0
  39. package/src/ui/PaymentMethods.tsx +177 -0
  40. package/src/ui/QuantitySelect.tsx +103 -0
  41. package/src/ui/Select.tsx +151 -0
  42. package/src/ui/Timer.tsx +69 -0
  43. package/src/ui/TimerBanner.tsx +95 -0
  44. package/src/ui/index.ts +17 -0
  45. package/src/ui/primitives.tsx +191 -0
  46. package/src/ui/theme.ts +89 -0
  47. package/src/useCheckout.ts +35 -0
  48. package/lib/brand-DA2IARBI.png +0 -0
  49. package/lib/ic_check-FLIJQ3BY.png +0 -0
  50. package/lib/ic_clock-BZ4Z7PIP.png +0 -0
  51. package/lib/ic_copy-VWMA4B7X.png +0 -0
  52. package/lib/ic_dropdown-BCS3QDNJ.png +0 -0
  53. package/lib/ic_error-KDEZUPSN.png +0 -0
  54. package/lib/ic_eye-WGXVXVAN.png +0 -0
  55. package/lib/ic_eye_off-XTCE6XSO.png +0 -0
  56. package/lib/ic_more-LZWKYCDU.png +0 -0
  57. package/lib/ic_next-LCNIGEDM.png +0 -0
  58. package/lib/index.js +0 -18222
  59. package/lib/index.js.map +0 -1
  60. package/lib/index.mjs +0 -18309
  61. package/lib/index.mjs.map +0 -1
  62. package/lib/typescript/package.json +0 -1
  63. package/lib/typescript/src/api/ApiClient.d.ts +0 -49
  64. package/lib/typescript/src/api/ApiClient.d.ts.map +0 -1
  65. package/lib/typescript/src/api/Constants.d.ts +0 -11
  66. package/lib/typescript/src/api/Constants.d.ts.map +0 -1
  67. package/lib/typescript/src/api/ErrorHandler.d.ts +0 -12
  68. package/lib/typescript/src/api/ErrorHandler.d.ts.map +0 -1
  69. package/lib/typescript/src/api/api.types.d.ts +0 -8
  70. package/lib/typescript/src/api/api.types.d.ts.map +0 -1
  71. package/lib/typescript/src/api/types.d.ts +0 -518
  72. package/lib/typescript/src/api/types.d.ts.map +0 -1
  73. package/lib/typescript/src/apiv2/index.d.ts +0 -3
  74. package/lib/typescript/src/apiv2/index.d.ts.map +0 -1
  75. package/lib/typescript/src/common/query.types.d.ts +0 -3
  76. package/lib/typescript/src/common/query.types.d.ts.map +0 -1
  77. package/lib/typescript/src/components/bottomSheetModal/BottomSheetModal.d.ts +0 -8
  78. package/lib/typescript/src/components/bottomSheetModal/BottomSheetModal.d.ts.map +0 -1
  79. package/lib/typescript/src/components/bottomSheetModal/BottomSheetModalStyles.d.ts +0 -39
  80. package/lib/typescript/src/components/bottomSheetModal/BottomSheetModalStyles.d.ts.map +0 -1
  81. package/lib/typescript/src/components/bottomSheetModal/BottomSheetModalTypes.d.ts +0 -23
  82. package/lib/typescript/src/components/bottomSheetModal/BottomSheetModalTypes.d.ts.map +0 -1
  83. package/lib/typescript/src/components/button/Button.d.ts +0 -5
  84. package/lib/typescript/src/components/button/Button.d.ts.map +0 -1
  85. package/lib/typescript/src/components/button/styles.d.ts +0 -28
  86. package/lib/typescript/src/components/button/styles.d.ts.map +0 -1
  87. package/lib/typescript/src/components/button/types.d.ts +0 -15
  88. package/lib/typescript/src/components/button/types.d.ts.map +0 -1
  89. package/lib/typescript/src/components/cartTimer/CartTimer.d.ts +0 -5
  90. package/lib/typescript/src/components/cartTimer/CartTimer.d.ts.map +0 -1
  91. package/lib/typescript/src/components/cartTimer/styles.d.ts +0 -47
  92. package/lib/typescript/src/components/cartTimer/styles.d.ts.map +0 -1
  93. package/lib/typescript/src/components/cartTimer/types.d.ts +0 -19
  94. package/lib/typescript/src/components/cartTimer/types.d.ts.map +0 -1
  95. package/lib/typescript/src/components/checkbox/Checkbox.d.ts +0 -4
  96. package/lib/typescript/src/components/checkbox/Checkbox.d.ts.map +0 -1
  97. package/lib/typescript/src/components/checkbox/styles.d.ts +0 -39
  98. package/lib/typescript/src/components/checkbox/styles.d.ts.map +0 -1
  99. package/lib/typescript/src/components/checkbox/types.d.ts +0 -22
  100. package/lib/typescript/src/components/checkbox/types.d.ts.map +0 -1
  101. package/lib/typescript/src/components/datePicker/DatePicker.d.ts +0 -4
  102. package/lib/typescript/src/components/datePicker/DatePicker.d.ts.map +0 -1
  103. package/lib/typescript/src/components/datePicker/styles.d.ts +0 -35
  104. package/lib/typescript/src/components/datePicker/styles.d.ts.map +0 -1
  105. package/lib/typescript/src/components/datePicker/types.d.ts +0 -20
  106. package/lib/typescript/src/components/datePicker/types.d.ts.map +0 -1
  107. package/lib/typescript/src/components/dropdown/Dropdown.d.ts +0 -4
  108. package/lib/typescript/src/components/dropdown/Dropdown.d.ts.map +0 -1
  109. package/lib/typescript/src/components/dropdown/DropdownListItem.d.ts +0 -4
  110. package/lib/typescript/src/components/dropdown/DropdownListItem.d.ts.map +0 -1
  111. package/lib/typescript/src/components/dropdown/styles.d.ts +0 -85
  112. package/lib/typescript/src/components/dropdown/styles.d.ts.map +0 -1
  113. package/lib/typescript/src/components/dropdown/types.d.ts +0 -35
  114. package/lib/typescript/src/components/dropdown/types.d.ts.map +0 -1
  115. package/lib/typescript/src/components/dropdownMaterial/DropdownMaterial.d.ts +0 -4
  116. package/lib/typescript/src/components/dropdownMaterial/DropdownMaterial.d.ts.map +0 -1
  117. package/lib/typescript/src/components/dropdownMaterial/styles.d.ts +0 -79
  118. package/lib/typescript/src/components/dropdownMaterial/styles.d.ts.map +0 -1
  119. package/lib/typescript/src/components/dropdownMaterial/types.d.ts +0 -22
  120. package/lib/typescript/src/components/dropdownMaterial/types.d.ts.map +0 -1
  121. package/lib/typescript/src/components/enterPassword/EnterPassword.d.ts +0 -5
  122. package/lib/typescript/src/components/enterPassword/EnterPassword.d.ts.map +0 -1
  123. package/lib/typescript/src/components/enterPassword/styles.d.ts +0 -21
  124. package/lib/typescript/src/components/enterPassword/styles.d.ts.map +0 -1
  125. package/lib/typescript/src/components/enterPassword/types.d.ts +0 -24
  126. package/lib/typescript/src/components/enterPassword/types.d.ts.map +0 -1
  127. package/lib/typescript/src/components/formField/FormField.d.ts +0 -4
  128. package/lib/typescript/src/components/formField/FormField.d.ts.map +0 -1
  129. package/lib/typescript/src/components/formField/styles.d.ts +0 -35
  130. package/lib/typescript/src/components/formField/styles.d.ts.map +0 -1
  131. package/lib/typescript/src/components/formField/types.d.ts +0 -48
  132. package/lib/typescript/src/components/formField/types.d.ts.map +0 -1
  133. package/lib/typescript/src/components/index.d.ts +0 -21
  134. package/lib/typescript/src/components/index.d.ts.map +0 -1
  135. package/lib/typescript/src/components/input/Input.d.ts +0 -4
  136. package/lib/typescript/src/components/input/Input.d.ts.map +0 -1
  137. package/lib/typescript/src/components/input/styles.d.ts +0 -47
  138. package/lib/typescript/src/components/input/styles.d.ts.map +0 -1
  139. package/lib/typescript/src/components/input/types.d.ts +0 -28
  140. package/lib/typescript/src/components/input/types.d.ts.map +0 -1
  141. package/lib/typescript/src/components/loading/Loading.d.ts +0 -4
  142. package/lib/typescript/src/components/loading/Loading.d.ts.map +0 -1
  143. package/lib/typescript/src/components/loading/styles.d.ts +0 -30
  144. package/lib/typescript/src/components/loading/styles.d.ts.map +0 -1
  145. package/lib/typescript/src/components/loading/types.d.ts +0 -15
  146. package/lib/typescript/src/components/loading/types.d.ts.map +0 -1
  147. package/lib/typescript/src/components/loggedIn/LoggedIn.d.ts +0 -5
  148. package/lib/typescript/src/components/loggedIn/LoggedIn.d.ts.map +0 -1
  149. package/lib/typescript/src/components/loggedIn/styles.d.ts +0 -9
  150. package/lib/typescript/src/components/loggedIn/styles.d.ts.map +0 -1
  151. package/lib/typescript/src/components/loggedIn/types.d.ts +0 -24
  152. package/lib/typescript/src/components/loggedIn/types.d.ts.map +0 -1
  153. package/lib/typescript/src/components/login/Login.d.ts +0 -5
  154. package/lib/typescript/src/components/login/Login.d.ts.map +0 -1
  155. package/lib/typescript/src/components/login/LoginView.d.ts +0 -5
  156. package/lib/typescript/src/components/login/LoginView.d.ts.map +0 -1
  157. package/lib/typescript/src/components/login/components/LoginForm.d.ts +0 -5
  158. package/lib/typescript/src/components/login/components/LoginForm.d.ts.map +0 -1
  159. package/lib/typescript/src/components/login/components/types.d.ts +0 -19
  160. package/lib/typescript/src/components/login/components/types.d.ts.map +0 -1
  161. package/lib/typescript/src/components/login/styles.d.ts +0 -62
  162. package/lib/typescript/src/components/login/styles.d.ts.map +0 -1
  163. package/lib/typescript/src/components/login/types.d.ts +0 -144
  164. package/lib/typescript/src/components/login/types.d.ts.map +0 -1
  165. package/lib/typescript/src/components/phoneInput/PhoneInput.d.ts +0 -5
  166. package/lib/typescript/src/components/phoneInput/PhoneInput.d.ts.map +0 -1
  167. package/lib/typescript/src/components/phoneInput/styles.d.ts +0 -29
  168. package/lib/typescript/src/components/phoneInput/styles.d.ts.map +0 -1
  169. package/lib/typescript/src/components/phoneInput/types.d.ts +0 -31
  170. package/lib/typescript/src/components/phoneInput/types.d.ts.map +0 -1
  171. package/lib/typescript/src/components/promoCode/PromoCode.d.ts +0 -5
  172. package/lib/typescript/src/components/promoCode/PromoCode.d.ts.map +0 -1
  173. package/lib/typescript/src/components/promoCode/styles.d.ts +0 -61
  174. package/lib/typescript/src/components/promoCode/styles.d.ts.map +0 -1
  175. package/lib/typescript/src/components/promoCode/types.d.ts +0 -36
  176. package/lib/typescript/src/components/promoCode/types.d.ts.map +0 -1
  177. package/lib/typescript/src/components/radioButton/RadioButton.d.ts +0 -5
  178. package/lib/typescript/src/components/radioButton/RadioButton.d.ts.map +0 -1
  179. package/lib/typescript/src/components/radioButton/styles.d.ts +0 -25
  180. package/lib/typescript/src/components/radioButton/styles.d.ts.map +0 -1
  181. package/lib/typescript/src/components/radioButton/types.d.ts +0 -16
  182. package/lib/typescript/src/components/radioButton/types.d.ts.map +0 -1
  183. package/lib/typescript/src/components/radioGroup/RadioGroup.d.ts +0 -4
  184. package/lib/typescript/src/components/radioGroup/RadioGroup.d.ts.map +0 -1
  185. package/lib/typescript/src/components/radioGroup/index.d.ts +0 -4
  186. package/lib/typescript/src/components/radioGroup/index.d.ts.map +0 -1
  187. package/lib/typescript/src/components/radioGroup/types.d.ts +0 -24
  188. package/lib/typescript/src/components/radioGroup/types.d.ts.map +0 -1
  189. package/lib/typescript/src/components/restorePassword/RestorePassword.d.ts +0 -5
  190. package/lib/typescript/src/components/restorePassword/RestorePassword.d.ts.map +0 -1
  191. package/lib/typescript/src/components/restorePassword/ResultDialog.d.ts +0 -5
  192. package/lib/typescript/src/components/restorePassword/ResultDialog.d.ts.map +0 -1
  193. package/lib/typescript/src/components/restorePassword/styles.d.ts +0 -34
  194. package/lib/typescript/src/components/restorePassword/styles.d.ts.map +0 -1
  195. package/lib/typescript/src/components/restorePassword/types.d.ts +0 -49
  196. package/lib/typescript/src/components/restorePassword/types.d.ts.map +0 -1
  197. package/lib/typescript/src/components/separator/Separator.d.ts +0 -4
  198. package/lib/typescript/src/components/separator/Separator.d.ts.map +0 -1
  199. package/lib/typescript/src/components/separator/types.d.ts +0 -9
  200. package/lib/typescript/src/components/separator/types.d.ts.map +0 -1
  201. package/lib/typescript/src/components/stripePayment/StripePayment.d.ts +0 -5
  202. package/lib/typescript/src/components/stripePayment/StripePayment.d.ts.map +0 -1
  203. package/lib/typescript/src/components/stripePayment/styles.d.ts +0 -7
  204. package/lib/typescript/src/components/stripePayment/styles.d.ts.map +0 -1
  205. package/lib/typescript/src/components/stripePayment/types.d.ts +0 -14
  206. package/lib/typescript/src/components/stripePayment/types.d.ts.map +0 -1
  207. package/lib/typescript/src/components/waitingList/WaitingList.d.ts +0 -6
  208. package/lib/typescript/src/components/waitingList/WaitingList.d.ts.map +0 -1
  209. package/lib/typescript/src/components/waitingList/WaitingListView.d.ts +0 -5
  210. package/lib/typescript/src/components/waitingList/WaitingListView.d.ts.map +0 -1
  211. package/lib/typescript/src/components/waitingList/styles.d.ts +0 -9
  212. package/lib/typescript/src/components/waitingList/styles.d.ts.map +0 -1
  213. package/lib/typescript/src/components/waitingList/types.d.ts +0 -59
  214. package/lib/typescript/src/components/waitingList/types.d.ts.map +0 -1
  215. package/lib/typescript/src/containers/billingInfo/Billing.d.ts +0 -6
  216. package/lib/typescript/src/containers/billingInfo/Billing.d.ts.map +0 -1
  217. package/lib/typescript/src/containers/billingInfo/styles.d.ts +0 -61
  218. package/lib/typescript/src/containers/billingInfo/styles.d.ts.map +0 -1
  219. package/lib/typescript/src/containers/billingInfo/types.d.ts +0 -160
  220. package/lib/typescript/src/containers/billingInfo/types.d.ts.map +0 -1
  221. package/lib/typescript/src/containers/checkout/Checkout.d.ts +0 -7
  222. package/lib/typescript/src/containers/checkout/Checkout.d.ts.map +0 -1
  223. package/lib/typescript/src/containers/checkout/CheckoutData.d.ts +0 -3
  224. package/lib/typescript/src/containers/checkout/CheckoutData.d.ts.map +0 -1
  225. package/lib/typescript/src/containers/checkout/components/Conditions.d.ts +0 -4
  226. package/lib/typescript/src/containers/checkout/components/Conditions.d.ts.map +0 -1
  227. package/lib/typescript/src/containers/checkout/components/OrderReview.d.ts +0 -4
  228. package/lib/typescript/src/containers/checkout/components/OrderReview.d.ts.map +0 -1
  229. package/lib/typescript/src/containers/checkout/components/styles.d.ts +0 -26
  230. package/lib/typescript/src/containers/checkout/components/styles.d.ts.map +0 -1
  231. package/lib/typescript/src/containers/checkout/styles.d.ts +0 -42
  232. package/lib/typescript/src/containers/checkout/styles.d.ts.map +0 -1
  233. package/lib/typescript/src/containers/checkout/types.d.ts +0 -126
  234. package/lib/typescript/src/containers/checkout/types.d.ts.map +0 -1
  235. package/lib/typescript/src/containers/index.d.ts +0 -9
  236. package/lib/typescript/src/containers/index.d.ts.map +0 -1
  237. package/lib/typescript/src/containers/myOrderDetails/MyOrderDetails.d.ts +0 -6
  238. package/lib/typescript/src/containers/myOrderDetails/MyOrderDetails.d.ts.map +0 -1
  239. package/lib/typescript/src/containers/myOrderDetails/MyOrderDetailsView.d.ts +0 -5
  240. package/lib/typescript/src/containers/myOrderDetails/MyOrderDetailsView.d.ts.map +0 -1
  241. package/lib/typescript/src/containers/myOrderDetails/components/Notification.d.ts +0 -15
  242. package/lib/typescript/src/containers/myOrderDetails/components/Notification.d.ts.map +0 -1
  243. package/lib/typescript/src/containers/myOrderDetails/components/OrderListItem.d.ts +0 -3
  244. package/lib/typescript/src/containers/myOrderDetails/components/OrderListItem.d.ts.map +0 -1
  245. package/lib/typescript/src/containers/myOrderDetails/components/TicketActions/TicketActions.d.ts +0 -5
  246. package/lib/typescript/src/containers/myOrderDetails/components/TicketActions/TicketActions.d.ts.map +0 -1
  247. package/lib/typescript/src/containers/myOrderDetails/components/TicketActions/TicketActionsTypes.d.ts +0 -30
  248. package/lib/typescript/src/containers/myOrderDetails/components/TicketActions/TicketActionsTypes.d.ts.map +0 -1
  249. package/lib/typescript/src/containers/myOrderDetails/components/TicketListItem/TicketListItem.d.ts +0 -8
  250. package/lib/typescript/src/containers/myOrderDetails/components/TicketListItem/TicketListItem.d.ts.map +0 -1
  251. package/lib/typescript/src/containers/myOrderDetails/components/TicketListItem/TicketListItemStyles.d.ts +0 -33
  252. package/lib/typescript/src/containers/myOrderDetails/components/TicketListItem/TicketListItemStyles.d.ts.map +0 -1
  253. package/lib/typescript/src/containers/myOrderDetails/components/TicketListItem/TicketListItemTypes.d.ts +0 -30
  254. package/lib/typescript/src/containers/myOrderDetails/components/TicketListItem/TicketListItemTypes.d.ts.map +0 -1
  255. package/lib/typescript/src/containers/myOrderDetails/components/styles.d.ts +0 -39
  256. package/lib/typescript/src/containers/myOrderDetails/components/styles.d.ts.map +0 -1
  257. package/lib/typescript/src/containers/myOrderDetails/styles.d.ts +0 -55
  258. package/lib/typescript/src/containers/myOrderDetails/styles.d.ts.map +0 -1
  259. package/lib/typescript/src/containers/myOrderDetails/types.d.ts +0 -126
  260. package/lib/typescript/src/containers/myOrderDetails/types.d.ts.map +0 -1
  261. package/lib/typescript/src/containers/myOrders/MyOrders.d.ts +0 -6
  262. package/lib/typescript/src/containers/myOrders/MyOrders.d.ts.map +0 -1
  263. package/lib/typescript/src/containers/myOrders/MyOrdersView.d.ts +0 -5
  264. package/lib/typescript/src/containers/myOrders/MyOrdersView.d.ts.map +0 -1
  265. package/lib/typescript/src/containers/myOrders/components/OrderListItem.d.ts +0 -5
  266. package/lib/typescript/src/containers/myOrders/components/OrderListItem.d.ts.map +0 -1
  267. package/lib/typescript/src/containers/myOrders/components/styles.d.ts +0 -56
  268. package/lib/typescript/src/containers/myOrders/components/styles.d.ts.map +0 -1
  269. package/lib/typescript/src/containers/myOrders/components/types.d.ts +0 -26
  270. package/lib/typescript/src/containers/myOrders/components/types.d.ts.map +0 -1
  271. package/lib/typescript/src/containers/myOrders/styles.d.ts +0 -37
  272. package/lib/typescript/src/containers/myOrders/styles.d.ts.map +0 -1
  273. package/lib/typescript/src/containers/myOrders/types.d.ts +0 -73
  274. package/lib/typescript/src/containers/myOrders/types.d.ts.map +0 -1
  275. package/lib/typescript/src/containers/purchaseConfirmation/PurchaseConfirmation.d.ts +0 -6
  276. package/lib/typescript/src/containers/purchaseConfirmation/PurchaseConfirmation.d.ts.map +0 -1
  277. package/lib/typescript/src/containers/purchaseConfirmation/PurchaseConfirmationView.d.ts +0 -5
  278. package/lib/typescript/src/containers/purchaseConfirmation/PurchaseConfirmationView.d.ts.map +0 -1
  279. package/lib/typescript/src/containers/purchaseConfirmation/styles.d.ts +0 -74
  280. package/lib/typescript/src/containers/purchaseConfirmation/styles.d.ts.map +0 -1
  281. package/lib/typescript/src/containers/purchaseConfirmation/types.d.ts +0 -66
  282. package/lib/typescript/src/containers/purchaseConfirmation/types.d.ts.map +0 -1
  283. package/lib/typescript/src/containers/resaleTickets/ResaleTickets.d.ts +0 -6
  284. package/lib/typescript/src/containers/resaleTickets/ResaleTickets.d.ts.map +0 -1
  285. package/lib/typescript/src/containers/resaleTickets/ResaleTicketsView.d.ts +0 -5
  286. package/lib/typescript/src/containers/resaleTickets/ResaleTicketsView.d.ts.map +0 -1
  287. package/lib/typescript/src/containers/resaleTickets/types.d.ts +0 -129
  288. package/lib/typescript/src/containers/resaleTickets/types.d.ts.map +0 -1
  289. package/lib/typescript/src/containers/resetPassword/ResetPassword.d.ts +0 -5
  290. package/lib/typescript/src/containers/resetPassword/ResetPassword.d.ts.map +0 -1
  291. package/lib/typescript/src/containers/resetPassword/ResetPasswordView.d.ts +0 -5
  292. package/lib/typescript/src/containers/resetPassword/ResetPasswordView.d.ts.map +0 -1
  293. package/lib/typescript/src/containers/resetPassword/styles.d.ts +0 -33
  294. package/lib/typescript/src/containers/resetPassword/styles.d.ts.map +0 -1
  295. package/lib/typescript/src/containers/resetPassword/types.d.ts +0 -48
  296. package/lib/typescript/src/containers/resetPassword/types.d.ts.map +0 -1
  297. package/lib/typescript/src/containers/tickets/Tickets.d.ts +0 -6
  298. package/lib/typescript/src/containers/tickets/Tickets.d.ts.map +0 -1
  299. package/lib/typescript/src/containers/tickets/TicketsView.d.ts +0 -4
  300. package/lib/typescript/src/containers/tickets/TicketsView.d.ts.map +0 -1
  301. package/lib/typescript/src/containers/tickets/components/TicketGroupListHeader.d.ts +0 -5
  302. package/lib/typescript/src/containers/tickets/components/TicketGroupListHeader.d.ts.map +0 -1
  303. package/lib/typescript/src/containers/tickets/components/TicketListItem.d.ts +0 -4
  304. package/lib/typescript/src/containers/tickets/components/TicketListItem.d.ts.map +0 -1
  305. package/lib/typescript/src/containers/tickets/components/styles.d.ts +0 -51
  306. package/lib/typescript/src/containers/tickets/components/styles.d.ts.map +0 -1
  307. package/lib/typescript/src/containers/tickets/components/types.d.ts +0 -40
  308. package/lib/typescript/src/containers/tickets/components/types.d.ts.map +0 -1
  309. package/lib/typescript/src/containers/tickets/styles.d.ts +0 -20
  310. package/lib/typescript/src/containers/tickets/styles.d.ts.map +0 -1
  311. package/lib/typescript/src/containers/tickets/types.d.ts +0 -114
  312. package/lib/typescript/src/containers/tickets/types.d.ts.map +0 -1
  313. package/lib/typescript/src/core/BillingCore/BillingCore.d.ts +0 -13
  314. package/lib/typescript/src/core/BillingCore/BillingCore.d.ts.map +0 -1
  315. package/lib/typescript/src/core/BillingCore/BillingCoreTypes.d.ts +0 -24
  316. package/lib/typescript/src/core/BillingCore/BillingCoreTypes.d.ts.map +0 -1
  317. package/lib/typescript/src/core/CheckoutCore/CheckoutCore.d.ts +0 -15
  318. package/lib/typescript/src/core/CheckoutCore/CheckoutCore.d.ts.map +0 -1
  319. package/lib/typescript/src/core/CheckoutCore/CheckoutCoreTypes.d.ts +0 -17
  320. package/lib/typescript/src/core/CheckoutCore/CheckoutCoreTypes.d.ts.map +0 -1
  321. package/lib/typescript/src/core/CoreProps.d.ts +0 -5
  322. package/lib/typescript/src/core/CoreProps.d.ts.map +0 -1
  323. package/lib/typescript/src/core/LoginCore/LoginCore.d.ts +0 -6
  324. package/lib/typescript/src/core/LoginCore/LoginCore.d.ts.map +0 -1
  325. package/lib/typescript/src/core/LoginCore/LoginCoreHelper.d.ts +0 -3
  326. package/lib/typescript/src/core/LoginCore/LoginCoreHelper.d.ts.map +0 -1
  327. package/lib/typescript/src/core/LoginCore/LoginCoreTypes.d.ts +0 -15
  328. package/lib/typescript/src/core/LoginCore/LoginCoreTypes.d.ts.map +0 -1
  329. package/lib/typescript/src/core/MyOrdersCore/MyOrdersCore.d.ts +0 -6
  330. package/lib/typescript/src/core/MyOrdersCore/MyOrdersCore.d.ts.map +0 -1
  331. package/lib/typescript/src/core/MyOrdersCore/MyOrdersCoreTypes.d.ts +0 -10
  332. package/lib/typescript/src/core/MyOrdersCore/MyOrdersCoreTypes.d.ts.map +0 -1
  333. package/lib/typescript/src/core/OrderDetailsCore/OrderDetailsCore.d.ts +0 -6
  334. package/lib/typescript/src/core/OrderDetailsCore/OrderDetailsCore.d.ts.map +0 -1
  335. package/lib/typescript/src/core/OrderDetailsCore/OrderDetailsCoreTypes.d.ts +0 -9
  336. package/lib/typescript/src/core/OrderDetailsCore/OrderDetailsCoreTypes.d.ts.map +0 -1
  337. package/lib/typescript/src/core/PurchaseConfirmationCore/PurchaseConfirmationCore.d.ts +0 -6
  338. package/lib/typescript/src/core/PurchaseConfirmationCore/PurchaseConfirmationCore.d.ts.map +0 -1
  339. package/lib/typescript/src/core/PurchaseConfirmationCore/PurchaseConfirmationCoreTypes.d.ts +0 -8
  340. package/lib/typescript/src/core/PurchaseConfirmationCore/PurchaseConfirmationCoreTypes.d.ts.map +0 -1
  341. package/lib/typescript/src/core/ResetPasswordCore/ResetPasswordCore.d.ts +0 -6
  342. package/lib/typescript/src/core/ResetPasswordCore/ResetPasswordCore.d.ts.map +0 -1
  343. package/lib/typescript/src/core/ResetPasswordCore/ResetPasswordCoreTypes.d.ts +0 -5
  344. package/lib/typescript/src/core/ResetPasswordCore/ResetPasswordCoreTypes.d.ts.map +0 -1
  345. package/lib/typescript/src/core/Session/SessionCoreTypes.d.ts +0 -9
  346. package/lib/typescript/src/core/Session/SessionCoreTypes.d.ts.map +0 -1
  347. package/lib/typescript/src/core/Session/SessionHandle.d.ts +0 -6
  348. package/lib/typescript/src/core/Session/SessionHandle.d.ts.map +0 -1
  349. package/lib/typescript/src/core/TicketsCore/TicketsCore.d.ts +0 -6
  350. package/lib/typescript/src/core/TicketsCore/TicketsCore.d.ts.map +0 -1
  351. package/lib/typescript/src/core/TicketsCore/TicketsCoreTypes.d.ts +0 -40
  352. package/lib/typescript/src/core/TicketsCore/TicketsCoreTypes.d.ts.map +0 -1
  353. package/lib/typescript/src/core/WaitingListCore/WaitingListCore.d.ts +0 -6
  354. package/lib/typescript/src/core/WaitingListCore/WaitingListCore.d.ts.map +0 -1
  355. package/lib/typescript/src/core/WaitingListCore/WaitingListCoreTypes.d.ts +0 -12
  356. package/lib/typescript/src/core/WaitingListCore/WaitingListCoreTypes.d.ts.map +0 -1
  357. package/lib/typescript/src/core/index.d.ts +0 -21
  358. package/lib/typescript/src/core/index.d.ts.map +0 -1
  359. package/lib/typescript/src/features/auth/api-hooks.d.ts +0 -178
  360. package/lib/typescript/src/features/auth/api-hooks.d.ts.map +0 -1
  361. package/lib/typescript/src/features/auth/types.d.ts +0 -51
  362. package/lib/typescript/src/features/auth/types.d.ts.map +0 -1
  363. package/lib/typescript/src/features/auth/utils.d.ts +0 -3
  364. package/lib/typescript/src/features/auth/utils.d.ts.map +0 -1
  365. package/lib/typescript/src/features/checkout-v2/components/AddonsContainer.d.ts +0 -37
  366. package/lib/typescript/src/features/checkout-v2/components/AddonsContainer.d.ts.map +0 -1
  367. package/lib/typescript/src/features/checkout-v2/components/Conditions.d.ts +0 -30
  368. package/lib/typescript/src/features/checkout-v2/components/Conditions.d.ts.map +0 -1
  369. package/lib/typescript/src/features/checkout-v2/components/OrderReview.d.ts +0 -25
  370. package/lib/typescript/src/features/checkout-v2/components/OrderReview.d.ts.map +0 -1
  371. package/lib/typescript/src/features/checkout-v2/components/TicketHoldersSection.d.ts +0 -14
  372. package/lib/typescript/src/features/checkout-v2/components/TicketHoldersSection.d.ts.map +0 -1
  373. package/lib/typescript/src/features/checkout-v2/form/config.d.ts +0 -61
  374. package/lib/typescript/src/features/checkout-v2/form/config.d.ts.map +0 -1
  375. package/lib/typescript/src/features/checkout-v2/form/index.d.ts +0 -22
  376. package/lib/typescript/src/features/checkout-v2/form/index.d.ts.map +0 -1
  377. package/lib/typescript/src/features/checkout-v2/form/styles.d.ts +0 -4501
  378. package/lib/typescript/src/features/checkout-v2/form/styles.d.ts.map +0 -1
  379. package/lib/typescript/src/features/checkout-v2/form/texts.d.ts +0 -4
  380. package/lib/typescript/src/features/checkout-v2/form/texts.d.ts.map +0 -1
  381. package/lib/typescript/src/features/checkout-v2/form/types.d.ts +0 -191
  382. package/lib/typescript/src/features/checkout-v2/form/types.d.ts.map +0 -1
  383. package/lib/typescript/src/features/checkout-v2/hooks/api-hooks.d.ts +0 -227
  384. package/lib/typescript/src/features/checkout-v2/hooks/api-hooks.d.ts.map +0 -1
  385. package/lib/typescript/src/features/checkout-v2/hooks/use-checkout.d.ts +0 -37
  386. package/lib/typescript/src/features/checkout-v2/hooks/use-checkout.d.ts.map +0 -1
  387. package/lib/typescript/src/features/checkout-v2/index.d.ts +0 -42
  388. package/lib/typescript/src/features/checkout-v2/index.d.ts.map +0 -1
  389. package/lib/typescript/src/features/checkout-v2/types.d.ts +0 -433
  390. package/lib/typescript/src/features/checkout-v2/types.d.ts.map +0 -1
  391. package/lib/typescript/src/features/checkout-v2/utils.d.ts +0 -12
  392. package/lib/typescript/src/features/checkout-v2/utils.d.ts.map +0 -1
  393. package/lib/typescript/src/features/event/api-hooks.d.ts +0 -171
  394. package/lib/typescript/src/features/event/api-hooks.d.ts.map +0 -1
  395. package/lib/typescript/src/features/event/types.d.ts +0 -58
  396. package/lib/typescript/src/features/event/types.d.ts.map +0 -1
  397. package/lib/typescript/src/features/form/index.d.ts +0 -24
  398. package/lib/typescript/src/features/form/index.d.ts.map +0 -1
  399. package/lib/typescript/src/features/form/styles.d.ts +0 -35
  400. package/lib/typescript/src/features/form/styles.d.ts.map +0 -1
  401. package/lib/typescript/src/features/form/types.d.ts +0 -33
  402. package/lib/typescript/src/features/form/types.d.ts.map +0 -1
  403. package/lib/typescript/src/features/geo/api-hooks.d.ts +0 -12
  404. package/lib/typescript/src/features/geo/api-hooks.d.ts.map +0 -1
  405. package/lib/typescript/src/features/geo/types.d.ts +0 -13
  406. package/lib/typescript/src/features/geo/types.d.ts.map +0 -1
  407. package/lib/typescript/src/helpers/Config.d.ts +0 -24
  408. package/lib/typescript/src/helpers/Config.d.ts.map +0 -1
  409. package/lib/typescript/src/helpers/CountryCodes.d.ts +0 -16
  410. package/lib/typescript/src/helpers/CountryCodes.d.ts.map +0 -1
  411. package/lib/typescript/src/helpers/Debounced.d.ts +0 -2
  412. package/lib/typescript/src/helpers/Debounced.d.ts.map +0 -1
  413. package/lib/typescript/src/helpers/Domains.d.ts +0 -3
  414. package/lib/typescript/src/helpers/Domains.d.ts.map +0 -1
  415. package/lib/typescript/src/helpers/LocalStorage.d.ts +0 -27
  416. package/lib/typescript/src/helpers/LocalStorage.d.ts.map +0 -1
  417. package/lib/typescript/src/helpers/RefreshAccessToken.d.ts +0 -3
  418. package/lib/typescript/src/helpers/RefreshAccessToken.d.ts.map +0 -1
  419. package/lib/typescript/src/helpers/StringsHelper.d.ts +0 -3
  420. package/lib/typescript/src/helpers/StringsHelper.d.ts.map +0 -1
  421. package/lib/typescript/src/helpers/Validators.d.ts +0 -16
  422. package/lib/typescript/src/helpers/Validators.d.ts.map +0 -1
  423. package/lib/typescript/src/index.d.ts +0 -49
  424. package/lib/typescript/src/index.d.ts.map +0 -1
  425. package/lib/typescript/src/res/colors.d.ts +0 -16
  426. package/lib/typescript/src/res/colors.d.ts.map +0 -1
  427. package/lib/typescript/src/res/icons.d.ts +0 -13
  428. package/lib/typescript/src/res/icons.d.ts.map +0 -1
  429. package/lib/typescript/src/res/images.d.ts +0 -5
  430. package/lib/typescript/src/res/images.d.ts.map +0 -1
  431. package/lib/typescript/src/res/index.d.ts +0 -32
  432. package/lib/typescript/src/res/index.d.ts.map +0 -1
  433. package/lib/typescript/src/types/IAccountTickets.d.ts +0 -71
  434. package/lib/typescript/src/types/IAccountTickets.d.ts.map +0 -1
  435. package/lib/typescript/src/types/ICountry.d.ts +0 -2
  436. package/lib/typescript/src/types/ICountry.d.ts.map +0 -1
  437. package/lib/typescript/src/types/IError.d.ts +0 -6
  438. package/lib/typescript/src/types/IError.d.ts.map +0 -1
  439. package/lib/typescript/src/types/IEvent.d.ts +0 -87
  440. package/lib/typescript/src/types/IEvent.d.ts.map +0 -1
  441. package/lib/typescript/src/types/ITicket.d.ts +0 -71
  442. package/lib/typescript/src/types/ITicket.d.ts.map +0 -1
  443. package/lib/typescript/src/types/IUserProfile.d.ts +0 -30
  444. package/lib/typescript/src/types/IUserProfile.d.ts.map +0 -1
  445. package/lib/typescript/src/types/index.d.ts +0 -6
  446. package/lib/typescript/src/types/index.d.ts.map +0 -1
  447. package/lib/typescript/src/utils/Logger.d.ts +0 -21
  448. package/lib/typescript/src/utils/Logger.d.ts.map +0 -1
  449. package/lib/typescript/src/utils/handlers.d.ts +0 -9
  450. package/lib/typescript/src/utils/handlers.d.ts.map +0 -1
  451. package/lib/typescript/src/utils/storageAdapter.d.ts +0 -14
  452. package/lib/typescript/src/utils/storageAdapter.d.ts.map +0 -1
  453. package/lib/typescript/src/utils/styleUtils.d.ts +0 -18
  454. package/lib/typescript/src/utils/styleUtils.d.ts.map +0 -1
  455. package/src/api/ApiClient.ts +0 -1539
  456. package/src/api/Constants.ts +0 -10
  457. package/src/api/ErrorHandler.ts +0 -36
  458. package/src/api/api.types.ts +0 -8
  459. package/src/api/types.ts +0 -593
  460. package/src/apiv2/index.ts +0 -143
  461. package/src/assets/icons/ic_check.png +0 -0
  462. package/src/assets/icons/ic_clock.png +0 -0
  463. package/src/assets/icons/ic_copy.png +0 -0
  464. package/src/assets/icons/ic_dropdown.png +0 -0
  465. package/src/assets/icons/ic_error.png +0 -0
  466. package/src/assets/icons/ic_eye.png +0 -0
  467. package/src/assets/icons/ic_eye_off.png +0 -0
  468. package/src/assets/icons/ic_more.png +0 -0
  469. package/src/assets/icons/ic_next.png +0 -0
  470. package/src/assets/images/brand.png +0 -0
  471. package/src/common/query.types.ts +0 -6
  472. package/src/components/bottomSheetModal/BottomSheetModal.tsx +0 -95
  473. package/src/components/bottomSheetModal/BottomSheetModalStyles.ts +0 -43
  474. package/src/components/bottomSheetModal/BottomSheetModalTypes.ts +0 -26
  475. package/src/components/button/Button.tsx +0 -53
  476. package/src/components/button/styles.tsx +0 -30
  477. package/src/components/button/types.ts +0 -16
  478. package/src/components/cartTimer/CartTimer.tsx +0 -68
  479. package/src/components/cartTimer/styles.ts +0 -44
  480. package/src/components/cartTimer/types.ts +0 -22
  481. package/src/components/checkbox/Checkbox.tsx +0 -53
  482. package/src/components/checkbox/styles.ts +0 -41
  483. package/src/components/checkbox/types.ts +0 -23
  484. package/src/components/datePicker/DatePicker.tsx +0 -81
  485. package/src/components/datePicker/styles.ts +0 -39
  486. package/src/components/datePicker/types.ts +0 -21
  487. package/src/components/dropdown/Dropdown.tsx +0 -111
  488. package/src/components/dropdown/DropdownListItem.tsx +0 -36
  489. package/src/components/dropdown/styles.ts +0 -97
  490. package/src/components/dropdown/types.ts +0 -38
  491. package/src/components/dropdownMaterial/DropdownMaterial.tsx +0 -129
  492. package/src/components/dropdownMaterial/styles.ts +0 -91
  493. package/src/components/dropdownMaterial/types.ts +0 -24
  494. package/src/components/enterPassword/EnterPassword.tsx +0 -50
  495. package/src/components/enterPassword/styles.ts +0 -23
  496. package/src/components/enterPassword/types.ts +0 -27
  497. package/src/components/formField/FormField.tsx +0 -131
  498. package/src/components/formField/styles.ts +0 -37
  499. package/src/components/formField/types.ts +0 -60
  500. package/src/components/index.ts +0 -20
  501. package/src/components/input/Input.tsx +0 -77
  502. package/src/components/input/styles.ts +0 -53
  503. package/src/components/input/types.ts +0 -38
  504. package/src/components/loading/Loading.tsx +0 -30
  505. package/src/components/loading/styles.ts +0 -32
  506. package/src/components/loading/types.ts +0 -16
  507. package/src/components/loggedIn/LoggedIn.tsx +0 -60
  508. package/src/components/loggedIn/styles.ts +0 -9
  509. package/src/components/loggedIn/types.ts +0 -27
  510. package/src/components/login/Login.tsx +0 -161
  511. package/src/components/login/LoginView.tsx +0 -259
  512. package/src/components/login/components/LoginForm.tsx +0 -92
  513. package/src/components/login/components/types.ts +0 -22
  514. package/src/components/login/styles.ts +0 -63
  515. package/src/components/login/types.ts +0 -189
  516. package/src/components/phoneInput/PhoneInput.tsx +0 -72
  517. package/src/components/phoneInput/styles.ts +0 -31
  518. package/src/components/phoneInput/types.ts +0 -35
  519. package/src/components/promoCode/PromoCode.tsx +0 -111
  520. package/src/components/promoCode/styles.ts +0 -63
  521. package/src/components/promoCode/types.ts +0 -43
  522. package/src/components/radioButton/RadioButton.tsx +0 -26
  523. package/src/components/radioButton/styles.ts +0 -32
  524. package/src/components/radioButton/types.ts +0 -17
  525. package/src/components/radioGroup/RadioGroup.tsx +0 -86
  526. package/src/components/radioGroup/index.ts +0 -4
  527. package/src/components/radioGroup/types.ts +0 -26
  528. package/src/components/restorePassword/RestorePassword.tsx +0 -63
  529. package/src/components/restorePassword/ResultDialog.tsx +0 -26
  530. package/src/components/restorePassword/styles.ts +0 -38
  531. package/src/components/restorePassword/types.ts +0 -61
  532. package/src/components/separator/Separator.tsx +0 -26
  533. package/src/components/separator/types.ts +0 -9
  534. package/src/components/stripePayment/StripePayment.tsx +0 -51
  535. package/src/components/stripePayment/styles.ts +0 -7
  536. package/src/components/stripePayment/types.ts +0 -22
  537. package/src/components/waitingList/WaitingList.tsx +0 -147
  538. package/src/components/waitingList/WaitingListView.tsx +0 -94
  539. package/src/components/waitingList/styles.ts +0 -9
  540. package/src/components/waitingList/types.ts +0 -68
  541. package/src/containers/billingInfo/Billing.tsx +0 -1902
  542. package/src/containers/billingInfo/styles.ts +0 -64
  543. package/src/containers/billingInfo/types.ts +0 -217
  544. package/src/containers/checkout/Checkout.tsx +0 -519
  545. package/src/containers/checkout/CheckoutData.ts +0 -29
  546. package/src/containers/checkout/components/Conditions.tsx +0 -22
  547. package/src/containers/checkout/components/OrderReview.tsx +0 -31
  548. package/src/containers/checkout/components/styles.ts +0 -28
  549. package/src/containers/checkout/styles.ts +0 -44
  550. package/src/containers/checkout/types.ts +0 -148
  551. package/src/containers/index.ts +0 -8
  552. package/src/containers/myOrderDetails/MyOrderDetails.tsx +0 -318
  553. package/src/containers/myOrderDetails/MyOrderDetailsView.tsx +0 -269
  554. package/src/containers/myOrderDetails/components/Notification.tsx +0 -40
  555. package/src/containers/myOrderDetails/components/OrderListItem.tsx +0 -12
  556. package/src/containers/myOrderDetails/components/TicketActions/TicketActions.tsx +0 -68
  557. package/src/containers/myOrderDetails/components/TicketActions/TicketActionsTypes.ts +0 -41
  558. package/src/containers/myOrderDetails/components/TicketListItem/TicketListItem.tsx +0 -63
  559. package/src/containers/myOrderDetails/components/TicketListItem/TicketListItemStyles.ts +0 -33
  560. package/src/containers/myOrderDetails/components/TicketListItem/TicketListItemTypes.ts +0 -39
  561. package/src/containers/myOrderDetails/components/styles.ts +0 -42
  562. package/src/containers/myOrderDetails/styles.ts +0 -57
  563. package/src/containers/myOrderDetails/types.ts +0 -173
  564. package/src/containers/myOrders/MyOrders.tsx +0 -340
  565. package/src/containers/myOrders/MyOrdersView.tsx +0 -182
  566. package/src/containers/myOrders/components/OrderListItem.tsx +0 -50
  567. package/src/containers/myOrders/components/styles.ts +0 -55
  568. package/src/containers/myOrders/components/types.ts +0 -28
  569. package/src/containers/myOrders/styles.ts +0 -42
  570. package/src/containers/myOrders/types.ts +0 -84
  571. package/src/containers/purchaseConfirmation/PurchaseConfirmation.tsx +0 -145
  572. package/src/containers/purchaseConfirmation/PurchaseConfirmationView.tsx +0 -82
  573. package/src/containers/purchaseConfirmation/styles.ts +0 -79
  574. package/src/containers/purchaseConfirmation/types.ts +0 -77
  575. package/src/containers/resaleTickets/ResaleTickets.tsx +0 -234
  576. package/src/containers/resaleTickets/ResaleTicketsView.tsx +0 -314
  577. package/src/containers/resaleTickets/types.ts +0 -154
  578. package/src/containers/resetPassword/ResetPassword.tsx +0 -110
  579. package/src/containers/resetPassword/ResetPasswordView.tsx +0 -81
  580. package/src/containers/resetPassword/styles.ts +0 -35
  581. package/src/containers/resetPassword/types.ts +0 -56
  582. package/src/containers/tickets/Tickets.tsx +0 -525
  583. package/src/containers/tickets/TicketsView.tsx +0 -164
  584. package/src/containers/tickets/components/TicketGroupListHeader.tsx +0 -12
  585. package/src/containers/tickets/components/TicketListItem.tsx +0 -124
  586. package/src/containers/tickets/components/styles.ts +0 -54
  587. package/src/containers/tickets/components/types.ts +0 -47
  588. package/src/containers/tickets/styles.ts +0 -22
  589. package/src/containers/tickets/types.ts +0 -158
  590. package/src/core/BillingCore/BillingCore.tsx +0 -129
  591. package/src/core/BillingCore/BillingCoreTypes.ts +0 -34
  592. package/src/core/BillingCore/README.md +0 -22
  593. package/src/core/CheckoutCore/CheckoutCore.tsx +0 -113
  594. package/src/core/CheckoutCore/CheckoutCoreTypes.ts +0 -23
  595. package/src/core/CheckoutCore/README.md +0 -20
  596. package/src/core/CoreProps.ts +0 -5
  597. package/src/core/LoginCore/LoginCore.tsx +0 -140
  598. package/src/core/LoginCore/LoginCoreHelper.ts +0 -22
  599. package/src/core/LoginCore/LoginCoreTypes.ts +0 -21
  600. package/src/core/MIGRATION.md +0 -148
  601. package/src/core/MyOrdersCore/MyOrdersCore.tsx +0 -44
  602. package/src/core/MyOrdersCore/MyOrdersCoreTypes.ts +0 -15
  603. package/src/core/OrderDetailsCore/OrderDetailsCore.tsx +0 -36
  604. package/src/core/OrderDetailsCore/OrderDetailsCoreTypes.ts +0 -10
  605. package/src/core/PurchaseConfirmationCore/PurchaseConfirmationCore.tsx +0 -37
  606. package/src/core/PurchaseConfirmationCore/PurchaseConfirmationCoreTypes.ts +0 -10
  607. package/src/core/ResetPasswordCore/ResetPasswordCore.tsx +0 -21
  608. package/src/core/ResetPasswordCore/ResetPasswordCoreTypes.ts +0 -5
  609. package/src/core/Session/SessionCoreTypes.ts +0 -10
  610. package/src/core/Session/SessionHandle.tsx +0 -23
  611. package/src/core/TicketsCore/TicketsCore.tsx +0 -216
  612. package/src/core/TicketsCore/TicketsCoreTypes.ts +0 -52
  613. package/src/core/WaitingListCore/WaitingListCore.tsx +0 -35
  614. package/src/core/WaitingListCore/WaitingListCoreTypes.ts +0 -16
  615. package/src/core/index.ts +0 -20
  616. package/src/features/auth/api-hooks.ts +0 -61
  617. package/src/features/auth/types.ts +0 -54
  618. package/src/features/auth/utils.ts +0 -27
  619. package/src/features/checkout-v2/components/AddonsContainer.tsx +0 -159
  620. package/src/features/checkout-v2/components/Conditions.tsx +0 -144
  621. package/src/features/checkout-v2/components/OrderReview.tsx +0 -96
  622. package/src/features/checkout-v2/components/TicketHoldersSection.tsx +0 -131
  623. package/src/features/checkout-v2/form/config.tsx +0 -194
  624. package/src/features/checkout-v2/form/index.tsx +0 -830
  625. package/src/features/checkout-v2/form/styles.ts +0 -241
  626. package/src/features/checkout-v2/form/texts.ts +0 -133
  627. package/src/features/checkout-v2/form/types.ts +0 -231
  628. package/src/features/checkout-v2/hooks/api-hooks.ts +0 -332
  629. package/src/features/checkout-v2/hooks/use-checkout.ts +0 -927
  630. package/src/features/checkout-v2/index.tsx +0 -289
  631. package/src/features/checkout-v2/types.ts +0 -475
  632. package/src/features/checkout-v2/utils.ts +0 -156
  633. package/src/features/event/api-hooks.ts +0 -28
  634. package/src/features/event/types.ts +0 -69
  635. package/src/features/form/index.tsx +0 -185
  636. package/src/features/form/styles.ts +0 -37
  637. package/src/features/form/types.ts +0 -38
  638. package/src/features/geo/api-hooks.ts +0 -43
  639. package/src/features/geo/types.ts +0 -15
  640. package/src/helpers/Config.ts +0 -81
  641. package/src/helpers/CountryCodes.ts +0 -3382
  642. package/src/helpers/Debounced.ts +0 -27
  643. package/src/helpers/Domains.ts +0 -32
  644. package/src/helpers/LocalStorage.tsx +0 -152
  645. package/src/helpers/RefreshAccessToken.ts +0 -25
  646. package/src/helpers/StringsHelper.ts +0 -5
  647. package/src/helpers/Validators.ts +0 -108
  648. package/src/packages/rn-material-ui-textfield/README.md +0 -149
  649. package/src/packages/rn-material-ui-textfield/components/affix/index.js +0 -61
  650. package/src/packages/rn-material-ui-textfield/components/affix/styles.js +0 -8
  651. package/src/packages/rn-material-ui-textfield/components/counter/index.js +0 -36
  652. package/src/packages/rn-material-ui-textfield/components/counter/styles.js +0 -12
  653. package/src/packages/rn-material-ui-textfield/components/field/index.js +0 -700
  654. package/src/packages/rn-material-ui-textfield/components/field/styles.js +0 -42
  655. package/src/packages/rn-material-ui-textfield/components/field-filled/index.js +0 -21
  656. package/src/packages/rn-material-ui-textfield/components/field-filled/styles.js +0 -10
  657. package/src/packages/rn-material-ui-textfield/components/field-outlined/index.js +0 -59
  658. package/src/packages/rn-material-ui-textfield/components/helper/index.js +0 -78
  659. package/src/packages/rn-material-ui-textfield/components/helper/styles.js +0 -12
  660. package/src/packages/rn-material-ui-textfield/components/label/index.js +0 -123
  661. package/src/packages/rn-material-ui-textfield/components/label/styles.js +0 -16
  662. package/src/packages/rn-material-ui-textfield/components/line/index.js +0 -117
  663. package/src/packages/rn-material-ui-textfield/components/line/styles.js +0 -18
  664. package/src/packages/rn-material-ui-textfield/components/outline/index.js +0 -139
  665. package/src/packages/rn-material-ui-textfield/components/outline/styles.js +0 -83
  666. package/src/packages/rn-material-ui-textfield/index.d.ts +0 -53
  667. package/src/packages/rn-material-ui-textfield/index.js +0 -5
  668. package/src/packages/rn-material-ui-textfield/license.txt +0 -28
  669. package/src/res/colors.ts +0 -16
  670. package/src/res/icons.ts +0 -11
  671. package/src/res/images.ts +0 -3
  672. package/src/res/index.ts +0 -11
  673. package/src/types/IAccountTickets.ts +0 -75
  674. package/src/types/ICountry.ts +0 -2
  675. package/src/types/IError.ts +0 -5
  676. package/src/types/IEvent.ts +0 -87
  677. package/src/types/ITicket.ts +0 -75
  678. package/src/types/IUserProfile.ts +0 -30
  679. package/src/types/index.ts +0 -5
  680. package/src/utils/Logger.ts +0 -75
  681. package/src/utils/handlers.ts +0 -49
  682. package/src/utils/storageAdapter.ts +0 -44
  683. package/src/utils/styleUtils.ts +0 -76
@@ -0,0 +1,680 @@
1
+ /**
2
+ * `<Tickets/>` — ticket-type catalog + quantity selection. The RN analogue of
3
+ * the web `Tickets` section, at full parity: per-type price line (struck
4
+ * original when discounted, FREE at 0, "(… with fees)" sub-line, deposit %),
5
+ * View/Hide info descriptions, sold-out / not-started / ended badges, group
6
+ * headings + a "Reserve tables" divider, one-type-at-a-time selection (unless
7
+ * `allowMultipleTicketTypePurchases`), promo / access codes, waiting-list
8
+ * sign-up, a currency switcher, time-slot dates, and a "Select seats" hand-off
9
+ * for seated events. Reads the shared engine via `useCheckoutContext()`; primes
10
+ * the cart with `checkout.setTickets`.
11
+ */
12
+ import React, { Fragment, useEffect, useMemo, useRef, useState, type FC } from 'react'
13
+ import { Pressable, StyleSheet, Text, View } from 'react-native'
14
+
15
+ import {
16
+ errorMessage,
17
+ hooks,
18
+ ticketQuantityRange,
19
+ type TicketSelection,
20
+ type TicketType,
21
+ type WaitingListEntry,
22
+ } from 'tf-checkout-shared'
23
+
24
+ import {
25
+ Button,
26
+ Card,
27
+ Divider,
28
+ ErrorText,
29
+ Loader,
30
+ MutedText,
31
+ SectionHeader,
32
+ } from '../ui/primitives'
33
+ import { useCheckoutContext, useTheme } from '../ui/CheckoutProvider'
34
+ import { Field, Input } from '../ui/Field'
35
+ import { QuantitySelect } from '../ui/QuantitySelect'
36
+ import { Select } from '../ui/Select'
37
+ import type { ResolvedTheme } from '../ui/theme'
38
+
39
+ // Web renders the rich description via `dangerouslySetInnerHTML`. React Native
40
+ // has no HTML renderer, so we strip tags + decode a few common entities to show
41
+ // the description as plain text (the adaptation for native).
42
+ const stripHtml = (html: string): string =>
43
+ html
44
+ .replace(/<\s*br\s*\/?\s*>/gi, '\n')
45
+ .replace(/<\/\s*(p|div|li|h[1-6])\s*>/gi, '\n')
46
+ .replace(/<[^>]+>/g, '')
47
+ .replace(/&nbsp;/gi, ' ')
48
+ .replace(/&amp;/gi, '&')
49
+ .replace(/&lt;/gi, '<')
50
+ .replace(/&gt;/gi, '>')
51
+ .replace(/&#39;|&apos;/gi, "'")
52
+ .replace(/&quot;/gi, '"')
53
+ .replace(/\n{3,}/g, '\n\n')
54
+ .replace(/[ \t]+\n/g, '\n')
55
+ .trim()
56
+
57
+ const money = (sym: string, n: number): string => `${sym} ${Number(n).toFixed(2)}`
58
+
59
+ /** Inline waiting-list sign-up for a sold-out type. */
60
+ const WaitingListForm: FC<{
61
+ ticket: TicketType
62
+ onJoin: (entry: WaitingListEntry) => Promise<void>
63
+ }> = ({ ticket, onJoin }) => {
64
+ const [form, setForm] = useState({ firstName: '', lastName: '', email: '' })
65
+ const [state, setState] = useState<'idle' | 'busy' | 'done' | 'error'>('idle')
66
+ const [error, setError] = useState('')
67
+ const ok = Boolean(form.firstName.trim() && form.lastName.trim() && form.email.trim())
68
+
69
+ if (state === 'done')
70
+ return (
71
+ <MutedText>You’re on the waiting list — we’ll email you if a spot opens.</MutedText>
72
+ )
73
+
74
+ return (
75
+ <View style={staticStyles.wlForm}>
76
+ <Field>
77
+ <Input
78
+ placeholder="First name"
79
+ value={form.firstName}
80
+ onChangeText={(t) => setForm((f) => ({ ...f, firstName: t }))}
81
+ />
82
+ </Field>
83
+ <Field>
84
+ <Input
85
+ placeholder="Last name"
86
+ value={form.lastName}
87
+ onChangeText={(t) => setForm((f) => ({ ...f, lastName: t }))}
88
+ />
89
+ </Field>
90
+ <Field>
91
+ <Input
92
+ placeholder="Email"
93
+ value={form.email}
94
+ keyboardType="email-address"
95
+ autoCapitalize="none"
96
+ onChangeText={(t) => setForm((f) => ({ ...f, email: t }))}
97
+ />
98
+ </Field>
99
+ <Button
100
+ variant="ghost"
101
+ loading={state === 'busy'}
102
+ disabled={!ok || state === 'busy'}
103
+ onPress={() => {
104
+ setState('busy')
105
+ setError('')
106
+ onJoin({ ...form, ticketTypeId: ticket.id })
107
+ .then(() => setState('done'))
108
+ .catch((e) => {
109
+ setState('error')
110
+ setError(errorMessage(e))
111
+ })
112
+ }}
113
+ >
114
+ Join the waiting list
115
+ </Button>
116
+ {error ? <ErrorText>{error}</ErrorText> : null}
117
+ </View>
118
+ )
119
+ }
120
+
121
+ export interface TicketsProps {
122
+ eventId: string
123
+ /** Optional heading above the catalog. The legacy storefront shows none, so
124
+ * the default is intentionally hidden. */
125
+ title?: string | false
126
+ /** Fired once the cart is primed (tickets added) — e.g. reveal `<AddOns/>`. */
127
+ onContinue?: () => void
128
+ /** CTA label. Old storefront uses "Get tickets". */
129
+ buttonLabel?: string
130
+ /** Force time-slot mode + supply the selectable session dates (ISO yyyy-mm-dd).
131
+ * Omit to auto-detect from the event (`isTimeSlotEvent` / `availableDates`). */
132
+ timeSlotDates?: string[]
133
+ /** SEATED events: fired when the buyer taps "Select seats". Wire this to
134
+ * reveal `<SeatMap/>`. Without it the seat CTA is hidden. */
135
+ onSelectSeats?: () => void
136
+ /** Apply this code once when the ticket catalog mounts. */
137
+ initialPromoCode?: string
138
+ /** Attribute this visit once. */
139
+ referrer?: string | number
140
+ /** Web also reads promo/referral values from the URL. React Native has no
141
+ * `window.location`, so URL attribution is skipped here; the prop is accepted
142
+ * for parity and defaults true. */
143
+ readAttributionFromUrl?: boolean
144
+ }
145
+
146
+ export const Tickets: FC<TicketsProps> = ({
147
+ eventId,
148
+ title = false,
149
+ onContinue,
150
+ buttonLabel = 'Get tickets',
151
+ timeSlotDates,
152
+ onSelectSeats,
153
+ initialPromoCode,
154
+ referrer,
155
+ readAttributionFromUrl = true,
156
+ }) => {
157
+ const checkout = useCheckoutContext()
158
+ const theme = useTheme()
159
+ const s = useTicketStyles(theme)
160
+ const ticketsQuery = hooks.useTicketsWithMeta(eventId)
161
+ const promoMeta = ticketsQuery.data?.promo
162
+ const showWaitingList = ticketsQuery.data?.showWaitingList ?? false
163
+
164
+ const [qty, setQty] = useState<Record<string, number>>({})
165
+ const [slotDate, setSlotDate] = useState('')
166
+
167
+ // Time-slot / calendar events: pick a date, then buy from that session's slots.
168
+ const eventInfo = hooks.useEvent(eventId).data
169
+ const isTimeSlot = Boolean(timeSlotDates?.length || eventInfo?.isTimeSlotEvent)
170
+ const dates = useMemo(
171
+ () => timeSlotDates ?? eventInfo?.availableDates ?? [],
172
+ [timeSlotDates, eventInfo?.availableDates]
173
+ )
174
+ useEffect(() => {
175
+ if (isTimeSlot && !slotDate && dates.length) setSlotDate(dates[0])
176
+ }, [isTimeSlot, slotDate, dates])
177
+ const slotQuery = hooks.useTimeSlotTickets(eventId, isTimeSlot ? slotDate : undefined)
178
+
179
+ const tickets = useMemo(
180
+ () => (isTimeSlot ? (slotQuery.data ?? []) : (ticketsQuery.data?.tickets ?? [])),
181
+ [isTimeSlot, slotQuery.data, ticketsQuery.data?.tickets]
182
+ )
183
+ const [error, setError] = useState('')
184
+ const [code, setCode] = useState('')
185
+ const [codeState, setCodeState] = useState<'idle' | 'busy'>('idle')
186
+ const [promoOpen, setPromoOpen] = useState(false)
187
+ const [wlOpen, setWlOpen] = useState<Record<string, boolean>>({})
188
+ const [visibleDescription, setVisibleDescription] = useState<string | null>(null)
189
+ const attributionEvent = useRef<string | null>(null)
190
+
191
+ // Match hosted links: attribute referral visits and apply a carried promo once
192
+ // per event. Explicit props win. URL reading (web-only) is intentionally
193
+ // skipped on native — `readAttributionFromUrl` is accepted for prop parity.
194
+ useEffect(() => {
195
+ if (attributionEvent.current === eventId) return
196
+ attributionEvent.current = eventId
197
+
198
+ const promo = initialPromoCode?.trim() ?? ''
199
+ const referral = referrer
200
+
201
+ if (referral !== undefined && String(referral).trim()) {
202
+ checkout.attributeReferrer(eventId, referral).catch(() => undefined)
203
+ }
204
+ if (promo) {
205
+ setCode(promo)
206
+ setPromoOpen(true)
207
+ setCodeState('busy')
208
+ checkout
209
+ .applyPromoCode(eventId, promo)
210
+ .catch(() => undefined)
211
+ .finally(() => {
212
+ ticketsQuery.refetch().finally(() => setCodeState('idle'))
213
+ })
214
+ }
215
+ // Checkout actions and query functions are stable; this effect is scoped to
216
+ // one attribution pass per event.
217
+ // eslint-disable-next-line react-hooks/exhaustive-deps
218
+ }, [eventId, initialPromoCode, referrer, readAttributionFromUrl])
219
+
220
+ // Seed the currency state once so a multi-currency event can offer a switcher
221
+ // on the ticket screen (before the cart is primed). No-op for single-currency.
222
+ useEffect(() => {
223
+ checkout.syncCurrency(eventId, undefined, { seed: true }).catch(() => undefined)
224
+ // eslint-disable-next-line react-hooks/exhaustive-deps
225
+ }, [eventId])
226
+
227
+ const changeCurrency = (nextCode: string) => {
228
+ checkout
229
+ .syncCurrency(eventId, nextCode)
230
+ .then((res) => {
231
+ if (res.requiresCatalogRefresh) {
232
+ setQty({})
233
+ ticketsQuery.refetch()
234
+ }
235
+ })
236
+ .catch(() => undefined)
237
+ }
238
+
239
+ // Remember each type's first-seen (pre-promo) price so a discount can strike it.
240
+ const originals = useRef<Record<string, number>>({})
241
+ useEffect(() => {
242
+ for (const t of tickets)
243
+ if (originals.current[t.id] == null) originals.current[t.id] = t.price
244
+ }, [tickets])
245
+
246
+ const selected = tickets.filter((t) => (qty[t.id] ?? 0) > 0)
247
+ // The current selection's kind — drives the CTA label and the mutual-exclusion
248
+ // rule below (a table order and a ticket order can't be combined).
249
+ const selectionIsTable = selected.some((t) => t.isTable)
250
+ const allowMultiple = eventInfo?.allowMultipleTicketTypePurchases === true
251
+
252
+ // Ported from the old checkout's `handleTicketSelect`: unless the event opts
253
+ // into multiple types (`allowMultipleTicketTypePurchases`), a new selection
254
+ // REPLACES the previous one — one ticket type per order. Even when multiple are
255
+ // allowed, switching between a table and a regular ticket clears the rest.
256
+ const selectQty = (t: TicketType, value: number) =>
257
+ setQty((prev) => {
258
+ const activeIds = Object.keys(prev).filter((k) => (prev[k] ?? 0) > 0)
259
+ const prevIsTable = activeIds.length
260
+ ? Boolean(tickets.find((x) => x.id === activeIds[0])?.isTable)
261
+ : t.isTable
262
+ const switchingKind = activeIds.length > 0 && prevIsTable !== t.isTable
263
+
264
+ if (!allowMultiple) return value > 0 ? { [t.id]: value } : {}
265
+ if (switchingKind && value > 0) return { [t.id]: value }
266
+ const next = { ...prev }
267
+ if (value > 0) next[t.id] = value
268
+ else delete next[t.id]
269
+ return next
270
+ })
271
+
272
+ // Seated events: the buyer picks on a seat map, so seat-map ticket types show
273
+ // read-only (no quantity control) and the CTA becomes "Select seats". A type
274
+ // with `allowDirectPurchase` opts out and keeps its stepper.
275
+ const isSeated = eventInfo?.isSeatedEvent ?? false
276
+ const seatMapRow = (t: TicketType) => isSeated && !t.allowDirectPurchase
277
+ const hasSeatMapTickets = tickets.some(seatMapRow)
278
+ const directPurchasable = tickets.filter((t) => !seatMapRow(t))
279
+ const seatCtaLabel = eventInfo?.tableMapEnabled ? 'Select on map' : 'Select seats'
280
+
281
+ // A "Reserve tables" divider before the first table type — only when regular
282
+ // tickets actually precede it (a tables-first list gets no stray divider).
283
+ const firstTableIndex = tickets.findIndex((t) => t.isTable)
284
+ const firstTableId =
285
+ firstTableIndex > 0 && tickets.slice(0, firstTableIndex).some((t) => !t.isTable)
286
+ ? tickets[firstTableIndex].id
287
+ : undefined
288
+
289
+ const prime = () => {
290
+ setError('')
291
+ const selections: TicketSelection[] = selected.map((t) => ({
292
+ id: t.id,
293
+ name: t.name,
294
+ optionName: t.optionName,
295
+ price: t.price,
296
+ quantity: qty[t.id] ?? 0,
297
+ currency: t.currency,
298
+ }))
299
+ checkout
300
+ .setTickets(eventId, selections)
301
+ .then(() => onContinue?.())
302
+ .catch((e) => setError(errorMessage(e)))
303
+ }
304
+
305
+ const applyCode = () => {
306
+ if (!code.trim()) return
307
+ setCodeState('busy')
308
+ checkout
309
+ .applyPromoCode(eventId, code.trim())
310
+ .catch(() => undefined)
311
+ .finally(() => {
312
+ ticketsQuery.refetch().finally(() => setCodeState('idle'))
313
+ })
314
+ }
315
+
316
+ const isAccess = promoMeta?.isAccessCodeEnabled
317
+ const showCodeInput = promoMeta?.isPromotionsEnabled || isAccess
318
+ const listQuery = isTimeSlot ? slotQuery : ticketsQuery
319
+ const currency = checkout.currency
320
+
321
+ const renderRow = (t: TicketType) => {
322
+ const notStarted = !t.salesStarted
323
+ const unavailable = t.soldOut || t.salesEnded || notStarted
324
+ const original = originals.current[t.id]
325
+ const discounted = original != null && original > t.price
326
+ const canWaitlist =
327
+ t.soldOut && (t.waitingListEnabled || showWaitingList) && !t.salesEnded
328
+ const isFree = Number(t.price) === 0
329
+ const sym = t.priceSymbol || t.currency
330
+ const range = ticketQuantityRange(t)
331
+ const ticketIndex = tickets.findIndex((candidate) => candidate.id === t.id)
332
+ const previousTicket = ticketIndex > 0 ? tickets[ticketIndex - 1] : undefined
333
+ const startsNamedGroup =
334
+ Boolean(t.groupName) && t.groupName !== previousTicket?.groupName
335
+
336
+ const groupHeading = startsNamedGroup ? (
337
+ <Text style={s.group}>{t.groupName}</Text>
338
+ ) : t.id === firstTableId ? (
339
+ <>
340
+ <Divider />
341
+ <Text style={s.group}>Reserve tables</Text>
342
+ </>
343
+ ) : null
344
+
345
+ return (
346
+ <Fragment key={t.id}>
347
+ {groupHeading}
348
+ <View style={s.rowWrap}>
349
+ <View style={s.row}>
350
+ <View style={s.info}>
351
+ <View style={s.nameRow}>
352
+ <Text style={s.name}>{t.name}</Text>
353
+ {t.descriptionRich ? (
354
+ <Pressable
355
+ accessibilityRole="button"
356
+ onPress={() =>
357
+ setVisibleDescription((cur) => (cur === t.id ? null : t.id))
358
+ }
359
+ >
360
+ <Text style={s.infoToggle}>
361
+ {visibleDescription === t.id ? 'Hide info' : 'View info'}
362
+ </Text>
363
+ </Pressable>
364
+ ) : null}
365
+ </View>
366
+ <View style={s.priceRow}>
367
+ {discounted && original != null ? (
368
+ <Text style={s.oldPrice}>{money(sym, original)}</Text>
369
+ ) : null}
370
+ <Text style={[s.amount, isFree && s.amountFree]}>
371
+ {isFree ? 'FREE' : money(sym, t.price)}
372
+ </Text>
373
+ {/* Native affordance kept from the RN ticket screen: tables price
374
+ per table. */}
375
+ {t.isTable ? <Text style={s.perTable}>· per table</Text> : null}
376
+ {/* Fees sub-line — omitted for free / sold-out types. */}
377
+ {!isFree && !t.soldOut ? (
378
+ <Text style={s.fees}>({money(sym, t.priceWithFees)} with fees)</Text>
379
+ ) : null}
380
+ {t.depositPercent != null ? (
381
+ <Text style={s.deposit}>{t.depositPercent.toFixed(2)}% DEPOSIT</Text>
382
+ ) : null}
383
+ </View>
384
+ </View>
385
+ {/* Seat-map types are read-only here — no quantity control; the buyer
386
+ picks them on the map via "Select seats". */}
387
+ {seatMapRow(t) ? null : unavailable ? (
388
+ <Text style={s.soldout}>
389
+ {t.soldOut
390
+ ? 'Sold out'
391
+ : notStarted
392
+ ? 'Sales not started'
393
+ : 'Sales Ended'}
394
+ </Text>
395
+ ) : (
396
+ <View style={s.qtyWrap}>
397
+ {/* Tables pick a number of GUESTS (bounded by minGuests/maxGuests),
398
+ not a count of tickets — the label makes that explicit. */}
399
+ {t.isTable ? <Text style={s.guests}>Guests</Text> : null}
400
+ <QuantitySelect
401
+ value={qty[t.id] ?? 0}
402
+ min={range.min}
403
+ max={range.max}
404
+ step={range.step}
405
+ onChange={(v) => selectQty(t, v)}
406
+ />
407
+ </View>
408
+ )}
409
+ </View>
410
+ {t.descriptionRich && visibleDescription === t.id ? (
411
+ <Text style={s.description}>{stripHtml(t.descriptionRich)}</Text>
412
+ ) : null}
413
+ {canWaitlist ? (
414
+ wlOpen[t.id] ? (
415
+ <WaitingListForm
416
+ ticket={t}
417
+ onJoin={(entry) => checkout.joinWaitingList(eventId, entry)}
418
+ />
419
+ ) : (
420
+ <Pressable
421
+ accessibilityRole="button"
422
+ onPress={() => setWlOpen((w) => ({ ...w, [t.id]: true }))}
423
+ >
424
+ <Text style={s.wlToggle}>Join the waiting list</Text>
425
+ </Pressable>
426
+ )
427
+ ) : null}
428
+ </View>
429
+ </Fragment>
430
+ )
431
+ }
432
+
433
+ // Time-slot layout groups the date's tickets under their time heading.
434
+ const timeGroups: { time: string; items: TicketType[] }[] = []
435
+ if (isTimeSlot)
436
+ for (const t of tickets) {
437
+ const time = t.timeSlot?.time ?? ''
438
+ const g = timeGroups.find((x) => x.time === time)
439
+ if (g) g.items.push(t)
440
+ else timeGroups.push({ time, items: [t] })
441
+ }
442
+
443
+ return (
444
+ <Card>
445
+ {title ? <SectionHeader title={title} /> : null}
446
+
447
+ {listQuery.isLoading ? (
448
+ <View style={s.loading}>
449
+ <Loader />
450
+ </View>
451
+ ) : null}
452
+
453
+ {listQuery.error ? (
454
+ <ErrorText>{(listQuery.error as Error).message}</ErrorText>
455
+ ) : null}
456
+
457
+ {isTimeSlot && dates.length > 0 ? (
458
+ <View style={s.selectBlock}>
459
+ <Text style={s.selectLabel}>Date</Text>
460
+ <Select
461
+ value={slotDate}
462
+ onChange={(d) => {
463
+ setSlotDate(d)
464
+ setQty({})
465
+ }}
466
+ options={dates.map((d) => ({ label: d, value: d }))}
467
+ />
468
+ </View>
469
+ ) : null}
470
+
471
+ {currency && currency.available.length > 1 ? (
472
+ <View style={s.selectBlock}>
473
+ <Text style={s.selectLabel}>Currency</Text>
474
+ <Select
475
+ value={currency.currency}
476
+ onChange={changeCurrency}
477
+ options={currency.available.map((c) => ({
478
+ label: `${c.name} (${c.code})`,
479
+ value: c.code,
480
+ }))}
481
+ />
482
+ </View>
483
+ ) : null}
484
+
485
+ {isTimeSlot && !slotQuery.isLoading && tickets.length === 0 && slotDate ? (
486
+ <MutedText>No sessions available on this date.</MutedText>
487
+ ) : null}
488
+
489
+ {isTimeSlot
490
+ ? timeGroups.map((g) => (
491
+ <Fragment key={g.time}>
492
+ {g.time ? <Text style={s.slotTime}>{g.time}</Text> : null}
493
+ {g.items.map(renderRow)}
494
+ </Fragment>
495
+ ))
496
+ : tickets.map(renderRow)}
497
+
498
+ {/* Promo / access code */}
499
+ {showCodeInput ? (
500
+ <View style={s.promo}>
501
+ {!isAccess && !promoOpen ? (
502
+ <Pressable accessibilityRole="button" onPress={() => setPromoOpen(true)}>
503
+ <Text style={s.promoToggle}>Got a promo code? Tap here</Text>
504
+ </Pressable>
505
+ ) : (
506
+ <>
507
+ <Field>
508
+ <Input
509
+ placeholder={isAccess ? 'Access code' : 'Promo code'}
510
+ value={code}
511
+ autoCapitalize="characters"
512
+ onChangeText={setCode}
513
+ />
514
+ </Field>
515
+ <Button
516
+ variant="ghost"
517
+ onPress={applyCode}
518
+ loading={codeState === 'busy'}
519
+ disabled={codeState === 'busy' || !code.trim()}
520
+ >
521
+ {isAccess ? 'ENTER' : 'APPLY'}
522
+ </Button>
523
+ {promoMeta?.promoCodeMessage ? (
524
+ promoMeta.promoCodeValid === false ? (
525
+ <ErrorText>{promoMeta.promoCodeMessage}</ErrorText>
526
+ ) : (
527
+ <MutedText>{promoMeta.promoCodeMessage}</MutedText>
528
+ )
529
+ ) : null}
530
+ </>
531
+ )}
532
+ </View>
533
+ ) : null}
534
+
535
+ {/* Direct-purchase CTA — hidden on a fully-seated event (nothing to buy by
536
+ quantity; the seat map is the only path). */}
537
+ {directPurchasable.length > 0 ? (
538
+ <Button
539
+ onPress={prime}
540
+ loading={checkout.isBusy}
541
+ disabled={checkout.isBusy || selected.length === 0}
542
+ >
543
+ {checkout.isBusy
544
+ ? 'Reserving…'
545
+ : selectionIsTable
546
+ ? 'Reserve tables'
547
+ : buttonLabel}
548
+ </Button>
549
+ ) : null}
550
+
551
+ {/* Seated events: hand off to the seat map instead of quantity selection. */}
552
+ {hasSeatMapTickets ? (
553
+ <Button variant="ghost" onPress={() => onSelectSeats?.()}>
554
+ {seatCtaLabel}
555
+ </Button>
556
+ ) : null}
557
+
558
+ {error || checkout.error ? <ErrorText>{error || checkout.error}</ErrorText> : null}
559
+ </Card>
560
+ )
561
+ }
562
+
563
+ /** Theme-independent layout bits (used by the WaitingListForm subcomponent). */
564
+ const staticStyles = StyleSheet.create({
565
+ wlForm: { gap: 8 },
566
+ })
567
+
568
+ const useTicketStyles = (theme: ResolvedTheme) =>
569
+ useMemo(
570
+ () =>
571
+ StyleSheet.create({
572
+ loading: { paddingVertical: 24, alignItems: 'center' },
573
+ selectBlock: { gap: 6 },
574
+ selectLabel: {
575
+ color: theme.muted,
576
+ fontSize: theme.fontSize - 2,
577
+ fontWeight: '600',
578
+ fontFamily: theme.fontFamily,
579
+ },
580
+ slotTime: {
581
+ color: theme.text,
582
+ fontSize: theme.fontSize,
583
+ fontWeight: '700',
584
+ marginTop: 4,
585
+ fontFamily: theme.fontFamily,
586
+ },
587
+ group: {
588
+ color: theme.text,
589
+ fontSize: theme.fontSize,
590
+ fontWeight: '700',
591
+ marginTop: 4,
592
+ fontFamily: theme.fontFamily,
593
+ },
594
+ rowWrap: { gap: 8 },
595
+ row: { flexDirection: 'row', alignItems: 'flex-start', gap: 12 },
596
+ info: { flex: 1, gap: 4 },
597
+ nameRow: { flexDirection: 'row', alignItems: 'center', flexWrap: 'wrap', gap: 8 },
598
+ name: {
599
+ color: theme.text,
600
+ fontSize: theme.fontSize,
601
+ fontWeight: '600',
602
+ fontFamily: theme.fontFamily,
603
+ },
604
+ infoToggle: {
605
+ color: theme.accent,
606
+ fontSize: theme.fontSize - 2,
607
+ fontWeight: '600',
608
+ fontFamily: theme.fontFamily,
609
+ },
610
+ priceRow: {
611
+ flexDirection: 'row',
612
+ alignItems: 'center',
613
+ flexWrap: 'wrap',
614
+ gap: 6,
615
+ },
616
+ oldPrice: {
617
+ color: theme.muted,
618
+ fontSize: theme.fontSize - 1,
619
+ textDecorationLine: 'line-through',
620
+ fontVariant: ['tabular-nums'],
621
+ fontFamily: theme.fontFamily,
622
+ },
623
+ amount: {
624
+ color: theme.text,
625
+ fontSize: theme.fontSize,
626
+ fontWeight: '700',
627
+ fontVariant: ['tabular-nums'],
628
+ fontFamily: theme.fontFamily,
629
+ },
630
+ amountFree: { color: theme.success },
631
+ perTable: {
632
+ color: theme.muted,
633
+ fontSize: theme.fontSize - 1,
634
+ fontFamily: theme.fontFamily,
635
+ },
636
+ fees: {
637
+ color: theme.muted,
638
+ fontSize: theme.fontSize - 1,
639
+ fontFamily: theme.fontFamily,
640
+ },
641
+ deposit: {
642
+ color: theme.muted,
643
+ fontSize: theme.fontSize - 2,
644
+ fontWeight: '600',
645
+ fontFamily: theme.fontFamily,
646
+ },
647
+ soldout: {
648
+ color: theme.muted,
649
+ fontSize: theme.fontSize - 1,
650
+ fontWeight: '600',
651
+ fontFamily: theme.fontFamily,
652
+ },
653
+ qtyWrap: { flexDirection: 'row', alignItems: 'center', gap: 8 },
654
+ guests: {
655
+ color: theme.muted,
656
+ fontSize: theme.fontSize - 2,
657
+ fontWeight: '600',
658
+ fontFamily: theme.fontFamily,
659
+ },
660
+ description: {
661
+ color: theme.muted,
662
+ fontSize: theme.fontSize - 1,
663
+ fontFamily: theme.fontFamily,
664
+ },
665
+ wlToggle: {
666
+ color: theme.accent,
667
+ fontSize: theme.fontSize - 1,
668
+ fontWeight: '600',
669
+ fontFamily: theme.fontFamily,
670
+ },
671
+ promo: { gap: 8 },
672
+ promoToggle: {
673
+ color: theme.accent,
674
+ fontSize: theme.fontSize - 1,
675
+ fontWeight: '600',
676
+ fontFamily: theme.fontFamily,
677
+ },
678
+ }),
679
+ [theme]
680
+ )