tf-checkout-react 1.0.77 → 1.0.81
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/api/index.d.ts +1 -0
- package/dist/components/billing-info-container/index.d.ts +1 -1
- package/dist/components/common/FormikPhoneNumberField.d.ts +1 -1
- package/dist/components/countdown/index.d.ts +11 -0
- package/dist/components/orderDetailsContainer/ticketsTable.d.ts +13 -1
- package/dist/components/paymentContainer/index.d.ts +5 -2
- package/dist/components/ticketsContainer/PromoCodeSection.d.ts +2 -1
- package/dist/components/ticketsContainer/index.d.ts +10 -1
- package/dist/components/waitingList/index.d.ts +1 -2
- package/dist/hooks/usePrevious.d.ts +1 -0
- package/dist/tf-checkout-react.cjs.development.js +458 -156
- 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 +460 -158
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/dist/tf-checkout-styles.css +1 -1
- package/dist/utils/downloadPDF.d.ts +1 -0
- package/dist/utils/index.d.ts +1 -0
- package/package.json +2 -1
- package/src/api/index.ts +9 -0
- package/src/components/billing-info-container/index.tsx +19 -6
- package/src/components/common/CheckboxField.tsx +13 -9
- package/src/components/common/FormikPhoneNumberField.tsx +2 -1
- package/src/components/countdown/index.tsx +89 -0
- package/src/components/countdown/style.css +10 -0
- package/src/components/loginModal/index.tsx +2 -0
- package/src/components/orderDetailsContainer/ticketsTable.tsx +66 -60
- package/src/components/paymentContainer/index.tsx +6 -3
- package/src/components/stripePayment/index.tsx +3 -3
- package/src/components/ticketsContainer/PromoCodeSection.tsx +46 -32
- package/src/components/ticketsContainer/TicketsSection.tsx +10 -6
- package/src/components/ticketsContainer/index.tsx +191 -70
- package/src/components/ticketsContainer/style.css +7 -0
- package/src/components/waitingList/index.tsx +3 -9
- package/src/components/waitingList/style.css +4 -2
- package/src/hooks/usePrevious.tsx +9 -0
- package/src/utils/downloadPDF.tsx +30 -0
- package/src/utils/index.ts +2 -1
|
@@ -12,6 +12,7 @@ var _identity = _interopDefault(require('lodash/identity'));
|
|
|
12
12
|
var _map = _interopDefault(require('lodash/map'));
|
|
13
13
|
var _get = _interopDefault(require('lodash/get'));
|
|
14
14
|
var _includes = _interopDefault(require('lodash/includes'));
|
|
15
|
+
var _isEqual = _interopDefault(require('lodash/isEqual'));
|
|
15
16
|
var axios = _interopDefault(require('axios'));
|
|
16
17
|
var _forEach = _interopDefault(require('lodash/forEach'));
|
|
17
18
|
var material = require('@mui/material');
|
|
@@ -44,6 +45,8 @@ var _has = _interopDefault(require('lodash/has'));
|
|
|
44
45
|
var FormControl = _interopDefault(require('@mui/material/FormControl'));
|
|
45
46
|
var MenuItem = _interopDefault(require('@mui/material/MenuItem'));
|
|
46
47
|
var SVG = _interopDefault(require('react-inlinesvg'));
|
|
48
|
+
var moment = _interopDefault(require('moment-timezone'));
|
|
49
|
+
var privateTheming = require('@mui/private-theming');
|
|
47
50
|
var Table = _interopDefault(require('@mui/material/Table'));
|
|
48
51
|
var TableBody = _interopDefault(require('@mui/material/TableBody'));
|
|
49
52
|
var TableCell = _interopDefault(require('@mui/material/TableCell'));
|
|
@@ -994,6 +997,61 @@ var ErrorFocusInternal = /*#__PURE__*/function (_Component) {
|
|
|
994
997
|
|
|
995
998
|
var ErrorFocus = /*#__PURE__*/formik.connect(ErrorFocusInternal);
|
|
996
999
|
|
|
1000
|
+
var downloadPDF = function downloadPDF(pdfUrl) {
|
|
1001
|
+
if (typeof window === 'undefined') return;
|
|
1002
|
+
var accessToken = localStorage.getItem('access_token');
|
|
1003
|
+
if (!accessToken) return;
|
|
1004
|
+
fetch(pdfUrl, {
|
|
1005
|
+
headers: {
|
|
1006
|
+
Authorization: "Bearer " + accessToken
|
|
1007
|
+
}
|
|
1008
|
+
}).then( /*#__PURE__*/function () {
|
|
1009
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(response) {
|
|
1010
|
+
var blobValue, fileNameHeader, fileName;
|
|
1011
|
+
return runtime_1.wrap(function _callee$(_context) {
|
|
1012
|
+
while (1) {
|
|
1013
|
+
switch (_context.prev = _context.next) {
|
|
1014
|
+
case 0:
|
|
1015
|
+
_context.next = 2;
|
|
1016
|
+
return response.blob();
|
|
1017
|
+
|
|
1018
|
+
case 2:
|
|
1019
|
+
blobValue = _context.sent;
|
|
1020
|
+
fileNameHeader = response.headers.get("content-disposition") || '';
|
|
1021
|
+
fileName = fileNameHeader.split('"')[1];
|
|
1022
|
+
return _context.abrupt("return", {
|
|
1023
|
+
blobValue: blobValue,
|
|
1024
|
+
fileName: fileName
|
|
1025
|
+
});
|
|
1026
|
+
|
|
1027
|
+
case 6:
|
|
1028
|
+
case "end":
|
|
1029
|
+
return _context.stop();
|
|
1030
|
+
}
|
|
1031
|
+
}
|
|
1032
|
+
}, _callee);
|
|
1033
|
+
}));
|
|
1034
|
+
|
|
1035
|
+
return function (_x) {
|
|
1036
|
+
return _ref.apply(this, arguments);
|
|
1037
|
+
};
|
|
1038
|
+
}()).then(function (_ref2) {
|
|
1039
|
+
var blobValue = _ref2.blobValue,
|
|
1040
|
+
fileName = _ref2.fileName;
|
|
1041
|
+
if (!fileName) return;
|
|
1042
|
+
var file = new Blob([blobValue], {
|
|
1043
|
+
type: 'application/pdf'
|
|
1044
|
+
});
|
|
1045
|
+
var fileURL = URL.createObjectURL(file);
|
|
1046
|
+
var link = document.createElement('a');
|
|
1047
|
+
link.href = fileURL;
|
|
1048
|
+
link.setAttribute('download', fileName);
|
|
1049
|
+
document.body.appendChild(link);
|
|
1050
|
+
link.click();
|
|
1051
|
+
document.body.removeChild(link);
|
|
1052
|
+
});
|
|
1053
|
+
};
|
|
1054
|
+
|
|
997
1055
|
var createCheckoutDataBodyWithDefaultHolder = function createCheckoutDataBodyWithDefaultHolder(ticketsQuantity, logedInValues) {
|
|
998
1056
|
var ticket_holders = [];
|
|
999
1057
|
var first_name = _get(logedInValues, 'firstName') || _get(logedInValues, 'first_name') || '';
|
|
@@ -1134,6 +1192,14 @@ var handleSetAccessToken = function handleSetAccessToken(token) {
|
|
|
1134
1192
|
}
|
|
1135
1193
|
}
|
|
1136
1194
|
};
|
|
1195
|
+
function getEvent(id) {
|
|
1196
|
+
var response = publicRequest.get("v1/event/" + id, {
|
|
1197
|
+
headers: ttfHeaders
|
|
1198
|
+
})["catch"](function (error) {
|
|
1199
|
+
throw error;
|
|
1200
|
+
});
|
|
1201
|
+
return response;
|
|
1202
|
+
}
|
|
1137
1203
|
function getTickets(id, promoCode) {
|
|
1138
1204
|
var response = publicRequest.get("v1/event/" + id + "/tickets/", {
|
|
1139
1205
|
headers: promoCode ? _extends({}, ttfHeaders, {
|
|
@@ -1269,7 +1335,7 @@ var LoginModal = function LoginModal(_ref) {
|
|
|
1269
1335
|
},
|
|
1270
1336
|
onSubmit: function () {
|
|
1271
1337
|
var _onSubmit = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee(_ref2) {
|
|
1272
|
-
var email, password, bodyFormData, resAutorize, bodyFormDataToken, resAccessToken, accessToken, profileResponse, profileSpecifiedData, profileDataObj, _e$response, _e$response$data, _error;
|
|
1338
|
+
var email, password, bodyFormData, resAutorize, bodyFormDataToken, resAccessToken, accessToken, profileResponse, profileSpecifiedData, profileDataObj, event, _e$response, _e$response$data, _error;
|
|
1273
1339
|
|
|
1274
1340
|
return runtime_1.wrap(function _callee$(_context) {
|
|
1275
1341
|
while (1) {
|
|
@@ -1348,6 +1414,8 @@ var LoginModal = function LoginModal(_ref) {
|
|
|
1348
1414
|
if (typeof window !== 'undefined') {
|
|
1349
1415
|
window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
|
|
1350
1416
|
window.localStorage.setItem('access_token', accessToken);
|
|
1417
|
+
event = new window.CustomEvent('tf-login');
|
|
1418
|
+
window.document.dispatchEvent(event);
|
|
1351
1419
|
}
|
|
1352
1420
|
|
|
1353
1421
|
onLogin();
|
|
@@ -1853,18 +1921,22 @@ var CustomField = function CustomField(_ref) {
|
|
|
1853
1921
|
|
|
1854
1922
|
var _excluded$1 = ["label", "field", "selectOptions", "theme", "setFieldValue"];
|
|
1855
1923
|
var CheckboxField = function CheckboxField(_ref) {
|
|
1924
|
+
var _rest$form, _field$name, _rest$form2, _field$name2;
|
|
1925
|
+
|
|
1856
1926
|
var label = _ref.label,
|
|
1857
1927
|
field = _ref.field,
|
|
1858
1928
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$1);
|
|
1859
1929
|
|
|
1860
1930
|
var customTheme = styles.useTheme();
|
|
1861
|
-
return React__default.createElement(
|
|
1931
|
+
return React__default.createElement(material.FormControl, {
|
|
1932
|
+
error: !!(rest != null && (_rest$form = rest.form) != null && _rest$form.errors && rest.form.errors[(_field$name = field == null ? void 0 : field.name) != null ? _field$name : ""])
|
|
1933
|
+
}, React__default.createElement(FormGroup, null, React__default.createElement(FormControlLabel, {
|
|
1862
1934
|
control: React__default.createElement(Checkbox, Object.assign({}, field, rest)),
|
|
1863
1935
|
label: label,
|
|
1864
1936
|
componentsProps: {
|
|
1865
1937
|
typography: customTheme == null ? void 0 : customTheme.checkbox
|
|
1866
1938
|
}
|
|
1867
|
-
}));
|
|
1939
|
+
})), !!(rest != null && (_rest$form2 = rest.form) != null && _rest$form2.errors && rest.form.errors[(_field$name2 = field == null ? void 0 : field.name) != null ? _field$name2 : ""]) ? React__default.createElement(material.FormHelperText, null, "Required") : null);
|
|
1868
1940
|
};
|
|
1869
1941
|
|
|
1870
1942
|
var SelectField = function SelectField(_ref) {
|
|
@@ -1998,6 +2070,7 @@ var FormikPhoneNumberField = function FormikPhoneNumberField(_ref) {
|
|
|
1998
2070
|
_ref$form = _ref.form,
|
|
1999
2071
|
touched = _ref$form.touched,
|
|
2000
2072
|
errors = _ref$form.errors,
|
|
2073
|
+
initialValues = _ref$form.initialValues,
|
|
2001
2074
|
setFieldValue = _ref.setFieldValue,
|
|
2002
2075
|
rest = _objectWithoutPropertiesLoose(_ref, _excluded$2);
|
|
2003
2076
|
|
|
@@ -2007,6 +2080,7 @@ var FormikPhoneNumberField = function FormikPhoneNumberField(_ref) {
|
|
|
2007
2080
|
var customTheme = styles.useTheme();
|
|
2008
2081
|
return React__default.createElement(MuiPhoneNumber, Object.assign({
|
|
2009
2082
|
name: 'phone',
|
|
2083
|
+
value: initialValues.phone,
|
|
2010
2084
|
onChange: function onChange(e) {
|
|
2011
2085
|
return setFieldValue("phone", removePlusSign(e));
|
|
2012
2086
|
},
|
|
@@ -2027,6 +2101,14 @@ var FormikPhoneNumberField = function FormikPhoneNumberField(_ref) {
|
|
|
2027
2101
|
}, rest));
|
|
2028
2102
|
};
|
|
2029
2103
|
|
|
2104
|
+
var usePrevious = function usePrevious(value) {
|
|
2105
|
+
var ref = React.useRef();
|
|
2106
|
+
React.useEffect(function () {
|
|
2107
|
+
ref.current = value;
|
|
2108
|
+
});
|
|
2109
|
+
return ref.current;
|
|
2110
|
+
};
|
|
2111
|
+
|
|
2030
2112
|
var LogicRunner = function LogicRunner(_ref) {
|
|
2031
2113
|
var values = _ref.values,
|
|
2032
2114
|
setStates = _ref.setStates,
|
|
@@ -2164,7 +2246,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2164
2246
|
_ref3$onGetStatesErro = _ref3.onGetStatesError,
|
|
2165
2247
|
onGetStatesError = _ref3$onGetStatesErro === void 0 ? function () {} : _ref3$onGetStatesErro,
|
|
2166
2248
|
_ref3$onGetProfileDat = _ref3.onGetProfileDataSuccess,
|
|
2167
|
-
|
|
2249
|
+
_onGetProfileDataSuccess = _ref3$onGetProfileDat === void 0 ? function () {} : _ref3$onGetProfileDat,
|
|
2168
2250
|
_ref3$onGetProfileDat2 = _ref3.onGetProfileDataError,
|
|
2169
2251
|
onGetProfileDataError = _ref3$onGetProfileDat2 === void 0 ? function () {} : _ref3$onGetProfileDat2,
|
|
2170
2252
|
_ref3$onAuthorizeSucc = _ref3.onAuthorizeSuccess,
|
|
@@ -2180,6 +2262,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2180
2262
|
accountInfoTitle = _ref3$accountInfoTitl === void 0 ? '' : _ref3$accountInfoTitl,
|
|
2181
2263
|
hideLogo = _ref3.hideLogo,
|
|
2182
2264
|
themeOptions = _ref3.themeOptions;
|
|
2265
|
+
|
|
2183
2266
|
var themeMui = styles$1.createTheme(themeOptions);
|
|
2184
2267
|
var isWindowDefined = typeof window !== 'undefined';
|
|
2185
2268
|
var userData = isWindowDefined && window.localStorage.getItem('user_data') ? JSON.parse(window.localStorage.getItem('user_data') || '') : {};
|
|
@@ -2254,9 +2337,14 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2254
2337
|
|
|
2255
2338
|
var optedInFieldValue = _get(cartInfoData, 'optedIn', false);
|
|
2256
2339
|
|
|
2257
|
-
var
|
|
2340
|
+
var ttfOptIn = _get(cartInfoData, 'ttfOptIn', false);
|
|
2341
|
+
|
|
2342
|
+
var hideTtfOptIn = _get(cartInfoData, 'hide_ttf_opt_in', true); // Get prevProps
|
|
2258
2343
|
|
|
2259
|
-
|
|
2344
|
+
|
|
2345
|
+
var prevData = usePrevious(data);
|
|
2346
|
+
|
|
2347
|
+
if (!_get(dataWithUniqueIds, '[0].uniqueId') || !_isEqual(prevData, data)) {
|
|
2260
2348
|
setDataWithUniqueIds(assingUniqueIds(data));
|
|
2261
2349
|
}
|
|
2262
2350
|
|
|
@@ -2411,7 +2499,8 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2411
2499
|
lastName: profileDataObj.last_name
|
|
2412
2500
|
}));
|
|
2413
2501
|
window.localStorage.setItem('user_data', JSON.stringify(profileDataObj));
|
|
2414
|
-
|
|
2502
|
+
|
|
2503
|
+
_onGetProfileDataSuccess(userDataResponse.data);
|
|
2415
2504
|
|
|
2416
2505
|
case 10:
|
|
2417
2506
|
_context4.next = 15;
|
|
@@ -2447,7 +2536,8 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2447
2536
|
initialValues: getInitialValues(dataWithUniqueIds, _extends({}, initialValues, {
|
|
2448
2537
|
country: _get(userData, 'country', '') || "1",
|
|
2449
2538
|
state: _get(userData, 'state', '') || "1",
|
|
2450
|
-
brand_opt_in: optedInFieldValue
|
|
2539
|
+
brand_opt_in: optedInFieldValue,
|
|
2540
|
+
ttf_opt_in: ttfOptIn
|
|
2451
2541
|
}), userValues),
|
|
2452
2542
|
enableReinitialize: true,
|
|
2453
2543
|
onSubmit: function () {
|
|
@@ -2691,13 +2781,13 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2691
2781
|
var groupClassname = group.groupClassname,
|
|
2692
2782
|
groupItems = group.groupItems;
|
|
2693
2783
|
return React__default.createElement("div", {
|
|
2694
|
-
key: group.
|
|
2784
|
+
key: group.id
|
|
2695
2785
|
}, React__default.createElement("div", {
|
|
2696
2786
|
className: groupClassname
|
|
2697
2787
|
}, _map(groupItems, function (element) {
|
|
2698
2788
|
return React__default.createElement("div", {
|
|
2699
2789
|
className: element.className,
|
|
2700
|
-
key: element.
|
|
2790
|
+
key: element.name
|
|
2701
2791
|
}, React__default.createElement(formik.Field, {
|
|
2702
2792
|
name: element.name + "-" + index,
|
|
2703
2793
|
label: element.label,
|
|
@@ -2731,7 +2821,11 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2731
2821
|
userExpired: userExpired,
|
|
2732
2822
|
onAuthorizeSuccess: onAuthorizeSuccess,
|
|
2733
2823
|
onAuthorizeError: onAuthorizeError,
|
|
2734
|
-
onGetProfileDataSuccess: onGetProfileDataSuccess
|
|
2824
|
+
onGetProfileDataSuccess: function onGetProfileDataSuccess(data) {
|
|
2825
|
+
fetchCart();
|
|
2826
|
+
|
|
2827
|
+
_onGetProfileDataSuccess(data);
|
|
2828
|
+
},
|
|
2735
2829
|
onGetProfileDataError: onGetProfileDataError
|
|
2736
2830
|
}), showModalRegister && React__default.createElement(RegisterModal, {
|
|
2737
2831
|
onClose: function onClose() {
|
|
@@ -2740,7 +2834,11 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
2740
2834
|
onRegister: function onRegister() {
|
|
2741
2835
|
setShowModalRegister(false);
|
|
2742
2836
|
},
|
|
2743
|
-
onGetProfileDataSuccess: onGetProfileDataSuccess
|
|
2837
|
+
onGetProfileDataSuccess: function onGetProfileDataSuccess(data) {
|
|
2838
|
+
fetchCart();
|
|
2839
|
+
|
|
2840
|
+
_onGetProfileDataSuccess(data);
|
|
2841
|
+
},
|
|
2744
2842
|
onGetProfileDataError: onGetProfileDataError
|
|
2745
2843
|
}));
|
|
2746
2844
|
};
|
|
@@ -2964,7 +3062,7 @@ var CheckoutForm = function CheckoutForm(_ref) {
|
|
|
2964
3062
|
}, React__default.createElement("span", {
|
|
2965
3063
|
className: "card_label_text"
|
|
2966
3064
|
}, "Card number"), React__default.createElement(reactStripeJs.CardNumberElement, {
|
|
2967
|
-
options: _extends({}, options
|
|
3065
|
+
options: _extends({}, options, stripeCardOptions),
|
|
2968
3066
|
onReady: _identity,
|
|
2969
3067
|
onChange: _identity,
|
|
2970
3068
|
onBlur: _identity,
|
|
@@ -2974,13 +3072,13 @@ var CheckoutForm = function CheckoutForm(_ref) {
|
|
|
2974
3072
|
}, React__default.createElement("span", {
|
|
2975
3073
|
className: "card_label_text"
|
|
2976
3074
|
}, "Expiration date"), React__default.createElement(reactStripeJs.CardExpiryElement, {
|
|
2977
|
-
options: _extends({}, options
|
|
3075
|
+
options: _extends({}, options, stripeCardOptions)
|
|
2978
3076
|
})), React__default.createElement("label", {
|
|
2979
3077
|
className: "cvc_element"
|
|
2980
3078
|
}, React__default.createElement("span", {
|
|
2981
3079
|
className: "card_label_text"
|
|
2982
3080
|
}, "CVC"), React__default.createElement(reactStripeJs.CardCvcElement, {
|
|
2983
|
-
options: _extends({}, options
|
|
3081
|
+
options: _extends({}, options, stripeCardOptions)
|
|
2984
3082
|
})), !disableZipSection && React__default.createElement("label", {
|
|
2985
3083
|
className: "zip_element"
|
|
2986
3084
|
}, React__default.createElement("p", {
|
|
@@ -3072,7 +3170,8 @@ var PaymentContainer = function PaymentContainer(_ref) {
|
|
|
3072
3170
|
stripeCardOptions = _ref$stripeCardOption === void 0 ? {} : _ref$stripeCardOption,
|
|
3073
3171
|
_ref$disableZipSectio = _ref.disableZipSection,
|
|
3074
3172
|
disableZipSection = _ref$disableZipSectio === void 0 ? false : _ref$disableZipSectio,
|
|
3075
|
-
themeOptions = _ref.themeOptions
|
|
3173
|
+
themeOptions = _ref.themeOptions,
|
|
3174
|
+
elementsOptions = _ref.elementsOptions;
|
|
3076
3175
|
|
|
3077
3176
|
var _useState = React.useState(initialReviewValues),
|
|
3078
3177
|
reviewData = _useState[0],
|
|
@@ -3293,7 +3392,8 @@ var PaymentContainer = function PaymentContainer(_ref) {
|
|
|
3293
3392
|
}, "Please provide your payment information"), showErrorText && React__default.createElement("p", {
|
|
3294
3393
|
className: "payment_info__error"
|
|
3295
3394
|
}, errorText), React__default.createElement("div", null, React__default.createElement(reactStripeJs.Elements, {
|
|
3296
|
-
stripe: getStripePromise(reviewData)
|
|
3395
|
+
stripe: getStripePromise(reviewData),
|
|
3396
|
+
options: elementsOptions
|
|
3297
3397
|
}, React__default.createElement(CheckoutForm, {
|
|
3298
3398
|
stripe_client_secret: _get(reviewData, 'payment_method.stripe_client_secret'),
|
|
3299
3399
|
total: orderData.total,
|
|
@@ -3776,12 +3876,14 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
3776
3876
|
style: {
|
|
3777
3877
|
minWidth: 55
|
|
3778
3878
|
}
|
|
3779
|
-
}, React__default.createElement(TicketRow, {
|
|
3879
|
+
}, ticket.salesStarted ? React__default.createElement(TicketRow, {
|
|
3780
3880
|
ticketTier: ticket,
|
|
3781
3881
|
prevTicketTier: arr[i - 1],
|
|
3782
3882
|
selectedTickets: selectedTickets,
|
|
3783
3883
|
handleTicketSelect: ticketSelect
|
|
3784
|
-
})
|
|
3884
|
+
}) : React__default.createElement("p", {
|
|
3885
|
+
className: 'ticket-not-started-message'
|
|
3886
|
+
}, "Sales not started"))));
|
|
3785
3887
|
}));
|
|
3786
3888
|
};
|
|
3787
3889
|
|
|
@@ -3801,8 +3903,7 @@ var generateQuantity = function generateQuantity(n) {
|
|
|
3801
3903
|
var WaitingList = function WaitingList(_ref) {
|
|
3802
3904
|
var _ref$tickets = _ref.tickets,
|
|
3803
3905
|
tickets = _ref$tickets === void 0 ? {} : _ref$tickets,
|
|
3804
|
-
eventId = _ref.eventId
|
|
3805
|
-
isPromotionsEnabled = _ref.isPromotionsEnabled;
|
|
3906
|
+
eventId = _ref.eventId;
|
|
3806
3907
|
|
|
3807
3908
|
var _useState = React.useState(false),
|
|
3808
3909
|
showSuccessMessage = _useState[0],
|
|
@@ -3877,9 +3978,7 @@ var WaitingList = function WaitingList(_ref) {
|
|
|
3877
3978
|
className: "success-message"
|
|
3878
3979
|
}, React__default.createElement("p", {
|
|
3879
3980
|
className: "added-success-message"
|
|
3880
|
-
}, "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,
|
|
3881
|
-
className: "no-tickets-text"
|
|
3882
|
-
}, "No tickets are currently available for this event."), React__default.createElement("h2", null, "WAITING LIST"), React__default.createElement(formik.Formik, {
|
|
3981
|
+
}, "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, {
|
|
3883
3982
|
initialValues: {
|
|
3884
3983
|
ticketTypeId: '',
|
|
3885
3984
|
quantity: '',
|
|
@@ -3969,10 +4068,42 @@ var PromoCodeSection = function PromoCodeSection(_ref) {
|
|
|
3969
4068
|
promoCodeIsApplied = _ref.promoCodeIsApplied,
|
|
3970
4069
|
showPromoInput = _ref.showPromoInput,
|
|
3971
4070
|
isPromotionsEnabled = _ref.isPromotionsEnabled,
|
|
3972
|
-
isAllTicketsSoldOut = _ref.isAllTicketsSoldOut,
|
|
3973
4071
|
setPromoCode = _ref.setPromoCode,
|
|
3974
4072
|
setPromoCodeUpdated = _ref.setPromoCodeUpdated,
|
|
3975
|
-
setShowPromoInput = _ref.setShowPromoInput
|
|
4073
|
+
setShowPromoInput = _ref.setShowPromoInput,
|
|
4074
|
+
isAccessCodeEnabled = _ref.isAccessCodeEnabled;
|
|
4075
|
+
var isPromoCodeHasValue = !!promoCode.trim();
|
|
4076
|
+
|
|
4077
|
+
var renderInputField = function renderInputField() {
|
|
4078
|
+
return React__default.createElement("div", {
|
|
4079
|
+
className: "promo-code-block"
|
|
4080
|
+
}, React__default.createElement("div", {
|
|
4081
|
+
className: "promo-code-block"
|
|
4082
|
+
}, React__default.createElement("p", {
|
|
4083
|
+
className: "promo-code-text"
|
|
4084
|
+
}, isAccessCodeEnabled ? 'Access code required' : 'Promo code')), React__default.createElement("input", {
|
|
4085
|
+
className: "promo-code-input",
|
|
4086
|
+
placeholder: "",
|
|
4087
|
+
onChange: function onChange(e) {
|
|
4088
|
+
setPromoCode(e.target.value);
|
|
4089
|
+
},
|
|
4090
|
+
onKeyPress: function onKeyPress(event) {
|
|
4091
|
+
if (event.key === 'Enter' && isPromoCodeHasValue) {
|
|
4092
|
+
setPromoCodeUpdated(promoCode);
|
|
4093
|
+
setShowPromoInput(false);
|
|
4094
|
+
}
|
|
4095
|
+
}
|
|
4096
|
+
}), React__default.createElement(Button$1, {
|
|
4097
|
+
className: "promo-submit-button",
|
|
4098
|
+
onClick: function onClick() {
|
|
4099
|
+
if (isPromoCodeHasValue) {
|
|
4100
|
+
setPromoCodeUpdated(promoCode);
|
|
4101
|
+
setShowPromoInput(false);
|
|
4102
|
+
}
|
|
4103
|
+
}
|
|
4104
|
+
}, isAccessCodeEnabled ? 'ENTER' : 'APPLY'));
|
|
4105
|
+
};
|
|
4106
|
+
|
|
3976
4107
|
return React__default.createElement("div", null, promoCodeIsApplied ? React__default.createElement("div", {
|
|
3977
4108
|
className: "alert-info"
|
|
3978
4109
|
}, React__default.createElement(SVG, {
|
|
@@ -3980,35 +4111,95 @@ var PromoCodeSection = function PromoCodeSection(_ref) {
|
|
|
3980
4111
|
preProcessor: function preProcessor(code) {
|
|
3981
4112
|
return code.replace(/fill=".*?"/g, 'fill="currentColor"');
|
|
3982
4113
|
}
|
|
3983
|
-
}), React__default.createElement("p",
|
|
3984
|
-
className: "promo-code-
|
|
3985
|
-
}, React__default.createElement(
|
|
3986
|
-
placeholder: "Promo Code",
|
|
3987
|
-
onChange: function onChange(e) {
|
|
3988
|
-
setPromoCode(e.target.value);
|
|
3989
|
-
},
|
|
3990
|
-
onKeyPress: function onKeyPress(event) {
|
|
3991
|
-
if (event.key === 'Enter') {
|
|
3992
|
-
setPromoCodeUpdated(promoCode);
|
|
3993
|
-
}
|
|
3994
|
-
}
|
|
3995
|
-
}), React__default.createElement(Button$1, {
|
|
3996
|
-
className: "promo-apply-button",
|
|
3997
|
-
placeholder: "Promo Code",
|
|
3998
|
-
onClick: function onClick() {
|
|
3999
|
-
setPromoCodeUpdated(promoCode);
|
|
4000
|
-
}
|
|
4001
|
-
}, "Apply")), isPromotionsEnabled && !showPromoInput && isAllTicketsSoldOut && React__default.createElement("p", {
|
|
4002
|
-
className: "promo-code-text"
|
|
4003
|
-
}, "Access code needed"), isPromotionsEnabled && !showPromoInput ? React__default.createElement(Button$1, {
|
|
4114
|
+
}), React__default.createElement("p", {
|
|
4115
|
+
className: "promo-code-success"
|
|
4116
|
+
}, "PROMO CODE APPLIED SUCCESSFULLY")) : null, showPromoInput && renderInputField(), isPromotionsEnabled && !showPromoInput && !isAccessCodeEnabled ? React__default.createElement(Button$1, {
|
|
4004
4117
|
className: "promo-code-button",
|
|
4005
4118
|
placeholder: "Promo Codes",
|
|
4006
4119
|
onClick: function onClick() {
|
|
4007
4120
|
setShowPromoInput(true);
|
|
4008
4121
|
}
|
|
4009
|
-
}, "Got a promo code? Click here") : null);
|
|
4122
|
+
}, "Got a promo code? Click here") : !isPromotionsEnabled && !showPromoInput && isAccessCodeEnabled && !promoCodeIsApplied ? renderInputField() : null);
|
|
4123
|
+
};
|
|
4124
|
+
|
|
4125
|
+
var isTimeExpired = function isTimeExpired(startDate, timezone) {
|
|
4126
|
+
return !moment(startDate).isAfter(moment.tz(moment(), timezone).format('YYYY-MM-DD HH:mm:ss'));
|
|
4010
4127
|
};
|
|
4011
4128
|
|
|
4129
|
+
function Countdown(_ref) {
|
|
4130
|
+
var startDate = _ref.startDate,
|
|
4131
|
+
_ref$timezone = _ref.timezone,
|
|
4132
|
+
timezone = _ref$timezone === void 0 ? moment.tz.guess() : _ref$timezone,
|
|
4133
|
+
_ref$title = _ref.title,
|
|
4134
|
+
title = _ref$title === void 0 ? '' : _ref$title,
|
|
4135
|
+
_ref$message = _ref.message,
|
|
4136
|
+
message = _ref$message === void 0 ? '' : _ref$message,
|
|
4137
|
+
_ref$callback = _ref.callback,
|
|
4138
|
+
callback = _ref$callback === void 0 ? function () {} : _ref$callback;
|
|
4139
|
+
|
|
4140
|
+
var _useState = React.useState(''),
|
|
4141
|
+
duration = _useState[0],
|
|
4142
|
+
setDuration = _useState[1];
|
|
4143
|
+
|
|
4144
|
+
var _useState2 = React.useState(false),
|
|
4145
|
+
timeExpired = _useState2[0],
|
|
4146
|
+
setTimeExpired = _useState2[1];
|
|
4147
|
+
|
|
4148
|
+
React.useEffect(function () {
|
|
4149
|
+
setTimeExpired(isTimeExpired(startDate, timezone));
|
|
4150
|
+
}, []);
|
|
4151
|
+
React.useEffect(function () {
|
|
4152
|
+
var timer;
|
|
4153
|
+
|
|
4154
|
+
if (!timeExpired) {
|
|
4155
|
+
timer = setInterval(function () {
|
|
4156
|
+
if (isTimeExpired(startDate, timezone)) {
|
|
4157
|
+
clearInterval(timer);
|
|
4158
|
+
setTimeExpired(true);
|
|
4159
|
+
callback();
|
|
4160
|
+
}
|
|
4161
|
+
|
|
4162
|
+
var currentDate = moment.tz(moment(), timezone).format('YYYY-MM-DD HH:mm:ss');
|
|
4163
|
+
var diffTime = moment(startDate).diff(currentDate);
|
|
4164
|
+
var duration = moment.duration(diffTime);
|
|
4165
|
+
var dateArr = {
|
|
4166
|
+
year: duration.years(),
|
|
4167
|
+
month: duration.months(),
|
|
4168
|
+
day: duration.days(),
|
|
4169
|
+
hour: duration.hours(),
|
|
4170
|
+
minute: duration.minutes(),
|
|
4171
|
+
second: duration.seconds()
|
|
4172
|
+
};
|
|
4173
|
+
var timeLeft = '';
|
|
4174
|
+
|
|
4175
|
+
for (var date in dateArr) {
|
|
4176
|
+
var unit = dateArr[date] === 1 ? date : date + 's';
|
|
4177
|
+
var val = String(dateArr[date]).length === 1 ? '0' + dateArr[date] : dateArr[date];
|
|
4178
|
+
|
|
4179
|
+
if (timeLeft) {
|
|
4180
|
+
timeLeft += ", " + val + " " + unit;
|
|
4181
|
+
} else if (dateArr[date]) {
|
|
4182
|
+
timeLeft += val + " " + unit;
|
|
4183
|
+
}
|
|
4184
|
+
}
|
|
4185
|
+
|
|
4186
|
+
setDuration(timeLeft);
|
|
4187
|
+
}, 1000);
|
|
4188
|
+
}
|
|
4189
|
+
|
|
4190
|
+
return function () {
|
|
4191
|
+
clearInterval(timer);
|
|
4192
|
+
};
|
|
4193
|
+
}, [timeExpired]);
|
|
4194
|
+
return React__default.createElement(React__default.Fragment, null, !timeExpired && duration && React__default.createElement("div", {
|
|
4195
|
+
className: 'countdown'
|
|
4196
|
+
}, React__default.createElement("div", null, React__default.createElement("p", {
|
|
4197
|
+
className: 'title'
|
|
4198
|
+
}, title), React__default.createElement("p", null, duration)), React__default.createElement("p", {
|
|
4199
|
+
className: 'message'
|
|
4200
|
+
}, message)));
|
|
4201
|
+
}
|
|
4202
|
+
|
|
4012
4203
|
function Loader$1() {
|
|
4013
4204
|
return React__default.createElement("div", {
|
|
4014
4205
|
className: "loader-container"
|
|
@@ -4016,7 +4207,8 @@ function Loader$1() {
|
|
|
4016
4207
|
}
|
|
4017
4208
|
|
|
4018
4209
|
var TicketsContainer = function TicketsContainer(_ref) {
|
|
4019
|
-
var
|
|
4210
|
+
var onLoginSuccess = _ref.onLoginSuccess,
|
|
4211
|
+
getTicketsLabel = _ref.getTicketsLabel,
|
|
4020
4212
|
eventId = _ref.eventId,
|
|
4021
4213
|
onAddToCartSuccess = _ref.onAddToCartSuccess,
|
|
4022
4214
|
_ref$contentStyle = _ref.contentStyle,
|
|
@@ -4032,43 +4224,62 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4032
4224
|
_ref$queryPromoCode = _ref.queryPromoCode,
|
|
4033
4225
|
queryPromoCode = _ref$queryPromoCode === void 0 ? '' : _ref$queryPromoCode,
|
|
4034
4226
|
_ref$isPromotionsEnab = _ref.isPromotionsEnabled,
|
|
4035
|
-
isPromotionsEnabled = _ref$isPromotionsEnab === void 0 ? true : _ref$isPromotionsEnab
|
|
4227
|
+
isPromotionsEnabled = _ref$isPromotionsEnab === void 0 ? true : _ref$isPromotionsEnab,
|
|
4228
|
+
themeOptions = _ref.themeOptions,
|
|
4229
|
+
_ref$isAccessCodeEnab = _ref.isAccessCodeEnabled,
|
|
4230
|
+
isAccessCodeEnabled = _ref$isAccessCodeEnab === void 0 ? false : _ref$isAccessCodeEnab,
|
|
4231
|
+
_ref$hideSessionButto = _ref.hideSessionButtons,
|
|
4232
|
+
hideSessionButtons = _ref$hideSessionButto === void 0 ? false : _ref$hideSessionButto;
|
|
4036
4233
|
|
|
4037
4234
|
var _useState = React.useState({}),
|
|
4038
4235
|
selectedTickets = _useState[0],
|
|
4039
4236
|
setSelectedTickets = _useState[1];
|
|
4040
4237
|
|
|
4041
|
-
var
|
|
4042
|
-
tickets = _useState2[0],
|
|
4043
|
-
setTickets = _useState2[1];
|
|
4238
|
+
var isWindowDefined = typeof window !== 'undefined';
|
|
4044
4239
|
|
|
4045
|
-
var
|
|
4046
|
-
|
|
4047
|
-
|
|
4240
|
+
var _useState2 = React.useState(isWindowDefined ? !!window.localStorage.getItem('access_token') : false),
|
|
4241
|
+
isLogged = _useState2[0],
|
|
4242
|
+
setIsLogged = _useState2[1];
|
|
4048
4243
|
|
|
4049
|
-
var
|
|
4050
|
-
|
|
4051
|
-
|
|
4244
|
+
var _React$useState = React__default.useState(false),
|
|
4245
|
+
showLoginModal = _React$useState[0],
|
|
4246
|
+
setShowLoginModal = _React$useState[1];
|
|
4247
|
+
|
|
4248
|
+
var _useState3 = React.useState([]),
|
|
4249
|
+
tickets = _useState3[0],
|
|
4250
|
+
setTickets = _useState3[1];
|
|
4251
|
+
|
|
4252
|
+
var _useState4 = React.useState(null),
|
|
4253
|
+
event = _useState4[0],
|
|
4254
|
+
setEvent = _useState4[1];
|
|
4052
4255
|
|
|
4053
4256
|
var _useState5 = React.useState(false),
|
|
4054
|
-
|
|
4055
|
-
|
|
4257
|
+
showWaitingList = _useState5[0],
|
|
4258
|
+
setShowWaitingList = _useState5[1];
|
|
4056
4259
|
|
|
4057
|
-
var _useState6 = React.useState(
|
|
4058
|
-
|
|
4059
|
-
|
|
4260
|
+
var _useState6 = React.useState(false),
|
|
4261
|
+
isLoading = _useState6[0],
|
|
4262
|
+
setIsLoading = _useState6[1];
|
|
4060
4263
|
|
|
4061
|
-
var _useState7 = React.useState(
|
|
4062
|
-
|
|
4063
|
-
|
|
4264
|
+
var _useState7 = React.useState(false),
|
|
4265
|
+
handleBookIsLoading = _useState7[0],
|
|
4266
|
+
setHandleBookIsLoading = _useState7[1];
|
|
4064
4267
|
|
|
4065
|
-
var _useState8 = React.useState(
|
|
4066
|
-
|
|
4067
|
-
|
|
4268
|
+
var _useState8 = React.useState(''),
|
|
4269
|
+
promoCode = _useState8[0],
|
|
4270
|
+
setPromoCode = _useState8[1];
|
|
4068
4271
|
|
|
4069
|
-
var _useState9 = React.useState(
|
|
4070
|
-
|
|
4071
|
-
|
|
4272
|
+
var _useState9 = React.useState(queryPromoCode),
|
|
4273
|
+
promoCodeUpdated = _useState9[0],
|
|
4274
|
+
setPromoCodeUpdated = _useState9[1];
|
|
4275
|
+
|
|
4276
|
+
var _useState10 = React.useState(false),
|
|
4277
|
+
showPromoInput = _useState10[0],
|
|
4278
|
+
setShowPromoInput = _useState10[1];
|
|
4279
|
+
|
|
4280
|
+
var _useState11 = React.useState(false),
|
|
4281
|
+
promoCodeIsApplied = _useState11[0],
|
|
4282
|
+
setPromoCodeIsApplied = _useState11[1];
|
|
4072
4283
|
|
|
4073
4284
|
React.useEffect(function () {
|
|
4074
4285
|
if (typeof window !== 'undefined') {
|
|
@@ -4085,62 +4296,103 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4085
4296
|
}
|
|
4086
4297
|
}, []);
|
|
4087
4298
|
React.useEffect(function () {
|
|
4088
|
-
|
|
4089
|
-
|
|
4090
|
-
}
|
|
4299
|
+
getTicketsApi();
|
|
4300
|
+
}, [eventId, promoCodeUpdated]);
|
|
4091
4301
|
|
|
4092
|
-
|
|
4093
|
-
|
|
4094
|
-
|
|
4095
|
-
|
|
4096
|
-
|
|
4097
|
-
switch (_context.prev = _context.next) {
|
|
4098
|
-
case 0:
|
|
4099
|
-
_context.prev = 0;
|
|
4100
|
-
setIsLoading(true);
|
|
4101
|
-
_context.next = 4;
|
|
4102
|
-
return getTickets(eventId, promoCodeUpdated);
|
|
4103
|
-
|
|
4104
|
-
case 4:
|
|
4105
|
-
response = _context.sent;
|
|
4106
|
-
|
|
4107
|
-
if (response.data.success) {
|
|
4108
|
-
setCustomHeader(response);
|
|
4109
|
-
attributes = _get(response, 'data.data.attributes');
|
|
4110
|
-
setPromoCodeIsApplied(attributes.ValidPromoCode);
|
|
4111
|
-
setTickets(_get(attributes, 'tickets'));
|
|
4112
|
-
setShowWaitingList(attributes.showWaitingList);
|
|
4113
|
-
onGetTicketsSuccess(response.data);
|
|
4114
|
-
}
|
|
4302
|
+
var handleLogout = function handleLogout() {
|
|
4303
|
+
if (isWindowDefined) {
|
|
4304
|
+
window.localStorage.removeItem('access_token');
|
|
4305
|
+
window.localStorage.removeItem('user_data');
|
|
4306
|
+
setIsLogged(false);
|
|
4115
4307
|
|
|
4116
|
-
|
|
4117
|
-
break;
|
|
4308
|
+
var _event = new window.CustomEvent('tf-logout');
|
|
4118
4309
|
|
|
4119
|
-
|
|
4120
|
-
|
|
4121
|
-
|
|
4310
|
+
window.document.dispatchEvent(_event);
|
|
4311
|
+
}
|
|
4312
|
+
};
|
|
4122
4313
|
|
|
4123
|
-
|
|
4124
|
-
|
|
4125
|
-
|
|
4314
|
+
var handleExternalLogin = function handleExternalLogin() {
|
|
4315
|
+
setIsLogged(true);
|
|
4316
|
+
};
|
|
4126
4317
|
|
|
4127
|
-
|
|
4128
|
-
|
|
4129
|
-
|
|
4130
|
-
return _context.finish(11);
|
|
4318
|
+
var handleOnClose = function handleOnClose() {
|
|
4319
|
+
setShowLoginModal(false);
|
|
4320
|
+
};
|
|
4131
4321
|
|
|
4132
|
-
|
|
4133
|
-
|
|
4134
|
-
|
|
4135
|
-
|
|
4136
|
-
|
|
4137
|
-
|
|
4138
|
-
}));
|
|
4139
|
-
return _getTicketsApi.apply(this, arguments);
|
|
4322
|
+
var handleOnLogin = function handleOnLogin() {
|
|
4323
|
+
setShowLoginModal(false);
|
|
4324
|
+
setIsLogged(true);
|
|
4325
|
+
|
|
4326
|
+
if (onLoginSuccess) {
|
|
4327
|
+
onLoginSuccess();
|
|
4140
4328
|
}
|
|
4329
|
+
};
|
|
4141
4330
|
|
|
4142
|
-
|
|
4143
|
-
|
|
4331
|
+
function getTicketsApi() {
|
|
4332
|
+
return _getTicketsApi.apply(this, arguments);
|
|
4333
|
+
}
|
|
4334
|
+
|
|
4335
|
+
function _getTicketsApi() {
|
|
4336
|
+
_getTicketsApi = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee2() {
|
|
4337
|
+
var response, eventResponse, attributes, _event2;
|
|
4338
|
+
|
|
4339
|
+
return runtime_1.wrap(function _callee2$(_context2) {
|
|
4340
|
+
while (1) {
|
|
4341
|
+
switch (_context2.prev = _context2.next) {
|
|
4342
|
+
case 0:
|
|
4343
|
+
_context2.prev = 0;
|
|
4344
|
+
setIsLoading(true);
|
|
4345
|
+
_context2.next = 4;
|
|
4346
|
+
return getTickets(eventId, promoCodeUpdated);
|
|
4347
|
+
|
|
4348
|
+
case 4:
|
|
4349
|
+
response = _context2.sent;
|
|
4350
|
+
_context2.next = 7;
|
|
4351
|
+
return getEvent(eventId);
|
|
4352
|
+
|
|
4353
|
+
case 7:
|
|
4354
|
+
eventResponse = _context2.sent;
|
|
4355
|
+
|
|
4356
|
+
if (response.data.success) {
|
|
4357
|
+
setCustomHeader(response);
|
|
4358
|
+
attributes = _get(response, 'data.data.attributes');
|
|
4359
|
+
setPromoCodeIsApplied(attributes.ValidPromoCode);
|
|
4360
|
+
setTickets(_get(attributes, 'tickets'));
|
|
4361
|
+
setShowWaitingList(attributes.showWaitingList);
|
|
4362
|
+
onGetTicketsSuccess(response.data);
|
|
4363
|
+
setPromoCode('');
|
|
4364
|
+
}
|
|
4365
|
+
|
|
4366
|
+
if (eventResponse.data.success) {
|
|
4367
|
+
_event2 = _get(eventResponse, 'data.data.attributes');
|
|
4368
|
+
setEvent(_event2);
|
|
4369
|
+
}
|
|
4370
|
+
|
|
4371
|
+
_context2.next = 15;
|
|
4372
|
+
break;
|
|
4373
|
+
|
|
4374
|
+
case 12:
|
|
4375
|
+
_context2.prev = 12;
|
|
4376
|
+
_context2.t0 = _context2["catch"](0);
|
|
4377
|
+
|
|
4378
|
+
if (axios.isAxiosError(_context2.t0)) {
|
|
4379
|
+
onGetTicketsError(_context2.t0);
|
|
4380
|
+
}
|
|
4381
|
+
|
|
4382
|
+
case 15:
|
|
4383
|
+
_context2.prev = 15;
|
|
4384
|
+
setIsLoading(false);
|
|
4385
|
+
return _context2.finish(15);
|
|
4386
|
+
|
|
4387
|
+
case 18:
|
|
4388
|
+
case "end":
|
|
4389
|
+
return _context2.stop();
|
|
4390
|
+
}
|
|
4391
|
+
}
|
|
4392
|
+
}, _callee2, null, [[0, 12, 15, 18]]);
|
|
4393
|
+
}));
|
|
4394
|
+
return _getTicketsApi.apply(this, arguments);
|
|
4395
|
+
}
|
|
4144
4396
|
|
|
4145
4397
|
var handleTicketSelect = function handleTicketSelect(key, value) {
|
|
4146
4398
|
setSelectedTickets(function (prevState) {
|
|
@@ -4154,15 +4406,21 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4154
4406
|
});
|
|
4155
4407
|
};
|
|
4156
4408
|
|
|
4409
|
+
var handleOrdersClick = function handleOrdersClick() {
|
|
4410
|
+
if (isWindowDefined) {
|
|
4411
|
+
window.location.href = '/orders';
|
|
4412
|
+
}
|
|
4413
|
+
};
|
|
4414
|
+
|
|
4157
4415
|
var handleBook = /*#__PURE__*/function () {
|
|
4158
|
-
var _ref3 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function
|
|
4416
|
+
var _ref3 = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
|
|
4159
4417
|
var _product_options, _product_options2, _ticket_types;
|
|
4160
4418
|
|
|
4161
|
-
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,
|
|
4419
|
+
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, ticketsQuantity, checkoutBody, checkoutResult;
|
|
4162
4420
|
|
|
4163
|
-
return runtime_1.wrap(function
|
|
4421
|
+
return runtime_1.wrap(function _callee$(_context) {
|
|
4164
4422
|
while (1) {
|
|
4165
|
-
switch (
|
|
4423
|
+
switch (_context.prev = _context.next) {
|
|
4166
4424
|
case 0:
|
|
4167
4425
|
setHandleBookIsLoading(true);
|
|
4168
4426
|
ticket = _find(tickets, function (item) {
|
|
@@ -4183,15 +4441,15 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4183
4441
|
}, _ticket_types)
|
|
4184
4442
|
}
|
|
4185
4443
|
};
|
|
4186
|
-
|
|
4187
|
-
|
|
4444
|
+
_context.prev = 6;
|
|
4445
|
+
_context.next = 9;
|
|
4188
4446
|
return addToCart(eventId, data);
|
|
4189
4447
|
|
|
4190
4448
|
case 9:
|
|
4191
|
-
result =
|
|
4449
|
+
result = _context.sent;
|
|
4192
4450
|
|
|
4193
4451
|
if (!(result.status === 200)) {
|
|
4194
|
-
|
|
4452
|
+
_context.next = 27;
|
|
4195
4453
|
break;
|
|
4196
4454
|
}
|
|
4197
4455
|
|
|
@@ -4202,21 +4460,21 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4202
4460
|
hash = '';
|
|
4203
4461
|
|
|
4204
4462
|
if (!skipBillingPage) {
|
|
4205
|
-
|
|
4463
|
+
_context.next = 26;
|
|
4206
4464
|
break;
|
|
4207
4465
|
}
|
|
4208
4466
|
|
|
4209
4467
|
// Get user data for checkout data
|
|
4210
|
-
|
|
4211
|
-
userData =
|
|
4212
|
-
access_token =
|
|
4468
|
+
_isWindowDefined = typeof window !== 'undefined';
|
|
4469
|
+
userData = _isWindowDefined && window.localStorage.getItem('user_data') ? JSON.parse(window.localStorage.getItem('user_data') || '') : {};
|
|
4470
|
+
access_token = _isWindowDefined && window.localStorage.getItem('access_token') ? window.localStorage.getItem('access_token') || '' : '';
|
|
4213
4471
|
ticketsQuantity = Object.keys(selectedTickets).length;
|
|
4214
4472
|
checkoutBody = createCheckoutDataBodyWithDefaultHolder(ticketsQuantity, userData);
|
|
4215
|
-
|
|
4473
|
+
_context.next = 24;
|
|
4216
4474
|
return postOnCheckout(checkoutBody, access_token);
|
|
4217
4475
|
|
|
4218
4476
|
case 24:
|
|
4219
|
-
checkoutResult =
|
|
4477
|
+
checkoutResult = _context.sent;
|
|
4220
4478
|
hash = _get(checkoutResult, 'data.data.attributes.hash');
|
|
4221
4479
|
|
|
4222
4480
|
case 26:
|
|
@@ -4229,28 +4487,28 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4229
4487
|
});
|
|
4230
4488
|
|
|
4231
4489
|
case 27:
|
|
4232
|
-
|
|
4490
|
+
_context.next = 32;
|
|
4233
4491
|
break;
|
|
4234
4492
|
|
|
4235
4493
|
case 29:
|
|
4236
|
-
|
|
4237
|
-
|
|
4494
|
+
_context.prev = 29;
|
|
4495
|
+
_context.t0 = _context["catch"](6);
|
|
4238
4496
|
|
|
4239
|
-
if (axios.isAxiosError(
|
|
4240
|
-
onAddToCartError(
|
|
4497
|
+
if (axios.isAxiosError(_context.t0)) {
|
|
4498
|
+
onAddToCartError(_context.t0);
|
|
4241
4499
|
}
|
|
4242
4500
|
|
|
4243
4501
|
case 32:
|
|
4244
|
-
|
|
4502
|
+
_context.prev = 32;
|
|
4245
4503
|
setHandleBookIsLoading(false);
|
|
4246
|
-
return
|
|
4504
|
+
return _context.finish(32);
|
|
4247
4505
|
|
|
4248
4506
|
case 35:
|
|
4249
4507
|
case "end":
|
|
4250
|
-
return
|
|
4508
|
+
return _context.stop();
|
|
4251
4509
|
}
|
|
4252
4510
|
}
|
|
4253
|
-
},
|
|
4511
|
+
}, _callee, null, [[6, 29, 32, 35]]);
|
|
4254
4512
|
}));
|
|
4255
4513
|
|
|
4256
4514
|
return function handleBook() {
|
|
@@ -4258,10 +4516,29 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4258
4516
|
};
|
|
4259
4517
|
}();
|
|
4260
4518
|
|
|
4519
|
+
var updateTickets = function updateTickets() {
|
|
4520
|
+
getTicketsApi();
|
|
4521
|
+
};
|
|
4522
|
+
|
|
4261
4523
|
var isAllTicketsSoldOut = !_some(tickets, function (item) {
|
|
4262
4524
|
return !(item.sold_out || item.soldOut);
|
|
4263
4525
|
});
|
|
4264
|
-
|
|
4526
|
+
var themeMui = material.createTheme(themeOptions);
|
|
4527
|
+
React.useEffect(function () {
|
|
4528
|
+
isWindowDefined && window.document.addEventListener('custom-logout', handleLogout);
|
|
4529
|
+
return function () {
|
|
4530
|
+
isWindowDefined && window.document.removeEventListener('custom-logout', handleLogout);
|
|
4531
|
+
};
|
|
4532
|
+
}, []);
|
|
4533
|
+
React.useEffect(function () {
|
|
4534
|
+
isWindowDefined && window.document.addEventListener('custom-login', handleExternalLogin);
|
|
4535
|
+
return function () {
|
|
4536
|
+
isWindowDefined && window.document.removeEventListener('custom-login', handleExternalLogin);
|
|
4537
|
+
};
|
|
4538
|
+
}, []);
|
|
4539
|
+
return React__default.createElement(privateTheming.ThemeProvider, {
|
|
4540
|
+
theme: themeMui
|
|
4541
|
+
}, React__default.createElement("div", {
|
|
4265
4542
|
className: "get-tickets-page " + theme,
|
|
4266
4543
|
style: contentStyle
|
|
4267
4544
|
}, isLoading ? React__default.createElement(Loader$1, null) : React__default.createElement("div", null, React__default.createElement(TicketsSection, {
|
|
@@ -4269,10 +4546,15 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4269
4546
|
selectedTickets: selectedTickets,
|
|
4270
4547
|
handleTicketSelect: handleTicketSelect,
|
|
4271
4548
|
promoCodeIsApplied: promoCodeIsApplied
|
|
4272
|
-
}),
|
|
4549
|
+
}), event != null && event.salesEnded ? React__default.createElement("p", null, "Sales for this event are closed.") : event != null && event.salesStart ? React__default.createElement(Countdown, {
|
|
4550
|
+
startDate: event.salesStart,
|
|
4551
|
+
timezone: event.timezone,
|
|
4552
|
+
title: "Sales start in:",
|
|
4553
|
+
message: "No tickets are currently available for this event.",
|
|
4554
|
+
callback: updateTickets
|
|
4555
|
+
}) : null, showWaitingList && event.salesStarted && React__default.createElement(WaitingList, {
|
|
4273
4556
|
tickets: tickets,
|
|
4274
|
-
eventId: eventId
|
|
4275
|
-
isPromotionsEnabled: isPromotionsEnabled
|
|
4557
|
+
eventId: eventId
|
|
4276
4558
|
}), React__default.createElement(PromoCodeSection, {
|
|
4277
4559
|
promoCode: promoCode,
|
|
4278
4560
|
promoCodeIsApplied: promoCodeIsApplied,
|
|
@@ -4281,12 +4563,30 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4281
4563
|
setPromoCodeUpdated: setPromoCodeUpdated,
|
|
4282
4564
|
setShowPromoInput: setShowPromoInput,
|
|
4283
4565
|
isPromotionsEnabled: isPromotionsEnabled,
|
|
4566
|
+
isAccessCodeEnabled: isAccessCodeEnabled,
|
|
4284
4567
|
isAllTicketsSoldOut: isAllTicketsSoldOut
|
|
4285
4568
|
}), !isAllTicketsSoldOut && React__default.createElement(Button$1, {
|
|
4286
4569
|
"aria-hidden": true,
|
|
4287
4570
|
className: "book-button " + (handleBookIsLoading || _isEmpty(selectedTickets) || Object.values(selectedTickets)[0] === 0 ? 'disabled' : ''),
|
|
4288
4571
|
onClick: !handleBookIsLoading && !_isEmpty(selectedTickets) && Object.values(selectedTickets)[0] > 0 ? handleBook : function () {}
|
|
4289
|
-
}, getTicketsLabel || 'GET TICKETS')
|
|
4572
|
+
}, getTicketsLabel || 'GET TICKETS'), isLogged && !hideSessionButtons ? React__default.createElement("div", {
|
|
4573
|
+
className: "session-wrapper"
|
|
4574
|
+
}, React__default.createElement("span", {
|
|
4575
|
+
className: "session-container"
|
|
4576
|
+
}, React__default.createElement(Button$1, {
|
|
4577
|
+
variant: "outline-light",
|
|
4578
|
+
className: "session-buttons",
|
|
4579
|
+
onClick: handleOrdersClick
|
|
4580
|
+
}, "My Orders")), React__default.createElement("span", {
|
|
4581
|
+
className: "session-container"
|
|
4582
|
+
}, React__default.createElement(Button$1, {
|
|
4583
|
+
variant: "outline-light",
|
|
4584
|
+
className: "session-buttons",
|
|
4585
|
+
onClick: handleLogout
|
|
4586
|
+
}, "Log out"))) : ''), showLoginModal ? React__default.createElement(LoginModal, {
|
|
4587
|
+
onClose: handleOnClose,
|
|
4588
|
+
onLogin: handleOnLogin
|
|
4589
|
+
}) : null));
|
|
4290
4590
|
};
|
|
4291
4591
|
|
|
4292
4592
|
var EventInfoItem = function EventInfoItem(_ref) {
|
|
@@ -4494,9 +4794,9 @@ var TicketsTable = function TicketsTable(_ref) {
|
|
|
4494
4794
|
var _ref$tickets = _ref.tickets,
|
|
4495
4795
|
tickets = _ref$tickets === void 0 ? [] : _ref$tickets;
|
|
4496
4796
|
return React__default.createElement("div", {
|
|
4497
|
-
className:
|
|
4797
|
+
className: "tickets-box"
|
|
4498
4798
|
}, React__default.createElement("h4", {
|
|
4499
|
-
className:
|
|
4799
|
+
className: "sub-title"
|
|
4500
4800
|
}, "Your Tickets"), React__default.createElement(TableContainer, {
|
|
4501
4801
|
component: Paper
|
|
4502
4802
|
}, React__default.createElement(Table, {
|
|
@@ -4506,14 +4806,16 @@ var TicketsTable = function TicketsTable(_ref) {
|
|
|
4506
4806
|
|
|
4507
4807
|
return React__default.createElement(React.Fragment, {
|
|
4508
4808
|
key: index
|
|
4509
|
-
}, React__default.createElement(TableRow, null, React__default.createElement(TableCell, null, ticket.hash), React__default.createElement(TableCell, null, ticket.ticket_type), React__default.createElement(TableCell, null, ticket.holder_name), React__default.createElement(TableCell, null, ticket.status), React__default.createElement(TableCell, null, React__default.createElement("
|
|
4510
|
-
|
|
4511
|
-
|
|
4512
|
-
|
|
4809
|
+
}, React__default.createElement(TableRow, null, React__default.createElement(TableCell, null, ticket.hash), React__default.createElement(TableCell, null, ticket.ticket_type), React__default.createElement(TableCell, null, ticket.holder_name), React__default.createElement(TableCell, null, ticket.status), React__default.createElement(TableCell, null, React__default.createElement("span", {
|
|
4810
|
+
"aria-hidden": true,
|
|
4811
|
+
className: "download-button",
|
|
4812
|
+
onClick: function onClick() {
|
|
4813
|
+
return downloadPDF(ticket.pdf_link);
|
|
4814
|
+
}
|
|
4513
4815
|
}, "Download"))), !!((_ticket$add_ons = ticket.add_ons) != null && _ticket$add_ons.length) && React__default.createElement(TableRow, null, React__default.createElement(TableCell, {
|
|
4514
4816
|
colSpan: 5
|
|
4515
4817
|
}, React__default.createElement(Table, {
|
|
4516
|
-
className:
|
|
4818
|
+
className: "ticket-add-on-table"
|
|
4517
4819
|
}, React__default.createElement(TableHead, null, React__default.createElement(TableRow, null, React__default.createElement(TableCell, null, "Add-On"), React__default.createElement(TableCell, null, "Status"))), React__default.createElement(TableBody, null, ticket.add_ons.map(function (add_on, index) {
|
|
4518
4820
|
return React__default.createElement(TableRow, {
|
|
4519
4821
|
key: index
|