tf-checkout-react 1.7.13 → 1.7.15
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/AddonComponent.d.ts +2 -1
- package/dist/components/addonsContainer/SimpleAddonsContainer.d.ts +2 -1
- package/dist/components/addonsContainer/index.d.ts +2 -4
- package/dist/components/addonsContainer/useAddons.d.ts +23 -0
- package/dist/index.d.ts +3 -0
- package/dist/tf-checkout-react.cjs.development.js +237 -138
- 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 +236 -140
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/components/addonsContainer/AddonComponent.tsx +56 -14
- package/src/components/addonsContainer/SimpleAddonsContainer.tsx +3 -0
- package/src/components/addonsContainer/index.tsx +29 -230
- package/src/components/addonsContainer/useAddons.ts +248 -0
- package/src/index.ts +3 -0
|
@@ -3,7 +3,7 @@ import Backdrop from '@mui/material/Backdrop';
|
|
|
3
3
|
import Button from '@mui/material/Button';
|
|
4
4
|
import { ThemeProvider, createTheme } from '@mui/material/styles';
|
|
5
5
|
import axios from 'axios';
|
|
6
|
-
import { connect, Field, Formik, Form } from 'formik';
|
|
6
|
+
import { connect, Field, useFormikContext, Formik, Form } from 'formik';
|
|
7
7
|
import _find from 'lodash-es/find';
|
|
8
8
|
import _forEach from 'lodash-es/forEach';
|
|
9
9
|
import _get from 'lodash-es/get';
|
|
@@ -2740,59 +2740,6 @@ var TimerWidget = function TimerWidget(_ref) {
|
|
|
2740
2740
|
};
|
|
2741
2741
|
var TimerWidget$1 = /*#__PURE__*/memo(TimerWidget);
|
|
2742
2742
|
|
|
2743
|
-
var addonsWithGroupsAdapter = function addonsWithGroupsAdapter(data) {
|
|
2744
|
-
var addonsData = _extends({}, data);
|
|
2745
|
-
var addOnsGroups = _get(addonsData, 'add_on_groups', []);
|
|
2746
|
-
var addons = _get(addonsData, 'add_ons', []);
|
|
2747
|
-
if (!_isEmpty(addOnsGroups)) {
|
|
2748
|
-
var addOnGroupsWithVariants = [];
|
|
2749
|
-
var addOnsWithoutVariants = [];
|
|
2750
|
-
addons.forEach(function (addon) {
|
|
2751
|
-
if (addon.attributes.addOnGroupId) {
|
|
2752
|
-
// Collect addons groups inside with their variants
|
|
2753
|
-
var currentGroupId = addon.attributes.addOnGroupId;
|
|
2754
|
-
var exsistingGroupIndex = addOnGroupsWithVariants.findIndex(function (item) {
|
|
2755
|
-
return item.id === currentGroupId;
|
|
2756
|
-
});
|
|
2757
|
-
if (addOnGroupsWithVariants[exsistingGroupIndex]) {
|
|
2758
|
-
var addOnGroup = addOnGroupsWithVariants[exsistingGroupIndex];
|
|
2759
|
-
addOnGroupsWithVariants[exsistingGroupIndex] = _extends({}, addOnGroup, {
|
|
2760
|
-
variants: [].concat(addOnGroup.variants, addon.attributes)
|
|
2761
|
-
});
|
|
2762
|
-
} else {
|
|
2763
|
-
var group = addOnsGroups.find(function (group) {
|
|
2764
|
-
return group.attributes.id === currentGroupId;
|
|
2765
|
-
}) || {};
|
|
2766
|
-
addOnGroupsWithVariants.push(_extends({}, group.attributes, {
|
|
2767
|
-
variants: [].concat(addon.attributes)
|
|
2768
|
-
}));
|
|
2769
|
-
}
|
|
2770
|
-
} else {
|
|
2771
|
-
addOnsWithoutVariants.push(addon.attributes);
|
|
2772
|
-
}
|
|
2773
|
-
});
|
|
2774
|
-
return addOnGroupsWithVariants.concat(addOnsWithoutVariants);
|
|
2775
|
-
}
|
|
2776
|
-
// Adapt only simple addons data
|
|
2777
|
-
var adaptedAddons = addons.map(function (addon) {
|
|
2778
|
-
return _extends({}, addon.attributes);
|
|
2779
|
-
});
|
|
2780
|
-
return adaptedAddons;
|
|
2781
|
-
};
|
|
2782
|
-
var cartAdapter = function cartAdapter(cart) {
|
|
2783
|
-
var cartData = _get(cart, 'data.attributes', []);
|
|
2784
|
-
var expiresAt = cartData.expiresAt,
|
|
2785
|
-
carts_arr = cartData.cart;
|
|
2786
|
-
var _ref = carts_arr[0] || {},
|
|
2787
|
-
id = _ref.id,
|
|
2788
|
-
quantity = _ref.quantity;
|
|
2789
|
-
return {
|
|
2790
|
-
id: id,
|
|
2791
|
-
quantity: quantity,
|
|
2792
|
-
expiresAt: expiresAt
|
|
2793
|
-
};
|
|
2794
|
-
};
|
|
2795
|
-
|
|
2796
2743
|
var CheckboxField = function CheckboxField(_ref) {
|
|
2797
2744
|
var label = _ref.label,
|
|
2798
2745
|
field = _ref.field,
|
|
@@ -3651,19 +3598,58 @@ var filterBillingInfoFields = function filterBillingInfoFields(fields, options)
|
|
|
3651
3598
|
};
|
|
3652
3599
|
|
|
3653
3600
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3654
|
-
var
|
|
3655
|
-
var
|
|
3656
|
-
|
|
3657
|
-
data = _ref.data,
|
|
3601
|
+
var AddonStepper = function AddonStepper(_ref) {
|
|
3602
|
+
var _values$id;
|
|
3603
|
+
var id = _ref.id,
|
|
3658
3604
|
selectOptions = _ref.selectOptions,
|
|
3659
|
-
|
|
3660
|
-
|
|
3661
|
-
|
|
3662
|
-
|
|
3663
|
-
|
|
3664
|
-
|
|
3665
|
-
|
|
3666
|
-
|
|
3605
|
+
handleAddonChange = _ref.handleAddonChange,
|
|
3606
|
+
classNamePrefix = _ref.classNamePrefix;
|
|
3607
|
+
var _useFormikContext = useFormikContext(),
|
|
3608
|
+
values = _useFormikContext.values,
|
|
3609
|
+
setFieldValue = _useFormikContext.setFieldValue;
|
|
3610
|
+
var qty = Number((_values$id = values[id]) != null ? _values$id : 0);
|
|
3611
|
+
var max = (selectOptions == null ? void 0 : selectOptions.length) > 0 ? selectOptions[selectOptions.length - 1].value : 0;
|
|
3612
|
+
var change = function change(next) {
|
|
3613
|
+
setFieldValue(id, next);
|
|
3614
|
+
handleAddonChange(id, next);
|
|
3615
|
+
};
|
|
3616
|
+
return React.createElement("div", {
|
|
3617
|
+
className: classNamePrefix + "_stepper"
|
|
3618
|
+
}, React.createElement("button", {
|
|
3619
|
+
type: "button",
|
|
3620
|
+
className: classNamePrefix + "_stepper__btn",
|
|
3621
|
+
onClick: function onClick() {
|
|
3622
|
+
return change(qty - 1);
|
|
3623
|
+
},
|
|
3624
|
+
disabled: qty <= 0,
|
|
3625
|
+
"aria-label": "Decrease quantity"
|
|
3626
|
+
}, "\u2212"), React.createElement("span", {
|
|
3627
|
+
className: classNamePrefix + "_stepper__count"
|
|
3628
|
+
}, qty), React.createElement("button", {
|
|
3629
|
+
type: "button",
|
|
3630
|
+
className: classNamePrefix + "_stepper__btn",
|
|
3631
|
+
onClick: function onClick() {
|
|
3632
|
+
return change(qty + 1);
|
|
3633
|
+
},
|
|
3634
|
+
disabled: qty >= max,
|
|
3635
|
+
"aria-label": "Increase quantity"
|
|
3636
|
+
}, "+"));
|
|
3637
|
+
};
|
|
3638
|
+
var AddonComponent = function AddonComponent(_ref2) {
|
|
3639
|
+
var _ref2$classNamePrefix = _ref2.classNamePrefix,
|
|
3640
|
+
classNamePrefix = _ref2$classNamePrefix === void 0 ? '' : _ref2$classNamePrefix,
|
|
3641
|
+
data = _ref2.data,
|
|
3642
|
+
selectOptions = _ref2.selectOptions,
|
|
3643
|
+
_ref2$handleAddonChan = _ref2.handleAddonChange,
|
|
3644
|
+
handleAddonChange = _ref2$handleAddonChan === void 0 ? _identity : _ref2$handleAddonChan,
|
|
3645
|
+
addOnDataWithCustomFields = _ref2.addOnDataWithCustomFields,
|
|
3646
|
+
configs = _ref2.configs,
|
|
3647
|
+
values = _ref2.values,
|
|
3648
|
+
errors = _ref2.errors,
|
|
3649
|
+
_ref2$useStepperQty = _ref2.useStepperQty,
|
|
3650
|
+
useStepperQty = _ref2$useStepperQty === void 0 ? false : _ref2$useStepperQty,
|
|
3651
|
+
_ref2$onCustomFieldCh = _ref2.onCustomFieldChange,
|
|
3652
|
+
onCustomFieldChange = _ref2$onCustomFieldCh === void 0 ? _identity : _ref2$onCustomFieldCh;
|
|
3667
3653
|
var id = data.id,
|
|
3668
3654
|
name = data.name,
|
|
3669
3655
|
active = data.active,
|
|
@@ -3682,7 +3668,12 @@ var AddonComponent = function AddonComponent(_ref) {
|
|
|
3682
3668
|
className: "sold_out"
|
|
3683
3669
|
}, "SOLD OUT") : React.createElement(React.Fragment, null, React.createElement("div", {
|
|
3684
3670
|
className: classNamePrefix + "_product_qty_select"
|
|
3685
|
-
}, React.createElement(
|
|
3671
|
+
}, useStepperQty ? React.createElement(AddonStepper, {
|
|
3672
|
+
id: id,
|
|
3673
|
+
selectOptions: selectOptions,
|
|
3674
|
+
handleAddonChange: handleAddonChange,
|
|
3675
|
+
classNamePrefix: classNamePrefix
|
|
3676
|
+
}) : React.createElement(Field, {
|
|
3686
3677
|
name: id,
|
|
3687
3678
|
selectOptions: selectOptions,
|
|
3688
3679
|
component: NativeSelectField,
|
|
@@ -3710,13 +3701,13 @@ var AddonComponent = function AddonComponent(_ref) {
|
|
|
3710
3701
|
}, React.createElement(Field, Object.assign({}, element, {
|
|
3711
3702
|
name: fieldName,
|
|
3712
3703
|
validate: getValidateFunctions(element, [], values, errors)
|
|
3713
|
-
}), function (
|
|
3714
|
-
var field =
|
|
3715
|
-
form =
|
|
3704
|
+
}), function (_ref3) {
|
|
3705
|
+
var field = _ref3.field,
|
|
3706
|
+
form = _ref3.form;
|
|
3716
3707
|
var handleChange = function handleChange(e) {
|
|
3717
|
-
var
|
|
3708
|
+
var _ref4, _e$target$value, _e$target;
|
|
3718
3709
|
// extract value from native events or custom widgets
|
|
3719
|
-
var v = (
|
|
3710
|
+
var v = (_ref4 = (_e$target$value = e == null ? void 0 : (_e$target = e.target) == null ? void 0 : _e$target.value) != null ? _e$target$value : e == null ? void 0 : e.value) != null ? _ref4 : e; // allow custom components to pass raw value
|
|
3720
3711
|
form.setFieldValue(field.name, v);
|
|
3721
3712
|
onCustomFieldChange == null ? void 0 : onCustomFieldChange(data, id, element.name, v);
|
|
3722
3713
|
};
|
|
@@ -3911,37 +3902,79 @@ var isAtLeastOneAddonSelected = function isAtLeastOneAddonSelected(value) {
|
|
|
3911
3902
|
return !_isEmpty(selectedAddons);
|
|
3912
3903
|
};
|
|
3913
3904
|
|
|
3914
|
-
var
|
|
3915
|
-
var
|
|
3916
|
-
|
|
3917
|
-
|
|
3918
|
-
|
|
3919
|
-
|
|
3920
|
-
|
|
3921
|
-
|
|
3922
|
-
|
|
3923
|
-
|
|
3924
|
-
|
|
3925
|
-
|
|
3926
|
-
|
|
3927
|
-
|
|
3928
|
-
|
|
3929
|
-
|
|
3930
|
-
|
|
3931
|
-
|
|
3932
|
-
|
|
3933
|
-
|
|
3934
|
-
|
|
3935
|
-
|
|
3936
|
-
|
|
3937
|
-
|
|
3938
|
-
|
|
3939
|
-
|
|
3940
|
-
|
|
3941
|
-
|
|
3942
|
-
|
|
3943
|
-
|
|
3944
|
-
|
|
3905
|
+
var addonsWithGroupsAdapter = function addonsWithGroupsAdapter(data) {
|
|
3906
|
+
var addonsData = _extends({}, data);
|
|
3907
|
+
var addOnsGroups = _get(addonsData, 'add_on_groups', []);
|
|
3908
|
+
var addons = _get(addonsData, 'add_ons', []);
|
|
3909
|
+
if (!_isEmpty(addOnsGroups)) {
|
|
3910
|
+
var addOnGroupsWithVariants = [];
|
|
3911
|
+
var addOnsWithoutVariants = [];
|
|
3912
|
+
addons.forEach(function (addon) {
|
|
3913
|
+
if (addon.attributes.addOnGroupId) {
|
|
3914
|
+
// Collect addons groups inside with their variants
|
|
3915
|
+
var currentGroupId = addon.attributes.addOnGroupId;
|
|
3916
|
+
var exsistingGroupIndex = addOnGroupsWithVariants.findIndex(function (item) {
|
|
3917
|
+
return item.id === currentGroupId;
|
|
3918
|
+
});
|
|
3919
|
+
if (addOnGroupsWithVariants[exsistingGroupIndex]) {
|
|
3920
|
+
var addOnGroup = addOnGroupsWithVariants[exsistingGroupIndex];
|
|
3921
|
+
addOnGroupsWithVariants[exsistingGroupIndex] = _extends({}, addOnGroup, {
|
|
3922
|
+
variants: [].concat(addOnGroup.variants, addon.attributes)
|
|
3923
|
+
});
|
|
3924
|
+
} else {
|
|
3925
|
+
var group = addOnsGroups.find(function (group) {
|
|
3926
|
+
return group.attributes.id === currentGroupId;
|
|
3927
|
+
}) || {};
|
|
3928
|
+
addOnGroupsWithVariants.push(_extends({}, group.attributes, {
|
|
3929
|
+
variants: [].concat(addon.attributes)
|
|
3930
|
+
}));
|
|
3931
|
+
}
|
|
3932
|
+
} else {
|
|
3933
|
+
addOnsWithoutVariants.push(addon.attributes);
|
|
3934
|
+
}
|
|
3935
|
+
});
|
|
3936
|
+
return addOnGroupsWithVariants.concat(addOnsWithoutVariants);
|
|
3937
|
+
}
|
|
3938
|
+
// Adapt only simple addons data
|
|
3939
|
+
var adaptedAddons = addons.map(function (addon) {
|
|
3940
|
+
return _extends({}, addon.attributes);
|
|
3941
|
+
});
|
|
3942
|
+
return adaptedAddons;
|
|
3943
|
+
};
|
|
3944
|
+
var cartAdapter = function cartAdapter(cart) {
|
|
3945
|
+
var cartData = _get(cart, 'data.attributes', []);
|
|
3946
|
+
var expiresAt = cartData.expiresAt,
|
|
3947
|
+
carts_arr = cartData.cart;
|
|
3948
|
+
var _ref = carts_arr[0] || {},
|
|
3949
|
+
id = _ref.id,
|
|
3950
|
+
quantity = _ref.quantity;
|
|
3951
|
+
return {
|
|
3952
|
+
id: id,
|
|
3953
|
+
quantity: quantity,
|
|
3954
|
+
expiresAt: expiresAt
|
|
3955
|
+
};
|
|
3956
|
+
};
|
|
3957
|
+
|
|
3958
|
+
var useAddons = function useAddons(eventId, options) {
|
|
3959
|
+
if (options === void 0) {
|
|
3960
|
+
options = {};
|
|
3961
|
+
}
|
|
3962
|
+
var _options = options,
|
|
3963
|
+
_options$enableBillin = _options.enableBillingInfoAutoCreate,
|
|
3964
|
+
enableBillingInfoAutoCreate = _options$enableBillin === void 0 ? true : _options$enableBillin,
|
|
3965
|
+
addOnDataWithCustomFields = _options.addOnDataWithCustomFields,
|
|
3966
|
+
_options$onGetAddonsP = _options.onGetAddonsPageInfoSuccess,
|
|
3967
|
+
onGetAddonsPageInfoSuccess = _options$onGetAddonsP === void 0 ? _identity : _options$onGetAddonsP,
|
|
3968
|
+
_options$onGetAddonsP2 = _options.onGetAddonsPageInfoError,
|
|
3969
|
+
onGetAddonsPageInfoError = _options$onGetAddonsP2 === void 0 ? _identity : _options$onGetAddonsP2,
|
|
3970
|
+
_options$onPostChecko = _options.onPostCheckoutSuccess,
|
|
3971
|
+
onPostCheckoutSuccess = _options$onPostChecko === void 0 ? _identity : _options$onPostChecko,
|
|
3972
|
+
_options$onPostChecko2 = _options.onPostCheckoutError,
|
|
3973
|
+
onPostCheckoutError = _options$onPostChecko2 === void 0 ? _identity : _options$onPostChecko2,
|
|
3974
|
+
_options$onConfirmSel = _options.onConfirmSelectionSuccess,
|
|
3975
|
+
onConfirmSelectionSuccess = _options$onConfirmSel === void 0 ? _identity : _options$onConfirmSel,
|
|
3976
|
+
_options$onConfirmSel2 = _options.onConfirmSelectionError,
|
|
3977
|
+
onConfirmSelectionError = _options$onConfirmSel2 === void 0 ? _identity : _options$onConfirmSel2;
|
|
3945
3978
|
var _useState = useState([]),
|
|
3946
3979
|
addons = _useState[0],
|
|
3947
3980
|
setAddons = _useState[1];
|
|
@@ -3963,20 +3996,9 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3963
3996
|
var _useState7 = useState(),
|
|
3964
3997
|
pendingVerificationMessage = _useState7[0],
|
|
3965
3998
|
setPendingVerificationMessage = _useState7[1];
|
|
3966
|
-
var _useState8 = useState(null),
|
|
3967
|
-
visibleDescription = _useState8[0],
|
|
3968
|
-
setVisibleDescription = _useState8[1];
|
|
3969
|
-
var handleDescriptionToggle = function handleDescriptionToggle(ticketId) {
|
|
3970
|
-
setVisibleDescription(function (current) {
|
|
3971
|
-
return current === ticketId ? null : ticketId;
|
|
3972
|
-
});
|
|
3973
|
-
};
|
|
3974
3999
|
useEffect(function () {
|
|
3975
|
-
if (samePage) {
|
|
3976
|
-
window.localStorage.removeItem('add_ons');
|
|
3977
|
-
}
|
|
3978
4000
|
var getAddonsPageInfo = /*#__PURE__*/function () {
|
|
3979
|
-
var
|
|
4001
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
3980
4002
|
var cart, _cartAdapter, choosedTicketID, quantity, expiresAt, choosedTicketCount, addonsData, adaptedAddons, ticketRelatedAddons, sortedTicketAddons, _getAddonSelectOption, addonsWithOptions, groupsWithSelectedVariantsInfo, groupsWithVariants;
|
|
3981
4003
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
3982
4004
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -3987,7 +4009,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3987
4009
|
break;
|
|
3988
4010
|
}
|
|
3989
4011
|
setLoading(true);
|
|
3990
|
-
// Get choosed ticket info (id, count) from Cart request for addons options calculations
|
|
3991
4012
|
_context.next = 5;
|
|
3992
4013
|
return getCart();
|
|
3993
4014
|
case 5:
|
|
@@ -3995,7 +4016,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3995
4016
|
_cartAdapter = cartAdapter(cart), choosedTicketID = _cartAdapter.id, quantity = _cartAdapter.quantity, expiresAt = _cartAdapter.expiresAt;
|
|
3996
4017
|
choosedTicketCount = Number(quantity);
|
|
3997
4018
|
setCartExpirationTime(expiresAt);
|
|
3998
|
-
// Get and collect addons data
|
|
3999
4019
|
_context.next = 11;
|
|
4000
4020
|
return getAddons(eventId);
|
|
4001
4021
|
case 11:
|
|
@@ -4004,12 +4024,10 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4004
4024
|
ticketRelatedAddons = getTicketRelatedAddons(adaptedAddons, choosedTicketID);
|
|
4005
4025
|
sortedTicketAddons = getSortedAddons(ticketRelatedAddons);
|
|
4006
4026
|
setAddons(sortedTicketAddons);
|
|
4007
|
-
// Collect addons and addon group options
|
|
4008
4027
|
_getAddonSelectOption = getAddonSelectOptions(adaptedAddons, choosedTicketCount), addonsWithOptions = _getAddonSelectOption.addonsWithOptions, groupsWithSelectedVariantsInfo = _getAddonSelectOption.groupsWithSelectedVariantsInfo, groupsWithVariants = _getAddonSelectOption.groupsWithVariants;
|
|
4009
4028
|
setAddonsOptions(addonsWithOptions);
|
|
4010
4029
|
setGroupsWithSelectedVariants(groupsWithSelectedVariantsInfo);
|
|
4011
4030
|
setGroupsWithInitialVariantsValues(groupsWithVariants);
|
|
4012
|
-
// Success callback props
|
|
4013
4031
|
onGetAddonsPageInfoSuccess(addonsData);
|
|
4014
4032
|
case 21:
|
|
4015
4033
|
_context.next = 26;
|
|
@@ -4017,7 +4035,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4017
4035
|
case 23:
|
|
4018
4036
|
_context.prev = 23;
|
|
4019
4037
|
_context.t0 = _context["catch"](0);
|
|
4020
|
-
// Callback error props
|
|
4021
4038
|
onGetAddonsPageInfoError(_context.t0);
|
|
4022
4039
|
case 26:
|
|
4023
4040
|
_context.prev = 26;
|
|
@@ -4030,23 +4047,21 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4030
4047
|
}, _callee, null, [[0, 23, 26, 29]]);
|
|
4031
4048
|
}));
|
|
4032
4049
|
return function getAddonsPageInfo() {
|
|
4033
|
-
return
|
|
4050
|
+
return _ref.apply(this, arguments);
|
|
4034
4051
|
};
|
|
4035
4052
|
}();
|
|
4036
4053
|
getAddonsPageInfo();
|
|
4037
|
-
}, []);
|
|
4038
|
-
var recreateGroupVariantsSelectOptions = function recreateGroupVariantsSelectOptions(groupId,
|
|
4039
|
-
var choosedVariants =
|
|
4040
|
-
limit =
|
|
4041
|
-
selectedCount =
|
|
4054
|
+
}, [eventId]);
|
|
4055
|
+
var recreateGroupVariantsSelectOptions = function recreateGroupVariantsSelectOptions(groupId, changedGroup) {
|
|
4056
|
+
var choosedVariants = changedGroup.choosedVariants,
|
|
4057
|
+
limit = changedGroup.limit,
|
|
4058
|
+
selectedCount = changedGroup.selectedCount;
|
|
4042
4059
|
var remainingGroupStock = limit - selectedCount;
|
|
4043
4060
|
var recreatedVariantsOptions = {};
|
|
4044
|
-
// Regenerate variants allowed stock counts
|
|
4045
4061
|
for (var variant in choosedVariants) {
|
|
4046
4062
|
var variantId = variant;
|
|
4047
4063
|
var variantCurrSelectedValue = choosedVariants[variant];
|
|
4048
4064
|
var allowedOptionCount = void 0;
|
|
4049
|
-
// Formula for regenerating
|
|
4050
4065
|
if (remainingGroupStock >= groupsWithInitialVariantsValues[groupId][variantId] - variantCurrSelectedValue) {
|
|
4051
4066
|
allowedOptionCount = groupsWithInitialVariantsValues[groupId][variantId];
|
|
4052
4067
|
} else {
|
|
@@ -4059,7 +4074,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4059
4074
|
});
|
|
4060
4075
|
};
|
|
4061
4076
|
var onFieldChange = function onFieldChange(id, value, addon) {
|
|
4062
|
-
// If changeableGroup exsists it means that group with limitation variant was changed
|
|
4063
4077
|
var changeableGroup = groupsWithSelectedVariants[addon.id];
|
|
4064
4078
|
if (changeableGroup) {
|
|
4065
4079
|
var _extends2, _extends3;
|
|
@@ -4068,18 +4082,16 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4068
4082
|
var currSelectedVariantCount = Number(value);
|
|
4069
4083
|
var currSelectedVariantPrevCount = groupsWithSelectedVariants[currGroupId].choosedVariants[currSelectedVariantId];
|
|
4070
4084
|
var currSelectedGroupCount = changeableGroup.selectedCount + (currSelectedVariantCount - currSelectedVariantPrevCount);
|
|
4071
|
-
// Update Group info
|
|
4072
4085
|
var updatedGroupsWithSelectedVariants = _extends({}, groupsWithSelectedVariants, (_extends3 = {}, _extends3[currGroupId] = _extends({}, groupsWithSelectedVariants[currGroupId], {
|
|
4073
4086
|
selectedCount: currSelectedGroupCount,
|
|
4074
4087
|
choosedVariants: _extends({}, groupsWithSelectedVariants[currGroupId].choosedVariants, (_extends2 = {}, _extends2[currSelectedVariantId] = currSelectedVariantCount, _extends2))
|
|
4075
4088
|
}), _extends3));
|
|
4076
4089
|
setGroupsWithSelectedVariants(updatedGroupsWithSelectedVariants);
|
|
4077
|
-
// Recreate Select Options for Addon Group Variants
|
|
4078
4090
|
recreateGroupVariantsSelectOptions(currGroupId, updatedGroupsWithSelectedVariants[currGroupId]);
|
|
4079
4091
|
}
|
|
4080
4092
|
};
|
|
4081
4093
|
var handleConfirm = /*#__PURE__*/function () {
|
|
4082
|
-
var
|
|
4094
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(values, skipAddonPage) {
|
|
4083
4095
|
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;
|
|
4084
4096
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
4085
4097
|
while (1) switch (_context2.prev = _context2.next) {
|
|
@@ -4161,7 +4173,7 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4161
4173
|
}, _callee2, null, [[0, 30], [10, 22]]);
|
|
4162
4174
|
}));
|
|
4163
4175
|
return function handleConfirm(_x, _x2) {
|
|
4164
|
-
return
|
|
4176
|
+
return _ref2.apply(this, arguments);
|
|
4165
4177
|
};
|
|
4166
4178
|
}();
|
|
4167
4179
|
var handleClearAddons = function handleClearAddons() {
|
|
@@ -4183,6 +4195,86 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4183
4195
|
}
|
|
4184
4196
|
return addOnsData;
|
|
4185
4197
|
}, [addons, addOnDataWithCustomFields]);
|
|
4198
|
+
return {
|
|
4199
|
+
addons: addons,
|
|
4200
|
+
addonsOptions: addonsOptions,
|
|
4201
|
+
loading: loading,
|
|
4202
|
+
cartExpirationTime: cartExpirationTime,
|
|
4203
|
+
pendingVerificationMessage: pendingVerificationMessage,
|
|
4204
|
+
setPendingVerificationMessage: setPendingVerificationMessage,
|
|
4205
|
+
initialValues: initialValues,
|
|
4206
|
+
onFieldChange: onFieldChange,
|
|
4207
|
+
handleConfirm: handleConfirm,
|
|
4208
|
+
handleClearAddons: handleClearAddons
|
|
4209
|
+
};
|
|
4210
|
+
};
|
|
4211
|
+
|
|
4212
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4213
|
+
var AddonsContainter = function AddonsContainter(_ref) {
|
|
4214
|
+
var _ref$classNamePrefix = _ref.classNamePrefix,
|
|
4215
|
+
classNamePrefix = _ref$classNamePrefix === void 0 ? 'add_on' : _ref$classNamePrefix,
|
|
4216
|
+
_ref$enableBillingInf = _ref.enableBillingInfoAutoCreate,
|
|
4217
|
+
enableBillingInfoAutoCreate = _ref$enableBillingInf === void 0 ? true : _ref$enableBillingInf,
|
|
4218
|
+
_ref$enableTimer = _ref.enableTimer,
|
|
4219
|
+
enableTimer = _ref$enableTimer === void 0 ? false : _ref$enableTimer,
|
|
4220
|
+
_ref$onGetAddonsPageI = _ref.onGetAddonsPageInfoSuccess,
|
|
4221
|
+
onGetAddonsPageInfoSuccess = _ref$onGetAddonsPageI === void 0 ? _identity : _ref$onGetAddonsPageI,
|
|
4222
|
+
_ref$onGetAddonsPageI2 = _ref.onGetAddonsPageInfoError,
|
|
4223
|
+
onGetAddonsPageInfoError = _ref$onGetAddonsPageI2 === void 0 ? _identity : _ref$onGetAddonsPageI2,
|
|
4224
|
+
_ref$onPostCheckoutSu = _ref.onPostCheckoutSuccess,
|
|
4225
|
+
onPostCheckoutSuccess = _ref$onPostCheckoutSu === void 0 ? _identity : _ref$onPostCheckoutSu,
|
|
4226
|
+
_ref$onPostCheckoutEr = _ref.onPostCheckoutError,
|
|
4227
|
+
onPostCheckoutError = _ref$onPostCheckoutEr === void 0 ? _identity : _ref$onPostCheckoutEr,
|
|
4228
|
+
_ref$onConfirmSelecti = _ref.onConfirmSelectionSuccess,
|
|
4229
|
+
onConfirmSelectionSuccess = _ref$onConfirmSelecti === void 0 ? _identity : _ref$onConfirmSelecti,
|
|
4230
|
+
_ref$onConfirmSelecti2 = _ref.onConfirmSelectionError,
|
|
4231
|
+
onConfirmSelectionError = _ref$onConfirmSelecti2 === void 0 ? _identity : _ref$onConfirmSelecti2,
|
|
4232
|
+
_ref$onCountdownFinis = _ref.onCountdownFinish,
|
|
4233
|
+
_onCountdownFinish = _ref$onCountdownFinis === void 0 ? _identity : _ref$onCountdownFinis,
|
|
4234
|
+
_ref$onPendingVerific = _ref.onPendingVerification,
|
|
4235
|
+
onPendingVerification = _ref$onPendingVerific === void 0 ? _identity : _ref$onPendingVerific,
|
|
4236
|
+
samePage = _ref.samePage,
|
|
4237
|
+
_ref$descriptionTrigg = _ref.descriptionTrigger,
|
|
4238
|
+
descriptionTrigger = _ref$descriptionTrigg === void 0 ? 'click' : _ref$descriptionTrigg,
|
|
4239
|
+
addOnDataWithCustomFields = _ref.addOnDataWithCustomFields,
|
|
4240
|
+
configs = _ref.configs,
|
|
4241
|
+
_ref$onAddOnSelect = _ref.onAddOnSelect,
|
|
4242
|
+
onAddOnSelect = _ref$onAddOnSelect === void 0 ? _identity : _ref$onAddOnSelect,
|
|
4243
|
+
_ref$useStepperQty = _ref.useStepperQty,
|
|
4244
|
+
useStepperQty = _ref$useStepperQty === void 0 ? false : _ref$useStepperQty;
|
|
4245
|
+
var eventId = getQueryVariable('event_id') || null;
|
|
4246
|
+
var _useAddons = useAddons(eventId, {
|
|
4247
|
+
enableBillingInfoAutoCreate: enableBillingInfoAutoCreate,
|
|
4248
|
+
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4249
|
+
onGetAddonsPageInfoSuccess: onGetAddonsPageInfoSuccess,
|
|
4250
|
+
onGetAddonsPageInfoError: onGetAddonsPageInfoError,
|
|
4251
|
+
onPostCheckoutSuccess: onPostCheckoutSuccess,
|
|
4252
|
+
onPostCheckoutError: onPostCheckoutError,
|
|
4253
|
+
onConfirmSelectionSuccess: onConfirmSelectionSuccess,
|
|
4254
|
+
onConfirmSelectionError: onConfirmSelectionError
|
|
4255
|
+
}),
|
|
4256
|
+
addons = _useAddons.addons,
|
|
4257
|
+
addonsOptions = _useAddons.addonsOptions,
|
|
4258
|
+
loading = _useAddons.loading,
|
|
4259
|
+
cartExpirationTime = _useAddons.cartExpirationTime,
|
|
4260
|
+
pendingVerificationMessage = _useAddons.pendingVerificationMessage,
|
|
4261
|
+
initialValues = _useAddons.initialValues,
|
|
4262
|
+
onFieldChange = _useAddons.onFieldChange,
|
|
4263
|
+
handleConfirm = _useAddons.handleConfirm,
|
|
4264
|
+
handleClearAddons = _useAddons.handleClearAddons;
|
|
4265
|
+
var _useState = useState(null),
|
|
4266
|
+
visibleDescription = _useState[0],
|
|
4267
|
+
setVisibleDescription = _useState[1];
|
|
4268
|
+
var handleDescriptionToggle = function handleDescriptionToggle(ticketId) {
|
|
4269
|
+
setVisibleDescription(function (current) {
|
|
4270
|
+
return current === ticketId ? null : ticketId;
|
|
4271
|
+
});
|
|
4272
|
+
};
|
|
4273
|
+
useEffect(function () {
|
|
4274
|
+
if (samePage) {
|
|
4275
|
+
window.localStorage.removeItem('add_ons');
|
|
4276
|
+
}
|
|
4277
|
+
}, []);
|
|
4186
4278
|
if (loading) {
|
|
4187
4279
|
return React.createElement("div", {
|
|
4188
4280
|
className: classNamePrefix + "_loader"
|
|
@@ -4231,10 +4323,10 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4231
4323
|
window.localStorage.setItem('add_ons', JSON.stringify(values));
|
|
4232
4324
|
}
|
|
4233
4325
|
} : undefined
|
|
4234
|
-
}, function (
|
|
4235
|
-
var values =
|
|
4236
|
-
errors =
|
|
4237
|
-
setFieldTouched =
|
|
4326
|
+
}, function (_ref2) {
|
|
4327
|
+
var values = _ref2.values,
|
|
4328
|
+
errors = _ref2.errors,
|
|
4329
|
+
setFieldTouched = _ref2.setFieldTouched;
|
|
4238
4330
|
var isConfirmDisabled = !isAtLeastOneAddonSelected(values);
|
|
4239
4331
|
return React.createElement(Form, {
|
|
4240
4332
|
autoComplete: "off",
|
|
@@ -4309,7 +4401,8 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4309
4401
|
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4310
4402
|
configs: configs,
|
|
4311
4403
|
values: values,
|
|
4312
|
-
errors: errors
|
|
4404
|
+
errors: errors,
|
|
4405
|
+
useStepperQty: useStepperQty
|
|
4313
4406
|
})
|
|
4314
4407
|
);
|
|
4315
4408
|
}) :
|
|
@@ -4360,6 +4453,8 @@ var SimpleAddonsContainer = function SimpleAddonsContainer(_ref) {
|
|
|
4360
4453
|
addOnDataWithCustomFields = _ref.addOnDataWithCustomFields,
|
|
4361
4454
|
configs = _ref.configs,
|
|
4362
4455
|
eventId = _ref.eventId,
|
|
4456
|
+
_ref$useStepperQty = _ref.useStepperQty,
|
|
4457
|
+
useStepperQty = _ref$useStepperQty === void 0 ? false : _ref$useStepperQty,
|
|
4363
4458
|
_ref$onAddOnSelect = _ref.onAddOnSelect,
|
|
4364
4459
|
onAddOnSelect = _ref$onAddOnSelect === void 0 ? _identity : _ref$onAddOnSelect,
|
|
4365
4460
|
_ref$handleConfirm = _ref.handleConfirm,
|
|
@@ -4631,7 +4726,8 @@ var SimpleAddonsContainer = function SimpleAddonsContainer(_ref) {
|
|
|
4631
4726
|
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4632
4727
|
configs: configs,
|
|
4633
4728
|
values: values,
|
|
4634
|
-
errors: errors
|
|
4729
|
+
errors: errors,
|
|
4730
|
+
useStepperQty: useStepperQty
|
|
4635
4731
|
})
|
|
4636
4732
|
);
|
|
4637
4733
|
}) :
|
|
@@ -16024,5 +16120,5 @@ var OrderDetails = function OrderDetails(_ref3) {
|
|
|
16024
16120
|
})));
|
|
16025
16121
|
};
|
|
16026
16122
|
|
|
16027
|
-
export { AddonsContainter, WithCustomFieldsBillingInfoContainer as BillingInfoContainer, ConfirmationContainer, DEFAULT_FEES_STYLE, DelegationsContainer, ForgotPasswordModal, IDVerification, LoginModal, MyTicketsContainer, OrderDetails, OrderDetailsContainer, PaymentContainer, PoweredBy, PreRegistration, PreRegistrationComplete, PreRegistrationInformations, RedirectModal, ResetPasswordContainer, RsvpContainer, SeatMapContainer, TicketResaleContainer, TicketsContainer, VERIFICATION_STATUSES, createFixedFloatNormalizer, currencyNormalizerCreator, logoutUser, setConfigs, useCookieListener };
|
|
16123
|
+
export { AddonsContainter, WithCustomFieldsBillingInfoContainer as BillingInfoContainer, ConfirmationContainer, DEFAULT_FEES_STYLE, DelegationsContainer, ForgotPasswordModal, IDVerification, LoginModal, MyTicketsContainer, OrderDetails, OrderDetailsContainer, PaymentContainer, PoweredBy, PreRegistration, PreRegistrationComplete, PreRegistrationInformations, RedirectModal, ResetPasswordContainer, RsvpContainer, SeatMapContainer, TicketResaleContainer, TicketsContainer, TimerWidget$1 as TimerWidget, VERIFICATION_STATUSES, VerificationPendingModal, createFixedFloatNormalizer, currencyNormalizerCreator, logoutUser, setConfigs, useAddons, useCookieListener };
|
|
16028
16124
|
//# sourceMappingURL=tf-checkout-react.esm.js.map
|