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
|
@@ -8,7 +8,8 @@ interface IAddonComponentProps {
|
|
|
8
8
|
configs: any;
|
|
9
9
|
values: any;
|
|
10
10
|
errors: any;
|
|
11
|
+
useStepperQty?: boolean;
|
|
11
12
|
onCustomFieldChange?: (addon: any, groupId: string | number, fieldName: string, value: any) => void;
|
|
12
13
|
}
|
|
13
|
-
declare const AddonComponent: ({ classNamePrefix, data, selectOptions, handleAddonChange, addOnDataWithCustomFields, configs, values, errors, onCustomFieldChange, }: IAddonComponentProps) => JSX.Element;
|
|
14
|
+
declare const AddonComponent: ({ classNamePrefix, data, selectOptions, handleAddonChange, addOnDataWithCustomFields, configs, values, errors, useStepperQty, onCustomFieldChange, }: IAddonComponentProps) => JSX.Element;
|
|
14
15
|
export default AddonComponent;
|
|
@@ -7,11 +7,12 @@ export interface ISimpleAddonContainerProps {
|
|
|
7
7
|
addOnDataWithCustomFields: any;
|
|
8
8
|
configs: any;
|
|
9
9
|
eventId: string;
|
|
10
|
+
useStepperQty?: boolean;
|
|
10
11
|
onAddOnSelect?: (id: string, value: string, addon: any, fieldUpdates: any) => void;
|
|
11
12
|
handleConfirm?: (values: any) => void;
|
|
12
13
|
}
|
|
13
14
|
export interface ObjectLiteral {
|
|
14
15
|
[key: string]: any;
|
|
15
16
|
}
|
|
16
|
-
export declare const SimpleAddonsContainer: ({ classNamePrefix, onGetAddonsPageInfoSuccess, onGetAddonsPageInfoError, descriptionTrigger, addOnDataWithCustomFields, configs, eventId, onAddOnSelect, handleConfirm, }: ISimpleAddonContainerProps) => JSX.Element;
|
|
17
|
+
export declare const SimpleAddonsContainer: ({ classNamePrefix, onGetAddonsPageInfoSuccess, onGetAddonsPageInfoError, descriptionTrigger, addOnDataWithCustomFields, configs, eventId, useStepperQty, onAddOnSelect, handleConfirm, }: ISimpleAddonContainerProps) => JSX.Element;
|
|
17
18
|
export default SimpleAddonsContainer;
|
|
@@ -16,8 +16,6 @@ export interface IAddonContainterProps {
|
|
|
16
16
|
addOnDataWithCustomFields: any;
|
|
17
17
|
configs: any;
|
|
18
18
|
onAddOnSelect?: (id: string, value: string, addon: any) => void;
|
|
19
|
+
useStepperQty?: boolean;
|
|
19
20
|
}
|
|
20
|
-
export
|
|
21
|
-
[key: string]: any;
|
|
22
|
-
}
|
|
23
|
-
export declare const AddonsContainter: ({ classNamePrefix, enableBillingInfoAutoCreate, enableTimer, onGetAddonsPageInfoSuccess, onGetAddonsPageInfoError, onPostCheckoutSuccess, onPostCheckoutError, onConfirmSelectionSuccess, onConfirmSelectionError, onCountdownFinish, onPendingVerification, samePage, descriptionTrigger, addOnDataWithCustomFields, configs, onAddOnSelect, }: IAddonContainterProps) => JSX.Element | null;
|
|
21
|
+
export declare const AddonsContainter: ({ classNamePrefix, enableBillingInfoAutoCreate, enableTimer, onGetAddonsPageInfoSuccess, onGetAddonsPageInfoError, onPostCheckoutSuccess, onPostCheckoutError, onConfirmSelectionSuccess, onConfirmSelectionError, onCountdownFinish, onPendingVerification, samePage, descriptionTrigger, addOnDataWithCustomFields, configs, onAddOnSelect, useStepperQty, }: 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
|
+
};
|
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,
|
|
@@ -3658,19 +3605,58 @@ var filterBillingInfoFields = function filterBillingInfoFields(fields, options)
|
|
|
3658
3605
|
};
|
|
3659
3606
|
|
|
3660
3607
|
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
3661
|
-
var
|
|
3662
|
-
var
|
|
3663
|
-
|
|
3664
|
-
data = _ref.data,
|
|
3608
|
+
var AddonStepper = function AddonStepper(_ref) {
|
|
3609
|
+
var _values$id;
|
|
3610
|
+
var id = _ref.id,
|
|
3665
3611
|
selectOptions = _ref.selectOptions,
|
|
3666
|
-
|
|
3667
|
-
|
|
3668
|
-
|
|
3669
|
-
|
|
3670
|
-
|
|
3671
|
-
|
|
3672
|
-
|
|
3673
|
-
|
|
3612
|
+
handleAddonChange = _ref.handleAddonChange,
|
|
3613
|
+
classNamePrefix = _ref.classNamePrefix;
|
|
3614
|
+
var _useFormikContext = formik.useFormikContext(),
|
|
3615
|
+
values = _useFormikContext.values,
|
|
3616
|
+
setFieldValue = _useFormikContext.setFieldValue;
|
|
3617
|
+
var qty = Number((_values$id = values[id]) != null ? _values$id : 0);
|
|
3618
|
+
var max = (selectOptions == null ? void 0 : selectOptions.length) > 0 ? selectOptions[selectOptions.length - 1].value : 0;
|
|
3619
|
+
var change = function change(next) {
|
|
3620
|
+
setFieldValue(id, next);
|
|
3621
|
+
handleAddonChange(id, next);
|
|
3622
|
+
};
|
|
3623
|
+
return React__default.createElement("div", {
|
|
3624
|
+
className: classNamePrefix + "_stepper"
|
|
3625
|
+
}, React__default.createElement("button", {
|
|
3626
|
+
type: "button",
|
|
3627
|
+
className: classNamePrefix + "_stepper__btn",
|
|
3628
|
+
onClick: function onClick() {
|
|
3629
|
+
return change(qty - 1);
|
|
3630
|
+
},
|
|
3631
|
+
disabled: qty <= 0,
|
|
3632
|
+
"aria-label": "Decrease quantity"
|
|
3633
|
+
}, "\u2212"), React__default.createElement("span", {
|
|
3634
|
+
className: classNamePrefix + "_stepper__count"
|
|
3635
|
+
}, qty), React__default.createElement("button", {
|
|
3636
|
+
type: "button",
|
|
3637
|
+
className: classNamePrefix + "_stepper__btn",
|
|
3638
|
+
onClick: function onClick() {
|
|
3639
|
+
return change(qty + 1);
|
|
3640
|
+
},
|
|
3641
|
+
disabled: qty >= max,
|
|
3642
|
+
"aria-label": "Increase quantity"
|
|
3643
|
+
}, "+"));
|
|
3644
|
+
};
|
|
3645
|
+
var AddonComponent = function AddonComponent(_ref2) {
|
|
3646
|
+
var _ref2$classNamePrefix = _ref2.classNamePrefix,
|
|
3647
|
+
classNamePrefix = _ref2$classNamePrefix === void 0 ? '' : _ref2$classNamePrefix,
|
|
3648
|
+
data = _ref2.data,
|
|
3649
|
+
selectOptions = _ref2.selectOptions,
|
|
3650
|
+
_ref2$handleAddonChan = _ref2.handleAddonChange,
|
|
3651
|
+
handleAddonChange = _ref2$handleAddonChan === void 0 ? _identity : _ref2$handleAddonChan,
|
|
3652
|
+
addOnDataWithCustomFields = _ref2.addOnDataWithCustomFields,
|
|
3653
|
+
configs = _ref2.configs,
|
|
3654
|
+
values = _ref2.values,
|
|
3655
|
+
errors = _ref2.errors,
|
|
3656
|
+
_ref2$useStepperQty = _ref2.useStepperQty,
|
|
3657
|
+
useStepperQty = _ref2$useStepperQty === void 0 ? false : _ref2$useStepperQty,
|
|
3658
|
+
_ref2$onCustomFieldCh = _ref2.onCustomFieldChange,
|
|
3659
|
+
onCustomFieldChange = _ref2$onCustomFieldCh === void 0 ? _identity : _ref2$onCustomFieldCh;
|
|
3674
3660
|
var id = data.id,
|
|
3675
3661
|
name = data.name,
|
|
3676
3662
|
active = data.active,
|
|
@@ -3689,7 +3675,12 @@ var AddonComponent = function AddonComponent(_ref) {
|
|
|
3689
3675
|
className: "sold_out"
|
|
3690
3676
|
}, "SOLD OUT") : React__default.createElement(React__default.Fragment, null, React__default.createElement("div", {
|
|
3691
3677
|
className: classNamePrefix + "_product_qty_select"
|
|
3692
|
-
}, React__default.createElement(
|
|
3678
|
+
}, useStepperQty ? React__default.createElement(AddonStepper, {
|
|
3679
|
+
id: id,
|
|
3680
|
+
selectOptions: selectOptions,
|
|
3681
|
+
handleAddonChange: handleAddonChange,
|
|
3682
|
+
classNamePrefix: classNamePrefix
|
|
3683
|
+
}) : React__default.createElement(formik.Field, {
|
|
3693
3684
|
name: id,
|
|
3694
3685
|
selectOptions: selectOptions,
|
|
3695
3686
|
component: NativeSelectField,
|
|
@@ -3717,13 +3708,13 @@ var AddonComponent = function AddonComponent(_ref) {
|
|
|
3717
3708
|
}, React__default.createElement(formik.Field, Object.assign({}, element, {
|
|
3718
3709
|
name: fieldName,
|
|
3719
3710
|
validate: getValidateFunctions(element, [], values, errors)
|
|
3720
|
-
}), function (
|
|
3721
|
-
var field =
|
|
3722
|
-
form =
|
|
3711
|
+
}), function (_ref3) {
|
|
3712
|
+
var field = _ref3.field,
|
|
3713
|
+
form = _ref3.form;
|
|
3723
3714
|
var handleChange = function handleChange(e) {
|
|
3724
|
-
var
|
|
3715
|
+
var _ref4, _e$target$value, _e$target;
|
|
3725
3716
|
// extract value from native events or custom widgets
|
|
3726
|
-
var v = (
|
|
3717
|
+
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
|
|
3727
3718
|
form.setFieldValue(field.name, v);
|
|
3728
3719
|
onCustomFieldChange == null ? void 0 : onCustomFieldChange(data, id, element.name, v);
|
|
3729
3720
|
};
|
|
@@ -3918,37 +3909,79 @@ var isAtLeastOneAddonSelected = function isAtLeastOneAddonSelected(value) {
|
|
|
3918
3909
|
return !_isEmpty(selectedAddons);
|
|
3919
3910
|
};
|
|
3920
3911
|
|
|
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
|
-
|
|
3912
|
+
var addonsWithGroupsAdapter = function addonsWithGroupsAdapter(data) {
|
|
3913
|
+
var addonsData = _extends({}, data);
|
|
3914
|
+
var addOnsGroups = _get(addonsData, 'add_on_groups', []);
|
|
3915
|
+
var addons = _get(addonsData, 'add_ons', []);
|
|
3916
|
+
if (!_isEmpty(addOnsGroups)) {
|
|
3917
|
+
var addOnGroupsWithVariants = [];
|
|
3918
|
+
var addOnsWithoutVariants = [];
|
|
3919
|
+
addons.forEach(function (addon) {
|
|
3920
|
+
if (addon.attributes.addOnGroupId) {
|
|
3921
|
+
// Collect addons groups inside with their variants
|
|
3922
|
+
var currentGroupId = addon.attributes.addOnGroupId;
|
|
3923
|
+
var exsistingGroupIndex = addOnGroupsWithVariants.findIndex(function (item) {
|
|
3924
|
+
return item.id === currentGroupId;
|
|
3925
|
+
});
|
|
3926
|
+
if (addOnGroupsWithVariants[exsistingGroupIndex]) {
|
|
3927
|
+
var addOnGroup = addOnGroupsWithVariants[exsistingGroupIndex];
|
|
3928
|
+
addOnGroupsWithVariants[exsistingGroupIndex] = _extends({}, addOnGroup, {
|
|
3929
|
+
variants: [].concat(addOnGroup.variants, addon.attributes)
|
|
3930
|
+
});
|
|
3931
|
+
} else {
|
|
3932
|
+
var group = addOnsGroups.find(function (group) {
|
|
3933
|
+
return group.attributes.id === currentGroupId;
|
|
3934
|
+
}) || {};
|
|
3935
|
+
addOnGroupsWithVariants.push(_extends({}, group.attributes, {
|
|
3936
|
+
variants: [].concat(addon.attributes)
|
|
3937
|
+
}));
|
|
3938
|
+
}
|
|
3939
|
+
} else {
|
|
3940
|
+
addOnsWithoutVariants.push(addon.attributes);
|
|
3941
|
+
}
|
|
3942
|
+
});
|
|
3943
|
+
return addOnGroupsWithVariants.concat(addOnsWithoutVariants);
|
|
3944
|
+
}
|
|
3945
|
+
// Adapt only simple addons data
|
|
3946
|
+
var adaptedAddons = addons.map(function (addon) {
|
|
3947
|
+
return _extends({}, addon.attributes);
|
|
3948
|
+
});
|
|
3949
|
+
return adaptedAddons;
|
|
3950
|
+
};
|
|
3951
|
+
var cartAdapter = function cartAdapter(cart) {
|
|
3952
|
+
var cartData = _get(cart, 'data.attributes', []);
|
|
3953
|
+
var expiresAt = cartData.expiresAt,
|
|
3954
|
+
carts_arr = cartData.cart;
|
|
3955
|
+
var _ref = carts_arr[0] || {},
|
|
3956
|
+
id = _ref.id,
|
|
3957
|
+
quantity = _ref.quantity;
|
|
3958
|
+
return {
|
|
3959
|
+
id: id,
|
|
3960
|
+
quantity: quantity,
|
|
3961
|
+
expiresAt: expiresAt
|
|
3962
|
+
};
|
|
3963
|
+
};
|
|
3964
|
+
|
|
3965
|
+
var useAddons = function useAddons(eventId, options) {
|
|
3966
|
+
if (options === void 0) {
|
|
3967
|
+
options = {};
|
|
3968
|
+
}
|
|
3969
|
+
var _options = options,
|
|
3970
|
+
_options$enableBillin = _options.enableBillingInfoAutoCreate,
|
|
3971
|
+
enableBillingInfoAutoCreate = _options$enableBillin === void 0 ? true : _options$enableBillin,
|
|
3972
|
+
addOnDataWithCustomFields = _options.addOnDataWithCustomFields,
|
|
3973
|
+
_options$onGetAddonsP = _options.onGetAddonsPageInfoSuccess,
|
|
3974
|
+
onGetAddonsPageInfoSuccess = _options$onGetAddonsP === void 0 ? _identity : _options$onGetAddonsP,
|
|
3975
|
+
_options$onGetAddonsP2 = _options.onGetAddonsPageInfoError,
|
|
3976
|
+
onGetAddonsPageInfoError = _options$onGetAddonsP2 === void 0 ? _identity : _options$onGetAddonsP2,
|
|
3977
|
+
_options$onPostChecko = _options.onPostCheckoutSuccess,
|
|
3978
|
+
onPostCheckoutSuccess = _options$onPostChecko === void 0 ? _identity : _options$onPostChecko,
|
|
3979
|
+
_options$onPostChecko2 = _options.onPostCheckoutError,
|
|
3980
|
+
onPostCheckoutError = _options$onPostChecko2 === void 0 ? _identity : _options$onPostChecko2,
|
|
3981
|
+
_options$onConfirmSel = _options.onConfirmSelectionSuccess,
|
|
3982
|
+
onConfirmSelectionSuccess = _options$onConfirmSel === void 0 ? _identity : _options$onConfirmSel,
|
|
3983
|
+
_options$onConfirmSel2 = _options.onConfirmSelectionError,
|
|
3984
|
+
onConfirmSelectionError = _options$onConfirmSel2 === void 0 ? _identity : _options$onConfirmSel2;
|
|
3952
3985
|
var _useState = React.useState([]),
|
|
3953
3986
|
addons = _useState[0],
|
|
3954
3987
|
setAddons = _useState[1];
|
|
@@ -3970,20 +4003,9 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3970
4003
|
var _useState7 = React.useState(),
|
|
3971
4004
|
pendingVerificationMessage = _useState7[0],
|
|
3972
4005
|
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
4006
|
React.useEffect(function () {
|
|
3982
|
-
if (samePage) {
|
|
3983
|
-
window.localStorage.removeItem('add_ons');
|
|
3984
|
-
}
|
|
3985
4007
|
var getAddonsPageInfo = /*#__PURE__*/function () {
|
|
3986
|
-
var
|
|
4008
|
+
var _ref = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee() {
|
|
3987
4009
|
var cart, _cartAdapter, choosedTicketID, quantity, expiresAt, choosedTicketCount, addonsData, adaptedAddons, ticketRelatedAddons, sortedTicketAddons, _getAddonSelectOption, addonsWithOptions, groupsWithSelectedVariantsInfo, groupsWithVariants;
|
|
3988
4010
|
return _regeneratorRuntime().wrap(function _callee$(_context) {
|
|
3989
4011
|
while (1) switch (_context.prev = _context.next) {
|
|
@@ -3994,7 +4016,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
3994
4016
|
break;
|
|
3995
4017
|
}
|
|
3996
4018
|
setLoading(true);
|
|
3997
|
-
// Get choosed ticket info (id, count) from Cart request for addons options calculations
|
|
3998
4019
|
_context.next = 5;
|
|
3999
4020
|
return getCart();
|
|
4000
4021
|
case 5:
|
|
@@ -4002,7 +4023,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4002
4023
|
_cartAdapter = cartAdapter(cart), choosedTicketID = _cartAdapter.id, quantity = _cartAdapter.quantity, expiresAt = _cartAdapter.expiresAt;
|
|
4003
4024
|
choosedTicketCount = Number(quantity);
|
|
4004
4025
|
setCartExpirationTime(expiresAt);
|
|
4005
|
-
// Get and collect addons data
|
|
4006
4026
|
_context.next = 11;
|
|
4007
4027
|
return getAddons(eventId);
|
|
4008
4028
|
case 11:
|
|
@@ -4011,12 +4031,10 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4011
4031
|
ticketRelatedAddons = getTicketRelatedAddons(adaptedAddons, choosedTicketID);
|
|
4012
4032
|
sortedTicketAddons = getSortedAddons(ticketRelatedAddons);
|
|
4013
4033
|
setAddons(sortedTicketAddons);
|
|
4014
|
-
// Collect addons and addon group options
|
|
4015
4034
|
_getAddonSelectOption = getAddonSelectOptions(adaptedAddons, choosedTicketCount), addonsWithOptions = _getAddonSelectOption.addonsWithOptions, groupsWithSelectedVariantsInfo = _getAddonSelectOption.groupsWithSelectedVariantsInfo, groupsWithVariants = _getAddonSelectOption.groupsWithVariants;
|
|
4016
4035
|
setAddonsOptions(addonsWithOptions);
|
|
4017
4036
|
setGroupsWithSelectedVariants(groupsWithSelectedVariantsInfo);
|
|
4018
4037
|
setGroupsWithInitialVariantsValues(groupsWithVariants);
|
|
4019
|
-
// Success callback props
|
|
4020
4038
|
onGetAddonsPageInfoSuccess(addonsData);
|
|
4021
4039
|
case 21:
|
|
4022
4040
|
_context.next = 26;
|
|
@@ -4024,7 +4042,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4024
4042
|
case 23:
|
|
4025
4043
|
_context.prev = 23;
|
|
4026
4044
|
_context.t0 = _context["catch"](0);
|
|
4027
|
-
// Callback error props
|
|
4028
4045
|
onGetAddonsPageInfoError(_context.t0);
|
|
4029
4046
|
case 26:
|
|
4030
4047
|
_context.prev = 26;
|
|
@@ -4037,23 +4054,21 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4037
4054
|
}, _callee, null, [[0, 23, 26, 29]]);
|
|
4038
4055
|
}));
|
|
4039
4056
|
return function getAddonsPageInfo() {
|
|
4040
|
-
return
|
|
4057
|
+
return _ref.apply(this, arguments);
|
|
4041
4058
|
};
|
|
4042
4059
|
}();
|
|
4043
4060
|
getAddonsPageInfo();
|
|
4044
|
-
}, []);
|
|
4045
|
-
var recreateGroupVariantsSelectOptions = function recreateGroupVariantsSelectOptions(groupId,
|
|
4046
|
-
var choosedVariants =
|
|
4047
|
-
limit =
|
|
4048
|
-
selectedCount =
|
|
4061
|
+
}, [eventId]);
|
|
4062
|
+
var recreateGroupVariantsSelectOptions = function recreateGroupVariantsSelectOptions(groupId, changedGroup) {
|
|
4063
|
+
var choosedVariants = changedGroup.choosedVariants,
|
|
4064
|
+
limit = changedGroup.limit,
|
|
4065
|
+
selectedCount = changedGroup.selectedCount;
|
|
4049
4066
|
var remainingGroupStock = limit - selectedCount;
|
|
4050
4067
|
var recreatedVariantsOptions = {};
|
|
4051
|
-
// Regenerate variants allowed stock counts
|
|
4052
4068
|
for (var variant in choosedVariants) {
|
|
4053
4069
|
var variantId = variant;
|
|
4054
4070
|
var variantCurrSelectedValue = choosedVariants[variant];
|
|
4055
4071
|
var allowedOptionCount = void 0;
|
|
4056
|
-
// Formula for regenerating
|
|
4057
4072
|
if (remainingGroupStock >= groupsWithInitialVariantsValues[groupId][variantId] - variantCurrSelectedValue) {
|
|
4058
4073
|
allowedOptionCount = groupsWithInitialVariantsValues[groupId][variantId];
|
|
4059
4074
|
} else {
|
|
@@ -4066,7 +4081,6 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4066
4081
|
});
|
|
4067
4082
|
};
|
|
4068
4083
|
var onFieldChange = function onFieldChange(id, value, addon) {
|
|
4069
|
-
// If changeableGroup exsists it means that group with limitation variant was changed
|
|
4070
4084
|
var changeableGroup = groupsWithSelectedVariants[addon.id];
|
|
4071
4085
|
if (changeableGroup) {
|
|
4072
4086
|
var _extends2, _extends3;
|
|
@@ -4075,18 +4089,16 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4075
4089
|
var currSelectedVariantCount = Number(value);
|
|
4076
4090
|
var currSelectedVariantPrevCount = groupsWithSelectedVariants[currGroupId].choosedVariants[currSelectedVariantId];
|
|
4077
4091
|
var currSelectedGroupCount = changeableGroup.selectedCount + (currSelectedVariantCount - currSelectedVariantPrevCount);
|
|
4078
|
-
// Update Group info
|
|
4079
4092
|
var updatedGroupsWithSelectedVariants = _extends({}, groupsWithSelectedVariants, (_extends3 = {}, _extends3[currGroupId] = _extends({}, groupsWithSelectedVariants[currGroupId], {
|
|
4080
4093
|
selectedCount: currSelectedGroupCount,
|
|
4081
4094
|
choosedVariants: _extends({}, groupsWithSelectedVariants[currGroupId].choosedVariants, (_extends2 = {}, _extends2[currSelectedVariantId] = currSelectedVariantCount, _extends2))
|
|
4082
4095
|
}), _extends3));
|
|
4083
4096
|
setGroupsWithSelectedVariants(updatedGroupsWithSelectedVariants);
|
|
4084
|
-
// Recreate Select Options for Addon Group Variants
|
|
4085
4097
|
recreateGroupVariantsSelectOptions(currGroupId, updatedGroupsWithSelectedVariants[currGroupId]);
|
|
4086
4098
|
}
|
|
4087
4099
|
};
|
|
4088
4100
|
var handleConfirm = /*#__PURE__*/function () {
|
|
4089
|
-
var
|
|
4101
|
+
var _ref2 = _asyncToGenerator( /*#__PURE__*/_regeneratorRuntime().mark(function _callee2(values, skipAddonPage) {
|
|
4090
4102
|
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
4103
|
return _regeneratorRuntime().wrap(function _callee2$(_context2) {
|
|
4092
4104
|
while (1) switch (_context2.prev = _context2.next) {
|
|
@@ -4168,7 +4180,7 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4168
4180
|
}, _callee2, null, [[0, 30], [10, 22]]);
|
|
4169
4181
|
}));
|
|
4170
4182
|
return function handleConfirm(_x, _x2) {
|
|
4171
|
-
return
|
|
4183
|
+
return _ref2.apply(this, arguments);
|
|
4172
4184
|
};
|
|
4173
4185
|
}();
|
|
4174
4186
|
var handleClearAddons = function handleClearAddons() {
|
|
@@ -4190,6 +4202,86 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4190
4202
|
}
|
|
4191
4203
|
return addOnsData;
|
|
4192
4204
|
}, [addons, addOnDataWithCustomFields]);
|
|
4205
|
+
return {
|
|
4206
|
+
addons: addons,
|
|
4207
|
+
addonsOptions: addonsOptions,
|
|
4208
|
+
loading: loading,
|
|
4209
|
+
cartExpirationTime: cartExpirationTime,
|
|
4210
|
+
pendingVerificationMessage: pendingVerificationMessage,
|
|
4211
|
+
setPendingVerificationMessage: setPendingVerificationMessage,
|
|
4212
|
+
initialValues: initialValues,
|
|
4213
|
+
onFieldChange: onFieldChange,
|
|
4214
|
+
handleConfirm: handleConfirm,
|
|
4215
|
+
handleClearAddons: handleClearAddons
|
|
4216
|
+
};
|
|
4217
|
+
};
|
|
4218
|
+
|
|
4219
|
+
/* eslint-disable @typescript-eslint/no-explicit-any */
|
|
4220
|
+
var AddonsContainter = function AddonsContainter(_ref) {
|
|
4221
|
+
var _ref$classNamePrefix = _ref.classNamePrefix,
|
|
4222
|
+
classNamePrefix = _ref$classNamePrefix === void 0 ? 'add_on' : _ref$classNamePrefix,
|
|
4223
|
+
_ref$enableBillingInf = _ref.enableBillingInfoAutoCreate,
|
|
4224
|
+
enableBillingInfoAutoCreate = _ref$enableBillingInf === void 0 ? true : _ref$enableBillingInf,
|
|
4225
|
+
_ref$enableTimer = _ref.enableTimer,
|
|
4226
|
+
enableTimer = _ref$enableTimer === void 0 ? false : _ref$enableTimer,
|
|
4227
|
+
_ref$onGetAddonsPageI = _ref.onGetAddonsPageInfoSuccess,
|
|
4228
|
+
onGetAddonsPageInfoSuccess = _ref$onGetAddonsPageI === void 0 ? _identity : _ref$onGetAddonsPageI,
|
|
4229
|
+
_ref$onGetAddonsPageI2 = _ref.onGetAddonsPageInfoError,
|
|
4230
|
+
onGetAddonsPageInfoError = _ref$onGetAddonsPageI2 === void 0 ? _identity : _ref$onGetAddonsPageI2,
|
|
4231
|
+
_ref$onPostCheckoutSu = _ref.onPostCheckoutSuccess,
|
|
4232
|
+
onPostCheckoutSuccess = _ref$onPostCheckoutSu === void 0 ? _identity : _ref$onPostCheckoutSu,
|
|
4233
|
+
_ref$onPostCheckoutEr = _ref.onPostCheckoutError,
|
|
4234
|
+
onPostCheckoutError = _ref$onPostCheckoutEr === void 0 ? _identity : _ref$onPostCheckoutEr,
|
|
4235
|
+
_ref$onConfirmSelecti = _ref.onConfirmSelectionSuccess,
|
|
4236
|
+
onConfirmSelectionSuccess = _ref$onConfirmSelecti === void 0 ? _identity : _ref$onConfirmSelecti,
|
|
4237
|
+
_ref$onConfirmSelecti2 = _ref.onConfirmSelectionError,
|
|
4238
|
+
onConfirmSelectionError = _ref$onConfirmSelecti2 === void 0 ? _identity : _ref$onConfirmSelecti2,
|
|
4239
|
+
_ref$onCountdownFinis = _ref.onCountdownFinish,
|
|
4240
|
+
_onCountdownFinish = _ref$onCountdownFinis === void 0 ? _identity : _ref$onCountdownFinis,
|
|
4241
|
+
_ref$onPendingVerific = _ref.onPendingVerification,
|
|
4242
|
+
onPendingVerification = _ref$onPendingVerific === void 0 ? _identity : _ref$onPendingVerific,
|
|
4243
|
+
samePage = _ref.samePage,
|
|
4244
|
+
_ref$descriptionTrigg = _ref.descriptionTrigger,
|
|
4245
|
+
descriptionTrigger = _ref$descriptionTrigg === void 0 ? 'click' : _ref$descriptionTrigg,
|
|
4246
|
+
addOnDataWithCustomFields = _ref.addOnDataWithCustomFields,
|
|
4247
|
+
configs = _ref.configs,
|
|
4248
|
+
_ref$onAddOnSelect = _ref.onAddOnSelect,
|
|
4249
|
+
onAddOnSelect = _ref$onAddOnSelect === void 0 ? _identity : _ref$onAddOnSelect,
|
|
4250
|
+
_ref$useStepperQty = _ref.useStepperQty,
|
|
4251
|
+
useStepperQty = _ref$useStepperQty === void 0 ? false : _ref$useStepperQty;
|
|
4252
|
+
var eventId = getQueryVariable('event_id') || null;
|
|
4253
|
+
var _useAddons = useAddons(eventId, {
|
|
4254
|
+
enableBillingInfoAutoCreate: enableBillingInfoAutoCreate,
|
|
4255
|
+
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4256
|
+
onGetAddonsPageInfoSuccess: onGetAddonsPageInfoSuccess,
|
|
4257
|
+
onGetAddonsPageInfoError: onGetAddonsPageInfoError,
|
|
4258
|
+
onPostCheckoutSuccess: onPostCheckoutSuccess,
|
|
4259
|
+
onPostCheckoutError: onPostCheckoutError,
|
|
4260
|
+
onConfirmSelectionSuccess: onConfirmSelectionSuccess,
|
|
4261
|
+
onConfirmSelectionError: onConfirmSelectionError
|
|
4262
|
+
}),
|
|
4263
|
+
addons = _useAddons.addons,
|
|
4264
|
+
addonsOptions = _useAddons.addonsOptions,
|
|
4265
|
+
loading = _useAddons.loading,
|
|
4266
|
+
cartExpirationTime = _useAddons.cartExpirationTime,
|
|
4267
|
+
pendingVerificationMessage = _useAddons.pendingVerificationMessage,
|
|
4268
|
+
initialValues = _useAddons.initialValues,
|
|
4269
|
+
onFieldChange = _useAddons.onFieldChange,
|
|
4270
|
+
handleConfirm = _useAddons.handleConfirm,
|
|
4271
|
+
handleClearAddons = _useAddons.handleClearAddons;
|
|
4272
|
+
var _useState = React.useState(null),
|
|
4273
|
+
visibleDescription = _useState[0],
|
|
4274
|
+
setVisibleDescription = _useState[1];
|
|
4275
|
+
var handleDescriptionToggle = function handleDescriptionToggle(ticketId) {
|
|
4276
|
+
setVisibleDescription(function (current) {
|
|
4277
|
+
return current === ticketId ? null : ticketId;
|
|
4278
|
+
});
|
|
4279
|
+
};
|
|
4280
|
+
React.useEffect(function () {
|
|
4281
|
+
if (samePage) {
|
|
4282
|
+
window.localStorage.removeItem('add_ons');
|
|
4283
|
+
}
|
|
4284
|
+
}, []);
|
|
4193
4285
|
if (loading) {
|
|
4194
4286
|
return React__default.createElement("div", {
|
|
4195
4287
|
className: classNamePrefix + "_loader"
|
|
@@ -4238,10 +4330,10 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4238
4330
|
window.localStorage.setItem('add_ons', JSON.stringify(values));
|
|
4239
4331
|
}
|
|
4240
4332
|
} : undefined
|
|
4241
|
-
}, function (
|
|
4242
|
-
var values =
|
|
4243
|
-
errors =
|
|
4244
|
-
setFieldTouched =
|
|
4333
|
+
}, function (_ref2) {
|
|
4334
|
+
var values = _ref2.values,
|
|
4335
|
+
errors = _ref2.errors,
|
|
4336
|
+
setFieldTouched = _ref2.setFieldTouched;
|
|
4245
4337
|
var isConfirmDisabled = !isAtLeastOneAddonSelected(values);
|
|
4246
4338
|
return React__default.createElement(formik.Form, {
|
|
4247
4339
|
autoComplete: "off",
|
|
@@ -4316,7 +4408,8 @@ var AddonsContainter = function AddonsContainter(_ref) {
|
|
|
4316
4408
|
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4317
4409
|
configs: configs,
|
|
4318
4410
|
values: values,
|
|
4319
|
-
errors: errors
|
|
4411
|
+
errors: errors,
|
|
4412
|
+
useStepperQty: useStepperQty
|
|
4320
4413
|
})
|
|
4321
4414
|
);
|
|
4322
4415
|
}) :
|
|
@@ -4367,6 +4460,8 @@ var SimpleAddonsContainer = function SimpleAddonsContainer(_ref) {
|
|
|
4367
4460
|
addOnDataWithCustomFields = _ref.addOnDataWithCustomFields,
|
|
4368
4461
|
configs = _ref.configs,
|
|
4369
4462
|
eventId = _ref.eventId,
|
|
4463
|
+
_ref$useStepperQty = _ref.useStepperQty,
|
|
4464
|
+
useStepperQty = _ref$useStepperQty === void 0 ? false : _ref$useStepperQty,
|
|
4370
4465
|
_ref$onAddOnSelect = _ref.onAddOnSelect,
|
|
4371
4466
|
onAddOnSelect = _ref$onAddOnSelect === void 0 ? _identity : _ref$onAddOnSelect,
|
|
4372
4467
|
_ref$handleConfirm = _ref.handleConfirm,
|
|
@@ -4638,7 +4733,8 @@ var SimpleAddonsContainer = function SimpleAddonsContainer(_ref) {
|
|
|
4638
4733
|
addOnDataWithCustomFields: addOnDataWithCustomFields,
|
|
4639
4734
|
configs: configs,
|
|
4640
4735
|
values: values,
|
|
4641
|
-
errors: errors
|
|
4736
|
+
errors: errors,
|
|
4737
|
+
useStepperQty: useStepperQty
|
|
4642
4738
|
})
|
|
4643
4739
|
);
|
|
4644
4740
|
}) :
|
|
@@ -16049,10 +16145,13 @@ exports.RsvpContainer = RsvpContainer;
|
|
|
16049
16145
|
exports.SeatMapContainer = SeatMapContainer;
|
|
16050
16146
|
exports.TicketResaleContainer = TicketResaleContainer;
|
|
16051
16147
|
exports.TicketsContainer = TicketsContainer;
|
|
16148
|
+
exports.TimerWidget = TimerWidget$1;
|
|
16052
16149
|
exports.VERIFICATION_STATUSES = VERIFICATION_STATUSES;
|
|
16150
|
+
exports.VerificationPendingModal = VerificationPendingModal;
|
|
16053
16151
|
exports.createFixedFloatNormalizer = createFixedFloatNormalizer;
|
|
16054
16152
|
exports.currencyNormalizerCreator = currencyNormalizerCreator;
|
|
16055
16153
|
exports.logoutUser = logoutUser;
|
|
16056
16154
|
exports.setConfigs = setConfigs;
|
|
16155
|
+
exports.useAddons = useAddons;
|
|
16057
16156
|
exports.useCookieListener = useCookieListener;
|
|
16058
16157
|
//# sourceMappingURL=tf-checkout-react.cjs.development.js.map
|