tf-checkout-react 1.7.7 → 1.7.13
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/paymentContainer/index.d.ts +2 -1
- package/dist/constants/index.d.ts +1 -0
- package/dist/tf-checkout-react.cjs.development.js +83 -45
- 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 +83 -45
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/billing-info-container/hooks/useStripePayment.ts +14 -16
- package/src/components/billing-info-container/index.tsx +3 -2
- package/src/components/paymentContainer/OrderDetails.tsx +20 -0
- package/src/components/paymentContainer/index.tsx +18 -1
- package/src/components/ticketsContainer/TicketsSection.tsx +52 -10
- package/src/components/ticketsContainer/TimeSlotTicketRow.tsx +24 -5
- package/src/constants/index.ts +1 -1
- package/src/types/api/common.d.ts +3 -0
|
@@ -33,6 +33,7 @@ export interface IPaymentPage {
|
|
|
33
33
|
stripePublishableKey?: string;
|
|
34
34
|
stripeAccountId?: string;
|
|
35
35
|
onStripeReady?: (stripe: any, elements: any) => void;
|
|
36
|
+
onPaymentElementChange?: (event: any) => void;
|
|
36
37
|
enablePaymentPlan?: boolean;
|
|
37
38
|
}
|
|
38
|
-
export declare const PaymentContainer: ({ paymentFields, handlePayment, formTitle, errorText, checkoutData, onErrorClose, onGetPaymentDataSuccess, onGetPaymentDataError, onPaymentError, themeOptions, elementsOptions, paymentElementOptions, onCountdownFinish, enableTimer, orderInfoLabel, paymentInfoLabel, displayPaymentButton, hidePaymentForm, hideFieldsBlock, isSinglePageCheckout, stripePublishableKey, stripeAccountId, onStripeReady, enablePaymentPlan, }: IPaymentPage) => JSX.Element;
|
|
39
|
+
export declare const PaymentContainer: ({ paymentFields, handlePayment, formTitle, errorText, checkoutData, onErrorClose, onGetPaymentDataSuccess, onGetPaymentDataError, onPaymentError, themeOptions, elementsOptions, paymentElementOptions, onCountdownFinish, enableTimer, orderInfoLabel, paymentInfoLabel, displayPaymentButton, hidePaymentForm, hideFieldsBlock, isSinglePageCheckout, stripePublishableKey, stripeAccountId, onStripeReady, onPaymentElementChange, enablePaymentPlan, }: IPaymentPage) => JSX.Element;
|
|
@@ -525,7 +525,8 @@ publicRequest.setGuestToken = function (guestToken) {
|
|
|
525
525
|
var X_TF_ECOMMERCE = 'X-TF-ECOMMERCE';
|
|
526
526
|
var FEES_STYLES = {
|
|
527
527
|
TRADITIONAL: 'TRADITIONAL',
|
|
528
|
-
DISPLAY_BOTH: 'DISPLAY_BOTH'
|
|
528
|
+
DISPLAY_BOTH: 'DISPLAY_BOTH',
|
|
529
|
+
FINAL_WITH_BREAKDOWN: 'FINAL_WITH_BREAKDOWN'
|
|
529
530
|
};
|
|
530
531
|
var DEFAULT_FEES_STYLE = FEES_STYLES.TRADITIONAL;
|
|
531
532
|
|
|
@@ -5640,7 +5641,8 @@ var PaymentPlanSection = function PaymentPlanSection(props) {
|
|
|
5640
5641
|
// Wrapper component to access Stripe hooks inside Elements context
|
|
5641
5642
|
var StripeWrapper = function StripeWrapper(_ref) {
|
|
5642
5643
|
var options = _ref.options,
|
|
5643
|
-
onStripeReady = _ref.onStripeReady
|
|
5644
|
+
onStripeReady = _ref.onStripeReady,
|
|
5645
|
+
onPaymentElementChange = _ref.onPaymentElementChange;
|
|
5644
5646
|
var stripe = reactStripeJs.useStripe();
|
|
5645
5647
|
var elements = reactStripeJs.useElements();
|
|
5646
5648
|
React.useEffect(function () {
|
|
@@ -5649,7 +5651,8 @@ var StripeWrapper = function StripeWrapper(_ref) {
|
|
|
5649
5651
|
}
|
|
5650
5652
|
}, [stripe, elements, onStripeReady]);
|
|
5651
5653
|
return React__default.createElement(reactStripeJs.PaymentElement, {
|
|
5652
|
-
options: options
|
|
5654
|
+
options: options,
|
|
5655
|
+
onChange: onPaymentElementChange
|
|
5653
5656
|
});
|
|
5654
5657
|
};
|
|
5655
5658
|
var initialPaymentPlanConfiguration = {
|
|
@@ -5741,6 +5744,7 @@ var PaymentContainer = function PaymentContainer(_ref2) {
|
|
|
5741
5744
|
stripeAccountId = _ref2.stripeAccountId,
|
|
5742
5745
|
_ref2$onStripeReady = _ref2.onStripeReady,
|
|
5743
5746
|
onStripeReady = _ref2$onStripeReady === void 0 ? _identity : _ref2$onStripeReady,
|
|
5747
|
+
onPaymentElementChange = _ref2.onPaymentElementChange,
|
|
5744
5748
|
_ref2$enablePaymentPl = _ref2.enablePaymentPlan,
|
|
5745
5749
|
enablePaymentPlan = _ref2$enablePaymentPl === void 0 ? true : _ref2$enablePaymentPl;
|
|
5746
5750
|
var _useState = React.useState(initialReviewValues),
|
|
@@ -6089,11 +6093,13 @@ var PaymentContainer = function PaymentContainer(_ref2) {
|
|
|
6089
6093
|
className: "add-on-container"
|
|
6090
6094
|
}, React__default.createElement("span", null, item.quantity), React__default.createElement("span", {
|
|
6091
6095
|
className: "add-on-x"
|
|
6092
|
-
}, ' x '), React__default.createElement("span", null, item.groupName ? item.groupName + ' - ' : ''), React__default.createElement("span", null, item.name), React__default.createElement("span", null, ' - '), React__default.createElement("span", null, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency) + ' (incl. fees)', CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency)), React__default.createElement("span", {
|
|
6096
|
+
}, ' x '), React__default.createElement("span", null, item.groupName ? item.groupName + ' - ' : ''), React__default.createElement("span", null, item.name), React__default.createElement("span", null, ' - '), React__default.createElement("span", null, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency) + ' (incl. fees)', CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency), CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency)), React__default.createElement("span", {
|
|
6093
6097
|
className: "add-on-each"
|
|
6094
6098
|
}, ' each')), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && React__default.createElement("p", {
|
|
6095
6099
|
className: "fees"
|
|
6096
|
-
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(String(item.price))), currency) + " with fees)"))
|
|
6100
|
+
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(String(item.price))), currency) + " with fees)"), CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && parseFloat(item.price) - parseFloat(item.cost) > 0 && React__default.createElement("p", {
|
|
6101
|
+
className: "fees"
|
|
6102
|
+
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency) + " + " + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price) - parseFloat(item.cost)), currency) + " fee)"));
|
|
6097
6103
|
})));
|
|
6098
6104
|
})), !isFreeTickets && paymentPlanIsAvailable && React__default.createElement("div", {
|
|
6099
6105
|
className: "payment_toggle"
|
|
@@ -6122,7 +6128,8 @@ var PaymentContainer = function PaymentContainer(_ref2) {
|
|
|
6122
6128
|
options: elementsOptions
|
|
6123
6129
|
}, React__default.createElement(StripeWrapper, {
|
|
6124
6130
|
onStripeReady: onStripeReady,
|
|
6125
|
-
options: paymentElementOptions
|
|
6131
|
+
options: paymentElementOptions,
|
|
6132
|
+
onPaymentElementChange: onPaymentElementChange
|
|
6126
6133
|
})))) : displayPaymentButton ? React__default.createElement("div", {
|
|
6127
6134
|
className: "payment_button " + (paymentIsLoading ? 'disabled-payment-button' : '')
|
|
6128
6135
|
}, React__default.createElement("button", {
|
|
@@ -6439,38 +6446,34 @@ var useStripePayment = function useStripePayment(_ref) {
|
|
|
6439
6446
|
isBrowser = _ref.isBrowser;
|
|
6440
6447
|
var processPayment = /*#__PURE__*/function () {
|
|
6441
6448
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(paymentDataResponse, values, formikHelpers, checkoutResponse, checkoutUpdateResponse, paymentData) {
|
|
6442
|
-
var attributes, isFreeTickets, updatedOrderData, eventId, _yield$elementsRef$cu, submitError, paymentContext, _yield$stripeRef$curr, confirmError, paymentResponse;
|
|
6449
|
+
var attributes, isFreeTickets, updatedOrderData, eventId, _yield$elementsRef$cu, submitError, paymentContext, confirmParams, rawPhone, e164Phone, _yield$stripeRef$curr, confirmError, paymentResponse;
|
|
6443
6450
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
6444
6451
|
while (1) switch (_context.prev = _context.next) {
|
|
6445
6452
|
case 0:
|
|
6446
6453
|
attributes = paymentData.attributes, isFreeTickets = paymentData.isFreeTickets, updatedOrderData = paymentData.updatedOrderData, eventId = paymentData.eventId;
|
|
6447
6454
|
if (isFreeTickets) {
|
|
6448
|
-
_context.next =
|
|
6455
|
+
_context.next = 23;
|
|
6449
6456
|
break;
|
|
6450
6457
|
}
|
|
6451
6458
|
if (stripeRef.current) {
|
|
6452
|
-
_context.next =
|
|
6459
|
+
_context.next = 5;
|
|
6453
6460
|
break;
|
|
6454
6461
|
}
|
|
6455
6462
|
setError('Stripe is not ready');
|
|
6456
|
-
console.log('Stripe is not ready in billing-info-container');
|
|
6457
6463
|
return _context.abrupt("return", null);
|
|
6458
|
-
case
|
|
6459
|
-
|
|
6460
|
-
// Step 1: Submit elements first
|
|
6461
|
-
_context.next = 9;
|
|
6464
|
+
case 5:
|
|
6465
|
+
_context.next = 7;
|
|
6462
6466
|
return elementsRef.current.submit();
|
|
6463
|
-
case
|
|
6467
|
+
case 7:
|
|
6464
6468
|
_yield$elementsRef$cu = _context.sent;
|
|
6465
6469
|
submitError = _yield$elementsRef$cu.error;
|
|
6466
6470
|
if (!submitError) {
|
|
6467
|
-
_context.next =
|
|
6471
|
+
_context.next = 12;
|
|
6468
6472
|
break;
|
|
6469
6473
|
}
|
|
6470
6474
|
setError('' + (submitError == null ? void 0 : submitError.message));
|
|
6471
|
-
console.log('Stripe elements.submit() error in billing-info-container', submitError);
|
|
6472
6475
|
return _context.abrupt("return", null);
|
|
6473
|
-
case
|
|
6476
|
+
case 12:
|
|
6474
6477
|
// Step 2: Store payment context before potential redirect
|
|
6475
6478
|
paymentContext = {
|
|
6476
6479
|
attributes: attributes,
|
|
@@ -6485,30 +6488,38 @@ var useStripePayment = function useStripePayment(_ref) {
|
|
|
6485
6488
|
};
|
|
6486
6489
|
localStorage.setItem('stripe_payment_context', JSON.stringify(paymentContext));
|
|
6487
6490
|
// Step 3: Confirm payment with current page return URL
|
|
6488
|
-
|
|
6491
|
+
confirmParams = {
|
|
6492
|
+
return_url: window.location.href + (window.location.href.includes('?') ? '&' : '?') + 'payment_return=true'
|
|
6493
|
+
};
|
|
6494
|
+
if (values != null && values.phone) {
|
|
6495
|
+
rawPhone = String(values.phone).replace(/[\s\-().]/g, '');
|
|
6496
|
+
e164Phone = rawPhone.startsWith('+') ? rawPhone : "+" + rawPhone;
|
|
6497
|
+
confirmParams.payment_method_data = {
|
|
6498
|
+
billing_details: {
|
|
6499
|
+
phone: e164Phone
|
|
6500
|
+
}
|
|
6501
|
+
};
|
|
6502
|
+
}
|
|
6503
|
+
_context.next = 18;
|
|
6489
6504
|
return stripeRef.current.confirmPayment({
|
|
6490
6505
|
clientSecret: paymentDataResponse.data.attributes.payment_method.stripe_client_secret,
|
|
6491
6506
|
elements: elementsRef.current,
|
|
6492
|
-
confirmParams:
|
|
6493
|
-
return_url: window.location.href + (window.location.href.includes('?') ? '&' : '?') + 'payment_return=true'
|
|
6494
|
-
},
|
|
6507
|
+
confirmParams: confirmParams,
|
|
6495
6508
|
redirect: 'if_required'
|
|
6496
6509
|
});
|
|
6497
|
-
case
|
|
6510
|
+
case 18:
|
|
6498
6511
|
_yield$stripeRef$curr = _context.sent;
|
|
6499
6512
|
confirmError = _yield$stripeRef$curr.error;
|
|
6500
6513
|
if (!confirmError) {
|
|
6501
|
-
_context.next =
|
|
6514
|
+
_context.next = 23;
|
|
6502
6515
|
break;
|
|
6503
6516
|
}
|
|
6504
6517
|
setError('' + (confirmError == null ? void 0 : confirmError.message));
|
|
6505
|
-
console.log('Stripe confirmPayment error in billing-info-container');
|
|
6506
6518
|
return _context.abrupt("return", null);
|
|
6507
|
-
case
|
|
6508
|
-
console.log('Stripe confirmPayment success in billing-info-container');
|
|
6519
|
+
case 23:
|
|
6509
6520
|
// Handle payment middleware for non-redirect payments
|
|
6510
6521
|
paymentResponse = null;
|
|
6511
|
-
_context.next =
|
|
6522
|
+
_context.next = 26;
|
|
6512
6523
|
return handlePaymentMiddleWare(null, {}, {
|
|
6513
6524
|
reviewData: attributes,
|
|
6514
6525
|
isFreeTickets: isFreeTickets,
|
|
@@ -6526,9 +6537,9 @@ var useStripePayment = function useStripePayment(_ref) {
|
|
|
6526
6537
|
throw error;
|
|
6527
6538
|
}
|
|
6528
6539
|
});
|
|
6529
|
-
case
|
|
6540
|
+
case 26:
|
|
6530
6541
|
return _context.abrupt("return", paymentResponse);
|
|
6531
|
-
case
|
|
6542
|
+
case 27:
|
|
6532
6543
|
case "end":
|
|
6533
6544
|
return _context.stop();
|
|
6534
6545
|
}
|
|
@@ -7015,7 +7026,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref6) {
|
|
|
7015
7026
|
setSingleCheckoutAddOns = _useState25[1];
|
|
7016
7027
|
var orderIsFree = !Number(checkoutData == null ? void 0 : checkoutData.total);
|
|
7017
7028
|
React.useEffect(function () {
|
|
7018
|
-
var hasUniqueId = _get(
|
|
7029
|
+
var hasUniqueId = _get(data, '[0].uniqueId');
|
|
7019
7030
|
var isEqualData = _isEqual(prevData.current, data);
|
|
7020
7031
|
if (!hasUniqueId || !isEqualData) {
|
|
7021
7032
|
setDataWithUniqueIds(assingUniqueIds(data));
|
|
@@ -7023,7 +7034,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref6) {
|
|
|
7023
7034
|
prevData.current = data;
|
|
7024
7035
|
}
|
|
7025
7036
|
}
|
|
7026
|
-
}, [
|
|
7037
|
+
}, [data]);
|
|
7027
7038
|
var getQuantity = React.useCallback(function (cart) {
|
|
7028
7039
|
if (cart === void 0) {
|
|
7029
7040
|
cart = [];
|
|
@@ -7979,6 +7990,11 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref6) {
|
|
|
7979
7990
|
checkoutData: checkoutData,
|
|
7980
7991
|
elementsOptions: elementsOptions,
|
|
7981
7992
|
paymentElementOptions: {
|
|
7993
|
+
fields: {
|
|
7994
|
+
billingDetails: {
|
|
7995
|
+
phone: 'never'
|
|
7996
|
+
}
|
|
7997
|
+
},
|
|
7982
7998
|
wallets: {
|
|
7983
7999
|
applePay: (checkoutUpdateData == null ? void 0 : (_checkoutUpdateData$a6 = checkoutUpdateData.additional_payment_information) == null ? void 0 : (_checkoutUpdateData$a7 = _checkoutUpdateData$a6.stripe_wallets) == null ? void 0 : _checkoutUpdateData$a7.applePay) || 'never',
|
|
7984
8000
|
googlePay: (checkoutUpdateData == null ? void 0 : (_checkoutUpdateData$a8 = checkoutUpdateData.additional_payment_information) == null ? void 0 : (_checkoutUpdateData$a9 = _checkoutUpdateData$a8.stripe_wallets) == null ? void 0 : _checkoutUpdateData$a9.googlePay) || 'never'
|
|
@@ -10271,6 +10287,12 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
10271
10287
|
var ticketPriceWithFees = priceSymbol + " " + (+ticket.basePrice).toFixed(2);
|
|
10272
10288
|
var ticketOldPriceWithFees = priceSymbol + " " + (+ticket.oldBasePrice).toFixed(2);
|
|
10273
10289
|
var ticketOldPriceWithoutFees = priceSymbol + " " + (+ticket.oldCost).toFixed(2);
|
|
10290
|
+
var ticketFinalPrice = ticket.feeIncluded && !ticket.isForward ? +(ticket.x_face_value || ticket.basePrice) : ticket.feeIncluded ? +ticket.basePrice : +ticket.cost;
|
|
10291
|
+
var ticketFinalPriceFormatted = priceSymbol + " " + Math.round(ticketFinalPrice);
|
|
10292
|
+
var ticketOldFinalPrice = ticket.feeIncluded && !ticket.isForward ? +(ticket.x_face_value || ticket.basePrice) : ticket.feeIncluded ? +ticket.oldBasePrice : +ticket.oldCost;
|
|
10293
|
+
var ticketOldFinalPriceFormatted = priceSymbol + " " + Math.round(ticketOldFinalPrice);
|
|
10294
|
+
var ticketFeeAmount = (+ticket.basePrice - +ticket.cost).toFixed(2);
|
|
10295
|
+
var ticketBreakdown = !ticket.feeIncluded ? '(+ fees at checkout)' : !ticket.isForward ? null : parseFloat(ticketFeeAmount) > 0 ? "(" + priceSymbol + " " + (+ticket.cost).toFixed(2) + " + " + priceSymbol + " " + ticketFeeAmount + " fee)" : null;
|
|
10274
10296
|
var isSoldOut = ticket.sold_out || !(ticket.displayTicket || ticket.slotGroupId) || ticket.soldOut;
|
|
10275
10297
|
var ticketSelect = function ticketSelect(event) {
|
|
10276
10298
|
var value = event.target.value;
|
|
@@ -10281,8 +10303,8 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
10281
10303
|
ticketIsDiscounted = true;
|
|
10282
10304
|
}
|
|
10283
10305
|
var ticketIsFree = +ticket.price === 0;
|
|
10284
|
-
var discountTicketPriceElem = CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketOldPriceWithoutFees : ticketOldPriceWithFees;
|
|
10285
|
-
var ticketPriceElem = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketPriceWithoutFees : ticketPriceWithFees;
|
|
10306
|
+
var discountTicketPriceElem = CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN ? ticketOldFinalPriceFormatted : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketOldPriceWithoutFees : ticketOldPriceWithFees;
|
|
10307
|
+
var ticketPriceElem = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN ? ticketFinalPriceFormatted : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketPriceWithoutFees : ticketPriceWithFees;
|
|
10286
10308
|
var isNewGroupTicket = (ticket == null ? void 0 : ticket.groupName) !== ((_arr = arr[i - 1]) == null ? void 0 : _arr.groupName);
|
|
10287
10309
|
return React__default.createElement(React__default.Fragment, {
|
|
10288
10310
|
key: ticket.id || ticket.name
|
|
@@ -10325,7 +10347,7 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
10325
10347
|
className: isSoldOut ? 'sold-out' : ''
|
|
10326
10348
|
}, ticketPriceElem), !isSoldOut && !ticketIsFree && React__default.createElement("p", {
|
|
10327
10349
|
className: "fees"
|
|
10328
|
-
}, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && (ticket.feeIncluded ? '(incl. Fees)' : '(excl. Fees)'), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && "(" + ticketPriceWithFees + " with fees)")), React__default.createElement("div", {
|
|
10350
|
+
}, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && (ticket.feeIncluded ? '(incl. Fees)' : '(excl. Fees)'), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && "(" + ticketPriceWithFees + " with fees)", CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && ticketBreakdown)), React__default.createElement("div", {
|
|
10329
10351
|
className: "event-detail__tier-state",
|
|
10330
10352
|
style: {
|
|
10331
10353
|
minWidth: 55
|
|
@@ -10349,6 +10371,12 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
10349
10371
|
var ticketPriceWithFees = priceSymbol + " " + (+ticket.basePrice).toFixed(2);
|
|
10350
10372
|
var ticketOldPriceWithFees = priceSymbol + " " + (+ticket.oldBasePrice).toFixed(2);
|
|
10351
10373
|
var ticketOldPriceWithoutFees = priceSymbol + " " + (+ticket.oldCost).toFixed(2);
|
|
10374
|
+
var ticketFinalPrice = ticket.feeIncluded && !ticket.isForward ? +(ticket.x_face_value || ticket.basePrice) : ticket.feeIncluded ? +ticket.basePrice : +ticket.cost;
|
|
10375
|
+
var ticketFinalPriceFormatted = priceSymbol + " " + Math.round(ticketFinalPrice);
|
|
10376
|
+
var ticketOldFinalPrice = ticket.feeIncluded && !ticket.isForward ? +(ticket.x_face_value || ticket.basePrice) : ticket.feeIncluded ? +ticket.oldBasePrice : +ticket.oldCost;
|
|
10377
|
+
var ticketOldFinalPriceFormatted = priceSymbol + " " + Math.round(ticketOldFinalPrice);
|
|
10378
|
+
var ticketFeeAmount = (+ticket.basePrice - +ticket.cost).toFixed(2);
|
|
10379
|
+
var ticketBreakdown = !ticket.feeIncluded ? '(+ fees at checkout)' : !ticket.isForward ? null : parseFloat(ticketFeeAmount) > 0 ? "(" + priceSymbol + " " + (+ticket.cost).toFixed(2) + " + " + priceSymbol + " " + ticketFeeAmount + " fee)" : null;
|
|
10352
10380
|
var isSoldOut = ticket.sold_out || !(ticket.displayTicket || ticket.slotGroupId) || ticket.soldOut;
|
|
10353
10381
|
var ticketSelect = function ticketSelect(event) {
|
|
10354
10382
|
var value = event.target.value;
|
|
@@ -10359,8 +10387,8 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
10359
10387
|
ticketIsDiscounted = true;
|
|
10360
10388
|
}
|
|
10361
10389
|
var ticketIsFree = +ticket.price === 0;
|
|
10362
|
-
var discountTicketPriceElem = CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketOldPriceWithoutFees : ticketOldPriceWithFees;
|
|
10363
|
-
var ticketPriceElem = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketPriceWithoutFees : ticketPriceWithFees;
|
|
10390
|
+
var discountTicketPriceElem = CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN ? ticketOldFinalPriceFormatted : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketOldPriceWithoutFees : ticketOldPriceWithFees;
|
|
10391
|
+
var ticketPriceElem = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN ? ticketFinalPriceFormatted : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketPriceWithoutFees : ticketPriceWithFees;
|
|
10364
10392
|
var isNewGroupTicket = (ticket == null ? void 0 : ticket.groupName) !== ((_arr2 = arr[i - 1]) == null ? void 0 : _arr2.groupName);
|
|
10365
10393
|
return React__default.createElement(React__default.Fragment, {
|
|
10366
10394
|
key: ticket.id || ticket.name
|
|
@@ -10403,7 +10431,7 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
10403
10431
|
className: isSoldOut ? 'sold-out' : ''
|
|
10404
10432
|
}, ticketPriceElem), !isSoldOut && !ticketIsFree && React__default.createElement("p", {
|
|
10405
10433
|
className: "fees"
|
|
10406
|
-
}, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && (ticket.feeIncluded ? '(incl. Fees)' : '(excl. Fees)'), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && "(" + ticketPriceWithFees + " with fees)"), ticket.depositPercent && React__default.createElement("p", {
|
|
10434
|
+
}, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && (ticket.feeIncluded ? '(incl. Fees)' : '(excl. Fees)'), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && "(" + ticketPriceWithFees + " with fees)", CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && ticketBreakdown), ticket.depositPercent && React__default.createElement("p", {
|
|
10407
10435
|
className: "deposits"
|
|
10408
10436
|
}, ticket.depositPercent + '% DEPOSIT')), React__default.createElement("div", {
|
|
10409
10437
|
className: "event-detail__tier-state",
|
|
@@ -10461,13 +10489,19 @@ var TimeSlotTicketRow = function TimeSlotTicketRow(_ref) {
|
|
|
10461
10489
|
var ticketPriceWithFees = priceSymbol + " " + (+ticket.basePrice).toFixed(2);
|
|
10462
10490
|
var ticketOldPriceWithFees = priceSymbol + " " + (+ticket.oldBasePrice).toFixed(2);
|
|
10463
10491
|
var ticketOldPriceWithoutFees = priceSymbol + " " + (+ticket.oldCost).toFixed(2);
|
|
10492
|
+
var ticketFinalPrice = ticket.feeIncluded && !ticket.isForward ? +(ticket.x_face_value || ticket.basePrice) : ticket.feeIncluded ? +ticket.basePrice : +ticket.cost;
|
|
10493
|
+
var ticketFinalPriceFormatted = priceSymbol + " " + Math.round(ticketFinalPrice);
|
|
10494
|
+
var ticketOldFinalPrice = ticket.feeIncluded && !ticket.isForward ? +(ticket.x_face_value || ticket.basePrice) : ticket.feeIncluded ? +ticket.oldBasePrice : +ticket.oldCost;
|
|
10495
|
+
var ticketOldFinalPriceFormatted = priceSymbol + " " + Math.round(ticketOldFinalPrice);
|
|
10496
|
+
var ticketFeeAmount = (+ticket.basePrice - +ticket.cost).toFixed(2);
|
|
10497
|
+
var ticketBreakdown = !ticket.feeIncluded ? '(+ fees at checkout)' : !ticket.isForward ? null : parseFloat(ticketFeeAmount) > 0 ? "(" + priceSymbol + " " + (+ticket.cost).toFixed(2) + " + " + priceSymbol + " " + ticketFeeAmount + " fee)" : null;
|
|
10464
10498
|
var ticketIsDiscounted = false;
|
|
10465
10499
|
if (ticket.oldPrice && !isSoldOut && ticket.oldPrice !== ticket.price) {
|
|
10466
10500
|
ticketIsDiscounted = true;
|
|
10467
10501
|
}
|
|
10468
10502
|
var ticketIsFree = +ticket.price === 0;
|
|
10469
|
-
var discountTicketPriceElem = CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketOldPriceWithoutFees : ticketOldPriceWithFees;
|
|
10470
|
-
var ticketPriceElem = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketPriceWithoutFees : ticketPriceWithFees;
|
|
10503
|
+
var discountTicketPriceElem = CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN ? ticketOldFinalPriceFormatted : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketOldPriceWithoutFees : ticketOldPriceWithFees;
|
|
10504
|
+
var ticketPriceElem = isSoldOut ? 'SOLD OUT' : ticketIsFree ? 'FREE' : CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN ? ticketFinalPriceFormatted : CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH || !ticket.feeIncluded ? ticketPriceWithoutFees : ticketPriceWithFees;
|
|
10471
10505
|
var handleTimeChange = function handleTimeChange(event) {
|
|
10472
10506
|
var selectedTimeKey = event.target.value;
|
|
10473
10507
|
var selectedOption = availableTimeSlots.find(function (slot) {
|
|
@@ -10521,7 +10555,7 @@ var TimeSlotTicketRow = function TimeSlotTicketRow(_ref) {
|
|
|
10521
10555
|
className: isSoldOut ? 'sold-out' : ''
|
|
10522
10556
|
}, ticketPriceElem), !isSoldOut && !ticketIsFree && React__default.createElement("p", {
|
|
10523
10557
|
className: "fees"
|
|
10524
|
-
}, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && (ticket.feeIncluded ? '(incl. Fees)' : '(excl. Fees)'), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && "(" + ticketPriceWithFees + " with fees)")), !isSoldOut && React__default.createElement("div", {
|
|
10558
|
+
}, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && (ticket.feeIncluded ? '(incl. Fees)' : '(excl. Fees)'), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && "(" + ticketPriceWithFees + " with fees)", CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && ticketBreakdown)), !isSoldOut && React__default.createElement("div", {
|
|
10525
10559
|
className: "event-detail__tier-state time-slot-selectors-container"
|
|
10526
10560
|
}, React__default.createElement(Box, {
|
|
10527
10561
|
sx: {
|
|
@@ -15887,19 +15921,23 @@ var OrderDetails = function OrderDetails(_ref3) {
|
|
|
15887
15921
|
className: "add-on-container"
|
|
15888
15922
|
}, React__default.createElement("span", null, item.quantity), React__default.createElement("span", {
|
|
15889
15923
|
className: "add-on-x"
|
|
15890
|
-
}, ' x '), React__default.createElement("span", null, item.groupName ? item.groupName + ' - ' : ''), React__default.createElement("span", null, item.name), React__default.createElement("span", null, ' - '), React__default.createElement("span", null, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency) + ' (incl. fees)', CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency)), React__default.createElement("span", {
|
|
15924
|
+
}, ' x '), React__default.createElement("span", null, item.groupName ? item.groupName + ' - ' : ''), React__default.createElement("span", null, item.name), React__default.createElement("span", null, ' - '), React__default.createElement("span", null, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency) + ' (incl. fees)', CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency), CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency)), React__default.createElement("span", {
|
|
15891
15925
|
className: "add-on-each"
|
|
15892
15926
|
}, ' each')), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && React__default.createElement("p", {
|
|
15893
15927
|
className: "fees"
|
|
15894
|
-
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(String(item.price))), currency) + " with fees)"))
|
|
15928
|
+
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(String(item.price))), currency) + " with fees)"), CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && parseFloat(item.price) - parseFloat(item.cost) > 0 && React__default.createElement("p", {
|
|
15929
|
+
className: "fees"
|
|
15930
|
+
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency) + " + " + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price) - parseFloat(item.cost)), currency) + " fee)"));
|
|
15895
15931
|
};
|
|
15896
15932
|
var defaultTableRenderer = function defaultTableRenderer(item) {
|
|
15897
15933
|
return React__default.createElement("div", null, React__default.createElement("div", {
|
|
15898
15934
|
key: item.id,
|
|
15899
15935
|
className: "table-type-container"
|
|
15900
|
-
}, React__default.createElement("span", null, item.groupName ? item.groupName + ' - ' : ''), React__default.createElement("span", null, item.name), React__default.createElement("span", null, ' - '), React__default.createElement("span", null, "Guest Count", ': '), React__default.createElement("span", null, item.guestCount)), React__default.createElement("div", null, React__default.createElement("span", null, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency) + ' (incl. fees)', CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency)), React__default.createElement("br", null), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && React__default.createElement("p", {
|
|
15936
|
+
}, React__default.createElement("span", null, item.groupName ? item.groupName + ' - ' : ''), React__default.createElement("span", null, item.name), React__default.createElement("span", null, ' - '), React__default.createElement("span", null, "Guest Count", ': '), React__default.createElement("span", null, item.guestCount)), React__default.createElement("div", null, React__default.createElement("span", null, CONFIGS.FEES_STYLE === FEES_STYLES.TRADITIONAL && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency) + ' (incl. fees)', CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency), CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price)), currency)), React__default.createElement("br", null), CONFIGS.FEES_STYLE === FEES_STYLES.DISPLAY_BOTH && React__default.createElement("p", {
|
|
15937
|
+
className: "fees"
|
|
15938
|
+
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(String(item.price))), currency) + " with fees)"), CONFIGS.FEES_STYLE === FEES_STYLES.FINAL_WITH_BREAKDOWN && parseFloat(item.price) - parseFloat(item.cost) > 0 && React__default.createElement("p", {
|
|
15901
15939
|
className: "fees"
|
|
15902
|
-
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(
|
|
15940
|
+
}, "(" + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.cost)), currency) + " + " + currencyNormalizerCreator(createFixedFloatNormalizer(2)(parseFloat(item.price) - parseFloat(item.cost)), currency) + " fee)")));
|
|
15903
15941
|
};
|
|
15904
15942
|
return React__default.createElement("div", {
|
|
15905
15943
|
className: "payment_page payment_page_single"
|