tf-checkout-react 1.7.8 → 1.7.14
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/addonsContainer/index.d.ts +0 -3
- package/dist/components/addonsContainer/useAddons.d.ts +23 -0
- package/dist/components/paymentContainer/index.d.ts +2 -1
- package/dist/index.d.ts +3 -0
- package/dist/tf-checkout-react.cjs.development.js +209 -147
- 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 +207 -148
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/addonsContainer/index.tsx +26 -230
- package/src/components/addonsContainer/useAddons.ts +248 -0
- 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/index.tsx +6 -1
- package/src/index.ts +3 -0
|
@@ -17,7 +17,4 @@ export interface IAddonContainterProps {
|
|
|
17
17
|
configs: any;
|
|
18
18
|
onAddOnSelect?: (id: string, value: string, addon: any) => void;
|
|
19
19
|
}
|
|
20
|
-
export interface ObjectLiteral {
|
|
21
|
-
[key: string]: any;
|
|
22
|
-
}
|
|
23
20
|
export declare const AddonsContainter: ({ classNamePrefix, enableBillingInfoAutoCreate, enableTimer, onGetAddonsPageInfoSuccess, onGetAddonsPageInfoError, onPostCheckoutSuccess, onPostCheckoutError, onConfirmSelectionSuccess, onConfirmSelectionError, onCountdownFinish, onPendingVerification, samePage, descriptionTrigger, addOnDataWithCustomFields, configs, onAddOnSelect, }: IAddonContainterProps) => JSX.Element | null;
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
export interface IUseAddonsOptions {
|
|
3
|
+
enableBillingInfoAutoCreate?: boolean;
|
|
4
|
+
addOnDataWithCustomFields?: any;
|
|
5
|
+
onGetAddonsPageInfoSuccess?: (res: any) => void;
|
|
6
|
+
onGetAddonsPageInfoError?: (error: any) => void;
|
|
7
|
+
onPostCheckoutSuccess?: (res: any) => void;
|
|
8
|
+
onPostCheckoutError?: (error: any) => void;
|
|
9
|
+
onConfirmSelectionSuccess?: (res: any) => void;
|
|
10
|
+
onConfirmSelectionError?: (error: any) => void;
|
|
11
|
+
}
|
|
12
|
+
export declare const useAddons: (eventId: string | null, options?: IUseAddonsOptions) => {
|
|
13
|
+
addons: any;
|
|
14
|
+
addonsOptions: any;
|
|
15
|
+
loading: boolean;
|
|
16
|
+
cartExpirationTime: number;
|
|
17
|
+
pendingVerificationMessage: any;
|
|
18
|
+
setPendingVerificationMessage: import("react").Dispatch<any>;
|
|
19
|
+
initialValues: any;
|
|
20
|
+
onFieldChange: (id: any, value: any, addon: any) => void;
|
|
21
|
+
handleConfirm: (values: any, skipAddonPage?: boolean | undefined) => Promise<void>;
|
|
22
|
+
handleClearAddons: () => void;
|
|
23
|
+
};
|
|
@@ -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;
|
package/dist/index.d.ts
CHANGED
|
@@ -13,6 +13,9 @@ export { RsvpContainer } from './components/rsvpContainer';
|
|
|
13
13
|
export { ResetPasswordContainer } from './components/resetPasswordContainer';
|
|
14
14
|
export { ForgotPasswordModal } from './components/forgotPasswordModal';
|
|
15
15
|
export { AddonsContainter } from './components/addonsContainer';
|
|
16
|
+
export { useAddons } from './components/addonsContainer/useAddons';
|
|
17
|
+
export { default as TimerWidget } from './components/timerWidget';
|
|
18
|
+
export { VerificationPendingModal } from './components/idVerificationContainer/VerificationPendingModal';
|
|
16
19
|
export { PreRegistration } from './components/preRegistration';
|
|
17
20
|
export { PreRegistrationComplete } from './components/preRegistration/PreRegistrationComplete';
|
|
18
21
|
export { PreRegistrationInformations } from './components/preRegistration/PreRegistrationInformations';
|
|
@@ -2747,59 +2747,6 @@ var TimerWidget = function TimerWidget(_ref) {
|
|
|
2747
2747
|
};
|
|
2748
2748
|
var TimerWidget$1 = /*#__PURE__*/React.memo(TimerWidget);
|
|
2749
2749
|
|
|
2750
|
-
var addonsWithGroupsAdapter = function addonsWithGroupsAdapter(data) {
|
|
2751
|
-
var addonsData = _extends({}, data);
|
|
2752
|
-
var addOnsGroups = _get(addonsData, 'add_on_groups', []);
|
|
2753
|
-
var addons = _get(addonsData, 'add_ons', []);
|
|
2754
|
-
if (!_isEmpty(addOnsGroups)) {
|
|
2755
|
-
var addOnGroupsWithVariants = [];
|
|
2756
|
-
var addOnsWithoutVariants = [];
|
|
2757
|
-
addons.forEach(function (addon) {
|
|
2758
|
-
if (addon.attributes.addOnGroupId) {
|
|
2759
|
-
// Collect addons groups inside with their variants
|
|
2760
|
-
var currentGroupId = addon.attributes.addOnGroupId;
|
|
2761
|
-
var exsistingGroupIndex = addOnGroupsWithVariants.findIndex(function (item) {
|
|
2762
|
-
return item.id === currentGroupId;
|
|
2763
|
-
});
|
|
2764
|
-
if (addOnGroupsWithVariants[exsistingGroupIndex]) {
|
|
2765
|
-
var addOnGroup = addOnGroupsWithVariants[exsistingGroupIndex];
|
|
2766
|
-
addOnGroupsWithVariants[exsistingGroupIndex] = _extends({}, addOnGroup, {
|
|
2767
|
-
variants: [].concat(addOnGroup.variants, addon.attributes)
|
|
2768
|
-
});
|
|
2769
|
-
} else {
|
|
2770
|
-
var group = addOnsGroups.find(function (group) {
|
|
2771
|
-
return group.attributes.id === currentGroupId;
|
|
2772
|
-
}) || {};
|
|
2773
|
-
addOnGroupsWithVariants.push(_extends({}, group.attributes, {
|
|
2774
|
-
variants: [].concat(addon.attributes)
|
|
2775
|
-
}));
|
|
2776
|
-
}
|
|
2777
|
-
} else {
|
|
2778
|
-
addOnsWithoutVariants.push(addon.attributes);
|
|
2779
|
-
}
|
|
2780
|
-
});
|
|
2781
|
-
return addOnGroupsWithVariants.concat(addOnsWithoutVariants);
|
|
2782
|
-
}
|
|
2783
|
-
// Adapt only simple addons data
|
|
2784
|
-
var adaptedAddons = addons.map(function (addon) {
|
|
2785
|
-
return _extends({}, addon.attributes);
|
|
2786
|
-
});
|
|
2787
|
-
return adaptedAddons;
|
|
2788
|
-
};
|
|
2789
|
-
var cartAdapter = function cartAdapter(cart) {
|
|
2790
|
-
var cartData = _get(cart, 'data.attributes', []);
|
|
2791
|
-
var expiresAt = cartData.expiresAt,
|
|
2792
|
-
carts_arr = cartData.cart;
|
|
2793
|
-
var _ref = carts_arr[0] || {},
|
|
2794
|
-
id = _ref.id,
|
|
2795
|
-
quantity = _ref.quantity;
|
|
2796
|
-
return {
|
|
2797
|
-
id: id,
|
|
2798
|
-
quantity: quantity,
|
|
2799
|
-
expiresAt: expiresAt
|
|
2800
|
-
};
|
|
2801
|
-
};
|
|
2802
|
-
|
|
2803
2750
|
var CheckboxField = function CheckboxField(_ref) {
|
|
2804
2751
|
var label = _ref.label,
|
|
2805
2752
|
field = _ref.field,
|
|
@@ -3918,37 +3865,79 @@ var isAtLeastOneAddonSelected = function isAtLeastOneAddonSelected(value) {
|
|
|
3918
3865
|
return !_isEmpty(selectedAddons);
|
|
3919
3866
|
};
|
|
3920
3867
|
|
|
3921
|
-
var
|
|
3922
|
-
var
|
|
3923
|
-
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
|
|
3928
|
-
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
|
|
3940
|
-
|
|
3941
|
-
|
|
3942
|
-
|
|
3943
|
-
|
|
3944
|
-
|
|
3945
|
-
|
|
3946
|
-
|
|
3947
|
-
|
|
3948
|
-
|
|
3949
|
-
|
|
3950
|
-
|
|
3951
|
-
|
|
3868
|
+
var addonsWithGroupsAdapter = function addonsWithGroupsAdapter(data) {
|
|
3869
|
+
var addonsData = _extends({}, data);
|
|
3870
|
+
var addOnsGroups = _get(addonsData, 'add_on_groups', []);
|
|
3871
|
+
var addons = _get(addonsData, 'add_ons', []);
|
|
3872
|
+
if (!_isEmpty(addOnsGroups)) {
|
|
3873
|
+
var addOnGroupsWithVariants = [];
|
|
3874
|
+
var addOnsWithoutVariants = [];
|
|
3875
|
+
addons.forEach(function (addon) {
|
|
3876
|
+
if (addon.attributes.addOnGroupId) {
|
|
3877
|
+
// Collect addons groups inside with their variants
|
|
3878
|
+
var currentGroupId = addon.attributes.addOnGroupId;
|
|
3879
|
+
var exsistingGroupIndex = addOnGroupsWithVariants.findIndex(function (item) {
|
|
3880
|
+
return item.id === currentGroupId;
|
|
3881
|
+
});
|
|
3882
|
+
if (addOnGroupsWithVariants[exsistingGroupIndex]) {
|
|
3883
|
+
var addOnGroup = addOnGroupsWithVariants[exsistingGroupIndex];
|
|
3884
|
+
addOnGroupsWithVariants[exsistingGroupIndex] = _extends({}, addOnGroup, {
|
|
3885
|
+
variants: [].concat(addOnGroup.variants, addon.attributes)
|
|
3886
|
+
});
|
|
3887
|
+
} else {
|
|
3888
|
+
var group = addOnsGroups.find(function (group) {
|
|
3889
|
+
return group.attributes.id === currentGroupId;
|
|
3890
|
+
}) || {};
|
|
3891
|
+
addOnGroupsWithVariants.push(_extends({}, group.attributes, {
|
|
3892
|
+
variants: [].concat(addon.attributes)
|
|
3893
|
+
}));
|
|
3894
|
+
}
|
|
3895
|
+
} else {
|
|
3896
|
+
addOnsWithoutVariants.push(addon.attributes);
|
|
3897
|
+
}
|
|
3898
|
+
});
|
|
3899
|
+
return addOnGroupsWithVariants.concat(addOnsWithoutVariants);
|
|
3900
|
+
}
|
|
3901
|
+
// Adapt only simple addons data
|
|
3902
|
+
var adaptedAddons = addons.map(function (addon) {
|
|
3903
|
+
return _extends({}, addon.attributes);
|
|
3904
|
+
});
|
|
3905
|
+
return adaptedAddons;
|
|
3906
|
+
};
|
|
3907
|
+
var cartAdapter = function cartAdapter(cart) {
|
|
3908
|
+
var cartData = _get(cart, 'data.attributes', []);
|
|
3909
|
+
var expiresAt = cartData.expiresAt,
|
|
3910
|
+
carts_arr = cartData.cart;
|
|
3911
|
+
var _ref = carts_arr[0] || {},
|
|
3912
|
+
id = _ref.id,
|
|
3913
|
+
quantity = _ref.quantity;
|
|
3914
|
+
return {
|
|
3915
|
+
id: id,
|
|
3916
|
+
quantity: quantity,
|
|
3917
|
+
expiresAt: expiresAt
|
|
3918
|
+
};
|
|
3919
|
+
};
|
|
3920
|
+
|
|
3921
|
+
var useAddons = function useAddons(eventId, options) {
|
|
3922
|
+
if (options === void 0) {
|
|
3923
|
+
options = {};
|
|
3924
|
+
}
|
|
3925
|
+
var _options = options,
|
|
3926
|
+
_options$enableBillin = _options.enableBillingInfoAutoCreate,
|
|
3927
|
+
enableBillingInfoAutoCreate = _options$enableBillin === void 0 ? true : _options$enableBillin,
|
|
3928
|
+
addOnDataWithCustomFields = _options.addOnDataWithCustomFields,
|
|
3929
|
+
_options$onGetAddonsP = _options.onGetAddonsPageInfoSuccess,
|
|
3930
|
+
onGetAddonsPageInfoSuccess = _options$onGetAddonsP === void 0 ? _identity : _options$onGetAddonsP,
|
|
3931
|
+
_options$onGetAddonsP2 = _options.onGetAddonsPageInfoError,
|
|
3932
|
+
onGetAddonsPageInfoError = _options$onGetAddonsP2 === void 0 ? _identity : _options$onGetAddonsP2,
|
|
3933
|
+
_options$onPostChecko = _options.onPostCheckoutSuccess,
|
|
3934
|
+
onPostCheckoutSuccess = _options$onPostChecko === void 0 ? _identity : _options$onPostChecko,
|
|
3935
|
+
_options$onPostChecko2 = _options.onPostCheckoutError,
|
|
3936
|
+
onPostCheckoutError = _options$onPostChecko2 === void 0 ? _identity : _options$onPostChecko2,
|
|
3937
|
+
_options$onConfirmSel = _options.onConfirmSelectionSuccess,
|
|
3938
|
+
onConfirmSelectionSuccess = _options$onConfirmSel === void 0 ? _identity : _options$onConfirmSel,
|
|
3939
|
+
_options$onConfirmSel2 = _options.onConfirmSelectionError,
|
|
3940
|
+
onConfirmSelectionError = _options$onConfirmSel2 === void 0 ? _identity : _options$onConfirmSel2;
|
|
3952
3941
|
var _useState = React.useState([]),
|
|
3953
3942
|
addons = _useState[0],
|
|
3954
3943
|
setAddons = _useState[1];
|
|
@@ -3970,20 +3959,9 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3970
3959
|
var _useState7 = React.useState(),
|
|
3971
3960
|
pendingVerificationMessage = _useState7[0],
|
|
3972
3961
|
setPendingVerificationMessage = _useState7[1];
|
|
3973
|
-
var _useState8 = React.useState(null),
|
|
3974
|
-
visibleDescription = _useState8[0],
|
|
3975
|
-
setVisibleDescription = _useState8[1];
|
|
3976
|
-
var handleDescriptionToggle = function handleDescriptionToggle(ticketId) {
|
|
3977
|
-
setVisibleDescription(function (current) {
|
|
3978
|
-
return current === ticketId ? null : ticketId;
|
|
3979
|
-
});
|
|
3980
|
-
};
|
|
3981
3962
|
React.useEffect(function () {
|
|
3982
|
-
if (samePage) {
|
|
3983
|
-
window.localStorage.removeItem('add_ons');
|
|
3984
|
-
}
|
|
3985
3963
|
var getAddonsPageInfo = /*#__PURE__*/function () {
|
|
3986
|
-
var
|
|
3964
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
3987
3965
|
var cart, _cartAdapter, choosedTicketID, quantity, expiresAt, choosedTicketCount, addonsData, adaptedAddons, ticketRelatedAddons, sortedTicketAddons, _getAddonSelectOption, addonsWithOptions, groupsWithSelectedVariantsInfo, groupsWithVariants;
|
|
3988
3966
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
3989
3967
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -3994,7 +3972,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3994
3972
|
break;
|
|
3995
3973
|
}
|
|
3996
3974
|
setLoading(true);
|
|
3997
|
-
// Get choosed ticket info (id, count) from Cart request for addons options calculations
|
|
3998
3975
|
_context.next = 5;
|
|
3999
3976
|
return getCart();
|
|
4000
3977
|
case 5:
|
|
@@ -4002,7 +3979,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4002
3979
|
_cartAdapter = cartAdapter(cart), choosedTicketID = _cartAdapter.id, quantity = _cartAdapter.quantity, expiresAt = _cartAdapter.expiresAt;
|
|
4003
3980
|
choosedTicketCount = Number(quantity);
|
|
4004
3981
|
setCartExpirationTime(expiresAt);
|
|
4005
|
-
// Get and collect addons data
|
|
4006
3982
|
_context.next = 11;
|
|
4007
3983
|
return getAddons(eventId);
|
|
4008
3984
|
case 11:
|
|
@@ -4011,12 +3987,10 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4011
3987
|
ticketRelatedAddons = getTicketRelatedAddons(adaptedAddons, choosedTicketID);
|
|
4012
3988
|
sortedTicketAddons = getSortedAddons(ticketRelatedAddons);
|
|
4013
3989
|
setAddons(sortedTicketAddons);
|
|
4014
|
-
// Collect addons and addon group options
|
|
4015
3990
|
_getAddonSelectOption = getAddonSelectOptions(adaptedAddons, choosedTicketCount), addonsWithOptions = _getAddonSelectOption.addonsWithOptions, groupsWithSelectedVariantsInfo = _getAddonSelectOption.groupsWithSelectedVariantsInfo, groupsWithVariants = _getAddonSelectOption.groupsWithVariants;
|
|
4016
3991
|
setAddonsOptions(addonsWithOptions);
|
|
4017
3992
|
setGroupsWithSelectedVariants(groupsWithSelectedVariantsInfo);
|
|
4018
3993
|
setGroupsWithInitialVariantsValues(groupsWithVariants);
|
|
4019
|
-
// Success callback props
|
|
4020
3994
|
onGetAddonsPageInfoSuccess(addonsData);
|
|
4021
3995
|
case 21:
|
|
4022
3996
|
_context.next = 26;
|
|
@@ -4024,7 +3998,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4024
3998
|
case 23:
|
|
4025
3999
|
_context.prev = 23;
|
|
4026
4000
|
_context.t0 = _context["catch"](0);
|
|
4027
|
-
// Callback error props
|
|
4028
4001
|
onGetAddonsPageInfoError(_context.t0);
|
|
4029
4002
|
case 26:
|
|
4030
4003
|
_context.prev = 26;
|
|
@@ -4037,23 +4010,21 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4037
4010
|
}, _callee, null, [[0, 23, 26, 29]]);
|
|
4038
4011
|
}));
|
|
4039
4012
|
return function getAddonsPageInfo() {
|
|
4040
|
-
return
|
|
4013
|
+
return _ref.apply(this, arguments);
|
|
4041
4014
|
};
|
|
4042
4015
|
}();
|
|
4043
4016
|
getAddonsPageInfo();
|
|
4044
|
-
}, []);
|
|
4045
|
-
var recreateGroupVariantsSelectOptions = function recreateGroupVariantsSelectOptions(groupId,
|
|
4046
|
-
var choosedVariants =
|
|
4047
|
-
limit =
|
|
4048
|
-
selectedCount =
|
|
4017
|
+
}, [eventId]);
|
|
4018
|
+
var recreateGroupVariantsSelectOptions = function recreateGroupVariantsSelectOptions(groupId, changedGroup) {
|
|
4019
|
+
var choosedVariants = changedGroup.choosedVariants,
|
|
4020
|
+
limit = changedGroup.limit,
|
|
4021
|
+
selectedCount = changedGroup.selectedCount;
|
|
4049
4022
|
var remainingGroupStock = limit - selectedCount;
|
|
4050
4023
|
var recreatedVariantsOptions = {};
|
|
4051
|
-
// Regenerate variants allowed stock counts
|
|
4052
4024
|
for (var variant in choosedVariants) {
|
|
4053
4025
|
var variantId = variant;
|
|
4054
4026
|
var variantCurrSelectedValue = choosedVariants[variant];
|
|
4055
4027
|
var allowedOptionCount = void 0;
|
|
4056
|
-
// Formula for regenerating
|
|
4057
4028
|
if (remainingGroupStock >= groupsWithInitialVariantsValues[groupId][variantId] - variantCurrSelectedValue) {
|
|
4058
4029
|
allowedOptionCount = groupsWithInitialVariantsValues[groupId][variantId];
|
|
4059
4030
|
} else {
|
|
@@ -4066,7 +4037,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4066
4037
|
});
|
|
4067
4038
|
};
|
|
4068
4039
|
var onFieldChange = function onFieldChange(id, value, addon) {
|
|
4069
|
-
// If changeableGroup exsists it means that group with limitation variant was changed
|
|
4070
4040
|
var changeableGroup = groupsWithSelectedVariants[addon.id];
|
|
4071
4041
|
if (changeableGroup) {
|
|
4072
4042
|
var _extends2, _extends3;
|
|
@@ -4075,18 +4045,16 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4075
4045
|
var currSelectedVariantCount = Number(value);
|
|
4076
4046
|
var currSelectedVariantPrevCount = groupsWithSelectedVariants[currGroupId].choosedVariants[currSelectedVariantId];
|
|
4077
4047
|
var currSelectedGroupCount = changeableGroup.selectedCount + (currSelectedVariantCount - currSelectedVariantPrevCount);
|
|
4078
|
-
// Update Group info
|
|
4079
4048
|
var updatedGroupsWithSelectedVariants = _extends({}, groupsWithSelectedVariants, (_extends3 = {}, _extends3[currGroupId] = _extends({}, groupsWithSelectedVariants[currGroupId], {
|
|
4080
4049
|
selectedCount: currSelectedGroupCount,
|
|
4081
4050
|
choosedVariants: _extends({}, groupsWithSelectedVariants[currGroupId].choosedVariants, (_extends2 = {}, _extends2[currSelectedVariantId] = currSelectedVariantCount, _extends2))
|
|
4082
4051
|
}), _extends3));
|
|
4083
4052
|
setGroupsWithSelectedVariants(updatedGroupsWithSelectedVariants);
|
|
4084
|
-
// Recreate Select Options for Addon Group Variants
|
|
4085
4053
|
recreateGroupVariantsSelectOptions(currGroupId, updatedGroupsWithSelectedVariants[currGroupId]);
|
|
4086
4054
|
}
|
|
4087
4055
|
};
|
|
4088
4056
|
var handleConfirm = /*#__PURE__*/function () {
|
|
4089
|
-
var
|
|
4057
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(values, skipAddonPage) {
|
|
4090
4058
|
var _pageConfigsData$skip, pageConfigsDataResponse, pageConfigsData, skipBillingPage, ticketsQuantity, userData, checkoutBody, _checkoutResponse$dat, _checkoutResponse$dat2, _checkoutResponse$dat3, _checkoutResponse$dat4, checkoutResponse, hash, total, _error$response, _error$response$data, _error$response$data$, _error$response2, _error$response2$data;
|
|
4091
4059
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
4092
4060
|
while (1) switch (_context2.prev = _context2.next) {
|
|
@@ -4168,7 +4136,7 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4168
4136
|
}, _callee2, null, [[0, 30], [10, 22]]);
|
|
4169
4137
|
}));
|
|
4170
4138
|
return function handleConfirm(_x, _x2) {
|
|
4171
|
-
return
|
|
4139
|
+
return _ref2.apply(this, arguments);
|
|
4172
4140
|
};
|
|
4173
4141
|
}();
|
|
4174
4142
|
var handleClearAddons = function handleClearAddons() {
|
|
@@ -4190,6 +4158,84 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4190
4158
|
}
|
|
4191
4159
|
return addOnsData;
|
|
4192
4160
|
}, [addons, addOnDataWithCustomFields]);
|
|
4161
|
+
return {
|
|
4162
|
+
addons: addons,
|
|
4163
|
+
addonsOptions: addonsOptions,
|
|
4164
|
+
loading: loading,
|
|
4165
|
+
cartExpirationTime: cartExpirationTime,
|
|
4166
|
+
pendingVerificationMessage: pendingVerificationMessage,
|
|
4167
|
+
setPendingVerificationMessage: setPendingVerificationMessage,
|
|
4168
|
+
initialValues: initialValues,
|
|
4169
|
+
onFieldChange: onFieldChange,
|
|
4170
|
+
handleConfirm: handleConfirm,
|
|
4171
|
+
handleClearAddons: handleClearAddons
|
|
4172
|
+
};
|
|
4173
|
+
};
|
|
4174
|
+
|
|
4175
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4176
|
+
var AddonsContainter = function AddonsContainter(_ref) {
|
|
4177
|
+
var _ref$classNamePrefix = _ref.classNamePrefix,
|
|
4178
|
+
classNamePrefix = _ref$classNamePrefix === void 0 ? 'add_on' : _ref$classNamePrefix,
|
|
4179
|
+
_ref$enableBillingInf = _ref.enableBillingInfoAutoCreate,
|
|
4180
|
+
enableBillingInfoAutoCreate = _ref$enableBillingInf === void 0 ? true : _ref$enableBillingInf,
|
|
4181
|
+
_ref$enableTimer = _ref.enableTimer,
|
|
4182
|
+
enableTimer = _ref$enableTimer === void 0 ? false : _ref$enableTimer,
|
|
4183
|
+
_ref$onGetAddonsPageI = _ref.onGetAddonsPageInfoSuccess,
|
|
4184
|
+
onGetAddonsPageInfoSuccess = _ref$onGetAddonsPageI === void 0 ? _identity : _ref$onGetAddonsPageI,
|
|
4185
|
+
_ref$onGetAddonsPageI2 = _ref.onGetAddonsPageInfoError,
|
|
4186
|
+
onGetAddonsPageInfoError = _ref$onGetAddonsPageI2 === void 0 ? _identity : _ref$onGetAddonsPageI2,
|
|
4187
|
+
_ref$onPostCheckoutSu = _ref.onPostCheckoutSuccess,
|
|
4188
|
+
onPostCheckoutSuccess = _ref$onPostCheckoutSu === void 0 ? _identity : _ref$onPostCheckoutSu,
|
|
4189
|
+
_ref$onPostCheckoutEr = _ref.onPostCheckoutError,
|
|
4190
|
+
onPostCheckoutError = _ref$onPostCheckoutEr === void 0 ? _identity : _ref$onPostCheckoutEr,
|
|
4191
|
+
_ref$onConfirmSelecti = _ref.onConfirmSelectionSuccess,
|
|
4192
|
+
onConfirmSelectionSuccess = _ref$onConfirmSelecti === void 0 ? _identity : _ref$onConfirmSelecti,
|
|
4193
|
+
_ref$onConfirmSelecti2 = _ref.onConfirmSelectionError,
|
|
4194
|
+
onConfirmSelectionError = _ref$onConfirmSelecti2 === void 0 ? _identity : _ref$onConfirmSelecti2,
|
|
4195
|
+
_ref$onCountdownFinis = _ref.onCountdownFinish,
|
|
4196
|
+
_onCountdownFinish = _ref$onCountdownFinis === void 0 ? _identity : _ref$onCountdownFinis,
|
|
4197
|
+
_ref$onPendingVerific = _ref.onPendingVerification,
|
|
4198
|
+
onPendingVerification = _ref$onPendingVerific === void 0 ? _identity : _ref$onPendingVerific,
|
|
4199
|
+
samePage = _ref.samePage,
|
|
4200
|
+
_ref$descriptionTrigg = _ref.descriptionTrigger,
|
|
4201
|
+
descriptionTrigger = _ref$descriptionTrigg === void 0 ? 'click' : _ref$descriptionTrigg,
|
|
4202
|
+
addOnDataWithCustomFields = _ref.addOnDataWithCustomFields,
|
|
4203
|
+
configs = _ref.configs,
|
|
4204
|
+
_ref$onAddOnSelect = _ref.onAddOnSelect,
|
|
4205
|
+
onAddOnSelect = _ref$onAddOnSelect === void 0 ? _identity : _ref$onAddOnSelect;
|
|
4206
|
+
var eventId = getQueryVariable('event_id') || null;
|
|
4207
|
+
var _useAddons = useAddons(eventId, {
|
|
4208
|
+
enableBillingInfoAutoCreate: enableBillingInfoAutoCreate,
|
|
4209
|
+
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4210
|
+
onGetAddonsPageInfoSuccess: onGetAddonsPageInfoSuccess,
|
|
4211
|
+
onGetAddonsPageInfoError: onGetAddonsPageInfoError,
|
|
4212
|
+
onPostCheckoutSuccess: onPostCheckoutSuccess,
|
|
4213
|
+
onPostCheckoutError: onPostCheckoutError,
|
|
4214
|
+
onConfirmSelectionSuccess: onConfirmSelectionSuccess,
|
|
4215
|
+
onConfirmSelectionError: onConfirmSelectionError
|
|
4216
|
+
}),
|
|
4217
|
+
addons = _useAddons.addons,
|
|
4218
|
+
addonsOptions = _useAddons.addonsOptions,
|
|
4219
|
+
loading = _useAddons.loading,
|
|
4220
|
+
cartExpirationTime = _useAddons.cartExpirationTime,
|
|
4221
|
+
pendingVerificationMessage = _useAddons.pendingVerificationMessage,
|
|
4222
|
+
initialValues = _useAddons.initialValues,
|
|
4223
|
+
onFieldChange = _useAddons.onFieldChange,
|
|
4224
|
+
handleConfirm = _useAddons.handleConfirm,
|
|
4225
|
+
handleClearAddons = _useAddons.handleClearAddons;
|
|
4226
|
+
var _useState = React.useState(null),
|
|
4227
|
+
visibleDescription = _useState[0],
|
|
4228
|
+
setVisibleDescription = _useState[1];
|
|
4229
|
+
var handleDescriptionToggle = function handleDescriptionToggle(ticketId) {
|
|
4230
|
+
setVisibleDescription(function (current) {
|
|
4231
|
+
return current === ticketId ? null : ticketId;
|
|
4232
|
+
});
|
|
4233
|
+
};
|
|
4234
|
+
React.useEffect(function () {
|
|
4235
|
+
if (samePage) {
|
|
4236
|
+
window.localStorage.removeItem('add_ons');
|
|
4237
|
+
}
|
|
4238
|
+
}, []);
|
|
4193
4239
|
if (loading) {
|
|
4194
4240
|
return React__default.createElement("div", {
|
|
4195
4241
|
className: classNamePrefix + "_loader"
|
|
@@ -4238,10 +4284,10 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4238
4284
|
window.localStorage.setItem('add_ons', JSON.stringify(values));
|
|
4239
4285
|
}
|
|
4240
4286
|
} : undefined
|
|
4241
|
-
}, function (
|
|
4242
|
-
var values =
|
|
4243
|
-
errors =
|
|
4244
|
-
setFieldTouched =
|
|
4287
|
+
}, function (_ref2) {
|
|
4288
|
+
var values = _ref2.values,
|
|
4289
|
+
errors = _ref2.errors,
|
|
4290
|
+
setFieldTouched = _ref2.setFieldTouched;
|
|
4245
4291
|
var isConfirmDisabled = !isAtLeastOneAddonSelected(values);
|
|
4246
4292
|
return React__default.createElement(formik.Form, {
|
|
4247
4293
|
autoComplete: "off",
|
|
@@ -5641,7 +5687,8 @@ var PaymentPlanSection = function PaymentPlanSection(props) {
|
|
|
5641
5687
|
// Wrapper component to access Stripe hooks inside Elements context
|
|
5642
5688
|
var StripeWrapper = function StripeWrapper(_ref) {
|
|
5643
5689
|
var options = _ref.options,
|
|
5644
|
-
onStripeReady = _ref.onStripeReady
|
|
5690
|
+
onStripeReady = _ref.onStripeReady,
|
|
5691
|
+
onPaymentElementChange = _ref.onPaymentElementChange;
|
|
5645
5692
|
var stripe = reactStripeJs.useStripe();
|
|
5646
5693
|
var elements = reactStripeJs.useElements();
|
|
5647
5694
|
React.useEffect(function () {
|
|
@@ -5650,7 +5697,8 @@ var StripeWrapper = function StripeWrapper(_ref) {
|
|
|
5650
5697
|
}
|
|
5651
5698
|
}, [stripe, elements, onStripeReady]);
|
|
5652
5699
|
return React__default.createElement(reactStripeJs.PaymentElement, {
|
|
5653
|
-
options: options
|
|
5700
|
+
options: options,
|
|
5701
|
+
onChange: onPaymentElementChange
|
|
5654
5702
|
});
|
|
5655
5703
|
};
|
|
5656
5704
|
var initialPaymentPlanConfiguration = {
|
|
@@ -5742,6 +5790,7 @@ var PaymentContainer = function PaymentContainer(_ref2) {
|
|
|
5742
5790
|
stripeAccountId = _ref2.stripeAccountId,
|
|
5743
5791
|
_ref2$onStripeReady = _ref2.onStripeReady,
|
|
5744
5792
|
onStripeReady = _ref2$onStripeReady === void 0 ? _identity : _ref2$onStripeReady,
|
|
5793
|
+
onPaymentElementChange = _ref2.onPaymentElementChange,
|
|
5745
5794
|
_ref2$enablePaymentPl = _ref2.enablePaymentPlan,
|
|
5746
5795
|
enablePaymentPlan = _ref2$enablePaymentPl === void 0 ? true : _ref2$enablePaymentPl;
|
|
5747
5796
|
var _useState = React.useState(initialReviewValues),
|
|
@@ -6125,7 +6174,8 @@ var PaymentContainer = function PaymentContainer(_ref2) {
|
|
|
6125
6174
|
options: elementsOptions
|
|
6126
6175
|
}, React__default.createElement(StripeWrapper, {
|
|
6127
6176
|
onStripeReady: onStripeReady,
|
|
6128
|
-
options: paymentElementOptions
|
|
6177
|
+
options: paymentElementOptions,
|
|
6178
|
+
onPaymentElementChange: onPaymentElementChange
|
|
6129
6179
|
})))) : displayPaymentButton ? React__default.createElement("div", {
|
|
6130
6180
|
className: "payment_button " + (paymentIsLoading ? 'disabled-payment-button' : '')
|
|
6131
6181
|
}, React__default.createElement("button", {
|
|
@@ -6442,38 +6492,34 @@ var useStripePayment = function useStripePayment(_ref) {
|
|
|
6442
6492
|
isBrowser = _ref.isBrowser;
|
|
6443
6493
|
var processPayment = /*#__PURE__*/function () {
|
|
6444
6494
|
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee(paymentDataResponse, values, formikHelpers, checkoutResponse, checkoutUpdateResponse, paymentData) {
|
|
6445
|
-
var attributes, isFreeTickets, updatedOrderData, eventId, _yield$elementsRef$cu, submitError, paymentContext, _yield$stripeRef$curr, confirmError, paymentResponse;
|
|
6495
|
+
var attributes, isFreeTickets, updatedOrderData, eventId, _yield$elementsRef$cu, submitError, paymentContext, confirmParams, rawPhone, e164Phone, _yield$stripeRef$curr, confirmError, paymentResponse;
|
|
6446
6496
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
6447
6497
|
while (1) switch (_context.prev = _context.next) {
|
|
6448
6498
|
case 0:
|
|
6449
6499
|
attributes = paymentData.attributes, isFreeTickets = paymentData.isFreeTickets, updatedOrderData = paymentData.updatedOrderData, eventId = paymentData.eventId;
|
|
6450
6500
|
if (isFreeTickets) {
|
|
6451
|
-
_context.next =
|
|
6501
|
+
_context.next = 23;
|
|
6452
6502
|
break;
|
|
6453
6503
|
}
|
|
6454
6504
|
if (stripeRef.current) {
|
|
6455
|
-
_context.next =
|
|
6505
|
+
_context.next = 5;
|
|
6456
6506
|
break;
|
|
6457
6507
|
}
|
|
6458
6508
|
setError('Stripe is not ready');
|
|
6459
|
-
console.log('Stripe is not ready in billing-info-container');
|
|
6460
6509
|
return _context.abrupt("return", null);
|
|
6461
|
-
case
|
|
6462
|
-
|
|
6463
|
-
// Step 1: Submit elements first
|
|
6464
|
-
_context.next = 9;
|
|
6510
|
+
case 5:
|
|
6511
|
+
_context.next = 7;
|
|
6465
6512
|
return elementsRef.current.submit();
|
|
6466
|
-
case
|
|
6513
|
+
case 7:
|
|
6467
6514
|
_yield$elementsRef$cu = _context.sent;
|
|
6468
6515
|
submitError = _yield$elementsRef$cu.error;
|
|
6469
6516
|
if (!submitError) {
|
|
6470
|
-
_context.next =
|
|
6517
|
+
_context.next = 12;
|
|
6471
6518
|
break;
|
|
6472
6519
|
}
|
|
6473
6520
|
setError('' + (submitError == null ? void 0 : submitError.message));
|
|
6474
|
-
console.log('Stripe elements.submit() error in billing-info-container', submitError);
|
|
6475
6521
|
return _context.abrupt("return", null);
|
|
6476
|
-
case
|
|
6522
|
+
case 12:
|
|
6477
6523
|
// Step 2: Store payment context before potential redirect
|
|
6478
6524
|
paymentContext = {
|
|
6479
6525
|
attributes: attributes,
|
|
@@ -6488,30 +6534,38 @@ var useStripePayment = function useStripePayment(_ref) {
|
|
|
6488
6534
|
};
|
|
6489
6535
|
localStorage.setItem('stripe_payment_context', JSON.stringify(paymentContext));
|
|
6490
6536
|
// Step 3: Confirm payment with current page return URL
|
|
6491
|
-
|
|
6537
|
+
confirmParams = {
|
|
6538
|
+
return_url: window.location.href + (window.location.href.includes('?') ? '&' : '?') + 'payment_return=true'
|
|
6539
|
+
};
|
|
6540
|
+
if (values != null && values.phone) {
|
|
6541
|
+
rawPhone = String(values.phone).replace(/[\s\-().]/g, '');
|
|
6542
|
+
e164Phone = rawPhone.startsWith('+') ? rawPhone : "+" + rawPhone;
|
|
6543
|
+
confirmParams.payment_method_data = {
|
|
6544
|
+
billing_details: {
|
|
6545
|
+
phone: e164Phone
|
|
6546
|
+
}
|
|
6547
|
+
};
|
|
6548
|
+
}
|
|
6549
|
+
_context.next = 18;
|
|
6492
6550
|
return stripeRef.current.confirmPayment({
|
|
6493
6551
|
clientSecret: paymentDataResponse.data.attributes.payment_method.stripe_client_secret,
|
|
6494
6552
|
elements: elementsRef.current,
|
|
6495
|
-
confirmParams:
|
|
6496
|
-
return_url: window.location.href + (window.location.href.includes('?') ? '&' : '?') + 'payment_return=true'
|
|
6497
|
-
},
|
|
6553
|
+
confirmParams: confirmParams,
|
|
6498
6554
|
redirect: 'if_required'
|
|
6499
6555
|
});
|
|
6500
|
-
case
|
|
6556
|
+
case 18:
|
|
6501
6557
|
_yield$stripeRef$curr = _context.sent;
|
|
6502
6558
|
confirmError = _yield$stripeRef$curr.error;
|
|
6503
6559
|
if (!confirmError) {
|
|
6504
|
-
_context.next =
|
|
6560
|
+
_context.next = 23;
|
|
6505
6561
|
break;
|
|
6506
6562
|
}
|
|
6507
6563
|
setError('' + (confirmError == null ? void 0 : confirmError.message));
|
|
6508
|
-
console.log('Stripe confirmPayment error in billing-info-container');
|
|
6509
6564
|
return _context.abrupt("return", null);
|
|
6510
|
-
case
|
|
6511
|
-
console.log('Stripe confirmPayment success in billing-info-container');
|
|
6565
|
+
case 23:
|
|
6512
6566
|
// Handle payment middleware for non-redirect payments
|
|
6513
6567
|
paymentResponse = null;
|
|
6514
|
-
_context.next =
|
|
6568
|
+
_context.next = 26;
|
|
6515
6569
|
return handlePaymentMiddleWare(null, {}, {
|
|
6516
6570
|
reviewData: attributes,
|
|
6517
6571
|
isFreeTickets: isFreeTickets,
|
|
@@ -6529,9 +6583,9 @@ var useStripePayment = function useStripePayment(_ref) {
|
|
|
6529
6583
|
throw error;
|
|
6530
6584
|
}
|
|
6531
6585
|
});
|
|
6532
|
-
case
|
|
6586
|
+
case 26:
|
|
6533
6587
|
return _context.abrupt("return", paymentResponse);
|
|
6534
|
-
case
|
|
6588
|
+
case 27:
|
|
6535
6589
|
case "end":
|
|
6536
6590
|
return _context.stop();
|
|
6537
6591
|
}
|
|
@@ -7018,7 +7072,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref6) {
|
|
|
7018
7072
|
setSingleCheckoutAddOns = _useState25[1];
|
|
7019
7073
|
var orderIsFree = !Number(checkoutData == null ? void 0 : checkoutData.total);
|
|
7020
7074
|
React.useEffect(function () {
|
|
7021
|
-
var hasUniqueId = _get(
|
|
7075
|
+
var hasUniqueId = _get(data, '[0].uniqueId');
|
|
7022
7076
|
var isEqualData = _isEqual(prevData.current, data);
|
|
7023
7077
|
if (!hasUniqueId || !isEqualData) {
|
|
7024
7078
|
setDataWithUniqueIds(assingUniqueIds(data));
|
|
@@ -7026,7 +7080,7 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref6) {
|
|
|
7026
7080
|
prevData.current = data;
|
|
7027
7081
|
}
|
|
7028
7082
|
}
|
|
7029
|
-
}, [
|
|
7083
|
+
}, [data]);
|
|
7030
7084
|
var getQuantity = React.useCallback(function (cart) {
|
|
7031
7085
|
if (cart === void 0) {
|
|
7032
7086
|
cart = [];
|
|
@@ -7982,6 +8036,11 @@ var BillingInfoContainer = /*#__PURE__*/React__default.memo(function (_ref6) {
|
|
|
7982
8036
|
checkoutData: checkoutData,
|
|
7983
8037
|
elementsOptions: elementsOptions,
|
|
7984
8038
|
paymentElementOptions: {
|
|
8039
|
+
fields: {
|
|
8040
|
+
billingDetails: {
|
|
8041
|
+
phone: 'never'
|
|
8042
|
+
}
|
|
8043
|
+
},
|
|
7985
8044
|
wallets: {
|
|
7986
8045
|
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',
|
|
7987
8046
|
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'
|
|
@@ -16036,10 +16095,13 @@ exports.RsvpContainer = RsvpContainer;
|
|
|
16036
16095
|
exports.SeatMapContainer = SeatMapContainer;
|
|
16037
16096
|
exports.TicketResaleContainer = TicketResaleContainer;
|
|
16038
16097
|
exports.TicketsContainer = TicketsContainer;
|
|
16098
|
+
exports.TimerWidget = TimerWidget$1;
|
|
16039
16099
|
exports.VERIFICATION_STATUSES = VERIFICATION_STATUSES;
|
|
16100
|
+
exports.VerificationPendingModal = VerificationPendingModal;
|
|
16040
16101
|
exports.createFixedFloatNormalizer = createFixedFloatNormalizer;
|
|
16041
16102
|
exports.currencyNormalizerCreator = currencyNormalizerCreator;
|
|
16042
16103
|
exports.logoutUser = logoutUser;
|
|
16043
16104
|
exports.setConfigs = setConfigs;
|
|
16105
|
+
exports.useAddons = useAddons;
|
|
16044
16106
|
exports.useCookieListener = useCookieListener;
|
|
16045
16107
|
//# sourceMappingURL=tf-checkout-react.cjs.development.js.map
|