tf-checkout-react 1.0.42 → 1.0.46

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 (45) hide show
  1. package/dist/api/index.d.ts +1 -0
  2. package/dist/components/billing-info-container/index.d.ts +22 -3
  3. package/dist/components/billing-info-container/utils.d.ts +2 -2
  4. package/dist/components/common/CheckboxField.d.ts +2 -2
  5. package/dist/components/confirmationContainer/index.d.ts +4 -1
  6. package/dist/components/loginModal/index.d.ts +8 -4
  7. package/dist/components/paymentContainer/index.d.ts +5 -1
  8. package/dist/components/registerModal/index.d.ts +3 -0
  9. package/dist/components/ticketsContainer/TicketRow.d.ts +10 -0
  10. package/dist/components/ticketsContainer/TicketsSection.d.ts +10 -0
  11. package/dist/components/ticketsContainer/index.d.ts +6 -1
  12. package/dist/components/ticketsContainer/utils.d.ts +4 -0
  13. package/dist/components/waitingList/index.d.ts +7 -0
  14. package/dist/index.d.ts +1 -0
  15. package/dist/tf-checkout-react.cjs.development.css +3 -2
  16. package/dist/tf-checkout-react.cjs.development.js +688 -203
  17. package/dist/tf-checkout-react.cjs.development.js.map +1 -1
  18. package/dist/tf-checkout-react.cjs.production.min.js +1 -1
  19. package/dist/tf-checkout-react.cjs.production.min.js.map +1 -1
  20. package/dist/tf-checkout-react.esm.js +693 -206
  21. package/dist/tf-checkout-react.esm.js.map +1 -1
  22. package/dist/types/billing-info-data.d.ts +2 -1
  23. package/dist/validators/index.d.ts +2 -1
  24. package/package.json +3 -1
  25. package/src/.DS_Store +0 -0
  26. package/src/api/index.ts +5 -3
  27. package/src/components/.DS_Store +0 -0
  28. package/src/components/billing-info-container/index.tsx +239 -63
  29. package/src/components/billing-info-container/style.css +15 -0
  30. package/src/components/billing-info-container/utils.ts +41 -13
  31. package/src/components/common/CheckboxField.tsx +3 -2
  32. package/src/components/common/CustomField.tsx +16 -1
  33. package/src/components/confirmationContainer/index.tsx +8 -3
  34. package/src/components/loginModal/index.tsx +46 -13
  35. package/src/components/paymentContainer/index.tsx +10 -0
  36. package/src/components/registerModal/index.tsx +20 -3
  37. package/src/components/ticketsContainer/TicketRow.tsx +86 -0
  38. package/src/components/ticketsContainer/TicketsSection.tsx +82 -0
  39. package/src/components/ticketsContainer/index.tsx +96 -210
  40. package/src/components/ticketsContainer/utils.ts +11 -0
  41. package/src/components/waitingList/index.tsx +162 -0
  42. package/src/components/waitingList/style.css +18 -0
  43. package/src/index.ts +2 -1
  44. package/src/types/billing-info-data.ts +2 -1
  45. package/src/validators/index.ts +9 -3
@@ -7,7 +7,7 @@ function _interopDefault (ex) { return (ex && (typeof ex === 'object') && 'defau
7
7
  var React = require('react');
8
8
  var React__default = _interopDefault(React);
9
9
  var formik = require('formik');
10
- var Button = _interopDefault(require('@mui/material/Button'));
10
+ var LoadingButton = _interopDefault(require('@mui/lab/LoadingButton'));
11
11
  var _identity = _interopDefault(require('lodash/identity'));
12
12
  var _map = _interopDefault(require('lodash/map'));
13
13
  var _get = _interopDefault(require('lodash/get'));
@@ -19,6 +19,7 @@ var Box = _interopDefault(require('@mui/material/Box'));
19
19
  var _forEach = _interopDefault(require('lodash/forEach'));
20
20
  var _flatMapDeep = _interopDefault(require('lodash/flatMapDeep'));
21
21
  var TextField = _interopDefault(require('@mui/material/TextField'));
22
+ var styles = require('@mui/styles');
22
23
  var FormGroup = _interopDefault(require('@mui/material/FormGroup'));
23
24
  var FormControlLabel = _interopDefault(require('@mui/material/FormControlLabel'));
24
25
  var Checkbox = _interopDefault(require('@mui/material/Checkbox'));
@@ -28,18 +29,17 @@ var reactStripeJs = require('@stripe/react-stripe-js');
28
29
  var stripeJs = require('@stripe/stripe-js');
29
30
  var CircularProgress = _interopDefault(require('@mui/material/CircularProgress'));
30
31
  var SVG = _interopDefault(require('react-inlinesvg'));
31
- var _sortBy = _interopDefault(require('lodash/sortBy'));
32
- var _has = _interopDefault(require('lodash/has'));
33
32
  var _some = _interopDefault(require('lodash/some'));
34
33
  var _find = _interopDefault(require('lodash/find'));
35
34
  var _isEmpty = _interopDefault(require('lodash/isEmpty'));
36
- var _filter = _interopDefault(require('lodash/filter'));
37
- var _isObject = _interopDefault(require('lodash/isObject'));
35
+ var Button = _interopDefault(require('react-bootstrap/Button'));
36
+ var jwt_decode = _interopDefault(require('jwt-decode'));
37
+ var _sortBy = _interopDefault(require('lodash/sortBy'));
38
+ var _has = _interopDefault(require('lodash/has'));
38
39
  var FormControl = _interopDefault(require('@mui/material/FormControl'));
39
40
  var MenuItem = _interopDefault(require('@mui/material/MenuItem'));
40
41
  var Select = _interopDefault(require('@mui/material/Select'));
41
- var Button$1 = _interopDefault(require('react-bootstrap/Button'));
42
- var jwt_decode = _interopDefault(require('jwt-decode'));
42
+ var Button$1 = _interopDefault(require('@mui/material/Button'));
43
43
 
44
44
  function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
45
45
  try {
@@ -870,6 +870,7 @@ try {
870
870
  }
871
871
  });
872
872
 
873
+ var emailRegex = /^(([^<>()\[\]\\.,;:\s@"]+(\.[^<>()\[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
873
874
  var combineValidators = function combineValidators() {
874
875
  for (var _len = arguments.length, validators = new Array(_len), _key = 0; _key < _len; _key++) {
875
876
  validators[_key] = arguments[_key];
@@ -878,19 +879,22 @@ var combineValidators = function combineValidators() {
878
879
  return function () {
879
880
  for (var i = 0; i < validators.length; ++i) {
880
881
  var error_message = validators[i].apply(validators, arguments);
881
- if (error_message !== undefined) return error_message;
882
+ if (error_message) return error_message;
882
883
  }
883
884
  };
884
885
  };
885
- var requiredValidator = function requiredValidator(value) {
886
+ var requiredValidator = function requiredValidator(value, message) {
886
887
  var errorMessage = '';
887
888
 
888
889
  if (!value) {
889
- errorMessage = 'Required';
890
+ errorMessage = message || 'Required';
890
891
  }
891
892
 
892
893
  return errorMessage;
893
894
  };
895
+ var emailValidator = function emailValidator(email) {
896
+ return !emailRegex.test(email) ? 'Please enter a valid email address' : '';
897
+ };
894
898
 
895
899
  // preview1
896
900
 
@@ -912,6 +916,10 @@ if (isWindowDefined && localStorage.getItem('auth_guest_token')) {
912
916
  ttfHeaders['Authorization-Guest'] = /*#__PURE__*/localStorage.getItem('auth_guest_token');
913
917
  }
914
918
 
919
+ if (isWindowDefined && window.location.origin !== 'https://www.houseofx.nyc' && window.location.origin !== 'https://tickets-staging.houseofx.nyc') {
920
+ ttfHeaders['X-Source-Origin'] = 'houseofx.nyc';
921
+ }
922
+
915
923
  var publicRequest = /*#__PURE__*/axios.create({
916
924
  baseURL: ENV.BASE_URL ,
917
925
  headers: ttfHeaders
@@ -955,7 +963,9 @@ publicRequest.interceptors.request.use(function (config) {
955
963
  }
956
964
 
957
965
  if (isWindowDefined && window.location.origin !== 'https://www.houseofx.nyc' && window.location.origin !== 'https://tickets-staging.houseofx.nyc') {
958
- var _updatedHeaders2 = _extends({}, config.headers);
966
+ var _updatedHeaders2 = _extends({}, config.headers, {
967
+ 'X-Source-Origin': 'houseofx.nyc'
968
+ });
959
969
 
960
970
  config.headers = _updatedHeaders2;
961
971
  }
@@ -1061,6 +1071,9 @@ var getConfirmationData = function getConfirmationData(orderHash) {
1061
1071
  var getStates = function getStates(countryId) {
1062
1072
  return publicRequest.get("/countries/" + countryId + "/states/");
1063
1073
  };
1074
+ var addToWaitingList = function addToWaitingList(id, data) {
1075
+ return publicRequest.post("/v1/event/" + id + "/add_to_waiting_list", data);
1076
+ };
1064
1077
 
1065
1078
  var style = {
1066
1079
  position: 'absolute',
@@ -1075,9 +1088,18 @@ var style = {
1075
1088
  var LoginModal = function LoginModal(_ref) {
1076
1089
  var onClose = _ref.onClose,
1077
1090
  onLogin = _ref.onLogin,
1078
- alreadyHasUser = _ref.alreadyHasUser,
1079
- userExpired = _ref.userExpired,
1080
- setUserExpired = _ref.setUserExpired;
1091
+ _ref$alreadyHasUser = _ref.alreadyHasUser,
1092
+ alreadyHasUser = _ref$alreadyHasUser === void 0 ? false : _ref$alreadyHasUser,
1093
+ _ref$userExpired = _ref.userExpired,
1094
+ userExpired = _ref$userExpired === void 0 ? false : _ref$userExpired,
1095
+ _ref$onAuthorizeSucce = _ref.onAuthorizeSuccess,
1096
+ onAuthorizeSuccess = _ref$onAuthorizeSucce === void 0 ? function () {} : _ref$onAuthorizeSucce,
1097
+ _ref$onAuthorizeError = _ref.onAuthorizeError,
1098
+ onAuthorizeError = _ref$onAuthorizeError === void 0 ? function () {} : _ref$onAuthorizeError,
1099
+ _ref$onGetProfileData = _ref.onGetProfileDataSuccess,
1100
+ onGetProfileDataSuccess = _ref$onGetProfileData === void 0 ? function () {} : _ref$onGetProfileData,
1101
+ _ref$onGetProfileData2 = _ref.onGetProfileDataError,
1102
+ onGetProfileDataError = _ref$onGetProfileData2 === void 0 ? function () {} : _ref$onGetProfileData2;
1081
1103
 
1082
1104
  var _useState = React.useState(''),
1083
1105
  error = _useState[0],
@@ -1097,7 +1119,7 @@ var LoginModal = function LoginModal(_ref) {
1097
1119
  },
1098
1120
  onSubmit: function () {
1099
1121
  var _onSubmit = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(_ref2) {
1100
- var email, password, bodyFormData, resAutorize, bodyFormDataToken, resAccessToken, accessToken, profileData, profileSpecifiedData, profileDataObj, _e$response, _e$response$data, _error;
1122
+ var email, password, bodyFormData, resAutorize, bodyFormDataToken, resAccessToken, accessToken, profileResponse, profileSpecifiedData, profileDataObj, _e$response, _e$response$data, _error;
1101
1123
 
1102
1124
  return runtime_1.wrap(function _callee$(_context) {
1103
1125
  while (1) {
@@ -1119,19 +1141,53 @@ var LoginModal = function LoginModal(_ref) {
1119
1141
  bodyFormDataToken.append('grant_type', 'authorization_code');
1120
1142
  bodyFormDataToken.append('client_id', ENV.CLIENT_ID );
1121
1143
  bodyFormDataToken.append('client_secret', ENV.CLIENT_SECRET );
1122
- _context.next = 16;
1144
+ resAccessToken = null;
1145
+ _context.prev = 15;
1146
+ _context.next = 18;
1123
1147
  return getAccessToken(bodyFormDataToken);
1124
1148
 
1125
- case 16:
1149
+ case 18:
1126
1150
  resAccessToken = _context.sent;
1151
+ onAuthorizeSuccess(resAccessToken.data);
1152
+ _context.next = 26;
1153
+ break;
1154
+
1155
+ case 22:
1156
+ _context.prev = 22;
1157
+ _context.t0 = _context["catch"](15);
1158
+
1159
+ if (axios.isAxiosError(_context.t0)) {
1160
+ onAuthorizeError(_context.t0);
1161
+ }
1162
+
1163
+ return _context.abrupt("return");
1164
+
1165
+ case 26:
1127
1166
  accessToken = _get(resAccessToken, 'data.access_token');
1128
1167
  handleSetAccessToken(accessToken);
1129
- _context.next = 21;
1168
+ profileResponse = null;
1169
+ _context.prev = 29;
1170
+ _context.next = 32;
1130
1171
  return getProfileData(accessToken);
1131
1172
 
1132
- case 21:
1133
- profileData = _context.sent;
1134
- profileSpecifiedData = _get(profileData, 'data.data');
1173
+ case 32:
1174
+ profileResponse = _context.sent;
1175
+ onGetProfileDataSuccess(profileResponse.data);
1176
+ _context.next = 40;
1177
+ break;
1178
+
1179
+ case 36:
1180
+ _context.prev = 36;
1181
+ _context.t1 = _context["catch"](29);
1182
+
1183
+ if (axios.isAxiosError(_context.t1)) {
1184
+ onGetProfileDataError(_context.t1);
1185
+ }
1186
+
1187
+ return _context.abrupt("return");
1188
+
1189
+ case 40:
1190
+ profileSpecifiedData = _get(profileResponse, 'data.data');
1135
1191
  profileDataObj = {
1136
1192
  id: profileSpecifiedData.id,
1137
1193
  first_name: profileSpecifiedData.firstName,
@@ -1144,28 +1200,27 @@ var LoginModal = function LoginModal(_ref) {
1144
1200
  window.localStorage.setItem('access_token', accessToken);
1145
1201
  }
1146
1202
 
1147
- setUserExpired(false);
1148
1203
  onLogin();
1149
- _context.next = 32;
1204
+ _context.next = 49;
1150
1205
  break;
1151
1206
 
1152
- case 29:
1153
- _context.prev = 29;
1154
- _context.t0 = _context["catch"](1);
1207
+ case 46:
1208
+ _context.prev = 46;
1209
+ _context.t2 = _context["catch"](1);
1155
1210
 
1156
- if (axios.isAxiosError(_context.t0)) {
1157
- _error = (_context.t0 == null ? void 0 : (_e$response = _context.t0.response) == null ? void 0 : (_e$response$data = _e$response.data) == null ? void 0 : _e$response$data.message) || 'Error';
1211
+ if (axios.isAxiosError(_context.t2)) {
1212
+ _error = (_context.t2 == null ? void 0 : (_e$response = _context.t2.response) == null ? void 0 : (_e$response$data = _e$response.data) == null ? void 0 : _e$response$data.message) || 'Error';
1158
1213
  setError(_error);
1159
- } else if (_context.t0 instanceof Error) {
1160
- setError((_context.t0 == null ? void 0 : _context.t0.message) || 'Error');
1214
+ } else if (_context.t2 instanceof Error) {
1215
+ setError((_context.t2 == null ? void 0 : _context.t2.message) || 'Error');
1161
1216
  }
1162
1217
 
1163
- case 32:
1218
+ case 49:
1164
1219
  case "end":
1165
1220
  return _context.stop();
1166
1221
  }
1167
1222
  }
1168
- }, _callee, null, [[1, 29]]);
1223
+ }, _callee, null, [[1, 46], [15, 22], [29, 36]]);
1169
1224
  }));
1170
1225
 
1171
1226
  function onSubmit(_x) {
@@ -1226,7 +1281,11 @@ var LoginModal = function LoginModal(_ref) {
1226
1281
  };
1227
1282
 
1228
1283
  var RegisterModal = function RegisterModal(_ref) {
1229
- var onClose = _ref.onClose;
1284
+ var onClose = _ref.onClose,
1285
+ _ref$onGetProfileData = _ref.onGetProfileDataSuccess,
1286
+ onGetProfileDataSuccess = _ref$onGetProfileData === void 0 ? function () {} : _ref$onGetProfileData,
1287
+ _ref$onGetProfileData2 = _ref.onGetProfileDataError,
1288
+ onGetProfileDataError = _ref$onGetProfileData2 === void 0 ? function () {} : _ref$onGetProfileData2;
1230
1289
  return React__default.createElement("div", {
1231
1290
  style: {
1232
1291
  display: 'flex',
@@ -1250,7 +1309,7 @@ var RegisterModal = function RegisterModal(_ref) {
1250
1309
  },
1251
1310
  onSubmit: function () {
1252
1311
  var _onSubmit = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(_ref2) {
1253
- var firstName, lastName, email, password, confirmPassword, bodyFormData, resRegister, access_token, profileData, profileSpecifiedData, profileDataObj;
1312
+ var firstName, lastName, email, password, confirmPassword, bodyFormData, resRegister, access_token, profileResponse, profileSpecifiedData, profileDataObj;
1254
1313
  return runtime_1.wrap(function _callee$(_context) {
1255
1314
  while (1) {
1256
1315
  switch (_context.prev = _context.next) {
@@ -1271,12 +1330,25 @@ var RegisterModal = function RegisterModal(_ref) {
1271
1330
  resRegister = _context.sent;
1272
1331
  access_token = _get(resRegister, 'data.data.attributes.access_token');
1273
1332
  handleSetAccessToken(access_token);
1274
- _context.next = 16;
1333
+ profileResponse = null;
1334
+ _context.prev = 15;
1335
+ _context.next = 18;
1275
1336
  return getProfileData(access_token);
1276
1337
 
1277
- case 16:
1278
- profileData = _context.sent;
1279
- profileSpecifiedData = _get(profileData, 'data.data');
1338
+ case 18:
1339
+ profileResponse = _context.sent;
1340
+ onGetProfileDataSuccess(profileResponse.data);
1341
+ _context.next = 26;
1342
+ break;
1343
+
1344
+ case 22:
1345
+ _context.prev = 22;
1346
+ _context.t0 = _context["catch"](15);
1347
+ onGetProfileDataError(_context.t0.response);
1348
+ return _context.abrupt("return");
1349
+
1350
+ case 26:
1351
+ profileSpecifiedData = _get(profileResponse, 'data.data');
1280
1352
  profileDataObj = {
1281
1353
  id: profileSpecifiedData.id,
1282
1354
  first_name: profileSpecifiedData.firstName,
@@ -1291,12 +1363,12 @@ var RegisterModal = function RegisterModal(_ref) {
1291
1363
 
1292
1364
  onClose();
1293
1365
 
1294
- case 21:
1366
+ case 30:
1295
1367
  case "end":
1296
1368
  return _context.stop();
1297
1369
  }
1298
1370
  }
1299
- }, _callee);
1371
+ }, _callee, null, [[15, 22]]);
1300
1372
  }));
1301
1373
 
1302
1374
  function onSubmit(_x) {
@@ -1400,8 +1472,8 @@ var RegisterModal = function RegisterModal(_ref) {
1400
1472
  }));
1401
1473
  };
1402
1474
 
1403
- var _excluded = ["holderAge", "firstName", "lastName", "confirmEmail", "confirmPassword", "holderFirstName", "holderLastName"];
1404
- var getInitialValues = function getInitialValues(data, propsInitialValues) {
1475
+ var _excluded = ["firstName", "lastName", "holderAge", "confirmEmail", "confirmPassword"];
1476
+ var getInitialValues = function getInitialValues(data, propsInitialValues, userValues) {
1405
1477
  if (data === void 0) {
1406
1478
  data = [];
1407
1479
  }
@@ -1410,6 +1482,10 @@ var getInitialValues = function getInitialValues(data, propsInitialValues) {
1410
1482
  propsInitialValues = {};
1411
1483
  }
1412
1484
 
1485
+ if (userValues === void 0) {
1486
+ userValues = {};
1487
+ }
1488
+
1413
1489
  var results = _flatMapDeep(data, function (_ref) {
1414
1490
  var fields = _ref.fields;
1415
1491
  return _map(fields, function (_ref2) {
@@ -1424,7 +1500,7 @@ var getInitialValues = function getInitialValues(data, propsInitialValues) {
1424
1500
  var initialValues = {};
1425
1501
 
1426
1502
  _forEach(results, function (item) {
1427
- initialValues[item] = propsInitialValues[item] || '';
1503
+ initialValues[item] = propsInitialValues[item] || userValues[item] || '';
1428
1504
  });
1429
1505
 
1430
1506
  return initialValues;
@@ -1458,7 +1534,7 @@ var setLoggedUserData = function setLoggedUserData(data) {
1458
1534
  zip: (data == null ? void 0 : data.zip) || (data == null ? void 0 : data.zipCode) || ''
1459
1535
  };
1460
1536
  };
1461
- var createCheckoutDataBody = function createCheckoutDataBody(values, logedInValues, includeDob) {
1537
+ var createCheckoutDataBody = function createCheckoutDataBody(ticketsQuantity, values, logedInValues, includeDob) {
1462
1538
  if (values === void 0) {
1463
1539
  values = {};
1464
1540
  }
@@ -1472,23 +1548,52 @@ var createCheckoutDataBody = function createCheckoutDataBody(values, logedInValu
1472
1548
  }
1473
1549
 
1474
1550
  var _values = values,
1475
- holderAge = _values.holderAge,
1476
1551
  firstName = _values.firstName,
1477
1552
  lastName = _values.lastName,
1478
- holderFirstName = _values.holderFirstName,
1479
- holderLastName = _values.holderLastName,
1553
+ holderAge = _values.holderAge,
1480
1554
  restValues = _objectWithoutPropertiesLoose(_values, _excluded);
1481
1555
 
1556
+ var holders = [];
1557
+ var ticket_holders = [];
1558
+
1559
+ var _loop = function _loop(i) {
1560
+ var individualHolder = Object.fromEntries(Object.entries(values).filter(function (_ref4) {
1561
+ var key = _ref4[0];
1562
+ return key.includes(String(i));
1563
+ }));
1564
+ holders.push(individualHolder);
1565
+ };
1566
+
1567
+ for (var i = 0; i <= ticketsQuantity; i++) {
1568
+ _loop(i);
1569
+ }
1570
+
1571
+ var filteredHolders = holders.filter(function (holder) {
1572
+ return Object.entries(holder).length > 0;
1573
+ });
1574
+ ticket_holders = filteredHolders.map(function (item, index) {
1575
+ return {
1576
+ first_name: item["holderFirstName-" + index] || '',
1577
+ last_name: item["holderLastName-" + index] || '',
1578
+ phone: item["holderPhone-" + index] || '',
1579
+ email: item["holderEmail-" + index] || ''
1580
+ };
1581
+ });
1582
+ var filteredRestValue = {};
1583
+
1584
+ _forEach(restValues, function (value, key) {
1585
+ if (!key.includes('holder')) {
1586
+ filteredRestValue[key] = value;
1587
+ }
1588
+ });
1589
+
1482
1590
  var body = {
1483
- attributes: _extends({}, restValues, {
1591
+ attributes: _extends({}, filteredRestValue, {
1484
1592
  email: restValues.email || logedInValues.emailLogged,
1485
1593
  confirm_email: restValues.email || logedInValues.emailLogged,
1486
1594
  first_name: firstName || logedInValues.firstNameLogged,
1487
1595
  last_name: lastName || logedInValues.lastNameLogged,
1488
- ticket_holders: [{
1489
- first_name: holderFirstName,
1490
- last_name: holderLastName
1491
- }]
1596
+ ticket_holders: ticket_holders
1492
1597
  })
1493
1598
  };
1494
1599
 
@@ -1502,6 +1607,13 @@ var createCheckoutDataBody = function createCheckoutDataBody(values, logedInValu
1502
1607
  return body;
1503
1608
  };
1504
1609
 
1610
+ var useStyles = /*#__PURE__*/styles.makeStyles({
1611
+ input: {
1612
+ "&::placeholder": {
1613
+ color: "gray"
1614
+ }
1615
+ }
1616
+ });
1505
1617
  var CustomField = function CustomField(_ref) {
1506
1618
  var label = _ref.label,
1507
1619
  _ref$type = _ref.type,
@@ -1518,6 +1630,7 @@ var CustomField = function CustomField(_ref) {
1518
1630
 
1519
1631
  var error = _get(errors, field.name);
1520
1632
 
1633
+ var classes = useStyles();
1521
1634
  return React__default.createElement(TextField, Object.assign({
1522
1635
  id: field.name,
1523
1636
  label: label,
@@ -1529,22 +1642,31 @@ var CustomField = function CustomField(_ref) {
1529
1642
  InputLabelProps: {
1530
1643
  shrink: isShrink
1531
1644
  },
1645
+ InputProps: {
1646
+ classes: {
1647
+ input: classes.input
1648
+ }
1649
+ },
1532
1650
  SelectProps: {
1533
1651
  "native": true
1534
1652
  }
1535
1653
  }, field), isSelectField ? _map(selectOptions, function (option) {
1536
1654
  return React__default.createElement("option", {
1537
1655
  key: option.value,
1538
- value: option.value
1656
+ value: option.value,
1657
+ disabled: option.disabled
1539
1658
  }, option.label);
1540
1659
  }) : null);
1541
1660
  };
1542
1661
 
1662
+ var _excluded$1 = ["label", "field"];
1543
1663
  var CheckboxField = function CheckboxField(_ref) {
1544
1664
  var label = _ref.label,
1545
- field = _ref.field;
1665
+ field = _ref.field,
1666
+ rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
1667
+
1546
1668
  return React__default.createElement(FormGroup, null, React__default.createElement(FormControlLabel, {
1547
- control: React__default.createElement(Checkbox, Object.assign({}, field)),
1669
+ control: React__default.createElement(Checkbox, Object.assign({}, field, rest)),
1548
1670
  label: label
1549
1671
  }));
1550
1672
  };
@@ -1571,7 +1693,9 @@ var LogicRunner = function LogicRunner(_ref) {
1571
1693
  setStates = _ref.setStates,
1572
1694
  setFieldValue = _ref.setFieldValue,
1573
1695
  setValues = _ref.setValues,
1574
- setUserValues = _ref.setUserValues;
1696
+ setUserValues = _ref.setUserValues,
1697
+ onGetStatesSuccess = _ref.onGetStatesSuccess,
1698
+ onGetStatesError = _ref.onGetStatesError;
1575
1699
  React.useEffect(function () {
1576
1700
  var fetchStates = /*#__PURE__*/function () {
1577
1701
  var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
@@ -1595,19 +1719,24 @@ var LogicRunner = function LogicRunner(_ref) {
1595
1719
  });
1596
1720
  setStates(mappedStates);
1597
1721
  setFieldValue('state', (_mappedStates$0$label = (_mappedStates$ = mappedStates[0]) == null ? void 0 : _mappedStates$.label) != null ? _mappedStates$0$label : '');
1598
- _context.next = 11;
1722
+ onGetStatesSuccess(res.data);
1723
+ _context.next = 13;
1599
1724
  break;
1600
1725
 
1601
- case 9:
1602
- _context.prev = 9;
1726
+ case 10:
1727
+ _context.prev = 10;
1603
1728
  _context.t0 = _context["catch"](0);
1604
1729
 
1605
- case 11:
1730
+ if (axios.isAxiosError(_context.t0)) {
1731
+ onGetStatesError(_context.t0);
1732
+ }
1733
+
1734
+ case 13:
1606
1735
  case "end":
1607
1736
  return _context.stop();
1608
1737
  }
1609
1738
  }
1610
- }, _callee, null, [[0, 9]]);
1739
+ }, _callee, null, [[0, 10]]);
1611
1740
  }));
1612
1741
 
1613
1742
  return function fetchStates() {
@@ -1631,9 +1760,6 @@ var LogicRunner = function LogicRunner(_ref) {
1631
1760
  email: (parsedData == null ? void 0 : parsedData.email) || '',
1632
1761
  phone: (parsedData == null ? void 0 : parsedData.phone) || '',
1633
1762
  confirmEmail: '',
1634
- holderFirstName: '',
1635
- holderLastName: '',
1636
- holderAge: '',
1637
1763
  state: (parsedData == null ? void 0 : parsedData.state) || '',
1638
1764
  street_address: (parsedData == null ? void 0 : parsedData.street_address) || '',
1639
1765
  country: (parsedData == null ? void 0 : parsedData.country) || 1,
@@ -1645,9 +1771,7 @@ var LogicRunner = function LogicRunner(_ref) {
1645
1771
  };
1646
1772
  setValues(mappedValues);
1647
1773
  setUserValues(mappedValues);
1648
- } catch (e) {
1649
- console.log(e);
1650
- }
1774
+ } catch (e) {}
1651
1775
  }
1652
1776
  }
1653
1777
  };
@@ -1665,6 +1789,11 @@ var SectionContainer = function SectionContainer(_ref3) {
1665
1789
  var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1666
1790
  var _ref4$data = _ref4.data,
1667
1791
  data = _ref4$data === void 0 ? [] : _ref4$data,
1792
+ _ref4$ticketHoldersFi = _ref4.ticketHoldersFields,
1793
+ ticketHoldersFields = _ref4$ticketHoldersFi === void 0 ? {
1794
+ id: 1,
1795
+ fields: []
1796
+ } : _ref4$ticketHoldersFi,
1668
1797
  _ref4$initialValues = _ref4.initialValues,
1669
1798
  initialValues = _ref4$initialValues === void 0 ? {} : _ref4$initialValues,
1670
1799
  _ref4$buttonName = _ref4.buttonName,
@@ -1672,7 +1801,35 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1672
1801
  _ref4$handleSubmit = _ref4.handleSubmit,
1673
1802
  handleSubmit = _ref4$handleSubmit === void 0 ? _identity : _ref4$handleSubmit,
1674
1803
  _ref4$theme = _ref4.theme,
1675
- theme = _ref4$theme === void 0 ? 'light' : _ref4$theme;
1804
+ theme = _ref4$theme === void 0 ? 'light' : _ref4$theme,
1805
+ _ref4$onRegisterSucce = _ref4.onRegisterSuccess,
1806
+ onRegisterSuccess = _ref4$onRegisterSucce === void 0 ? function () {} : _ref4$onRegisterSucce,
1807
+ _ref4$onRegisterError = _ref4.onRegisterError,
1808
+ onRegisterError = _ref4$onRegisterError === void 0 ? function () {} : _ref4$onRegisterError,
1809
+ _ref4$onSubmitError = _ref4.onSubmitError,
1810
+ onSubmitError = _ref4$onSubmitError === void 0 ? function () {} : _ref4$onSubmitError,
1811
+ _ref4$onGetCartSucces = _ref4.onGetCartSuccess,
1812
+ onGetCartSuccess = _ref4$onGetCartSucces === void 0 ? function () {} : _ref4$onGetCartSucces,
1813
+ _ref4$onGetCartError = _ref4.onGetCartError,
1814
+ onGetCartError = _ref4$onGetCartError === void 0 ? function () {} : _ref4$onGetCartError,
1815
+ _ref4$onGetCountriesS = _ref4.onGetCountriesSuccess,
1816
+ onGetCountriesSuccess = _ref4$onGetCountriesS === void 0 ? function () {} : _ref4$onGetCountriesS,
1817
+ _ref4$onGetCountriesE = _ref4.onGetCountriesError,
1818
+ onGetCountriesError = _ref4$onGetCountriesE === void 0 ? function () {} : _ref4$onGetCountriesE,
1819
+ _ref4$onGetStatesSucc = _ref4.onGetStatesSuccess,
1820
+ onGetStatesSuccess = _ref4$onGetStatesSucc === void 0 ? function () {} : _ref4$onGetStatesSucc,
1821
+ _ref4$onGetStatesErro = _ref4.onGetStatesError,
1822
+ onGetStatesError = _ref4$onGetStatesErro === void 0 ? function () {} : _ref4$onGetStatesErro,
1823
+ _ref4$onGetProfileDat = _ref4.onGetProfileDataSuccess,
1824
+ onGetProfileDataSuccess = _ref4$onGetProfileDat === void 0 ? function () {} : _ref4$onGetProfileDat,
1825
+ _ref4$onGetProfileDat2 = _ref4.onGetProfileDataError,
1826
+ onGetProfileDataError = _ref4$onGetProfileDat2 === void 0 ? function () {} : _ref4$onGetProfileDat2,
1827
+ _ref4$onAuthorizeSucc = _ref4.onAuthorizeSuccess,
1828
+ onAuthorizeSuccess = _ref4$onAuthorizeSucc === void 0 ? function () {} : _ref4$onAuthorizeSucc,
1829
+ _ref4$onAuthorizeErro = _ref4.onAuthorizeError,
1830
+ onAuthorizeError = _ref4$onAuthorizeErro === void 0 ? function () {} : _ref4$onAuthorizeErro,
1831
+ _ref4$onLogin = _ref4.onLogin,
1832
+ onLogin = _ref4$onLogin === void 0 ? function () {} : _ref4$onLogin;
1676
1833
  var userData = typeof window !== 'undefined' && window.localStorage.getItem('user_data') ? JSON.parse(window.localStorage.getItem('user_data') || '') : {};
1677
1834
  var access_token = typeof window !== 'undefined' && window.localStorage.getItem('access_token') ? window.localStorage.getItem('access_token') || '' : '';
1678
1835
 
@@ -1704,7 +1861,11 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1704
1861
  showModalRegister = _useState7[0],
1705
1862
  setShowModalRegister = _useState7[1];
1706
1863
 
1707
- var _useState8 = React.useState({
1864
+ var _useState8 = React.useState(1),
1865
+ ticketsQuantity = _useState8[0],
1866
+ setTicketsQuantity = _useState8[1];
1867
+
1868
+ var _useState9 = React.useState({
1708
1869
  firstName: '',
1709
1870
  lastName: '',
1710
1871
  email: '',
@@ -1719,8 +1880,8 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1719
1880
  state: '',
1720
1881
  zip: ''
1721
1882
  }),
1722
- userValues = _useState8[0],
1723
- setUserValues = _useState8[1];
1883
+ userValues = _useState9[0],
1884
+ setUserValues = _useState9[1];
1724
1885
 
1725
1886
  var isLoggedIn = !!access_token;
1726
1887
 
@@ -1733,12 +1894,25 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1733
1894
  var showDOB = getQueryVariable('age_required') === 'true';
1734
1895
  var showTicketHolderName = getQueryVariable('names_required') === 'true';
1735
1896
 
1736
- var optedInFieldValue = _get(cartInfoData, 'optedIn', false); // fetch cart data
1897
+ var optedInFieldValue = _get(cartInfoData, 'optedIn', false);
1898
+
1899
+ var getQuantity = function getQuantity(cart) {
1900
+ if (cart === void 0) {
1901
+ cart = [];
1902
+ }
1903
+
1904
+ var qty = 0;
1905
+ cart.forEach(function (item) {
1906
+ qty += +item.quantity;
1907
+ });
1908
+ return qty;
1909
+ }; // fetch cart data
1737
1910
 
1738
1911
 
1739
1912
  var fetchCart = /*#__PURE__*/function () {
1740
1913
  var _ref5 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee2() {
1741
- var res;
1914
+ var res, cartInfo, _cartInfo$cart, cart;
1915
+
1742
1916
  return runtime_1.wrap(function _callee2$(_context2) {
1743
1917
  while (1) {
1744
1918
  switch (_context2.prev = _context2.next) {
@@ -1750,20 +1924,28 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1750
1924
  case 3:
1751
1925
  res = _context2.sent;
1752
1926
  setCustomHeader(res);
1753
- setCartInfo(_get(res, 'data.data.attributes'));
1754
- _context2.next = 10;
1927
+ cartInfo = _get(res, 'data.data.attributes');
1928
+ setCartInfo(cartInfo);
1929
+ _cartInfo$cart = cartInfo.cart, cart = _cartInfo$cart === void 0 ? [] : _cartInfo$cart;
1930
+ setTicketsQuantity(getQuantity(cart));
1931
+ onGetCartSuccess(res.data);
1932
+ _context2.next = 15;
1755
1933
  break;
1756
1934
 
1757
- case 8:
1758
- _context2.prev = 8;
1935
+ case 12:
1936
+ _context2.prev = 12;
1759
1937
  _context2.t0 = _context2["catch"](0);
1760
1938
 
1761
- case 10:
1939
+ if (axios.isAxiosError(_context2.t0)) {
1940
+ onGetCartError(_context2.t0);
1941
+ }
1942
+
1943
+ case 15:
1762
1944
  case "end":
1763
1945
  return _context2.stop();
1764
1946
  }
1765
1947
  }
1766
- }, _callee2, null, [[0, 8]]);
1948
+ }, _callee2, null, [[0, 12]]);
1767
1949
  }));
1768
1950
 
1769
1951
  return function fetchCart() {
@@ -1782,7 +1964,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1782
1964
  _context3.prev = 0;
1783
1965
 
1784
1966
  if (!(typeof window !== 'undefined' && token)) {
1785
- _context3.next = 9;
1967
+ _context3.next = 10;
1786
1968
  break;
1787
1969
  }
1788
1970
 
@@ -1795,21 +1977,26 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1795
1977
  profileDataObj = setLoggedUserData(profileSpecifiedData);
1796
1978
  setUserValues(profileDataObj);
1797
1979
  window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
1980
+ onGetProfileDataSuccess(userDataResponse.data);
1798
1981
 
1799
- case 9:
1800
- _context3.next = 13;
1982
+ case 10:
1983
+ _context3.next = 15;
1801
1984
  break;
1802
1985
 
1803
- case 11:
1804
- _context3.prev = 11;
1986
+ case 12:
1987
+ _context3.prev = 12;
1805
1988
  _context3.t0 = _context3["catch"](0);
1806
1989
 
1807
- case 13:
1990
+ if (axios.isAxiosError(_context3.t0)) {
1991
+ onGetProfileDataError(_context3.t0);
1992
+ }
1993
+
1994
+ case 15:
1808
1995
  case "end":
1809
1996
  return _context3.stop();
1810
1997
  }
1811
1998
  }
1812
- }, _callee3, null, [[0, 11]]);
1999
+ }, _callee3, null, [[0, 12]]);
1813
2000
  }));
1814
2001
 
1815
2002
  return function fetchUserData(_x) {
@@ -1828,10 +2015,11 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1828
2015
  while (1) {
1829
2016
  switch (_context4.prev = _context4.next) {
1830
2017
  case 0:
1831
- _context4.next = 2;
2018
+ _context4.prev = 0;
2019
+ _context4.next = 3;
1832
2020
  return getCountries();
1833
2021
 
1834
- case 2:
2022
+ case 3:
1835
2023
  res = _context4.sent;
1836
2024
  setCustomHeader(res);
1837
2025
  setCountries(_map(_get(res, 'data.data'), function (item, key) {
@@ -1840,13 +2028,24 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1840
2028
  value: Number(key)
1841
2029
  };
1842
2030
  }));
2031
+ onGetCountriesSuccess(res.data);
2032
+ _context4.next = 12;
2033
+ break;
1843
2034
 
1844
- case 5:
2035
+ case 9:
2036
+ _context4.prev = 9;
2037
+ _context4.t0 = _context4["catch"](0);
2038
+
2039
+ if (axios.isAxiosError(_context4.t0)) {
2040
+ onGetCountriesError(_context4.t0);
2041
+ }
2042
+
2043
+ case 12:
1845
2044
  case "end":
1846
2045
  return _context4.stop();
1847
2046
  }
1848
2047
  }
1849
- }, _callee4);
2048
+ }, _callee4, null, [[0, 9]]);
1850
2049
  }));
1851
2050
 
1852
2051
  return function fetchCountries() {
@@ -1865,11 +2064,11 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1865
2064
  lastName: lastNameLogged,
1866
2065
  country: 1,
1867
2066
  brand_opt_in: optedInFieldValue
1868
- })),
2067
+ }), userValues),
1869
2068
  enableReinitialize: true,
1870
2069
  onSubmit: function () {
1871
2070
  var _onSubmit = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee5(values, formikHelpers) {
1872
- var updatedUserData, _profileSpecifiedData, _profileDataObj, _checkoutBody, _res, bodyFormData, resRegister, access_token_register, profileData, profileSpecifiedData, profileDataObj, checkoutBody, res, _e$response, _e$response$data, _e$response2, error;
2071
+ var updatedUserData, _profileSpecifiedData, _profileDataObj, _checkoutBody, _res, bodyFormData, access_token_register, resRegister, refreshToken, tokens, _e$response, _e$response$data, error, profileData, profileSpecifiedData, profileDataObj, checkoutBody, res, _e$response2;
1873
2072
 
1874
2073
  return runtime_1.wrap(function _callee5$(_context5) {
1875
2074
  while (1) {
@@ -1900,7 +2099,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1900
2099
  }
1901
2100
 
1902
2101
  case 9:
1903
- _checkoutBody = createCheckoutDataBody(values, {
2102
+ _checkoutBody = createCheckoutDataBody(ticketsQuantity, values, {
1904
2103
  emailLogged: emailLogged,
1905
2104
  firstNameLogged: firstNameLogged,
1906
2105
  lastNameLogged: lastNameLogged
@@ -1915,17 +2114,55 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1915
2114
 
1916
2115
  case 15:
1917
2116
  bodyFormData = createRegisterFormData(values);
1918
- _context5.next = 18;
2117
+ access_token_register = null;
2118
+ _context5.prev = 17;
2119
+ _context5.next = 20;
1919
2120
  return register(bodyFormData);
1920
2121
 
1921
- case 18:
2122
+ case 20:
1922
2123
  resRegister = _context5.sent;
1923
2124
  access_token_register = _get(resRegister, 'data.data.attributes.access_token');
2125
+ refreshToken = _get(resRegister, 'data.data.attributes.refresh_token');
1924
2126
  handleSetAccessToken(access_token_register);
1925
- _context5.next = 23;
2127
+ tokens = {
2128
+ accessToken: access_token_register,
2129
+ refreshToken: refreshToken
2130
+ };
2131
+ onRegisterSuccess(tokens);
2132
+ _context5.next = 32;
2133
+ break;
2134
+
2135
+ case 28:
2136
+ _context5.prev = 28;
2137
+ _context5.t0 = _context5["catch"](17);
2138
+
2139
+ if (axios.isAxiosError(_context5.t0)) {
2140
+ error = _context5.t0 == null ? void 0 : (_e$response = _context5.t0.response) == null ? void 0 : (_e$response$data = _e$response.data) == null ? void 0 : _e$response$data.message;
2141
+
2142
+ if (_includes(error, 'You must be aged')) {
2143
+ formikHelpers.setFieldError('holderAge', error);
2144
+ }
2145
+
2146
+ if (error != null && error.password) {
2147
+ formikHelpers.setFieldError('password', error.password);
2148
+ formikHelpers.setFieldError('confirmPassword', error.password);
2149
+ }
2150
+
2151
+ if (error != null && error.email) {
2152
+ setAlreadyHasUser(true);
2153
+ setShowModalLogin(true);
2154
+ }
2155
+
2156
+ onRegisterError(_context5.t0);
2157
+ }
2158
+
2159
+ return _context5.abrupt("return");
2160
+
2161
+ case 32:
2162
+ _context5.next = 34;
1926
2163
  return getProfileData(access_token_register);
1927
2164
 
1928
- case 23:
2165
+ case 34:
1929
2166
  profileData = _context5.sent;
1930
2167
  profileSpecifiedData = _get(profileData, 'data.data');
1931
2168
  profileDataObj = setLoggedUserData(profileSpecifiedData);
@@ -1934,42 +2171,26 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1934
2171
  window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
1935
2172
  }
1936
2173
 
1937
- checkoutBody = createCheckoutDataBody(values, {
2174
+ checkoutBody = createCheckoutDataBody(ticketsQuantity, values, {
1938
2175
  emailLogged: emailLogged,
1939
2176
  firstNameLogged: firstNameLogged,
1940
2177
  lastNameLogged: lastNameLogged
1941
2178
  }, showDOB);
1942
- _context5.next = 30;
2179
+ _context5.next = 41;
1943
2180
  return postOnCheckout(checkoutBody, access_token_register);
1944
2181
 
1945
- case 30:
2182
+ case 41:
1946
2183
  res = _context5.sent;
1947
2184
  handleSubmit(values, formikHelpers, res);
1948
- _context5.next = 37;
2185
+ _context5.next = 48;
1949
2186
  break;
1950
2187
 
1951
- case 34:
1952
- _context5.prev = 34;
1953
- _context5.t0 = _context5["catch"](0);
1954
-
1955
- if (axios.isAxiosError(_context5.t0)) {
1956
- error = _context5.t0 == null ? void 0 : (_e$response = _context5.t0.response) == null ? void 0 : (_e$response$data = _e$response.data) == null ? void 0 : _e$response$data.message;
1957
-
1958
- if (_includes(error, 'You must be aged')) {
1959
- formikHelpers.setFieldError('holderAge', error);
1960
- }
1961
-
1962
- if (error != null && error.password) {
1963
- formikHelpers.setFieldError('password', error.password);
1964
- formikHelpers.setFieldError('confirmPassword', error.password);
1965
- }
1966
-
1967
- if (error != null && error.email) {
1968
- setAlreadyHasUser(true);
1969
- setShowModalLogin(true);
1970
- }
2188
+ case 45:
2189
+ _context5.prev = 45;
2190
+ _context5.t1 = _context5["catch"](0);
1971
2191
 
1972
- if (((_e$response2 = _context5.t0.response) == null ? void 0 : _e$response2.data.error) === 'invalid_token') {
2192
+ if (axios.isAxiosError(_context5.t1)) {
2193
+ if (((_e$response2 = _context5.t1.response) == null ? void 0 : _e$response2.data.error) === 'invalid_token') {
1973
2194
  if (typeof window !== 'undefined') {
1974
2195
  window.localStorage.removeItem('user_data');
1975
2196
  window.localStorage.removeItem('access_token');
@@ -1977,14 +2198,16 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
1977
2198
  setShowModalLogin(true);
1978
2199
  }
1979
2200
  }
2201
+
2202
+ onSubmitError(_context5.t1);
1980
2203
  }
1981
2204
 
1982
- case 37:
2205
+ case 48:
1983
2206
  case "end":
1984
2207
  return _context5.stop();
1985
2208
  }
1986
2209
  }
1987
- }, _callee5, null, [[0, 34]]);
2210
+ }, _callee5, null, [[0, 45], [17, 28]]);
1988
2211
  }));
1989
2212
 
1990
2213
  function onSubmit(_x2, _x3) {
@@ -2001,7 +2224,9 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
2001
2224
  setStates: setStates,
2002
2225
  setFieldValue: props.setFieldValue,
2003
2226
  setValues: props.setValues,
2004
- setUserValues: setUserValues
2227
+ setUserValues: setUserValues,
2228
+ onGetStatesSuccess: onGetStatesSuccess,
2229
+ onGetStatesError: onGetStatesError
2005
2230
  }), React__default.createElement("div", {
2006
2231
  className: "billing-info-container " + theme
2007
2232
  }, !isLoggedIn && React__default.createElement("div", {
@@ -2012,6 +2237,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
2012
2237
  className: "login-register-button",
2013
2238
  type: "button",
2014
2239
  onClick: function onClick() {
2240
+ onLogin();
2015
2241
  setShowModalLogin(true);
2016
2242
  }
2017
2243
  }, "Login"))), _map(data, function (item) {
@@ -2028,13 +2254,13 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
2028
2254
  key: id
2029
2255
  }, React__default.createElement("p", {
2030
2256
  className: labelClassName
2031
- }, label), _map(fields, function (group, index) {
2257
+ }, label), _map(fields, function (group) {
2032
2258
  var groupClassname = group.groupClassname,
2033
2259
  groupItems = group.groupItems,
2034
2260
  groupLabel = group.groupLabel,
2035
2261
  groupLabelClassName = group.groupLabelClassName;
2036
- return React__default.createElement("div", {
2037
- key: index
2262
+ return React__default.createElement(SectionContainer, {
2263
+ key: group.id
2038
2264
  }, !isLoggedIn && React__default.createElement("div", {
2039
2265
  className: groupLabelClassName
2040
2266
  }, groupLabel), React__default.createElement("div", {
@@ -2067,16 +2293,43 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
2067
2293
  }));
2068
2294
  })));
2069
2295
  }));
2070
- }), React__default.createElement("div", {
2071
- style: {
2072
- display: 'flex',
2073
- padding: 20,
2074
- justifyContent: 'center'
2075
- }
2076
- }, React__default.createElement(Button, {
2296
+ }), showTicketHolderName && React__default.createElement("div", null, React__default.createElement("p", null, ticketHoldersFields.label), _map(new Array(ticketsQuantity), function (_item, index) {
2297
+ return React__default.createElement("div", {
2298
+ key: index
2299
+ }, React__default.createElement("h5", null, "Ticket ", index + 1), _map(ticketHoldersFields.fields, function (group) {
2300
+ var groupClassname = group.groupClassname,
2301
+ groupItems = group.groupItems;
2302
+ return React__default.createElement("div", {
2303
+ key: group.id
2304
+ }, React__default.createElement("div", {
2305
+ className: groupClassname
2306
+ }, _map(groupItems, function (element) {
2307
+ return React__default.createElement("div", {
2308
+ className: element.className,
2309
+ key: element.name + "-" + index
2310
+ }, React__default.createElement(formik.Field, {
2311
+ name: element.name + "-" + index,
2312
+ key: element.name + "-" + index,
2313
+ label: element.label,
2314
+ type: element.type,
2315
+ required: true,
2316
+ component: element.type === 'checkbox' ? CheckboxField : CustomField,
2317
+ validate: combineValidators(element.required ? requiredValidator : function () {}, element.onValidate ? element.onValidate : function () {})
2318
+ }));
2319
+ })));
2320
+ }));
2321
+ })), React__default.createElement("div", {
2322
+ className: "button-container"
2323
+ }, React__default.createElement(LoadingButton, {
2077
2324
  type: "submit",
2078
2325
  variant: "contained",
2079
- className: "login-register-button"
2326
+ className: "login-register-button",
2327
+ loadingIndicator: React__default.createElement(material.CircularProgress, {
2328
+ color: "inherit",
2329
+ size: 26
2330
+ }),
2331
+ loading: props.isSubmitting,
2332
+ disabled: props.isSubmitting
2080
2333
  }, buttonName))));
2081
2334
  }), showModalLogin && React__default.createElement(LoginModal, {
2082
2335
  onClose: function onClose() {
@@ -2084,17 +2337,23 @@ var BillingInfoContainer = function BillingInfoContainer(_ref4) {
2084
2337
  },
2085
2338
  onLogin: function onLogin() {
2086
2339
  setShowModalLogin(false);
2340
+ setUserExpired(false);
2087
2341
  },
2088
2342
  alreadyHasUser: alreadyHasUser,
2089
2343
  userExpired: userExpired,
2090
- setUserExpired: setUserExpired
2344
+ onAuthorizeSuccess: onAuthorizeSuccess,
2345
+ onAuthorizeError: onAuthorizeError,
2346
+ onGetProfileDataSuccess: onGetProfileDataSuccess,
2347
+ onGetProfileDataError: onGetProfileDataError
2091
2348
  }), showModalRegister && React__default.createElement(RegisterModal, {
2092
2349
  onClose: function onClose() {
2093
2350
  setShowModalRegister(false);
2094
2351
  },
2095
2352
  onRegister: function onRegister() {
2096
2353
  setShowModalRegister(false);
2097
- }
2354
+ },
2355
+ onGetProfileDataSuccess: onGetProfileDataSuccess,
2356
+ onGetProfileDataError: onGetProfileDataError
2098
2357
  }));
2099
2358
  };
2100
2359
 
@@ -2401,7 +2660,13 @@ var PaymentContainer = function PaymentContainer(_ref) {
2401
2660
  errorText = _ref.errorText,
2402
2661
  checkoutData = _ref.checkoutData,
2403
2662
  _ref$onErrorClose = _ref.onErrorClose,
2404
- onErrorClose = _ref$onErrorClose === void 0 ? _identity : _ref$onErrorClose;
2663
+ onErrorClose = _ref$onErrorClose === void 0 ? _identity : _ref$onErrorClose,
2664
+ _ref$onGetPaymentData = _ref.onGetPaymentDataSuccess,
2665
+ onGetPaymentDataSuccess = _ref$onGetPaymentData === void 0 ? function () {} : _ref$onGetPaymentData,
2666
+ _ref$onGetPaymentData2 = _ref.onGetPaymentDataError,
2667
+ onGetPaymentDataError = _ref$onGetPaymentData2 === void 0 ? function () {} : _ref$onGetPaymentData2,
2668
+ _ref$onPaymentError = _ref.onPaymentError,
2669
+ onPaymentError = _ref$onPaymentError === void 0 ? function () {} : _ref$onPaymentError;
2405
2670
 
2406
2671
  var _useState = React.useState(initialReviewValues),
2407
2672
  reviewData = _useState[0],
@@ -2452,17 +2717,19 @@ var PaymentContainer = function PaymentContainer(_ref) {
2452
2717
  currency: order_details == null ? void 0 : order_details.currency
2453
2718
  };
2454
2719
  setOrderData(_orderData);
2720
+ onGetPaymentDataSuccess(response.data);
2455
2721
  }
2456
2722
 
2457
- _context.next = 10;
2723
+ _context.next = 11;
2458
2724
  break;
2459
2725
 
2460
2726
  case 7:
2461
2727
  _context.prev = 7;
2462
2728
  _context.t0 = _context["catch"](0);
2463
2729
  setError(_get(_context.t0, 'response.data.message'));
2730
+ onGetPaymentDataError(_context.t0.response);
2464
2731
 
2465
- case 10:
2732
+ case 11:
2466
2733
  case "end":
2467
2734
  return _context.stop();
2468
2735
  }
@@ -2503,15 +2770,16 @@ var PaymentContainer = function PaymentContainer(_ref) {
2503
2770
  setPaymentIsLoading(false);
2504
2771
  }
2505
2772
 
2506
- _context2.next = 14;
2773
+ _context2.next = 15;
2507
2774
  break;
2508
2775
 
2509
2776
  case 11:
2510
2777
  _context2.prev = 11;
2511
2778
  _context2.t0 = _context2["catch"](0);
2512
2779
  setError(_get(_context2.t0, 'response.data.message'));
2780
+ onPaymentError(_context2.t0.response);
2513
2781
 
2514
- case 14:
2782
+ case 15:
2515
2783
  case "end":
2516
2784
  return _context2.stop();
2517
2785
  }
@@ -2580,7 +2848,11 @@ var ConfirmationContainer = function ConfirmationContainer(_ref) {
2580
2848
  _ref$shareButtons = _ref.shareButtons,
2581
2849
  shareButtons = _ref$shareButtons === void 0 ? [] : _ref$shareButtons,
2582
2850
  _ref$shareLink = _ref.shareLink,
2583
- shareLink = _ref$shareLink === void 0 ? '' : _ref$shareLink;
2851
+ shareLink = _ref$shareLink === void 0 ? '' : _ref$shareLink,
2852
+ _ref$onGetConfirmatio = _ref.onGetConfirmationDataSuccess,
2853
+ onGetConfirmationDataSuccess = _ref$onGetConfirmatio === void 0 ? function () {} : _ref$onGetConfirmatio,
2854
+ _ref$onGetConfirmatio2 = _ref.onGetConfirmationDataError,
2855
+ onGetConfirmationDataError = _ref$onGetConfirmatio2 === void 0 ? function () {} : _ref$onGetConfirmatio2;
2584
2856
  var inputRef = React.useRef(null);
2585
2857
 
2586
2858
  var _useState = React.useState({}),
@@ -2601,7 +2873,7 @@ var ConfirmationContainer = function ConfirmationContainer(_ref) {
2601
2873
  dataEncoded = typeof window !== 'undefined' && window.localStorage.getItem('checkoutData');
2602
2874
 
2603
2875
  if (!dataEncoded) {
2604
- _context.next = 14;
2876
+ _context.next = 16;
2605
2877
  break;
2606
2878
  }
2607
2879
 
@@ -2615,21 +2887,23 @@ var ConfirmationContainer = function ConfirmationContainer(_ref) {
2615
2887
  response = _context.sent;
2616
2888
  _data = _get(response, 'data.data.attributes');
2617
2889
  setData(_data);
2618
- _context.next = 14;
2890
+ onGetConfirmationDataSuccess(response.data);
2891
+ _context.next = 16;
2619
2892
  break;
2620
2893
 
2621
- case 12:
2622
- _context.prev = 12;
2894
+ case 13:
2895
+ _context.prev = 13;
2623
2896
  _context.t0 = _context["catch"](4);
2897
+ onGetConfirmationDataError(_context.t0.response);
2624
2898
 
2625
- case 14:
2899
+ case 16:
2626
2900
  case "end":
2627
2901
  return _context.stop();
2628
2902
  }
2629
2903
  }
2630
- }, _callee, null, [[4, 12]]);
2904
+ }, _callee, null, [[4, 13]]);
2631
2905
  }))();
2632
- }, []);
2906
+ }, [onGetConfirmationDataSuccess, onGetConfirmationDataError]);
2633
2907
  return React__default.createElement("div", {
2634
2908
  className: "confirmation-page"
2635
2909
  }, React__default.createElement("p", {
@@ -2759,10 +3033,14 @@ var getTicketSelectOptions = function getTicketSelectOptions(maxCount, minCount,
2759
3033
  return options;
2760
3034
  };
2761
3035
 
2762
- var computeTierStateLabel = function computeTierStateLabel(tier, prevTier, selectedTickets, handleTicketSelect) {
2763
- var soldOutMessage = tier.soldOutMessage ? ("" + tier.soldOutMessage).toUpperCase() : 'SOLD OUT';
2764
- var isSalesClosed = !tier.salesStarted || tier.salesEnded || !_has(tier, 'maxQuantity') || tier.maxQuantity === 0;
2765
- var options = getTicketSelectOptions(tier.maxQuantity, tier.minQuantity, tier.multiplier);
3036
+ var TicketRow = function TicketRow(_ref) {
3037
+ var ticketTier = _ref.ticketTier,
3038
+ prevTicketTier = _ref.prevTicketTier,
3039
+ selectedTickets = _ref.selectedTickets,
3040
+ handleTicketSelect = _ref.handleTicketSelect;
3041
+ var soldOutMessage = ticketTier.soldOutMessage ? ("" + ticketTier.soldOutMessage).toUpperCase() : 'SOLD OUT';
3042
+ var isSalesClosed = !ticketTier.salesStarted || ticketTier.salesEnded || !_has(ticketTier, 'maxQuantity') || ticketTier.maxQuantity === 0;
3043
+ var options = getTicketSelectOptions(ticketTier.maxQuantity, ticketTier.minQuantity, ticketTier.multiplier);
2766
3044
  var onSaleContent = isSalesClosed ? null : React__default.createElement("div", {
2767
3045
  className: "get-tickets"
2768
3046
  }, React__default.createElement(Box, {
@@ -2770,7 +3048,7 @@ var computeTierStateLabel = function computeTierStateLabel(tier, prevTier, selec
2770
3048
  }, React__default.createElement(FormControl, {
2771
3049
  fullWidth: true
2772
3050
  }, React__default.createElement(Select, {
2773
- value: selectedTickets[tier.id] ? selectedTickets[tier.id] : 0,
3051
+ value: selectedTickets[ticketTier.id] ? selectedTickets[ticketTier.id] : 0,
2774
3052
  onChange: handleTicketSelect,
2775
3053
  displayEmpty: true,
2776
3054
  inputProps: {
@@ -2790,51 +3068,234 @@ var computeTierStateLabel = function computeTierStateLabel(tier, prevTier, selec
2790
3068
  value: option.value
2791
3069
  }, option.value);
2792
3070
  })))));
2793
- if (tier.sold_out || !tier.displayTicket || tier.soldOut) return soldOutMessage;
2794
- if (!+tier.cost && !+tier.price) return 'FREE';
2795
- if (tier.displayTicket) return onSaleContent;
2796
- if (prevTier.in_stock) return 'SOON';
2797
- return '';
3071
+ var returnValue = '';
3072
+
3073
+ if (ticketTier.sold_out || !ticketTier.displayTicket || ticketTier.soldOut) {
3074
+ returnValue = soldOutMessage;
3075
+ }
3076
+
3077
+ if (!+ticketTier.cost && !+ticketTier.price) {
3078
+ returnValue = 'FREE';
3079
+ }
3080
+
3081
+ if (ticketTier.displayTicket) {
3082
+ returnValue = onSaleContent;
3083
+ }
3084
+
3085
+ if (_get(prevTicketTier, 'in_stock')) {
3086
+ returnValue = 'SOON';
3087
+ }
3088
+
3089
+ return React__default.createElement(React__default.Fragment, null, returnValue, " ");
2798
3090
  };
2799
3091
 
2800
- var renderTiers = function renderTiers(boxOffice, selectedTickets, handleTicketSelect, promoCodeIsApplied) {
2801
- var sortedBoxOfiice = _sortBy(boxOffice, 'sortOrder');
3092
+ var TicketsSection = function TicketsSection(_ref) {
3093
+ var ticketsList = _ref.ticketsList,
3094
+ selectedTickets = _ref.selectedTickets,
3095
+ handleTicketSelect = _ref.handleTicketSelect,
3096
+ promoCodeIsApplied = _ref.promoCodeIsApplied;
3097
+
3098
+ var sortedTicketsList = _sortBy(ticketsList, 'sortOrder');
2802
3099
 
2803
- var primaryTiers = sortedBoxOfiice.map(function (tier, i, arr) {
2804
- var isSoldOut = tier.sold_out || !tier.displayTicket || tier.soldOut;
3100
+ return React__default.createElement(React__default.Fragment, null, sortedTicketsList.map(function (ticket, i, arr) {
3101
+ var isSoldOut = ticket.sold_out || !ticket.displayTicket || ticket.soldOut;
2805
3102
 
2806
3103
  var ticketSelect = function ticketSelect(event) {
2807
3104
  var value = event.target.value;
2808
- handleTicketSelect(tier.id, value);
3105
+ handleTicketSelect(ticket.id, value);
2809
3106
  };
2810
3107
 
2811
3108
  var ticketIsDiscounted = false;
2812
3109
 
2813
- if (tier.oldPrice && promoCodeIsApplied && !isSoldOut && tier.oldPrice !== tier.price) {
3110
+ if (ticket.oldPrice && promoCodeIsApplied && !isSoldOut && ticket.oldPrice !== ticket.price) {
2814
3111
  ticketIsDiscounted = true;
2815
3112
  }
2816
3113
 
2817
3114
  return React__default.createElement("div", {
2818
- key: tier.id || tier.name,
3115
+ key: ticket.id || ticket.name,
2819
3116
  className: "event-detail__tier " + (isSoldOut ? 'disabled' : '')
2820
3117
  }, React__default.createElement("div", {
2821
3118
  className: "event-detail__tier-name"
2822
- }, tier.displayName || tier.name), React__default.createElement("div", {
3119
+ }, ticket.displayName || ticket.name), React__default.createElement("div", {
2823
3120
  className: "event-tickets-container"
2824
3121
  }, React__default.createElement("div", {
2825
3122
  className: "event-detail__tier-price"
2826
3123
  }, ticketIsDiscounted && React__default.createElement("p", {
2827
3124
  className: "old-price"
2828
- }, "$ ", (+tier.oldPrice).toFixed(2)), React__default.createElement("p", null, isSoldOut ? 'SOLD OUT' : "$ " + (+tier.cost || +tier.price).toFixed(2)), !isSoldOut && React__default.createElement("p", {
2829
- className: 'fees'
2830
- }, tier.taxesIncluded ? '(incl. Fees)' : '(excl. Fees)')), React__default.createElement("div", {
3125
+ }, "$ ", (+ticket.oldPrice).toFixed(2)), React__default.createElement("p", null, isSoldOut ? 'SOLD OUT' : "$ " + (+ticket.cost || +ticket.price).toFixed(2)), !isSoldOut && React__default.createElement("p", {
3126
+ className: "fees"
3127
+ }, ticket.taxesIncluded ? '(incl. Fees)' : '(excl. Fees)')), React__default.createElement("div", {
2831
3128
  className: "event-detail__tier-state",
2832
3129
  style: {
2833
3130
  minWidth: 55
2834
3131
  }
2835
- }, computeTierStateLabel(tier, arr[i - 1], selectedTickets, ticketSelect))));
3132
+ }, React__default.createElement(TicketRow, {
3133
+ ticketTier: ticket,
3134
+ prevTicketTier: arr[i - 1],
3135
+ selectedTickets: selectedTickets,
3136
+ handleTicketSelect: ticketSelect
3137
+ }))));
3138
+ }));
3139
+ };
3140
+
3141
+ var generateQuantity = function generateQuantity(n) {
3142
+ var quantityList = [];
3143
+
3144
+ for (var i = 1; i <= n; i++) {
3145
+ quantityList.push({
3146
+ label: i,
3147
+ value: i
3148
+ });
3149
+ }
3150
+
3151
+ return quantityList;
3152
+ };
3153
+
3154
+ var WaitingList = function WaitingList(_ref) {
3155
+ var _ref$tickets = _ref.tickets,
3156
+ tickets = _ref$tickets === void 0 ? {} : _ref$tickets;
3157
+
3158
+ var _useState = React.useState(false),
3159
+ showSuccessMessage = _useState[0],
3160
+ setShowSuccessMessage = _useState[1];
3161
+
3162
+ var _useState2 = React.useState(false),
3163
+ loading = _useState2[0],
3164
+ setLoading = _useState2[1];
3165
+
3166
+ var ticketTypesList = Object.values(tickets).map(function (d) {
3167
+ return {
3168
+ label: d.displayName,
3169
+ value: d.id
3170
+ };
2836
3171
  });
2837
- return primaryTiers;
3172
+
3173
+ var handleSubmit = /*#__PURE__*/function () {
3174
+ var _ref2 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(values) {
3175
+ var id, requestData, _yield$addToWaitingLi, data;
3176
+
3177
+ return runtime_1.wrap(function _callee$(_context) {
3178
+ while (1) {
3179
+ switch (_context.prev = _context.next) {
3180
+ case 0:
3181
+ _context.prev = 0;
3182
+ setLoading(true);
3183
+ id = ENV.EVENT_ID;
3184
+ requestData = {
3185
+ data: {
3186
+ attributes: values
3187
+ }
3188
+ };
3189
+ _context.next = 6;
3190
+ return addToWaitingList(id, requestData);
3191
+
3192
+ case 6:
3193
+ _yield$addToWaitingLi = _context.sent;
3194
+ data = _yield$addToWaitingLi.data;
3195
+
3196
+ if (data.success) {
3197
+ setShowSuccessMessage(true);
3198
+ }
3199
+
3200
+ _context.next = 14;
3201
+ break;
3202
+
3203
+ case 11:
3204
+ _context.prev = 11;
3205
+ _context.t0 = _context["catch"](0);
3206
+ console.log(_context.t0);
3207
+
3208
+ case 14:
3209
+ _context.prev = 14;
3210
+ setLoading(false);
3211
+ return _context.finish(14);
3212
+
3213
+ case 17:
3214
+ case "end":
3215
+ return _context.stop();
3216
+ }
3217
+ }
3218
+ }, _callee, null, [[0, 11, 14, 17]]);
3219
+ }));
3220
+
3221
+ return function handleSubmit(_x) {
3222
+ return _ref2.apply(this, arguments);
3223
+ };
3224
+ }();
3225
+
3226
+ return React__default.createElement("div", {
3227
+ className: "waiting-list"
3228
+ }, showSuccessMessage ? React__default.createElement("div", {
3229
+ className: "success-message"
3230
+ }, React__default.createElement("h3", null, "You've been added to the waiting list!"), React__default.createElement("p", null, "You'll be notified if tickets become available.")) : React__default.createElement(React__default.Fragment, null, React__default.createElement("h2", null, "WAITING LIST"), React__default.createElement(formik.Formik, {
3231
+ initialValues: {
3232
+ ticketTypeId: '',
3233
+ quantity: '',
3234
+ firstName: '',
3235
+ lastName: '',
3236
+ email: ''
3237
+ },
3238
+ onSubmit: handleSubmit
3239
+ }, React__default.createElement(formik.Form, null, React__default.createElement("div", {
3240
+ className: "field-item"
3241
+ }, React__default.createElement(formik.Field, {
3242
+ name: "ticketTypeId",
3243
+ label: "Ticket types",
3244
+ type: "select",
3245
+ component: CustomField,
3246
+ selectOptions: [{
3247
+ label: 'Type of Ticket',
3248
+ value: '',
3249
+ disabled: true
3250
+ }].concat(ticketTypesList)
3251
+ })), React__default.createElement("div", {
3252
+ className: "field-item"
3253
+ }, React__default.createElement(formik.Field, {
3254
+ name: "quantity",
3255
+ label: "Quantity",
3256
+ type: "select",
3257
+ component: CustomField,
3258
+ selectOptions: [{
3259
+ label: 'Quantity Requested',
3260
+ value: '',
3261
+ disabled: true
3262
+ }].concat(generateQuantity(10))
3263
+ })), React__default.createElement("div", {
3264
+ className: "field-item"
3265
+ }, React__default.createElement(formik.Field, {
3266
+ name: "firstName",
3267
+ label: "First name",
3268
+ validate: function validate(value) {
3269
+ return requiredValidator(value, 'Please enter your First name');
3270
+ },
3271
+ component: CustomField
3272
+ })), React__default.createElement("div", {
3273
+ className: "field-item"
3274
+ }, React__default.createElement(formik.Field, {
3275
+ name: "lastName",
3276
+ label: "Last name",
3277
+ validate: function validate(value) {
3278
+ return requiredValidator(value, 'Please enter your Last name');
3279
+ },
3280
+ component: CustomField
3281
+ })), React__default.createElement("div", {
3282
+ className: "field-item"
3283
+ }, React__default.createElement(formik.Field, {
3284
+ name: "email",
3285
+ label: "Email",
3286
+ validate: combineValidators(function (value) {
3287
+ return requiredValidator(value, 'Please enter your Email');
3288
+ }, function (value) {
3289
+ return emailValidator(value);
3290
+ }),
3291
+ component: CustomField
3292
+ })), React__default.createElement(Button$1, {
3293
+ type: "submit",
3294
+ variant: "contained",
3295
+ className: "waiting-list-button"
3296
+ }, loading ? React__default.createElement(CircularProgress, {
3297
+ size: "22px"
3298
+ }) : 'ADD TO WAITING LIST')))));
2838
3299
  };
2839
3300
 
2840
3301
  function Loader() {
@@ -2848,7 +3309,15 @@ var TicketsContainer = function TicketsContainer(_ref) {
2848
3309
  eventId = _ref.eventId,
2849
3310
  onAddToCartSuccess = _ref.onAddToCartSuccess,
2850
3311
  _ref$contentStyle = _ref.contentStyle,
2851
- contentStyle = _ref$contentStyle === void 0 ? {} : _ref$contentStyle;
3312
+ contentStyle = _ref$contentStyle === void 0 ? {} : _ref$contentStyle,
3313
+ _ref$onAddToCartError = _ref.onAddToCartError,
3314
+ onAddToCartError = _ref$onAddToCartError === void 0 ? function () {} : _ref$onAddToCartError,
3315
+ _ref$onGetTicketsSucc = _ref.onGetTicketsSuccess,
3316
+ onGetTicketsSuccess = _ref$onGetTicketsSucc === void 0 ? function () {} : _ref$onGetTicketsSucc,
3317
+ _ref$onGetTicketsErro = _ref.onGetTicketsError,
3318
+ onGetTicketsError = _ref$onGetTicketsErro === void 0 ? function () {} : _ref$onGetTicketsErro,
3319
+ _ref$theme = _ref.theme,
3320
+ theme = _ref$theme === void 0 ? 'light' : _ref$theme;
2852
3321
 
2853
3322
  var _useState = React.useState({}),
2854
3323
  selectedTickets = _useState[0],
@@ -2859,28 +3328,32 @@ var TicketsContainer = function TicketsContainer(_ref) {
2859
3328
  setTickets = _useState2[1];
2860
3329
 
2861
3330
  var _useState3 = React.useState(false),
2862
- isLoading = _useState3[0],
2863
- setIsLoading = _useState3[1];
3331
+ showWaitingList = _useState3[0],
3332
+ setShowWaitingList = _useState3[1];
2864
3333
 
2865
3334
  var _useState4 = React.useState(false),
2866
- handleBookIsLoading = _useState4[0],
2867
- setHandleBookIsLoading = _useState4[1];
3335
+ isLoading = _useState4[0],
3336
+ setIsLoading = _useState4[1];
2868
3337
 
2869
- var _useState5 = React.useState(''),
2870
- promoCode = _useState5[0],
2871
- setPromoCode = _useState5[1];
3338
+ var _useState5 = React.useState(false),
3339
+ handleBookIsLoading = _useState5[0],
3340
+ setHandleBookIsLoading = _useState5[1];
2872
3341
 
2873
3342
  var _useState6 = React.useState(''),
2874
- promoCodeUpdated = _useState6[0],
2875
- setPromoCodeUpdated = _useState6[1];
3343
+ promoCode = _useState6[0],
3344
+ setPromoCode = _useState6[1];
2876
3345
 
2877
- var _useState7 = React.useState(false),
2878
- showPromoInput = _useState7[0],
2879
- setShowPromoInput = _useState7[1];
3346
+ var _useState7 = React.useState(''),
3347
+ promoCodeUpdated = _useState7[0],
3348
+ setPromoCodeUpdated = _useState7[1];
2880
3349
 
2881
3350
  var _useState8 = React.useState(false),
2882
- promoCodeIsApplied = _useState8[0],
2883
- setPromoCodeIsApplied = _useState8[1];
3351
+ showPromoInput = _useState8[0],
3352
+ setShowPromoInput = _useState8[1];
3353
+
3354
+ var _useState9 = React.useState(false),
3355
+ promoCodeIsApplied = _useState9[0],
3356
+ setPromoCodeIsApplied = _useState9[1];
2884
3357
 
2885
3358
  React.useEffect(function () {
2886
3359
  if (typeof window !== 'undefined') {
@@ -2903,8 +3376,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
2903
3376
 
2904
3377
  function _getTicketsApi() {
2905
3378
  _getTicketsApi = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
2906
- var response, attributes, _tickets;
2907
-
3379
+ var response, attributes;
2908
3380
  return runtime_1.wrap(function _callee$(_context) {
2909
3381
  while (1) {
2910
3382
  switch (_context.prev = _context.next) {
@@ -2921,10 +3393,9 @@ var TicketsContainer = function TicketsContainer(_ref) {
2921
3393
  setCustomHeader(response);
2922
3394
  attributes = _get(response, 'data.data.attributes');
2923
3395
  setPromoCodeIsApplied(attributes.ValidPromoCode);
2924
- _tickets = _filter(Object.values(attributes) || [], function (item) {
2925
- return _isObject(item);
2926
- });
2927
- setTickets(_tickets);
3396
+ setTickets(_get(attributes, 'tickets'));
3397
+ setShowWaitingList(attributes.showWaitingList);
3398
+ onGetTicketsSuccess(response.data);
2928
3399
  }
2929
3400
 
2930
3401
  _context.next = 11;
@@ -2933,7 +3404,10 @@ var TicketsContainer = function TicketsContainer(_ref) {
2933
3404
  case 8:
2934
3405
  _context.prev = 8;
2935
3406
  _context.t0 = _context["catch"](0);
2936
- console.log('e', _context.t0);
3407
+
3408
+ if (axios.isAxiosError(_context.t0)) {
3409
+ onGetTicketsError(_context.t0);
3410
+ }
2937
3411
 
2938
3412
  case 11:
2939
3413
  _context.prev = 11;
@@ -3016,7 +3490,10 @@ var TicketsContainer = function TicketsContainer(_ref) {
3016
3490
  case 13:
3017
3491
  _context2.prev = 13;
3018
3492
  _context2.t0 = _context2["catch"](6);
3019
- console.log('e', _context2.t0);
3493
+
3494
+ if (axios.isAxiosError(_context2.t0)) {
3495
+ onAddToCartError(_context2.t0);
3496
+ }
3020
3497
 
3021
3498
  case 16:
3022
3499
  _context2.prev = 16;
@@ -3040,9 +3517,16 @@ var TicketsContainer = function TicketsContainer(_ref) {
3040
3517
  return !(item.sold_out || item.soldOut);
3041
3518
  });
3042
3519
  return React__default.createElement("div", {
3043
- className: "get-tickets-page",
3520
+ className: "get-tickets-page " + theme,
3044
3521
  style: contentStyle
3045
- }, isLoading ? React__default.createElement(Loader, null) : React__default.createElement("div", null, renderTiers(tickets, selectedTickets, handleTicketSelect, promoCodeIsApplied), promoCodeIsApplied ? React__default.createElement("div", {
3522
+ }, isLoading ? React__default.createElement(Loader, null) : React__default.createElement(React__default.Fragment, null, showWaitingList ? React__default.createElement(WaitingList, {
3523
+ tickets: tickets
3524
+ }) : React__default.createElement("div", null, React__default.createElement(TicketsSection, {
3525
+ ticketsList: tickets,
3526
+ selectedTickets: selectedTickets,
3527
+ handleTicketSelect: handleTicketSelect,
3528
+ promoCodeIsApplied: promoCodeIsApplied
3529
+ }), promoCodeIsApplied ? React__default.createElement("div", {
3046
3530
  className: "alert-info"
3047
3531
  }, "Your promo code was applied successfully.") : null, showPromoInput && React__default.createElement("div", {
3048
3532
  className: "promo-code-block"
@@ -3056,13 +3540,13 @@ var TicketsContainer = function TicketsContainer(_ref) {
3056
3540
  setPromoCodeUpdated(promoCode);
3057
3541
  }
3058
3542
  }
3059
- }), React__default.createElement(Button$1, {
3543
+ }), React__default.createElement(Button, {
3060
3544
  className: "promo-apply-button",
3061
3545
  placeholder: "Promo Code",
3062
3546
  onClick: function onClick() {
3063
3547
  setPromoCodeUpdated(promoCode);
3064
3548
  }
3065
- }, "Apply")), !showPromoInput && !isAllTicketsSoldOut ? React__default.createElement(Button$1, {
3549
+ }, "Apply")), !showPromoInput && !isAllTicketsSoldOut ? React__default.createElement(Button, {
3066
3550
  className: "promo-code-button",
3067
3551
  placeholder: "Promo Codes",
3068
3552
  onClick: function onClick() {
@@ -3073,15 +3557,16 @@ var TicketsContainer = function TicketsContainer(_ref) {
3073
3557
  style: {
3074
3558
  display: 'none'
3075
3559
  }
3076
- }), !isAllTicketsSoldOut && React__default.createElement(Button$1, {
3560
+ }), !isAllTicketsSoldOut && React__default.createElement(Button, {
3077
3561
  "aria-hidden": true,
3078
3562
  className: "book-button " + (handleBookIsLoading || _isEmpty(selectedTickets) || Object.values(selectedTickets)[0] === 0 ? 'disabled' : ''),
3079
3563
  onClick: !handleBookIsLoading && !_isEmpty(selectedTickets) && Object.values(selectedTickets)[0] > 0 ? handleBook : function () {}
3080
- }, getTicketsLabel || 'GET TICKETS')));
3564
+ }, getTicketsLabel || 'GET TICKETS'))));
3081
3565
  };
3082
3566
 
3083
3567
  exports.BillingInfoContainer = BillingInfoContainer;
3084
3568
  exports.ConfirmationContainer = ConfirmationContainer;
3569
+ exports.LoginModal = LoginModal;
3085
3570
  exports.PaymentContainer = PaymentContainer;
3086
3571
  exports.TicketsContainer = TicketsContainer;
3087
3572
  exports.createFixedFloatNormalizer = createFixedFloatNormalizer;