tf-checkout-react 1.0.87 → 1.0.91
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.
- package/dist/components/billing-info-container/index.d.ts +4 -1
- package/dist/components/paymentContainer/index.d.ts +4 -2
- package/dist/components/ticketsContainer/index.d.ts +2 -1
- package/dist/components/timerWidget/index.d.ts +15 -0
- package/dist/tf-checkout-react.cjs.development.js +260 -87
- package/dist/tf-checkout-react.cjs.development.js.map +1 -1
- package/dist/tf-checkout-react.cjs.production.min.js +1 -1
- package/dist/tf-checkout-react.cjs.production.min.js.map +1 -1
- package/dist/tf-checkout-react.esm.js +261 -88
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/dist/tf-checkout-styles.css +1 -1
- package/dist/utils/createCheckoutDataBodyWithDefaultHolder.d.ts +1 -1
- package/dist/utils/showZero.d.ts +1 -0
- package/package.json +2 -1
- package/src/components/billing-info-container/index.tsx +72 -14
- package/src/components/loginModal/index.tsx +8 -0
- package/src/components/loginModal/style.css +9 -0
- package/src/components/paymentContainer/index.tsx +30 -10
- package/src/components/ticketsContainer/TicketRow.tsx +3 -9
- package/src/components/ticketsContainer/TicketsSection.tsx +11 -16
- package/src/components/ticketsContainer/index.tsx +6 -6
- package/src/components/timerWidget/index.tsx +70 -0
- package/src/components/timerWidget/style.css +26 -0
- package/src/utils/createCheckoutDataBodyWithDefaultHolder.ts +9 -1
- package/src/utils/showZero.tsx +10 -0
|
@@ -30,11 +30,14 @@ var Checkbox = _interopDefault(require('@mui/material/Checkbox'));
|
|
|
30
30
|
var Select = _interopDefault(require('@mui/material/Select'));
|
|
31
31
|
var MuiPhoneNumber = _interopDefault(require('material-ui-phone-number'));
|
|
32
32
|
var styles$1 = require('@mui/material/styles');
|
|
33
|
+
var Backdrop = _interopDefault(require('@mui/material/Backdrop'));
|
|
33
34
|
var Container = _interopDefault(require('@mui/material/Container'));
|
|
34
35
|
var CircularProgress = _interopDefault(require('@mui/material/CircularProgress'));
|
|
35
36
|
var Alert = _interopDefault(require('@mui/material/Alert'));
|
|
36
37
|
var reactStripeJs = require('@stripe/react-stripe-js');
|
|
37
38
|
var stripeJs = require('@stripe/stripe-js');
|
|
39
|
+
var Countdown$1 = _interopDefault(require('react-countdown'));
|
|
40
|
+
var _isNumber = _interopDefault(require('lodash/isNumber'));
|
|
38
41
|
var reactShare = require('react-share');
|
|
39
42
|
var _some = _interopDefault(require('lodash/some'));
|
|
40
43
|
var _every = _interopDefault(require('lodash/every'));
|
|
@@ -42,7 +45,6 @@ var _find = _interopDefault(require('lodash/find'));
|
|
|
42
45
|
var Button$1 = _interopDefault(require('react-bootstrap/Button'));
|
|
43
46
|
var jwt_decode = _interopDefault(require('jwt-decode'));
|
|
44
47
|
var _sortBy = _interopDefault(require('lodash/sortBy'));
|
|
45
|
-
var _has = _interopDefault(require('lodash/has'));
|
|
46
48
|
var FormControl = _interopDefault(require('@mui/material/FormControl'));
|
|
47
49
|
var MenuItem = _interopDefault(require('@mui/material/MenuItem'));
|
|
48
50
|
var SVG = _interopDefault(require('react-inlinesvg'));
|
|
@@ -57,6 +59,7 @@ var TableRow = _interopDefault(require('@mui/material/TableRow'));
|
|
|
57
59
|
var Paper = _interopDefault(require('@mui/material/Paper'));
|
|
58
60
|
var TablePagination = _interopDefault(require('@mui/material/TablePagination'));
|
|
59
61
|
var Autocomplete = _interopDefault(require('@mui/material/Autocomplete'));
|
|
62
|
+
var _has = _interopDefault(require('lodash/has'));
|
|
60
63
|
|
|
61
64
|
function asyncGeneratorStep(gen, resolve, reject, _next, _throw, key, arg) {
|
|
62
65
|
try {
|
|
@@ -1053,7 +1056,11 @@ var downloadPDF = function downloadPDF(pdfUrl) {
|
|
|
1053
1056
|
});
|
|
1054
1057
|
};
|
|
1055
1058
|
|
|
1056
|
-
var createCheckoutDataBodyWithDefaultHolder = function createCheckoutDataBodyWithDefaultHolder(ticketsQuantity, logedInValues) {
|
|
1059
|
+
var createCheckoutDataBodyWithDefaultHolder = function createCheckoutDataBodyWithDefaultHolder(ticketsQuantity, logedInValues, includeDob) {
|
|
1060
|
+
if (includeDob === void 0) {
|
|
1061
|
+
includeDob = false;
|
|
1062
|
+
}
|
|
1063
|
+
|
|
1057
1064
|
var ticket_holders = [];
|
|
1058
1065
|
var first_name = _get(logedInValues, 'firstName') || _get(logedInValues, 'first_name') || '';
|
|
1059
1066
|
var last_name = _get(logedInValues, 'lastName', '') || _get(logedInValues, 'last_name') || '';
|
|
@@ -1086,6 +1093,14 @@ var createCheckoutDataBodyWithDefaultHolder = function createCheckoutDataBodyWit
|
|
|
1086
1093
|
ticket_holders: ticket_holders
|
|
1087
1094
|
})
|
|
1088
1095
|
};
|
|
1096
|
+
|
|
1097
|
+
if (includeDob) {
|
|
1098
|
+
var holderAgeDate = new Date(_get(logedInValues, 'holderAge', ''));
|
|
1099
|
+
body.attributes.dob_day = holderAgeDate.getDate();
|
|
1100
|
+
body.attributes.dob_month = holderAgeDate.getMonth() + 1;
|
|
1101
|
+
body.attributes.dob_year = holderAgeDate.getFullYear();
|
|
1102
|
+
}
|
|
1103
|
+
|
|
1089
1104
|
return body;
|
|
1090
1105
|
};
|
|
1091
1106
|
|
|
@@ -1323,6 +1338,12 @@ var LoginModal = function LoginModal(_ref) {
|
|
|
1323
1338
|
error = _useState[0],
|
|
1324
1339
|
setError = _useState[1];
|
|
1325
1340
|
|
|
1341
|
+
var handleForgotPassword = function handleForgotPassword() {
|
|
1342
|
+
if (typeof window !== 'undefined') {
|
|
1343
|
+
window.open(CONFIGS.BASE_URL + "/password-restore/");
|
|
1344
|
+
}
|
|
1345
|
+
};
|
|
1346
|
+
|
|
1326
1347
|
return React__default.createElement(Modal, {
|
|
1327
1348
|
open: true,
|
|
1328
1349
|
onClose: onClose,
|
|
@@ -1501,7 +1522,11 @@ var LoginModal = function LoginModal(_ref) {
|
|
|
1501
1522
|
className: "login-action-button"
|
|
1502
1523
|
}, React__default.createElement("button", {
|
|
1503
1524
|
type: "submit"
|
|
1504
|
-
}, "Login"))
|
|
1525
|
+
}, "Login")), React__default.createElement("div", {
|
|
1526
|
+
className: 'forgot-password'
|
|
1527
|
+
}, React__default.createElement("span", {
|
|
1528
|
+
onClick: handleForgotPassword
|
|
1529
|
+
}, "Forgot password?"))));
|
|
1505
1530
|
}))));
|
|
1506
1531
|
};
|
|
1507
1532
|
|
|
@@ -2261,7 +2286,13 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2261
2286
|
_ref3$onErrorClose = _ref3.onErrorClose,
|
|
2262
2287
|
onErrorClose = _ref3$onErrorClose === void 0 ? function () {} : _ref3$onErrorClose,
|
|
2263
2288
|
_ref3$hideErrorsAlert = _ref3.hideErrorsAlertSection,
|
|
2264
|
-
hideErrorsAlertSection = _ref3$hideErrorsAlert === void 0 ? false : _ref3$hideErrorsAlert
|
|
2289
|
+
hideErrorsAlertSection = _ref3$hideErrorsAlert === void 0 ? false : _ref3$hideErrorsAlert,
|
|
2290
|
+
_ref3$onSkipBillingPa = _ref3.onSkipBillingPage,
|
|
2291
|
+
onSkipBillingPage = _ref3$onSkipBillingPa === void 0 ? function () {} : _ref3$onSkipBillingPa,
|
|
2292
|
+
_ref3$skipPage = _ref3.skipPage,
|
|
2293
|
+
skipPage = _ref3$skipPage === void 0 ? false : _ref3$skipPage,
|
|
2294
|
+
_ref3$canSkipHolderNa = _ref3.canSkipHolderNames,
|
|
2295
|
+
canSkipHolderNames = _ref3$canSkipHolderNa === void 0 ? false : _ref3$canSkipHolderNa;
|
|
2265
2296
|
|
|
2266
2297
|
var themeMui = styles$1.createTheme(themeOptions);
|
|
2267
2298
|
var isWindowDefined = typeof window !== 'undefined';
|
|
@@ -2326,9 +2357,13 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2326
2357
|
userValues = _useState11[0],
|
|
2327
2358
|
setUserValues = _useState11[1];
|
|
2328
2359
|
|
|
2329
|
-
var _useState12 = React.useState(
|
|
2330
|
-
|
|
2331
|
-
|
|
2360
|
+
var _useState12 = React.useState(true),
|
|
2361
|
+
loading = _useState12[0],
|
|
2362
|
+
setLoading = _useState12[1];
|
|
2363
|
+
|
|
2364
|
+
var _useState13 = React.useState(null),
|
|
2365
|
+
error = _useState13[0],
|
|
2366
|
+
setError = _useState13[1];
|
|
2332
2367
|
|
|
2333
2368
|
var emailLogged = _get(userData, 'email', '') || _get(userValues, 'email', '');
|
|
2334
2369
|
|
|
@@ -2337,6 +2372,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2337
2372
|
var lastNameLogged = _get(userData, 'last_name', '') || _get(userValues, 'last_name', '');
|
|
2338
2373
|
|
|
2339
2374
|
var showDOB = getQueryVariable('age_required') === 'true';
|
|
2375
|
+
var showTicketHolders = getQueryVariable('names_required') === 'true';
|
|
2340
2376
|
var eventId = getQueryVariable('event_id');
|
|
2341
2377
|
|
|
2342
2378
|
var optedInFieldValue = _get(cartInfoData, 'optedIn', false);
|
|
@@ -2534,6 +2570,88 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2534
2570
|
React.useEffect(function () {
|
|
2535
2571
|
fetchUserData(access_token);
|
|
2536
2572
|
}, [access_token]);
|
|
2573
|
+
React.useEffect(function () {
|
|
2574
|
+
var collectPaymentData = /*#__PURE__*/function () {
|
|
2575
|
+
var _ref7 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee5() {
|
|
2576
|
+
var checkoutBody, res;
|
|
2577
|
+
return runtime_1.wrap(function _callee5$(_context5) {
|
|
2578
|
+
while (1) {
|
|
2579
|
+
switch (_context5.prev = _context5.next) {
|
|
2580
|
+
case 0:
|
|
2581
|
+
if (!(skipPage && !_isEmpty(ticketsQuantity))) {
|
|
2582
|
+
_context5.next = 16;
|
|
2583
|
+
break;
|
|
2584
|
+
}
|
|
2585
|
+
|
|
2586
|
+
setLoading(true);
|
|
2587
|
+
checkoutBody = createCheckoutDataBodyWithDefaultHolder(ticketsQuantity.length, userData);
|
|
2588
|
+
_context5.prev = 3;
|
|
2589
|
+
_context5.next = 6;
|
|
2590
|
+
return postOnCheckout(checkoutBody, access_token);
|
|
2591
|
+
|
|
2592
|
+
case 6:
|
|
2593
|
+
res = _context5.sent;
|
|
2594
|
+
onSkipBillingPage(_get(res, 'data.data.attributes'));
|
|
2595
|
+
setLoading(false);
|
|
2596
|
+
_context5.next = 14;
|
|
2597
|
+
break;
|
|
2598
|
+
|
|
2599
|
+
case 11:
|
|
2600
|
+
_context5.prev = 11;
|
|
2601
|
+
_context5.t0 = _context5["catch"](3);
|
|
2602
|
+
onSubmitError(_context5.t0);
|
|
2603
|
+
|
|
2604
|
+
case 14:
|
|
2605
|
+
_context5.next = 17;
|
|
2606
|
+
break;
|
|
2607
|
+
|
|
2608
|
+
case 16:
|
|
2609
|
+
setLoading(false);
|
|
2610
|
+
|
|
2611
|
+
case 17:
|
|
2612
|
+
case "end":
|
|
2613
|
+
return _context5.stop();
|
|
2614
|
+
}
|
|
2615
|
+
}
|
|
2616
|
+
}, _callee5, null, [[3, 11]]);
|
|
2617
|
+
}));
|
|
2618
|
+
|
|
2619
|
+
return function collectPaymentData() {
|
|
2620
|
+
return _ref7.apply(this, arguments);
|
|
2621
|
+
};
|
|
2622
|
+
}();
|
|
2623
|
+
|
|
2624
|
+
collectPaymentData();
|
|
2625
|
+
}, [skipPage, ticketsQuantity]);
|
|
2626
|
+
|
|
2627
|
+
var collectCheckoutBody = function collectCheckoutBody(values) {
|
|
2628
|
+
var checkoutBody = {}; // Auto collect ticket holders name when it was skipped optionally
|
|
2629
|
+
|
|
2630
|
+
if (showDOB && !showTicketHolders && canSkipHolderNames) {
|
|
2631
|
+
checkoutBody = createCheckoutDataBodyWithDefaultHolder(ticketsQuantity.length, values, true);
|
|
2632
|
+
} else {
|
|
2633
|
+
checkoutBody = createCheckoutDataBody(ticketsQuantity.length, values, {
|
|
2634
|
+
emailLogged: emailLogged,
|
|
2635
|
+
firstNameLogged: firstNameLogged,
|
|
2636
|
+
lastNameLogged: lastNameLogged
|
|
2637
|
+
}, showDOB);
|
|
2638
|
+
}
|
|
2639
|
+
|
|
2640
|
+
return checkoutBody;
|
|
2641
|
+
}; // Displaying loader
|
|
2642
|
+
|
|
2643
|
+
|
|
2644
|
+
if (loading) {
|
|
2645
|
+
return React__default.createElement(Backdrop, {
|
|
2646
|
+
sx: {
|
|
2647
|
+
color: '#fff'
|
|
2648
|
+
},
|
|
2649
|
+
open: true
|
|
2650
|
+
}, React__default.createElement(material.CircularProgress, {
|
|
2651
|
+
color: "inherit"
|
|
2652
|
+
}));
|
|
2653
|
+
}
|
|
2654
|
+
|
|
2537
2655
|
return React__default.createElement(styles$1.ThemeProvider, {
|
|
2538
2656
|
theme: themeMui
|
|
2539
2657
|
}, React__default.createElement(formik.Formik, {
|
|
@@ -2545,30 +2663,30 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2545
2663
|
}), userValues),
|
|
2546
2664
|
enableReinitialize: true,
|
|
2547
2665
|
onSubmit: function () {
|
|
2548
|
-
var _onSubmit = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function
|
|
2666
|
+
var _onSubmit = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee6(values, formikHelpers) {
|
|
2549
2667
|
var updatedUserData, _profileSpecifiedData, _profileDataObj, _checkoutBody, _res, checkoutBodyForRegistration, bodyFormData, access_token_register, resRegister, refreshToken, tokens, _e$response, _e$response$data, _error, profileData, profileSpecifiedData, profileDataObj, checkoutBody, res, _e$response2, _e$response3;
|
|
2550
2668
|
|
|
2551
|
-
return runtime_1.wrap(function
|
|
2669
|
+
return runtime_1.wrap(function _callee6$(_context6) {
|
|
2552
2670
|
while (1) {
|
|
2553
|
-
switch (
|
|
2671
|
+
switch (_context6.prev = _context6.next) {
|
|
2554
2672
|
case 0:
|
|
2555
|
-
|
|
2673
|
+
_context6.prev = 0;
|
|
2556
2674
|
|
|
2557
2675
|
if (!isLoggedIn) {
|
|
2558
|
-
|
|
2676
|
+
_context6.next = 17;
|
|
2559
2677
|
break;
|
|
2560
2678
|
}
|
|
2561
2679
|
|
|
2562
2680
|
if (!access_token) {
|
|
2563
|
-
|
|
2681
|
+
_context6.next = 9;
|
|
2564
2682
|
break;
|
|
2565
2683
|
}
|
|
2566
2684
|
|
|
2567
|
-
|
|
2685
|
+
_context6.next = 5;
|
|
2568
2686
|
return getProfileData(access_token);
|
|
2569
2687
|
|
|
2570
2688
|
case 5:
|
|
2571
|
-
updatedUserData =
|
|
2689
|
+
updatedUserData = _context6.sent;
|
|
2572
2690
|
_profileSpecifiedData = _get(updatedUserData, 'data.data');
|
|
2573
2691
|
_profileDataObj = setLoggedUserData(_profileSpecifiedData);
|
|
2574
2692
|
|
|
@@ -2577,22 +2695,18 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2577
2695
|
}
|
|
2578
2696
|
|
|
2579
2697
|
case 9:
|
|
2580
|
-
_checkoutBody =
|
|
2581
|
-
|
|
2582
|
-
firstNameLogged: firstNameLogged,
|
|
2583
|
-
lastNameLogged: lastNameLogged
|
|
2584
|
-
}, showDOB);
|
|
2585
|
-
_context5.next = 12;
|
|
2698
|
+
_checkoutBody = collectCheckoutBody(values);
|
|
2699
|
+
_context6.next = 12;
|
|
2586
2700
|
return postOnCheckout(_checkoutBody, access_token);
|
|
2587
2701
|
|
|
2588
2702
|
case 12:
|
|
2589
|
-
_res =
|
|
2590
|
-
|
|
2703
|
+
_res = _context6.sent;
|
|
2704
|
+
_context6.next = 15;
|
|
2591
2705
|
return getPaymentData(_res.data.data.attributes.hash);
|
|
2592
2706
|
|
|
2593
2707
|
case 15:
|
|
2594
2708
|
handleSubmit(values, formikHelpers, eventId, _res);
|
|
2595
|
-
return
|
|
2709
|
+
return _context6.abrupt("return");
|
|
2596
2710
|
|
|
2597
2711
|
case 17:
|
|
2598
2712
|
checkoutBodyForRegistration = createCheckoutDataBody(ticketsQuantity.length, values, {
|
|
@@ -2602,12 +2716,12 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2602
2716
|
}, showDOB);
|
|
2603
2717
|
bodyFormData = createRegisterFormData(values, checkoutBodyForRegistration);
|
|
2604
2718
|
access_token_register = null;
|
|
2605
|
-
|
|
2606
|
-
|
|
2719
|
+
_context6.prev = 20;
|
|
2720
|
+
_context6.next = 23;
|
|
2607
2721
|
return register(bodyFormData);
|
|
2608
2722
|
|
|
2609
2723
|
case 23:
|
|
2610
|
-
resRegister =
|
|
2724
|
+
resRegister = _context6.sent;
|
|
2611
2725
|
access_token_register = _get(resRegister, 'data.data.attributes.access_token');
|
|
2612
2726
|
refreshToken = _get(resRegister, 'data.data.attributes.refresh_token');
|
|
2613
2727
|
handleSetAccessToken(access_token_register);
|
|
@@ -2616,15 +2730,15 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2616
2730
|
refreshToken: refreshToken
|
|
2617
2731
|
};
|
|
2618
2732
|
onRegisterSuccess(tokens);
|
|
2619
|
-
|
|
2733
|
+
_context6.next = 35;
|
|
2620
2734
|
break;
|
|
2621
2735
|
|
|
2622
2736
|
case 31:
|
|
2623
|
-
|
|
2624
|
-
|
|
2737
|
+
_context6.prev = 31;
|
|
2738
|
+
_context6.t0 = _context6["catch"](20);
|
|
2625
2739
|
|
|
2626
|
-
if (axios.isAxiosError(
|
|
2627
|
-
_error =
|
|
2740
|
+
if (axios.isAxiosError(_context6.t0)) {
|
|
2741
|
+
_error = _context6.t0 == null ? void 0 : (_e$response = _context6.t0.response) == null ? void 0 : (_e$response$data = _e$response.data) == null ? void 0 : _e$response$data.message;
|
|
2628
2742
|
|
|
2629
2743
|
if (_includes(_error, 'You must be aged')) {
|
|
2630
2744
|
formikHelpers.setFieldError('holderAge', _error);
|
|
@@ -2641,17 +2755,17 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2641
2755
|
setShowModalLogin(true);
|
|
2642
2756
|
}
|
|
2643
2757
|
|
|
2644
|
-
onRegisterError(
|
|
2758
|
+
onRegisterError(_context6.t0, values.email);
|
|
2645
2759
|
}
|
|
2646
2760
|
|
|
2647
|
-
return
|
|
2761
|
+
return _context6.abrupt("return");
|
|
2648
2762
|
|
|
2649
2763
|
case 35:
|
|
2650
|
-
|
|
2764
|
+
_context6.next = 37;
|
|
2651
2765
|
return getProfileData(access_token_register);
|
|
2652
2766
|
|
|
2653
2767
|
case 37:
|
|
2654
|
-
profileData =
|
|
2768
|
+
profileData = _context6.sent;
|
|
2655
2769
|
profileSpecifiedData = _get(profileData, 'data.data');
|
|
2656
2770
|
profileDataObj = setLoggedUserData(profileSpecifiedData);
|
|
2657
2771
|
|
|
@@ -2659,30 +2773,26 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2659
2773
|
window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
|
|
2660
2774
|
}
|
|
2661
2775
|
|
|
2662
|
-
checkoutBody =
|
|
2663
|
-
|
|
2664
|
-
firstNameLogged: firstNameLogged,
|
|
2665
|
-
lastNameLogged: lastNameLogged
|
|
2666
|
-
}, showDOB);
|
|
2667
|
-
_context5.next = 44;
|
|
2776
|
+
checkoutBody = collectCheckoutBody(values);
|
|
2777
|
+
_context6.next = 44;
|
|
2668
2778
|
return postOnCheckout(checkoutBody, access_token_register);
|
|
2669
2779
|
|
|
2670
2780
|
case 44:
|
|
2671
|
-
res =
|
|
2672
|
-
|
|
2781
|
+
res = _context6.sent;
|
|
2782
|
+
_context6.next = 47;
|
|
2673
2783
|
return getPaymentData(res.data.data.attributes.hash);
|
|
2674
2784
|
|
|
2675
2785
|
case 47:
|
|
2676
2786
|
handleSubmit(values, formikHelpers, eventId, res);
|
|
2677
|
-
|
|
2787
|
+
_context6.next = 53;
|
|
2678
2788
|
break;
|
|
2679
2789
|
|
|
2680
2790
|
case 50:
|
|
2681
|
-
|
|
2682
|
-
|
|
2791
|
+
_context6.prev = 50;
|
|
2792
|
+
_context6.t1 = _context6["catch"](0);
|
|
2683
2793
|
|
|
2684
|
-
if (axios.isAxiosError(
|
|
2685
|
-
if (((_e$response2 =
|
|
2794
|
+
if (axios.isAxiosError(_context6.t1)) {
|
|
2795
|
+
if (((_e$response2 = _context6.t1.response) == null ? void 0 : _e$response2.data.error) === 'invalid_token') {
|
|
2686
2796
|
if (isWindowDefined) {
|
|
2687
2797
|
window.localStorage.removeItem('user_data');
|
|
2688
2798
|
window.localStorage.removeItem('access_token');
|
|
@@ -2691,23 +2801,23 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2691
2801
|
}
|
|
2692
2802
|
}
|
|
2693
2803
|
|
|
2694
|
-
if ((_e$response3 =
|
|
2804
|
+
if ((_e$response3 = _context6.t1.response) != null && _e$response3.data.message) {
|
|
2695
2805
|
if (typeof document !== undefined) {
|
|
2696
2806
|
document.body.scrollTop = document.documentElement.scrollTop = 0;
|
|
2697
2807
|
}
|
|
2698
2808
|
|
|
2699
|
-
setError(_get(
|
|
2809
|
+
setError(_get(_context6.t1, 'response.data.message'));
|
|
2700
2810
|
}
|
|
2701
2811
|
|
|
2702
|
-
onSubmitError(
|
|
2812
|
+
onSubmitError(_context6.t1);
|
|
2703
2813
|
}
|
|
2704
2814
|
|
|
2705
2815
|
case 53:
|
|
2706
2816
|
case "end":
|
|
2707
|
-
return
|
|
2817
|
+
return _context6.stop();
|
|
2708
2818
|
}
|
|
2709
2819
|
}
|
|
2710
|
-
},
|
|
2820
|
+
}, _callee6, null, [[0, 50], [20, 31]]);
|
|
2711
2821
|
}));
|
|
2712
2822
|
|
|
2713
2823
|
function onSubmit(_x2, _x3) {
|
|
@@ -3135,6 +3245,63 @@ var CheckoutForm = function CheckoutForm(_ref) {
|
|
|
3135
3245
|
}) : "Pay " + getCurrencySymbolByCurrency(currency) + total))));
|
|
3136
3246
|
};
|
|
3137
3247
|
|
|
3248
|
+
var showZero = function showZero(value) {
|
|
3249
|
+
if (value === void 0) {
|
|
3250
|
+
value = 0;
|
|
3251
|
+
}
|
|
3252
|
+
|
|
3253
|
+
var intNumber = Number(value);
|
|
3254
|
+
return _isNumber(intNumber) ? intNumber >= 0 && intNumber < 10 ? '0' + intNumber : intNumber : null;
|
|
3255
|
+
};
|
|
3256
|
+
|
|
3257
|
+
var TimerWidget = function TimerWidget(_ref) {
|
|
3258
|
+
var expires_at = _ref.expires_at,
|
|
3259
|
+
buyLoading = _ref.buyLoading,
|
|
3260
|
+
_ref$onCountdownFinis = _ref.onCountdownFinish,
|
|
3261
|
+
onCountdownFinish = _ref$onCountdownFinis === void 0 ? function () {} : _ref$onCountdownFinis;
|
|
3262
|
+
|
|
3263
|
+
var _useState = React.useState(true),
|
|
3264
|
+
showTimer = _useState[0],
|
|
3265
|
+
setShowTimer = _useState[1];
|
|
3266
|
+
|
|
3267
|
+
var handleCountdownFinish = function handleCountdownFinish() {
|
|
3268
|
+
setShowTimer(false);
|
|
3269
|
+
|
|
3270
|
+
if (!buyLoading) {
|
|
3271
|
+
onCountdownFinish();
|
|
3272
|
+
}
|
|
3273
|
+
};
|
|
3274
|
+
|
|
3275
|
+
var _renderer = function renderer(_ref2) {
|
|
3276
|
+
var minutes = _ref2.minutes,
|
|
3277
|
+
seconds = _ref2.seconds,
|
|
3278
|
+
completed = _ref2.completed,
|
|
3279
|
+
handleCountdownFinish = _ref2.handleCountdownFinish;
|
|
3280
|
+
|
|
3281
|
+
if (completed) {
|
|
3282
|
+
handleCountdownFinish();
|
|
3283
|
+
return null;
|
|
3284
|
+
}
|
|
3285
|
+
|
|
3286
|
+
return React__default.createElement("span", null, showZero(minutes), ":", showZero(seconds));
|
|
3287
|
+
};
|
|
3288
|
+
|
|
3289
|
+
return showTimer && !!expires_at ? React__default.createElement("div", {
|
|
3290
|
+
className: "timer"
|
|
3291
|
+
}, React__default.createElement("div", {
|
|
3292
|
+
className: "toast-message"
|
|
3293
|
+
}, React__default.createElement("p", null, "Please complete your purchase before the timer reaches zero."), React__default.createElement("p", {
|
|
3294
|
+
className: "countdown"
|
|
3295
|
+
}, React__default.createElement(Countdown$1, {
|
|
3296
|
+
date: Date.now() + expires_at * 1000,
|
|
3297
|
+
renderer: function renderer(props) {
|
|
3298
|
+
return _renderer(_extends({}, props, {
|
|
3299
|
+
handleCountdownFinish: handleCountdownFinish
|
|
3300
|
+
}));
|
|
3301
|
+
}
|
|
3302
|
+
})))) : null;
|
|
3303
|
+
};
|
|
3304
|
+
|
|
3138
3305
|
var publishableKey = CONFIGS.STRIPE_PUBLISHABLE_KEY || '';
|
|
3139
3306
|
|
|
3140
3307
|
var getStripePromise = function getStripePromise(reviewData) {
|
|
@@ -3195,7 +3362,11 @@ var PaymentContainer = function PaymentContainer(_ref) {
|
|
|
3195
3362
|
_ref$disableZipSectio = _ref.disableZipSection,
|
|
3196
3363
|
disableZipSection = _ref$disableZipSectio === void 0 ? false : _ref$disableZipSectio,
|
|
3197
3364
|
themeOptions = _ref.themeOptions,
|
|
3198
|
-
elementsOptions = _ref.elementsOptions
|
|
3365
|
+
elementsOptions = _ref.elementsOptions,
|
|
3366
|
+
_ref$onCountdownFinis = _ref.onCountdownFinish,
|
|
3367
|
+
onCountdownFinish = _ref$onCountdownFinis === void 0 ? function () {} : _ref$onCountdownFinis,
|
|
3368
|
+
_ref$enableTimer = _ref.enableTimer,
|
|
3369
|
+
enableTimer = _ref$enableTimer === void 0 ? false : _ref$enableTimer;
|
|
3199
3370
|
|
|
3200
3371
|
var _useState = React.useState(initialReviewValues),
|
|
3201
3372
|
reviewData = _useState[0],
|
|
@@ -3384,7 +3555,11 @@ var PaymentContainer = function PaymentContainer(_ref) {
|
|
|
3384
3555
|
theme: themeMui
|
|
3385
3556
|
}, React__default.createElement("div", {
|
|
3386
3557
|
className: "payment_page"
|
|
3387
|
-
}, error && React__default.createElement(
|
|
3558
|
+
}, !paymentIsLoading && !error && enableTimer && React__default.createElement(TimerWidget, {
|
|
3559
|
+
expires_at: _get(reviewData, 'expires_at', 0),
|
|
3560
|
+
buyLoading: paymentIsLoading,
|
|
3561
|
+
onCountdownFinish: onCountdownFinish
|
|
3562
|
+
}), error && React__default.createElement(Alert, {
|
|
3388
3563
|
severity: "error",
|
|
3389
3564
|
onClose: onErrorClose,
|
|
3390
3565
|
variant: "filled"
|
|
@@ -3807,9 +3982,10 @@ var TicketRow = function TicketRow(_ref) {
|
|
|
3807
3982
|
selectedTickets = _ref.selectedTickets,
|
|
3808
3983
|
handleTicketSelect = _ref.handleTicketSelect;
|
|
3809
3984
|
var soldOutMessage = ticketTier.soldOutMessage ? ("" + ticketTier.soldOutMessage).toUpperCase() : 'SOLD OUT';
|
|
3810
|
-
var isSalesClosed = !ticketTier.salesStarted || ticketTier.salesEnded
|
|
3985
|
+
var isSalesClosed = !ticketTier.salesStarted || ticketTier.salesEnded;
|
|
3811
3986
|
var options = getTicketSelectOptions(ticketTier.maxQuantity, ticketTier.minQuantity, ticketTier.multiplier);
|
|
3812
|
-
var
|
|
3987
|
+
var ticketsClosedMessage = !ticketTier.salesStarted ? 'Sales not started' : 'Sales Ended';
|
|
3988
|
+
var onSaleContent = isSalesClosed ? ticketsClosedMessage : React__default.createElement("div", {
|
|
3813
3989
|
className: "get-tickets"
|
|
3814
3990
|
}, React__default.createElement(Box, {
|
|
3815
3991
|
className: "get-tickets__selectbox"
|
|
@@ -3845,10 +4021,6 @@ var TicketRow = function TicketRow(_ref) {
|
|
|
3845
4021
|
returnValue = soldOutMessage;
|
|
3846
4022
|
}
|
|
3847
4023
|
|
|
3848
|
-
if (!+ticketTier.cost && !+ticketTier.price) {
|
|
3849
|
-
returnValue = 'FREE';
|
|
3850
|
-
}
|
|
3851
|
-
|
|
3852
4024
|
if (ticketTier.displayTicket) {
|
|
3853
4025
|
returnValue = onSaleContent;
|
|
3854
4026
|
}
|
|
@@ -3882,6 +4054,8 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
3882
4054
|
ticketIsDiscounted = true;
|
|
3883
4055
|
}
|
|
3884
4056
|
|
|
4057
|
+
var ticketIsFree = (+ticket.cost || +ticket.price) === 0;
|
|
4058
|
+
var ticketPrice = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : "$ " + (+ticket.cost || +ticket.price).toFixed(2);
|
|
3885
4059
|
return React__default.createElement("div", {
|
|
3886
4060
|
key: ticket.id || ticket.name,
|
|
3887
4061
|
className: "event-detail__tier " + (isSoldOut ? 'disabled' : '')
|
|
@@ -3893,21 +4067,19 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
3893
4067
|
className: "event-detail__tier-price"
|
|
3894
4068
|
}, ticketIsDiscounted && React__default.createElement("p", {
|
|
3895
4069
|
className: "old-price"
|
|
3896
|
-
}, "$ ", (+ticket.oldPrice).toFixed(2)), React__default.createElement("p", null,
|
|
4070
|
+
}, "$ ", (+ticket.oldPrice).toFixed(2)), React__default.createElement("p", null, ticketPrice), !isSoldOut && !ticketIsFree && React__default.createElement("p", {
|
|
3897
4071
|
className: "fees"
|
|
3898
4072
|
}, ticket.taxesIncluded ? '(incl. Fees)' : '(excl. Fees)')), React__default.createElement("div", {
|
|
3899
4073
|
className: "event-detail__tier-state",
|
|
3900
4074
|
style: {
|
|
3901
4075
|
minWidth: 55
|
|
3902
4076
|
}
|
|
3903
|
-
},
|
|
4077
|
+
}, React__default.createElement(TicketRow, {
|
|
3904
4078
|
ticketTier: ticket,
|
|
3905
4079
|
prevTicketTier: arr[i - 1],
|
|
3906
4080
|
selectedTickets: selectedTickets,
|
|
3907
4081
|
handleTicketSelect: ticketSelect
|
|
3908
|
-
})
|
|
3909
|
-
className: 'ticket-not-started-message'
|
|
3910
|
-
}, "Sales not started"))));
|
|
4082
|
+
}))));
|
|
3911
4083
|
}));
|
|
3912
4084
|
};
|
|
3913
4085
|
|
|
@@ -4255,7 +4427,9 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4255
4427
|
_ref$isAccessCodeEnab = _ref.isAccessCodeEnabled,
|
|
4256
4428
|
isAccessCodeEnabled = _ref$isAccessCodeEnab === void 0 ? false : _ref$isAccessCodeEnab,
|
|
4257
4429
|
_ref$hideSessionButto = _ref.hideSessionButtons,
|
|
4258
|
-
hideSessionButtons = _ref$hideSessionButto === void 0 ? false : _ref$hideSessionButto
|
|
4430
|
+
hideSessionButtons = _ref$hideSessionButto === void 0 ? false : _ref$hideSessionButto,
|
|
4431
|
+
_ref$hideWaitingList = _ref.hideWaitingList,
|
|
4432
|
+
hideWaitingList = _ref$hideWaitingList === void 0 ? false : _ref$hideWaitingList;
|
|
4259
4433
|
|
|
4260
4434
|
var _useState = React.useState({}),
|
|
4261
4435
|
selectedTickets = _useState[0],
|
|
@@ -4322,7 +4496,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4322
4496
|
}
|
|
4323
4497
|
}, []);
|
|
4324
4498
|
React.useEffect(function () {
|
|
4325
|
-
getTicketsApi();
|
|
4499
|
+
!!eventId && getTicketsApi();
|
|
4326
4500
|
}, [eventId, promoCodeUpdated]);
|
|
4327
4501
|
|
|
4328
4502
|
var handleLogout = function handleLogout() {
|
|
@@ -4442,7 +4616,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4442
4616
|
var _ref3 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
|
|
4443
4617
|
var _product_options, _product_options2, _ticket_types;
|
|
4444
4618
|
|
|
4445
|
-
var ticket, optionName, ticketId, ticketQuantity, data, result, _result$data$data$att, _result$data, _result$data$data, _result$data$data$att2, _result$data$data$att3, _result$data2, _result$data2$data, _result$data2$data$at, _result$data$data$att4, _result$data3, _result$data3$data, _result$data3$data$at, skipBillingPage, nameIsRequired, ageIsRequired, hash, _isWindowDefined, userData, access_token,
|
|
4619
|
+
var ticket, optionName, ticketId, ticketQuantity, data, result, _result$data$data$att, _result$data, _result$data$data, _result$data$data$att2, _result$data$data$att3, _result$data2, _result$data2$data, _result$data2$data$at, _result$data$data$att4, _result$data3, _result$data3$data, _result$data3$data$at, skipBillingPage, nameIsRequired, ageIsRequired, hash, _isWindowDefined, userData, access_token, checkoutBody, checkoutResult;
|
|
4446
4620
|
|
|
4447
4621
|
return runtime_1.wrap(function _callee$(_context) {
|
|
4448
4622
|
while (1) {
|
|
@@ -4475,7 +4649,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4475
4649
|
result = _context.sent;
|
|
4476
4650
|
|
|
4477
4651
|
if (!(result.status === 200)) {
|
|
4478
|
-
_context.next =
|
|
4652
|
+
_context.next = 26;
|
|
4479
4653
|
break;
|
|
4480
4654
|
}
|
|
4481
4655
|
|
|
@@ -4486,7 +4660,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4486
4660
|
hash = '';
|
|
4487
4661
|
|
|
4488
4662
|
if (!skipBillingPage) {
|
|
4489
|
-
_context.next =
|
|
4663
|
+
_context.next = 25;
|
|
4490
4664
|
break;
|
|
4491
4665
|
}
|
|
4492
4666
|
|
|
@@ -4494,16 +4668,15 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4494
4668
|
_isWindowDefined = typeof window !== 'undefined';
|
|
4495
4669
|
userData = _isWindowDefined && window.localStorage.getItem('user_data') ? JSON.parse(window.localStorage.getItem('user_data') || '') : {};
|
|
4496
4670
|
access_token = _isWindowDefined && window.localStorage.getItem('access_token') ? window.localStorage.getItem('access_token') || '' : '';
|
|
4497
|
-
|
|
4498
|
-
|
|
4499
|
-
_context.next = 24;
|
|
4671
|
+
checkoutBody = createCheckoutDataBodyWithDefaultHolder(ticketQuantity, userData);
|
|
4672
|
+
_context.next = 23;
|
|
4500
4673
|
return postOnCheckout(checkoutBody, access_token);
|
|
4501
4674
|
|
|
4502
|
-
case
|
|
4675
|
+
case 23:
|
|
4503
4676
|
checkoutResult = _context.sent;
|
|
4504
4677
|
hash = _get(checkoutResult, 'data.data.attributes.hash');
|
|
4505
4678
|
|
|
4506
|
-
case
|
|
4679
|
+
case 25:
|
|
4507
4680
|
onAddToCartSuccess({
|
|
4508
4681
|
skip_billing_page: skipBillingPage,
|
|
4509
4682
|
names_required: nameIsRequired,
|
|
@@ -4512,29 +4685,29 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4512
4685
|
hash: hash
|
|
4513
4686
|
});
|
|
4514
4687
|
|
|
4515
|
-
case
|
|
4516
|
-
_context.next =
|
|
4688
|
+
case 26:
|
|
4689
|
+
_context.next = 31;
|
|
4517
4690
|
break;
|
|
4518
4691
|
|
|
4519
|
-
case
|
|
4520
|
-
_context.prev =
|
|
4692
|
+
case 28:
|
|
4693
|
+
_context.prev = 28;
|
|
4521
4694
|
_context.t0 = _context["catch"](6);
|
|
4522
4695
|
|
|
4523
4696
|
if (axios.isAxiosError(_context.t0)) {
|
|
4524
4697
|
onAddToCartError(_context.t0);
|
|
4525
4698
|
}
|
|
4526
4699
|
|
|
4527
|
-
case
|
|
4528
|
-
_context.prev =
|
|
4700
|
+
case 31:
|
|
4701
|
+
_context.prev = 31;
|
|
4529
4702
|
setHandleBookIsLoading(false);
|
|
4530
|
-
return _context.finish(
|
|
4703
|
+
return _context.finish(31);
|
|
4531
4704
|
|
|
4532
|
-
case
|
|
4705
|
+
case 34:
|
|
4533
4706
|
case "end":
|
|
4534
4707
|
return _context.stop();
|
|
4535
4708
|
}
|
|
4536
4709
|
}
|
|
4537
|
-
}, _callee, null, [[6,
|
|
4710
|
+
}, _callee, null, [[6, 28, 31, 34]]);
|
|
4538
4711
|
}));
|
|
4539
4712
|
|
|
4540
4713
|
return function handleBook() {
|
|
@@ -4585,7 +4758,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4585
4758
|
title: "Sales start in:",
|
|
4586
4759
|
message: "No tickets are currently available for this event.",
|
|
4587
4760
|
callback: updateTickets
|
|
4588
|
-
}) : null, showWaitingList && event.salesStarted && React__default.createElement(WaitingList, {
|
|
4761
|
+
}) : null, showWaitingList && event.salesStarted && !hideWaitingList && React__default.createElement(WaitingList, {
|
|
4589
4762
|
tickets: tickets,
|
|
4590
4763
|
eventId: eventId
|
|
4591
4764
|
}), React__default.createElement(PromoCodeSection, {
|