tf-checkout-react 1.3.31 → 1.3.34

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.
@@ -7,5 +7,5 @@ export interface ICheckboxField {
7
7
  interface IOtherProps {
8
8
  [key: string]: any;
9
9
  }
10
- export declare const CheckboxField: ({ label, field, selectOptions, theme, setFieldValue, disableDropdown, setPhoneValidationIsLoading, ...rest }: ICheckboxField & IOtherProps) => JSX.Element;
10
+ export declare const CheckboxField: ({ label, field, selectOptions, theme, setFieldValue, disableDropdown, setPhoneValidationIsLoading, defaultCountry, dateFormat, datePlaceholder, ...rest }: ICheckboxField & IOtherProps) => JSX.Element;
11
11
  export {};
@@ -0,0 +1,17 @@
1
+ import { FieldInputProps, FormikProps } from 'formik';
2
+ import React from 'react';
3
+ interface IRadio {
4
+ id: string | number;
5
+ name: string | number;
6
+ value: string | number;
7
+ [key: string]: any;
8
+ }
9
+ interface IRadioGroupField {
10
+ label?: string;
11
+ field: FieldInputProps<any>;
12
+ form: FormikProps<any>;
13
+ radios: IRadio[];
14
+ onChange?: (event: React.ChangeEvent<HTMLInputElement>) => void;
15
+ }
16
+ export declare const RadioGroupField: ({ label, field, radios, form: { errors, setFieldValue }, onChange, }: IRadioGroupField) => JSX.Element;
17
+ export {};
@@ -4,3 +4,4 @@ export { FormikPhoneNumberField } from './FormikPhoneNumberField';
4
4
  export { PhoneNumberField } from './PhoneNumberField';
5
5
  export { Loader } from './Loader';
6
6
  export { SelectField } from './SelectField';
7
+ export { RadioGroupField } from './RadioGroupField';
@@ -27,6 +27,8 @@ export interface IGetTickets {
27
27
  onGetTicketsError: (e: AxiosError) => void;
28
28
  onLogoutSuccess: () => void;
29
29
  onLogoutError: (e: AxiosError) => void;
30
+ onGetProfileDataSuccess: (response: any) => void;
31
+ onGetProfileDataError: (e: AxiosError) => void;
30
32
  onLoginSuccess: () => void;
31
33
  handleNotInvitedModalClose: () => void;
32
34
  handleInvalidLinkModalClose: () => void;
@@ -59,5 +61,5 @@ export interface ITicket {
59
61
  export interface ISelectedTickets {
60
62
  [key: string]: string | number;
61
63
  }
62
- export declare const TicketsContainer: ({ onLoginSuccess, getTicketsLabel, eventId, onAddToCartSuccess, contentStyle, onAddToCartError, onGetTicketsSuccess, onGetTicketsError, onLogoutSuccess, onLogoutError, theme, queryPromoCode, isPromotionsEnabled, themeOptions, isAccessCodeEnabled, hideSessionButtons, hideWaitingList, enableBillingInfoAutoCreate, isButtonScrollable, sortBySoldOut, disableCountdownLeadingZero, isLoggedIn, actionsSectionComponent: ActionsSectionComponent, ticketsHeaderComponent, hideTicketsHeader, enableInfluencersSection, enableAddOns, handleNotInvitedModalClose, handleInvalidLinkModalClose, ordersPath, }: IGetTickets) => JSX.Element;
64
+ export declare const TicketsContainer: ({ onLoginSuccess, getTicketsLabel, eventId, onAddToCartSuccess, contentStyle, onAddToCartError, onGetTicketsSuccess, onGetTicketsError, onLogoutSuccess, onLogoutError, onGetProfileDataSuccess, onGetProfileDataError, theme, queryPromoCode, isPromotionsEnabled, themeOptions, isAccessCodeEnabled, hideSessionButtons, hideWaitingList, enableBillingInfoAutoCreate, isButtonScrollable, sortBySoldOut, disableCountdownLeadingZero, isLoggedIn, actionsSectionComponent: ActionsSectionComponent, ticketsHeaderComponent, hideTicketsHeader, enableInfluencersSection, enableAddOns, handleNotInvitedModalClose, handleInvalidLinkModalClose, ordersPath, }: IGetTickets) => JSX.Element;
63
65
  export {};
@@ -0,0 +1 @@
1
+ export declare const X_TF_ECOMMERCE = "X-TF-ECOMMERCE";
@@ -0,0 +1 @@
1
+ export declare const useCookieListener: (key: string, handler: (value: string | null) => void) => void;
@@ -10,6 +10,7 @@ var Button = _interopDefault(require('@mui/material/Button'));
10
10
  var styles = require('@mui/material/styles');
11
11
  var axios = _interopDefault(require('axios'));
12
12
  var formik = require('formik');
13
+ var _find = _interopDefault(require('lodash/find'));
13
14
  var _get = _interopDefault(require('lodash/get'));
14
15
  var _identity = _interopDefault(require('lodash/identity'));
15
16
  var _includes = _interopDefault(require('lodash/includes'));
@@ -27,13 +28,18 @@ var TextField = _interopDefault(require('@mui/material/TextField'));
27
28
  var styles$1 = require('@mui/styles');
28
29
  var _isFunction = _interopDefault(require('lodash/isFunction'));
29
30
  var _isObject = _interopDefault(require('lodash/isObject'));
30
- var FormGroup = _interopDefault(require('@mui/material/FormGroup'));
31
- var FormControlLabel = _interopDefault(require('@mui/material/FormControlLabel'));
32
31
  var Checkbox = _interopDefault(require('@mui/material/Checkbox'));
32
+ var FormControlLabel = _interopDefault(require('@mui/material/FormControlLabel'));
33
+ var FormGroup = _interopDefault(require('@mui/material/FormGroup'));
33
34
  var MuiPhoneNumber = _interopDefault(require('material-ui-phone-number'));
34
35
  var _debounce = _interopDefault(require('lodash/debounce'));
35
36
  var CircularProgress = _interopDefault(require('@mui/material/CircularProgress'));
36
37
  var Select = _interopDefault(require('@mui/material/Select'));
38
+ var FormControl = _interopDefault(require('@mui/material/FormControl'));
39
+ var FormHelperText = _interopDefault(require('@mui/material/FormHelperText'));
40
+ var FormLabel = _interopDefault(require('@mui/material/FormLabel'));
41
+ var Radio = _interopDefault(require('@mui/material/Radio'));
42
+ var RadioGroup = _interopDefault(require('@mui/material/RadioGroup'));
37
43
  var Yup = require('yup');
38
44
  var Box = _interopDefault(require('@mui/material/Box'));
39
45
  var Modal = _interopDefault(require('@mui/material/Modal'));
@@ -49,12 +55,10 @@ var stripeJs = require('@stripe/stripe-js');
49
55
  var reactShare = require('react-share');
50
56
  var privateTheming = require('@mui/private-theming');
51
57
  var jwt_decode = _interopDefault(require('jwt-decode'));
52
- var _find = _interopDefault(require('lodash/find'));
53
58
  var _some = _interopDefault(require('lodash/some'));
54
59
  var Button$1 = _interopDefault(require('react-bootstrap/Button'));
55
60
  var moment = _interopDefault(require('moment-timezone'));
56
61
  var _sortBy = _interopDefault(require('lodash/sortBy'));
57
- var FormControl = _interopDefault(require('@mui/material/FormControl'));
58
62
  var MenuItem = _interopDefault(require('@mui/material/MenuItem'));
59
63
  var Autocomplete = _interopDefault(require('@mui/material/Autocomplete'));
60
64
  var Paper = _interopDefault(require('@mui/material/Paper'));
@@ -66,7 +70,6 @@ var TableHead = _interopDefault(require('@mui/material/TableHead'));
66
70
  var TablePagination = _interopDefault(require('@mui/material/TablePagination'));
67
71
  var TableRow = _interopDefault(require('@mui/material/TableRow'));
68
72
  var _has = _interopDefault(require('lodash/has'));
69
- var Radio = _interopDefault(require('@mui/material/Radio'));
70
73
  var _isNull = _interopDefault(require('lodash/isNull'));
71
74
  var _reverse = _interopDefault(require('lodash/reverse'));
72
75
 
@@ -1187,6 +1190,22 @@ var createMarkup = function createMarkup(data) {
1187
1190
  };
1188
1191
  };
1189
1192
 
1193
+ var setLoggedUserData = function setLoggedUserData(data) {
1194
+ return {
1195
+ id: data.id,
1196
+ first_name: data.firstName,
1197
+ last_name: data.lastName,
1198
+ email: data.email,
1199
+ confirmEmail: data.email,
1200
+ city: (data == null ? void 0 : data.city) || '',
1201
+ country: (data == null ? void 0 : data.countryId) || (data == null ? void 0 : data.country) || '',
1202
+ phone: (data == null ? void 0 : data.phone) || '',
1203
+ street_address: (data == null ? void 0 : data.streetAddress) || '',
1204
+ state: (data == null ? void 0 : data.stateId) || '',
1205
+ zip: (data == null ? void 0 : data.zip) || (data == null ? void 0 : data.zipCode) || ''
1206
+ };
1207
+ };
1208
+
1190
1209
  var isWindowDefined = typeof window !== 'undefined';
1191
1210
  var isDocumentDefined = typeof document !== 'undefined';
1192
1211
 
@@ -1230,8 +1249,6 @@ publicRequest.interceptors.response.use(function (response) {
1230
1249
  return Promise.reject(error);
1231
1250
  });
1232
1251
  publicRequest.interceptors.request.use(function (config) {
1233
- var _document$cookie;
1234
-
1235
1252
  var guestToken = isWindowDefined ? window.localStorage.getItem('auth_guest_token') : null;
1236
1253
  var userData = isWindowDefined ? window.localStorage.getItem('user_data') : null;
1237
1254
  var accessToken = isWindowDefined ? window.localStorage.getItem('access_token') : null;
@@ -1262,16 +1279,6 @@ publicRequest.interceptors.request.use(function (config) {
1262
1279
  config.headers = _updatedHeaders2;
1263
1280
  }
1264
1281
 
1265
- var additionalCookiesHeaderValue = (_document$cookie = document.cookie) != null ? _document$cookie : '';
1266
-
1267
- if (additionalCookiesHeaderValue !== '') {
1268
- var _updatedHeaders3 = _extends({}, config.headers, {
1269
- 'Additional-Cookies': additionalCookiesHeaderValue
1270
- });
1271
-
1272
- config.headers = _updatedHeaders3;
1273
- }
1274
-
1275
1282
  if (CONFIGS.X_SOURCE_ORIGIN) {
1276
1283
  var _updatedHeaders4 = _extends({}, config.headers, {
1277
1284
  'X-Source-Origin': CONFIGS.X_SOURCE_ORIGIN
@@ -1466,7 +1473,7 @@ var getProfileData = function getProfileData(accessToken) {
1466
1473
  });
1467
1474
  };
1468
1475
  var getCountries = function getCountries() {
1469
- return publicRequest.get('/countries/');
1476
+ return publicRequest.get('/countries/list');
1470
1477
  };
1471
1478
  var getConfirmationData = function getConfirmationData(orderHash) {
1472
1479
  return publicRequest.get("v1/order/" + orderHash + "/payment/complete");
@@ -1801,7 +1808,7 @@ var DatePickerField = function DatePickerField(_ref) {
1801
1808
  })));
1802
1809
  };
1803
1810
 
1804
- var _excluded = ["label", "field", "selectOptions", "theme", "setFieldValue", "disableDropdown", "setPhoneValidationIsLoading"];
1811
+ var _excluded = ["label", "field", "selectOptions", "theme", "setFieldValue", "disableDropdown", "setPhoneValidationIsLoading", "defaultCountry", "dateFormat", "datePlaceholder"];
1805
1812
  var CheckboxField = function CheckboxField(_ref) {
1806
1813
  var _rest$form, _field$name, _rest$form2, _field$name2;
1807
1814
 
@@ -1811,14 +1818,14 @@ var CheckboxField = function CheckboxField(_ref) {
1811
1818
 
1812
1819
  var customTheme = styles$1.useTheme();
1813
1820
  return React__default.createElement(material.FormControl, {
1814
- error: !!(rest != null && (_rest$form = rest.form) != null && _rest$form.errors && rest.form.errors[(_field$name = field == null ? void 0 : field.name) != null ? _field$name : ""])
1821
+ error: !!(rest != null && (_rest$form = rest.form) != null && _rest$form.errors && rest.form.errors[(_field$name = field == null ? void 0 : field.name) != null ? _field$name : ''])
1815
1822
  }, React__default.createElement(FormGroup, null, React__default.createElement(FormControlLabel, {
1816
1823
  control: React__default.createElement(Checkbox, Object.assign({}, field, rest)),
1817
1824
  label: label,
1818
1825
  componentsProps: {
1819
1826
  typography: customTheme == null ? void 0 : customTheme.checkbox
1820
1827
  }
1821
- })), !!(rest != null && (_rest$form2 = rest.form) != null && _rest$form2.errors && rest.form.errors[(_field$name2 = field == null ? void 0 : field.name) != null ? _field$name2 : ""]) ? React__default.createElement(material.FormHelperText, null, "Required") : null);
1828
+ })), !!(rest != null && (_rest$form2 = rest.form) != null && _rest$form2.errors && rest.form.errors[(_field$name2 = field == null ? void 0 : field.name) != null ? _field$name2 : '']) ? React__default.createElement(material.FormHelperText, null, "Required") : null);
1822
1829
  };
1823
1830
 
1824
1831
  var PhoneNumberField = function PhoneNumberField(_ref) {
@@ -2003,6 +2010,48 @@ var SelectField = function SelectField(_ref) {
2003
2010
  }, error) : null);
2004
2011
  };
2005
2012
 
2013
+ var RadioGroupField = function RadioGroupField(_ref) {
2014
+ var label = _ref.label,
2015
+ field = _ref.field,
2016
+ radios = _ref.radios,
2017
+ _ref$form = _ref.form,
2018
+ errors = _ref$form.errors,
2019
+ setFieldValue = _ref$form.setFieldValue,
2020
+ _ref$onChange = _ref.onChange,
2021
+ onChange = _ref$onChange === void 0 ? _identity : _ref$onChange;
2022
+ var radioId = "radio-" + field.name;
2023
+
2024
+ var error = _get(errors, field.name);
2025
+
2026
+ var handleChange = function handleChange(e) {
2027
+ var value = e.target.value;
2028
+ setFieldValue(field.name, value);
2029
+ onChange(e);
2030
+ };
2031
+
2032
+ return React__default.createElement(FormControl, null, error ? React__default.createElement(FormHelperText, {
2033
+ className: "radio-error",
2034
+ error: true
2035
+ }, error) : null, label && React__default.createElement(FormLabel, {
2036
+ id: radioId
2037
+ }, label), React__default.createElement(RadioGroup, {
2038
+ "aria-labelledby": radioId,
2039
+ name: field.name,
2040
+ value: field.value,
2041
+ onChange: handleChange
2042
+ }, radios.map(function (radio) {
2043
+ var id = radio.id,
2044
+ name = radio.name,
2045
+ value = radio.value;
2046
+ return React__default.createElement(FormControlLabel, {
2047
+ key: id,
2048
+ label: name,
2049
+ value: value,
2050
+ control: React__default.createElement(Radio, null)
2051
+ });
2052
+ })));
2053
+ };
2054
+
2006
2055
  var SnackbarAlert = function SnackbarAlert(_ref) {
2007
2056
  var isOpen = _ref.isOpen,
2008
2057
  message = _ref.message,
@@ -2188,7 +2237,7 @@ var style$1 = {
2188
2237
  border: '1px solid white',
2189
2238
  outline: 'none'
2190
2239
  };
2191
- var setLoggedUserData = function setLoggedUserData(data) {
2240
+ var setLoggedUserData$1 = function setLoggedUserData(data) {
2192
2241
  return {
2193
2242
  id: data.id,
2194
2243
  first_name: data.firstName,
@@ -2286,7 +2335,7 @@ var LoginModal = function LoginModal(_ref) {
2286
2335
 
2287
2336
  case 17:
2288
2337
  profileSpecifiedData = _get(profileResponse, 'data.data');
2289
- profileDataObj = setLoggedUserData(profileSpecifiedData);
2338
+ profileDataObj = setLoggedUserData$1(profileSpecifiedData);
2290
2339
 
2291
2340
  if (typeof window !== 'undefined') {
2292
2341
  window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
@@ -2720,7 +2769,7 @@ var createRegisterFormData = function createRegisterFormData(values, checkoutBod
2720
2769
 
2721
2770
  return bodyFormData;
2722
2771
  };
2723
- var setLoggedUserData$1 = function setLoggedUserData(data) {
2772
+ var setLoggedUserData$2 = function setLoggedUserData(data) {
2724
2773
  return {
2725
2774
  id: data.id,
2726
2775
  first_name: data.firstName,
@@ -3058,6 +3107,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3058
3107
 
3059
3108
  var themeMui = styles.createTheme(themeOptions);
3060
3109
  var isWindowDefined = typeof window !== 'undefined';
3110
+ var defaultCountry = isWindowDefined ? window.localStorage.getItem('eventCountry') : '';
3061
3111
  var userData = isWindowDefined && window.localStorage.getItem('user_data') ? JSON.parse(window.localStorage.getItem('user_data') || '') : {};
3062
3112
  var access_token = isWindowDefined && window.localStorage.getItem('access_token') ? window.localStorage.getItem('access_token') || '' : '';
3063
3113
 
@@ -3129,13 +3179,17 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3129
3179
  loading = _useState14[0],
3130
3180
  setLoading = _useState14[1];
3131
3181
 
3132
- var _useState15 = React.useState(null),
3133
- error = _useState15[0],
3134
- setError = _useState15[1];
3182
+ var _useState15 = React.useState(true),
3183
+ isCountriesLoading = _useState15[0],
3184
+ setIsCountriesLoading = _useState15[1];
3135
3185
 
3136
- var _useState16 = React.useState(false),
3137
- phoneValidationIsLoading = _useState16[0],
3138
- setPhoneValidationIsLoading = _useState16[1];
3186
+ var _useState16 = React.useState(null),
3187
+ error = _useState16[0],
3188
+ setError = _useState16[1];
3189
+
3190
+ var _useState17 = React.useState(false),
3191
+ phoneValidationIsLoading = _useState17[0],
3192
+ setPhoneValidationIsLoading = _useState17[1];
3139
3193
 
3140
3194
  var emailLogged = _get(userData, 'email', '') || _get(userValues, 'email', '');
3141
3195
 
@@ -3215,30 +3269,34 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3215
3269
  case 3:
3216
3270
  res = _context2.sent;
3217
3271
  setCustomHeader(res);
3218
- setCountries(_map(_get(res, 'data.data'), function (item, key) {
3272
+ setCountries(_map(_get(res, 'data.data'), function (item) {
3219
3273
  return {
3220
- label: item,
3221
- value: key
3274
+ label: item.name,
3275
+ value: item.id,
3276
+ code: item.code
3222
3277
  };
3223
3278
  }));
3279
+ setIsCountriesLoading(false);
3224
3280
  onGetCountriesSuccess(res.data);
3225
- _context2.next = 12;
3281
+ _context2.next = 14;
3226
3282
  break;
3227
3283
 
3228
- case 9:
3229
- _context2.prev = 9;
3284
+ case 10:
3285
+ _context2.prev = 10;
3230
3286
  _context2.t0 = _context2["catch"](0);
3231
3287
 
3232
3288
  if (axios.isAxiosError(_context2.t0)) {
3233
3289
  onGetCountriesError(_context2.t0);
3234
3290
  }
3235
3291
 
3236
- case 12:
3292
+ setIsCountriesLoading(false);
3293
+
3294
+ case 14:
3237
3295
  case "end":
3238
3296
  return _context2.stop();
3239
3297
  }
3240
3298
  }
3241
- }, _callee2, null, [[0, 9]]);
3299
+ }, _callee2, null, [[0, 10]]);
3242
3300
  }));
3243
3301
 
3244
3302
  return function fetchCountries() {
@@ -3317,7 +3375,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3317
3375
  case 4:
3318
3376
  userDataResponse = _context4.sent;
3319
3377
  profileSpecifiedData = _get(userDataResponse, 'data.data');
3320
- profileDataObj = setLoggedUserData$1(profileSpecifiedData);
3378
+ profileDataObj = setLoggedUserData$2(profileSpecifiedData);
3321
3379
  setUserValues(_extends({}, profileDataObj, {
3322
3380
  firstName: profileDataObj.first_name,
3323
3381
  lastName: profileDataObj.last_name
@@ -3448,7 +3506,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3448
3506
 
3449
3507
  return React__default.createElement(styles.ThemeProvider, {
3450
3508
  theme: themeMui
3451
- }, loading && React__default.createElement(Backdrop, {
3509
+ }, (loading || isCountriesLoading) && React__default.createElement(Backdrop, {
3452
3510
  sx: {
3453
3511
  color: '#fff',
3454
3512
  backgroundColor: '#000000bd',
@@ -3460,9 +3518,11 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3460
3518
  })), !!expirationTime && enableTimer && React__default.createElement(TimerWidget$1, {
3461
3519
  expires_at: expirationTime,
3462
3520
  onCountdownFinish: onCountdownFinish
3463
- }), React__default.createElement(formik.Formik, {
3521
+ }), !isCountriesLoading && React__default.createElement(formik.Formik, {
3464
3522
  initialValues: getInitialValues(dataWithUniqueIds, _extends({
3465
- country: _get(userData, 'country', '') || '1',
3523
+ country: (_find(countries, function (item) {
3524
+ return item.code.toLowerCase() === defaultCountry;
3525
+ }) || {}).value || _get(userData, 'country', '') || '1',
3466
3526
  state: _get(userData, 'state', '') || '1',
3467
3527
  brand_opt_in: optedInFieldValue,
3468
3528
  ttf_opt_in: ttfOptIn
@@ -3507,7 +3567,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3507
3567
  case 11:
3508
3568
  updatedUserData = _context6.sent;
3509
3569
  _profileSpecifiedData = _get(updatedUserData, 'data.data');
3510
- _profileDataObj = setLoggedUserData$1(_profileSpecifiedData);
3570
+ _profileDataObj = setLoggedUserData$2(_profileSpecifiedData);
3511
3571
  window.localStorage.setItem('user_data', JSON.stringify(_profileDataObj));
3512
3572
 
3513
3573
  case 15:
@@ -3581,7 +3641,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3581
3641
  case 39:
3582
3642
  profileData = _context6.sent;
3583
3643
  profileSpecifiedData = _get(profileData, 'data.data');
3584
- profileDataObj = setLoggedUserData$1(profileSpecifiedData);
3644
+ profileDataObj = setLoggedUserData$2(profileSpecifiedData);
3585
3645
 
3586
3646
  if (isWindowDefined) {
3587
3647
  window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
@@ -3749,7 +3809,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3749
3809
  return ['password', 'confirmPassword', 'password-info'].includes(element.name) && isLoggedIn ? null : ['data_capture[wallet_address]'].includes(element.name) && hideWalletAddressField ? null : React__default.createElement(React__default.Fragment, {
3750
3810
  key: element.uniqueId
3751
3811
  }, React__default.createElement("div", {
3752
- className: element.className + " " + (props == null ? void 0 : props.errors[element.name])
3812
+ className: element.className + " " + ((props == null ? void 0 : props.errors[element.name]) || '')
3753
3813
  }, element.component ? element.component : React__default.createElement(formik.Field, {
3754
3814
  setPhoneValidationIsLoading: element.type === 'phone' ? setPhoneValidationIsLoading : undefined,
3755
3815
  name: element.name,
@@ -3759,11 +3819,12 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3759
3819
  validate: getValidateFunctions(element, states, props.values, props.errors),
3760
3820
  setFieldValue: props.setFieldValue,
3761
3821
  onBlur: props.handleBlur,
3762
- component: element.type === 'checkbox' ? CheckboxField : element.type === 'select' ? SelectField : element.type === 'phone' ? PhoneNumberField : element.type === 'date' ? DatePickerField : CustomField,
3822
+ component: element.type === 'checkbox' ? CheckboxField : element.type === 'select' ? SelectField : element.type === 'phone' ? PhoneNumberField : element.type === 'date' ? DatePickerField : element.type === 'radio' ? RadioGroupField : CustomField,
3763
3823
  selectOptions: element.name === 'country' ? countries : element.name === 'state' ? states : [],
3824
+ radios: element.radios,
3764
3825
  theme: theme,
3765
3826
  disableDropdown: element.disableDropdown,
3766
- defaultCountry: element.defaultCountry,
3827
+ defaultCountry: defaultCountry || element.defaultCountry,
3767
3828
  dateFormat: element.format,
3768
3829
  datePlaceholder: element.placeholder
3769
3830
  })));
@@ -3801,7 +3862,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref4) {
3801
3862
  }),
3802
3863
  disableDropdown: element.disableDropdown,
3803
3864
  setPhoneValidationIsLoading: setPhoneValidationIsLoading,
3804
- defaultCountry: element.defaultCountry
3865
+ defaultCountry: defaultCountry || element.defaultCountry
3805
3866
  }));
3806
3867
  })));
3807
3868
  }));
@@ -4958,6 +5019,38 @@ var ConfirmationContainer = function ConfirmationContainer(_ref) {
4958
5019
  }))))));
4959
5020
  };
4960
5021
 
5022
+ var X_TF_ECOMMERCE = 'X-TF-ECOMMERCE';
5023
+
5024
+ var useCookieListener = function useCookieListener(key, handler) {
5025
+ var getCookie = function getCookie() {
5026
+ return getCookieByName(key);
5027
+ };
5028
+
5029
+ var _useState = React.useState(),
5030
+ intervalValue = _useState[0],
5031
+ setIntervalValue = _useState[1];
5032
+
5033
+ var cookieRef = React.useRef(getCookie());
5034
+
5035
+ var handleCookieChange = function handleCookieChange() {
5036
+ var currentCookie = getCookie();
5037
+ var prevCookie = cookieRef.current;
5038
+
5039
+ if (currentCookie !== prevCookie) {
5040
+ cookieRef.current = getCookie();
5041
+ handler(cookieRef.current);
5042
+ }
5043
+ };
5044
+
5045
+ React.useEffect(function () {
5046
+ var interval = setInterval(handleCookieChange, 500);
5047
+ setIntervalValue(interval);
5048
+ return function () {
5049
+ intervalValue && clearInterval(intervalValue);
5050
+ }; // eslint-disable-next-line react-hooks/exhaustive-deps
5051
+ }, []);
5052
+ };
5053
+
4961
5054
  var style$3 = {
4962
5055
  position: 'absolute',
4963
5056
  top: '50%',
@@ -5560,6 +5653,10 @@ var TicketsContainer = function TicketsContainer(_ref) {
5560
5653
  onLogoutSuccess = _ref$onLogoutSuccess === void 0 ? _identity : _ref$onLogoutSuccess,
5561
5654
  _ref$onLogoutError = _ref.onLogoutError,
5562
5655
  onLogoutError = _ref$onLogoutError === void 0 ? _identity : _ref$onLogoutError,
5656
+ _ref$onGetProfileData = _ref.onGetProfileDataSuccess,
5657
+ onGetProfileDataSuccess = _ref$onGetProfileData === void 0 ? _identity : _ref$onGetProfileData,
5658
+ _ref$onGetProfileData2 = _ref.onGetProfileDataError,
5659
+ onGetProfileDataError = _ref$onGetProfileData2 === void 0 ? _identity : _ref$onGetProfileData2,
5563
5660
  _ref$theme = _ref.theme,
5564
5661
  theme = _ref$theme === void 0 ? 'light' : _ref$theme,
5565
5662
  _ref$queryPromoCode = _ref.queryPromoCode,
@@ -5602,9 +5699,8 @@ var TicketsContainer = function TicketsContainer(_ref) {
5602
5699
  setSelectedTickets = _useState[1];
5603
5700
 
5604
5701
  var isWindowDefined = typeof window !== 'undefined';
5605
- var xtfCookie = getCookieByName('X-TF-ECOMMERCE');
5606
5702
 
5607
- var _useState2 = React.useState((isWindowDefined ? !!window.localStorage.getItem('access_token') : false) || !!xtfCookie),
5703
+ var _useState2 = React.useState(Boolean(getCookieByName(X_TF_ECOMMERCE))),
5608
5704
  isLogged = _useState2[0],
5609
5705
  setIsLogged = _useState2[1];
5610
5706
 
@@ -5673,6 +5769,9 @@ var TicketsContainer = function TicketsContainer(_ref) {
5673
5769
  setIsInvalidLinkError = _useState18[1];
5674
5770
 
5675
5771
  var ticketsContainerRef = React.useRef(null);
5772
+ useCookieListener(X_TF_ECOMMERCE, function (value) {
5773
+ return setIsLogged(Boolean(value));
5774
+ });
5676
5775
  React.useEffect(function () {
5677
5776
  if (typeof window !== 'undefined') {
5678
5777
  var access_token = window.localStorage.getItem('access_token');
@@ -5690,6 +5789,18 @@ var TicketsContainer = function TicketsContainer(_ref) {
5690
5789
  React.useEffect(function () {
5691
5790
  !!eventId && getTicketsApi();
5692
5791
  }, [eventId]);
5792
+ React.useEffect(function () {
5793
+ if (isLogged) {
5794
+ fetchUserData().then(function (res) {
5795
+ window.localStorage.setItem('user_data', JSON.stringify(res));
5796
+ onGetProfileDataSuccess(res);
5797
+ })["catch"](function (e) {
5798
+ if (axios.isAxiosError(e)) {
5799
+ onGetProfileDataError(e);
5800
+ }
5801
+ });
5802
+ }
5803
+ }, [isLogged]);
5693
5804
 
5694
5805
  var handleLogout = /*#__PURE__*/function () {
5695
5806
  var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
@@ -5758,26 +5869,26 @@ var TicketsContainer = function TicketsContainer(_ref) {
5758
5869
  }
5759
5870
 
5760
5871
  function _getTicketsApi() {
5761
- _getTicketsApi = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee3(isUpdateingCode, type) {
5872
+ _getTicketsApi = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee4(isUpdateingCode, type) {
5762
5873
  var _previewKey, response, eventResponse, attributes, _event2;
5763
5874
 
5764
- return runtime_1.wrap(function _callee3$(_context3) {
5875
+ return runtime_1.wrap(function _callee4$(_context4) {
5765
5876
  while (1) {
5766
- switch (_context3.prev = _context3.next) {
5877
+ switch (_context4.prev = _context4.next) {
5767
5878
  case 0:
5768
- _context3.prev = 0;
5879
+ _context4.prev = 0;
5769
5880
  isUpdateingCode ? setCodeIsLoading(true) : setIsLoading(true);
5770
5881
  _previewKey = getQueryVariable('pk') || undefined;
5771
- _context3.next = 5;
5882
+ _context4.next = 5;
5772
5883
  return getTickets(eventId, code, _previewKey);
5773
5884
 
5774
5885
  case 5:
5775
- response = _context3.sent;
5776
- _context3.next = 8;
5886
+ response = _context4.sent;
5887
+ _context4.next = 8;
5777
5888
  return getEvent(eventId, _previewKey);
5778
5889
 
5779
5890
  case 8:
5780
- eventResponse = _context3.sent;
5891
+ eventResponse = _context4.sent;
5781
5892
 
5782
5893
  if (response.data.success) {
5783
5894
  attributes = _get(response, 'data.data.attributes');
@@ -5794,32 +5905,36 @@ var TicketsContainer = function TicketsContainer(_ref) {
5794
5905
  if (eventResponse.data.success) {
5795
5906
  _event2 = _get(eventResponse, 'data.data.attributes');
5796
5907
  setEvent(_event2);
5908
+
5909
+ if (_event2.country && isWindowDefined) {
5910
+ window.localStorage.setItem('eventCountry', _event2.country);
5911
+ }
5797
5912
  }
5798
5913
 
5799
- _context3.next = 16;
5914
+ _context4.next = 16;
5800
5915
  break;
5801
5916
 
5802
5917
  case 13:
5803
- _context3.prev = 13;
5804
- _context3.t0 = _context3["catch"](0);
5918
+ _context4.prev = 13;
5919
+ _context4.t0 = _context4["catch"](0);
5805
5920
 
5806
- if (axios.isAxiosError(_context3.t0)) {
5807
- onGetTicketsError(_context3.t0);
5808
- setError(_get(_context3.t0, 'response.data.message'));
5921
+ if (axios.isAxiosError(_context4.t0)) {
5922
+ onGetTicketsError(_context4.t0);
5923
+ setError(_get(_context4.t0, 'response.data.message'));
5809
5924
  }
5810
5925
 
5811
5926
  case 16:
5812
- _context3.prev = 16;
5927
+ _context4.prev = 16;
5813
5928
  setIsLoading(false);
5814
5929
  setCodeIsLoading(false);
5815
- return _context3.finish(16);
5930
+ return _context4.finish(16);
5816
5931
 
5817
5932
  case 20:
5818
5933
  case "end":
5819
- return _context3.stop();
5934
+ return _context4.stop();
5820
5935
  }
5821
5936
  }
5822
- }, _callee3, null, [[0, 13, 16, 20]]);
5937
+ }, _callee4, null, [[0, 13, 16, 20]]);
5823
5938
  }));
5824
5939
  return _getTicketsApi.apply(this, arguments);
5825
5940
  }
@@ -6018,6 +6133,41 @@ var TicketsContainer = function TicketsContainer(_ref) {
6018
6133
  getTicketsApi(isUpdateingCode, type);
6019
6134
  };
6020
6135
 
6136
+ var fetchUserData = /*#__PURE__*/function () {
6137
+ var _ref5 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee3() {
6138
+ var userDataResponse, profileData, profileDataObj;
6139
+ return runtime_1.wrap(function _callee3$(_context3) {
6140
+ while (1) {
6141
+ switch (_context3.prev = _context3.next) {
6142
+ case 0:
6143
+ _context3.prev = 0;
6144
+ _context3.next = 3;
6145
+ return getProfileData();
6146
+
6147
+ case 3:
6148
+ userDataResponse = _context3.sent;
6149
+ profileData = _get(userDataResponse, 'data.data');
6150
+ profileDataObj = setLoggedUserData(profileData);
6151
+ return _context3.abrupt("return", profileDataObj);
6152
+
6153
+ case 9:
6154
+ _context3.prev = 9;
6155
+ _context3.t0 = _context3["catch"](0);
6156
+ throw new Error(_context3.t0);
6157
+
6158
+ case 12:
6159
+ case "end":
6160
+ return _context3.stop();
6161
+ }
6162
+ }
6163
+ }, _callee3, null, [[0, 9]]);
6164
+ }));
6165
+
6166
+ return function fetchUserData() {
6167
+ return _ref5.apply(this, arguments);
6168
+ };
6169
+ }();
6170
+
6021
6171
  var isTicketOnSale = _some(tickets, function (item) {
6022
6172
  return item.salesStarted && !item.salesEnded && !item.soldOut;
6023
6173
  });