tf-checkout-react 1.0.99-beta.20 → 1.0.99-beta.23
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/api/index.d.ts +1 -0
- package/dist/components/common/CustomField.d.ts +1 -1
- package/dist/components/common/DatePickerField.d.ts +14 -0
- package/dist/components/ticketResale/index.d.ts +3 -1
- package/dist/components/ticketsContainer/TicketsSection.d.ts +3 -2
- package/dist/components/ticketsContainer/index.d.ts +3 -2
- package/dist/tf-checkout-react.cjs.development.js +159 -39
- 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 +160 -40
- package/dist/tf-checkout-react.esm.js.map +1 -1
- package/package.json +1 -1
- package/src/api/index.ts +4 -0
- package/src/components/billing-info-container/index.tsx +3 -0
- package/src/components/billing-info-container/utils.ts +1 -0
- package/src/components/common/CustomField.tsx +6 -6
- package/src/components/common/DatePickerField.tsx +98 -0
- package/src/components/ticketResale/index.tsx +23 -4
- package/src/components/ticketsContainer/TicketsSection.tsx +4 -1
- package/src/components/ticketsContainer/index.tsx +7 -3
package/dist/api/index.d.ts
CHANGED
|
@@ -35,5 +35,6 @@ export declare const removeFromResale: (hash: string) => Promise<AxiosResponse<a
|
|
|
35
35
|
export declare const postReferralVisits: (eventId: string, referralId: string) => Promise<AxiosResponse<any, any>>;
|
|
36
36
|
export declare const logout: () => Promise<AxiosResponse<any, any>>;
|
|
37
37
|
export declare const processTicket: (hash: string) => Promise<AxiosResponse<any, any>>;
|
|
38
|
+
export declare const declineInvitation: (hash: string) => Promise<AxiosResponse<any, any>>;
|
|
38
39
|
export declare const sendRSVPInfo: (eventId: number, data: any) => Promise<AxiosResponse<any, any>>;
|
|
39
40
|
export {};
|
|
@@ -16,5 +16,5 @@ export interface ICustomField {
|
|
|
16
16
|
interface IOtherProps {
|
|
17
17
|
[key: string]: any;
|
|
18
18
|
}
|
|
19
|
-
export declare const CustomField: ({ label, type, field, selectOptions, form: { touched, errors, submitCount }, theme, }: ICustomField & IOtherProps) => JSX.Element;
|
|
19
|
+
export declare const CustomField: ({ label, type, field, selectOptions, form: { touched, errors, submitCount }, theme, inputProps: pInputProps, InputProps, inputRef, }: ICustomField & IOtherProps) => JSX.Element;
|
|
20
20
|
export {};
|
|
@@ -0,0 +1,14 @@
|
|
|
1
|
+
/// <reference types="react" />
|
|
2
|
+
import { FieldInputProps, FormikProps } from 'formik';
|
|
3
|
+
export interface IDatePickerFieldProps {
|
|
4
|
+
label: string;
|
|
5
|
+
field: FieldInputProps<any>;
|
|
6
|
+
form: FormikProps<any>;
|
|
7
|
+
theme: 'dark' | 'light';
|
|
8
|
+
useCompact?: boolean;
|
|
9
|
+
}
|
|
10
|
+
interface IOtherProps {
|
|
11
|
+
[key: string]: any;
|
|
12
|
+
}
|
|
13
|
+
export declare const DatePickerField: ({ label, field, form, theme, useCompact, }: IDatePickerFieldProps & IOtherProps) => JSX.Element;
|
|
14
|
+
export {};
|
|
@@ -3,6 +3,8 @@ import { AxiosError } from 'axios';
|
|
|
3
3
|
export interface ITicketResaleContainer {
|
|
4
4
|
onProcessTicketSuccess: (res: any) => void;
|
|
5
5
|
onProcessTicketError: (e: AxiosError) => void;
|
|
6
|
+
onDeclineTicketPurchaseSuccess: (res: any) => void;
|
|
7
|
+
onDeclineTicketPurchaseError: (e: AxiosError) => void;
|
|
6
8
|
orderHash?: string;
|
|
7
9
|
}
|
|
8
|
-
export declare const TicketResaleContainer: ({ onProcessTicketSuccess, onProcessTicketError, orderHash, }: ITicketResaleContainer) => JSX.Element;
|
|
10
|
+
export declare const TicketResaleContainer: ({ onProcessTicketSuccess, onProcessTicketError, onDeclineTicketPurchaseSuccess, onDeclineTicketPurchaseError, orderHash, }: ITicketResaleContainer) => JSX.Element;
|
|
@@ -1,10 +1,11 @@
|
|
|
1
|
-
|
|
1
|
+
import { ReactNode } from 'react';
|
|
2
2
|
import './style.css';
|
|
3
3
|
interface ITicketsSectionProps {
|
|
4
4
|
ticketsList: any;
|
|
5
5
|
selectedTickets: any;
|
|
6
6
|
handleTicketSelect: any;
|
|
7
7
|
sortBySoldOut: boolean;
|
|
8
|
+
ticketsHeaderComponent?: ReactNode;
|
|
8
9
|
}
|
|
9
|
-
export declare const TicketsSection: ({ ticketsList, selectedTickets, handleTicketSelect, sortBySoldOut, }: ITicketsSectionProps) => JSX.Element;
|
|
10
|
+
export declare const TicketsSection: ({ ticketsList, selectedTickets, handleTicketSelect, sortBySoldOut, ticketsHeaderComponent }: ITicketsSectionProps) => JSX.Element;
|
|
10
11
|
export {};
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import React from 'react';
|
|
1
|
+
import React, { ReactNode } from 'react';
|
|
2
2
|
import { AxiosError } from 'axios';
|
|
3
3
|
import './style.css';
|
|
4
4
|
import { ThemeOptions } from '@mui/material';
|
|
@@ -39,6 +39,7 @@ export interface IGetTickets {
|
|
|
39
39
|
disableCountdownLeadingZero?: boolean;
|
|
40
40
|
isLoggedIn?: boolean;
|
|
41
41
|
actionsSectionComponent?: any;
|
|
42
|
+
ticketsHeaderComponent?: ReactNode;
|
|
42
43
|
}
|
|
43
44
|
export interface ITicket {
|
|
44
45
|
id: string | number;
|
|
@@ -47,5 +48,5 @@ export interface ITicket {
|
|
|
47
48
|
export interface ISelectedTickets {
|
|
48
49
|
[key: string]: string | number;
|
|
49
50
|
}
|
|
50
|
-
export declare const TicketsContainer: ({ onLoginSuccess, getTicketsLabel, eventId, onAddToCartSuccess, contentStyle, onAddToCartError, onGetTicketsSuccess, onGetTicketsError, onLogoutSuccess, onLogoutError, theme, queryPromoCode, isPromotionsEnabled, themeOptions, isAccessCodeEnabled, hideSessionButtons, hideWaitingList, enableBillingInfoAutoCreate, isButtonScrollable, sortBySoldOut, disableCountdownLeadingZero, isLoggedIn, actionsSectionComponent: ActionsSectionComponent }: IGetTickets) => JSX.Element;
|
|
51
|
+
export declare const TicketsContainer: ({ onLoginSuccess, getTicketsLabel, eventId, onAddToCartSuccess, contentStyle, onAddToCartError, onGetTicketsSuccess, onGetTicketsError, onLogoutSuccess, onLogoutError, theme, queryPromoCode, isPromotionsEnabled, themeOptions, isAccessCodeEnabled, hideSessionButtons, hideWaitingList, enableBillingInfoAutoCreate, isButtonScrollable, sortBySoldOut, disableCountdownLeadingZero, isLoggedIn, actionsSectionComponent: ActionsSectionComponent, ticketsHeaderComponent }: IGetTickets) => JSX.Element;
|
|
51
52
|
export {};
|
|
@@ -27,7 +27,6 @@ var FormControlLabel = _interopDefault(require('@mui/material/FormControlLabel')
|
|
|
27
27
|
var Checkbox = _interopDefault(require('@mui/material/Checkbox'));
|
|
28
28
|
var styles = require('@mui/styles');
|
|
29
29
|
var TextField = _interopDefault(require('@mui/material/TextField'));
|
|
30
|
-
var moment = _interopDefault(require('moment-timezone'));
|
|
31
30
|
var MuiPhoneNumber = _interopDefault(require('material-ui-phone-number'));
|
|
32
31
|
var CircularProgress = _interopDefault(require('@mui/material/CircularProgress'));
|
|
33
32
|
var Select = _interopDefault(require('@mui/material/Select'));
|
|
@@ -36,6 +35,9 @@ var Backdrop = _interopDefault(require('@mui/material/Backdrop'));
|
|
|
36
35
|
var Countdown$1 = _interopDefault(require('react-countdown'));
|
|
37
36
|
var _isNumber = _interopDefault(require('lodash/isNumber'));
|
|
38
37
|
var SVG = _interopDefault(require('react-inlinesvg'));
|
|
38
|
+
var DatePicker = _interopDefault(require('@mui/lab/DatePicker'));
|
|
39
|
+
var AdapterMoment = _interopDefault(require('@mui/lab/AdapterMoment'));
|
|
40
|
+
var LocalizationProvider = _interopDefault(require('@mui/lab/LocalizationProvider'));
|
|
39
41
|
var Container = _interopDefault(require('@mui/material/Container'));
|
|
40
42
|
var Alert = _interopDefault(require('@mui/material/Alert'));
|
|
41
43
|
var reactStripeJs = require('@stripe/react-stripe-js');
|
|
@@ -48,6 +50,7 @@ var jwt_decode = _interopDefault(require('jwt-decode'));
|
|
|
48
50
|
var _sortBy = _interopDefault(require('lodash/sortBy'));
|
|
49
51
|
var FormControl = _interopDefault(require('@mui/material/FormControl'));
|
|
50
52
|
var MenuItem = _interopDefault(require('@mui/material/MenuItem'));
|
|
53
|
+
var moment = _interopDefault(require('moment-timezone'));
|
|
51
54
|
var privateTheming = require('@mui/private-theming');
|
|
52
55
|
var Table = _interopDefault(require('@mui/material/Table'));
|
|
53
56
|
var TableBody = _interopDefault(require('@mui/material/TableBody'));
|
|
@@ -1436,6 +1439,9 @@ var logout = function logout() {
|
|
|
1436
1439
|
var processTicket = function processTicket(hash) {
|
|
1437
1440
|
return publicRequest.post("v1/ticket/" + hash + "/process/");
|
|
1438
1441
|
};
|
|
1442
|
+
var declineInvitation = function declineInvitation(hash) {
|
|
1443
|
+
return publicRequest.post("v1/ticket/" + hash + "/decline");
|
|
1444
|
+
};
|
|
1439
1445
|
var sendRSVPInfo = function sendRSVPInfo(eventId, data) {
|
|
1440
1446
|
return publicRequest.post("v1/event/" + eventId + "/send-rsvp-info", data);
|
|
1441
1447
|
};
|
|
@@ -1867,6 +1873,7 @@ var createRegisterFormData = function createRegisterFormData(values, checkoutBod
|
|
|
1867
1873
|
bodyFormData.append('password_confirmation', values.confirmPassword);
|
|
1868
1874
|
bodyFormData.append('client_id', CONFIGS.CLIENT_ID || 'e9d8f8922797b4621e562255afe90dbf');
|
|
1869
1875
|
bodyFormData.append('client_secret', CONFIGS.CLIENT_SECRET || 'b89c191eff22fdcf84ac9bfd88d005355a151ec2c83b26b9');
|
|
1876
|
+
bodyFormData.append('check_cart_expiration', 'true');
|
|
1870
1877
|
|
|
1871
1878
|
_forEach(checkoutBody.attributes, function (item, key) {
|
|
1872
1879
|
bodyFormData.append(key, item);
|
|
@@ -2041,7 +2048,12 @@ var CustomField = function CustomField(_ref) {
|
|
|
2041
2048
|
touched = _ref$form.touched,
|
|
2042
2049
|
errors = _ref$form.errors,
|
|
2043
2050
|
submitCount = _ref$form.submitCount,
|
|
2044
|
-
theme = _ref.theme
|
|
2051
|
+
theme = _ref.theme,
|
|
2052
|
+
_ref$inputProps = _ref.inputProps,
|
|
2053
|
+
pInputProps = _ref$inputProps === void 0 ? {} : _ref$inputProps,
|
|
2054
|
+
_ref$InputProps = _ref.InputProps,
|
|
2055
|
+
InputProps = _ref$InputProps === void 0 ? {} : _ref$InputProps,
|
|
2056
|
+
inputRef = _ref.inputRef;
|
|
2045
2057
|
var isSelectField = type === 'select';
|
|
2046
2058
|
|
|
2047
2059
|
var error = _get(errors, field.name);
|
|
@@ -2051,11 +2063,6 @@ var CustomField = function CustomField(_ref) {
|
|
|
2051
2063
|
var inputProps = {
|
|
2052
2064
|
sx: customTheme == null ? void 0 : customTheme.input
|
|
2053
2065
|
};
|
|
2054
|
-
|
|
2055
|
-
if (type === 'date') {
|
|
2056
|
-
inputProps.max = moment().format('YYYY-MM-DD');
|
|
2057
|
-
}
|
|
2058
|
-
|
|
2059
2066
|
return React__default.createElement(TextField, Object.assign({
|
|
2060
2067
|
id: field.name,
|
|
2061
2068
|
label: label,
|
|
@@ -2072,10 +2079,11 @@ var CustomField = function CustomField(_ref) {
|
|
|
2072
2079
|
}
|
|
2073
2080
|
},
|
|
2074
2081
|
InputLabelProps: {
|
|
2075
|
-
sx: customTheme == null ? void 0 : customTheme.input
|
|
2076
|
-
shrink: field.name === 'holderAge' ? true : undefined
|
|
2082
|
+
sx: customTheme == null ? void 0 : customTheme.input
|
|
2077
2083
|
},
|
|
2078
|
-
|
|
2084
|
+
InputProps: InputProps,
|
|
2085
|
+
inputProps: _extends({}, inputProps, pInputProps),
|
|
2086
|
+
inputRef: inputRef
|
|
2079
2087
|
}, field), isSelectField ? _map(selectOptions, function (option) {
|
|
2080
2088
|
return React__default.createElement("option", {
|
|
2081
2089
|
key: option.value,
|
|
@@ -2378,6 +2386,79 @@ var SnackbarAlert = function SnackbarAlert(_ref) {
|
|
|
2378
2386
|
}, message)));
|
|
2379
2387
|
};
|
|
2380
2388
|
|
|
2389
|
+
var DATE_SIZE = 32;
|
|
2390
|
+
var compactStyles = {
|
|
2391
|
+
'& > div': {
|
|
2392
|
+
minWidth: 256
|
|
2393
|
+
},
|
|
2394
|
+
'& > div > div, & > div > div > div, & .MuiCalendarPicker-root': {
|
|
2395
|
+
width: 256
|
|
2396
|
+
},
|
|
2397
|
+
'& .MuiTypography-caption': {
|
|
2398
|
+
width: DATE_SIZE,
|
|
2399
|
+
margin: 0
|
|
2400
|
+
},
|
|
2401
|
+
'& .PrivatePickersSlideTransition-root': {
|
|
2402
|
+
minHeight: DATE_SIZE * 6
|
|
2403
|
+
},
|
|
2404
|
+
'& .PrivatePickersSlideTransition-root [role="row"]': {
|
|
2405
|
+
margin: 0
|
|
2406
|
+
},
|
|
2407
|
+
'& .MuiPickersDay-dayWithMargin': {
|
|
2408
|
+
margin: 0
|
|
2409
|
+
},
|
|
2410
|
+
'& .MuiPickersDay-root': {
|
|
2411
|
+
width: DATE_SIZE,
|
|
2412
|
+
height: DATE_SIZE
|
|
2413
|
+
}
|
|
2414
|
+
};
|
|
2415
|
+
var compactStyleTheme = /*#__PURE__*/styles$1.createTheme({
|
|
2416
|
+
components: {
|
|
2417
|
+
MuiPaper: {
|
|
2418
|
+
defaultProps: {
|
|
2419
|
+
sx: compactStyles
|
|
2420
|
+
}
|
|
2421
|
+
}
|
|
2422
|
+
}
|
|
2423
|
+
});
|
|
2424
|
+
var DatePickerField = function DatePickerField(_ref) {
|
|
2425
|
+
var label = _ref.label,
|
|
2426
|
+
field = _ref.field,
|
|
2427
|
+
form = _ref.form,
|
|
2428
|
+
theme = _ref.theme,
|
|
2429
|
+
_ref$useCompact = _ref.useCompact,
|
|
2430
|
+
useCompact = _ref$useCompact === void 0 ? true : _ref$useCompact;
|
|
2431
|
+
return React__default.createElement(styles$1.ThemeProvider, {
|
|
2432
|
+
theme: useCompact ? compactStyleTheme : {}
|
|
2433
|
+
}, React__default.createElement(LocalizationProvider, {
|
|
2434
|
+
dateAdapter: AdapterMoment
|
|
2435
|
+
}, React__default.createElement(DatePicker, {
|
|
2436
|
+
value: field.value || '',
|
|
2437
|
+
onChange: function onChange(value) {
|
|
2438
|
+
return form.setFieldValue(field.name, value);
|
|
2439
|
+
},
|
|
2440
|
+
PopperProps: {
|
|
2441
|
+
placement: 'bottom-start'
|
|
2442
|
+
},
|
|
2443
|
+
showDaysOutsideCurrentMonth: true,
|
|
2444
|
+
disableFuture: true,
|
|
2445
|
+
inputFormat: "DD/MM/YYYY",
|
|
2446
|
+
mask: "__/__/____",
|
|
2447
|
+
renderInput: function renderInput(params) {
|
|
2448
|
+
return React__default.createElement(CustomField, Object.assign({}, params, {
|
|
2449
|
+
inputProps: _extends({}, params.inputProps, {
|
|
2450
|
+
placeholder: 'dd/mm/yyyy'
|
|
2451
|
+
}),
|
|
2452
|
+
theme: theme,
|
|
2453
|
+
field: field,
|
|
2454
|
+
form: form,
|
|
2455
|
+
label: label,
|
|
2456
|
+
type: "tel"
|
|
2457
|
+
}));
|
|
2458
|
+
}
|
|
2459
|
+
})));
|
|
2460
|
+
};
|
|
2461
|
+
|
|
2381
2462
|
var LogicRunner = function LogicRunner(_ref) {
|
|
2382
2463
|
var values = _ref.values,
|
|
2383
2464
|
setStates = _ref.setStates,
|
|
@@ -3181,7 +3262,7 @@ var BillingInfoContainer = function BillingInfoContainer(_ref3) {
|
|
|
3181
3262
|
validate: getValidateFunctions(element, states, props.values),
|
|
3182
3263
|
setFieldValue: props.setFieldValue,
|
|
3183
3264
|
onBlur: props.handleBlur,
|
|
3184
|
-
component: element.type === 'checkbox' ? CheckboxField : element.type === 'select' ? SelectField : element.type === 'phone' ? FormikPhoneNumberField : CustomField,
|
|
3265
|
+
component: element.type === 'checkbox' ? CheckboxField : element.type === 'select' ? SelectField : element.type === 'phone' ? FormikPhoneNumberField : element.type === 'date' ? DatePickerField : CustomField,
|
|
3185
3266
|
selectOptions: element.name === 'country' ? countries : element.name === 'state' ? states : [],
|
|
3186
3267
|
theme: theme
|
|
3187
3268
|
})));
|
|
@@ -4287,9 +4368,10 @@ var TicketsSection = function TicketsSection(_ref) {
|
|
|
4287
4368
|
var ticketsList = _ref.ticketsList,
|
|
4288
4369
|
selectedTickets = _ref.selectedTickets,
|
|
4289
4370
|
handleTicketSelect = _ref.handleTicketSelect,
|
|
4290
|
-
sortBySoldOut = _ref.sortBySoldOut
|
|
4371
|
+
sortBySoldOut = _ref.sortBySoldOut,
|
|
4372
|
+
ticketsHeaderComponent = _ref.ticketsHeaderComponent;
|
|
4291
4373
|
var sortedTicketsList = sortBySoldOut ? _sortBy(_sortBy(ticketsList, 'sortOrder'), 'soldOut') : _sortBy(ticketsList, 'sortOrder');
|
|
4292
|
-
return React__default.createElement(React__default.Fragment, null, sortedTicketsList.map(function (ticket, i, arr) {
|
|
4374
|
+
return React__default.createElement(React__default.Fragment, null, ticketsHeaderComponent, sortedTicketsList.map(function (ticket, i, arr) {
|
|
4293
4375
|
var isSoldOut = ticket.sold_out || !ticket.displayTicket || ticket.soldOut;
|
|
4294
4376
|
|
|
4295
4377
|
var ticketSelect = function ticketSelect(event) {
|
|
@@ -4757,7 +4839,8 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
4757
4839
|
disableCountdownLeadingZero = _ref$disableCountdown === void 0 ? false : _ref$disableCountdown,
|
|
4758
4840
|
_ref$isLoggedIn = _ref.isLoggedIn,
|
|
4759
4841
|
isLoggedIn = _ref$isLoggedIn === void 0 ? false : _ref$isLoggedIn,
|
|
4760
|
-
ActionsSectionComponent = _ref.actionsSectionComponent
|
|
4842
|
+
ActionsSectionComponent = _ref.actionsSectionComponent,
|
|
4843
|
+
ticketsHeaderComponent = _ref.ticketsHeaderComponent;
|
|
4761
4844
|
|
|
4762
4845
|
var _useState = React.useState({}),
|
|
4763
4846
|
selectedTickets = _useState[0],
|
|
@@ -5159,7 +5242,8 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
5159
5242
|
|
|
5160
5243
|
var bookButtonIsDisabled = handleBookIsLoading || _isEmpty(selectedTickets) || Object.values(selectedTickets)[0] === 0;
|
|
5161
5244
|
var wrappedActionsSectionComponent = React__default.isValidElement(ActionsSectionComponent) ? React__default.cloneElement(ActionsSectionComponent, {
|
|
5162
|
-
handleGetTicketClick: handleGetTicketClick
|
|
5245
|
+
handleGetTicketClick: handleGetTicketClick,
|
|
5246
|
+
isTicketOnSale: isTicketOnSale
|
|
5163
5247
|
}) : null;
|
|
5164
5248
|
var externalUrl = event == null ? void 0 : event.redirectUrl;
|
|
5165
5249
|
var eventSaleIsNotStarted = !(event != null && event.salesStarted) && (event == null ? void 0 : event.salesStart);
|
|
@@ -5176,7 +5260,8 @@ var TicketsContainer = function TicketsContainer(_ref) {
|
|
|
5176
5260
|
ticketsList: tickets,
|
|
5177
5261
|
selectedTickets: selectedTickets,
|
|
5178
5262
|
handleTicketSelect: handleTicketSelect,
|
|
5179
|
-
sortBySoldOut: sortBySoldOut
|
|
5263
|
+
sortBySoldOut: sortBySoldOut,
|
|
5264
|
+
ticketsHeaderComponent: ticketsHeaderComponent
|
|
5180
5265
|
}), externalUrl ? null : isSalesClosed ? React__default.createElement("p", {
|
|
5181
5266
|
className: "event-closed-message " + (!isLoggedIn ? 'event-closed-on-bottom' : '')
|
|
5182
5267
|
}, "Sales for this event are closed.") : eventSaleIsNotStarted ? React__default.createElement(Countdown, {
|
|
@@ -6052,75 +6137,110 @@ var TicketResaleContainer = function TicketResaleContainer(_ref) {
|
|
|
6052
6137
|
onProcessTicketSuccess = _ref$onProcessTicketS === void 0 ? function () {} : _ref$onProcessTicketS,
|
|
6053
6138
|
_ref$onProcessTicketE = _ref.onProcessTicketError,
|
|
6054
6139
|
onProcessTicketError = _ref$onProcessTicketE === void 0 ? function () {} : _ref$onProcessTicketE,
|
|
6140
|
+
_ref$onDeclineTicketP = _ref.onDeclineTicketPurchaseSuccess,
|
|
6141
|
+
onDeclineTicketPurchaseSuccess = _ref$onDeclineTicketP === void 0 ? function () {} : _ref$onDeclineTicketP,
|
|
6142
|
+
_ref$onDeclineTicketP2 = _ref.onDeclineTicketPurchaseError,
|
|
6143
|
+
onDeclineTicketPurchaseError = _ref$onDeclineTicketP2 === void 0 ? function () {} : _ref$onDeclineTicketP2,
|
|
6055
6144
|
orderHash = _ref.orderHash;
|
|
6056
6145
|
var isWindowDefined = typeof window !== 'undefined';
|
|
6057
6146
|
|
|
6058
|
-
var _useState = React.useState(
|
|
6147
|
+
var _useState = React.useState(''),
|
|
6059
6148
|
error = _useState[0],
|
|
6060
6149
|
setError = _useState[1];
|
|
6061
6150
|
|
|
6151
|
+
var _useState2 = React.useState(''),
|
|
6152
|
+
successMessage = _useState2[0],
|
|
6153
|
+
setSuccessMessage = _useState2[1];
|
|
6154
|
+
|
|
6062
6155
|
React.useEffect(function () {
|
|
6063
6156
|
_asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
|
|
6064
|
-
var params, hash, response, data, age_required, names_required, event_id, _error$
|
|
6157
|
+
var params, hash, isDeclined, response, _error$response, _error$response$data, _response, data, age_required, names_required, event_id, _error$response2, _error$response2$data;
|
|
6065
6158
|
|
|
6066
6159
|
return runtime_1.wrap(function _callee$(_context) {
|
|
6067
6160
|
while (1) {
|
|
6068
6161
|
switch (_context.prev = _context.next) {
|
|
6069
6162
|
case 0:
|
|
6070
6163
|
if (!isWindowDefined) {
|
|
6071
|
-
_context.next =
|
|
6164
|
+
_context.next = 38;
|
|
6072
6165
|
break;
|
|
6073
6166
|
}
|
|
6074
6167
|
|
|
6075
6168
|
params = new URL("" + window.location).searchParams;
|
|
6076
6169
|
hash = params.get('invitation_hash') || orderHash || null;
|
|
6170
|
+
isDeclined = params.get('decline') || false;
|
|
6077
6171
|
|
|
6078
6172
|
if (!hash) {
|
|
6079
|
-
_context.next =
|
|
6173
|
+
_context.next = 37;
|
|
6080
6174
|
break;
|
|
6081
6175
|
}
|
|
6082
6176
|
|
|
6083
|
-
|
|
6084
|
-
|
|
6085
|
-
|
|
6177
|
+
if (!isDeclined) {
|
|
6178
|
+
_context.next = 19;
|
|
6179
|
+
break;
|
|
6180
|
+
}
|
|
6086
6181
|
|
|
6087
|
-
|
|
6182
|
+
_context.prev = 6;
|
|
6183
|
+
_context.next = 9;
|
|
6184
|
+
return declineInvitation(hash);
|
|
6185
|
+
|
|
6186
|
+
case 9:
|
|
6088
6187
|
response = _context.sent;
|
|
6089
|
-
|
|
6188
|
+
onDeclineTicketPurchaseSuccess(response);
|
|
6189
|
+
setSuccessMessage("Thanks for letting us know! We'll offer this ticket to someone else!");
|
|
6190
|
+
_context.next = 18;
|
|
6191
|
+
break;
|
|
6192
|
+
|
|
6193
|
+
case 14:
|
|
6194
|
+
_context.prev = 14;
|
|
6195
|
+
_context.t0 = _context["catch"](6);
|
|
6196
|
+
setError(_context.t0 == null ? void 0 : (_error$response = _context.t0.response) == null ? void 0 : (_error$response$data = _error$response.data) == null ? void 0 : _error$response$data.message);
|
|
6197
|
+
onDeclineTicketPurchaseError(_context.t0.response);
|
|
6198
|
+
|
|
6199
|
+
case 18:
|
|
6200
|
+
return _context.abrupt("return");
|
|
6201
|
+
|
|
6202
|
+
case 19:
|
|
6203
|
+
_context.prev = 19;
|
|
6204
|
+
_context.next = 22;
|
|
6205
|
+
return processTicket(hash);
|
|
6206
|
+
|
|
6207
|
+
case 22:
|
|
6208
|
+
_response = _context.sent;
|
|
6209
|
+
data = _get(_response, 'data.data.attributes');
|
|
6090
6210
|
age_required = _get(data, 'age_required', false);
|
|
6091
6211
|
names_required = _get(data, 'names_required', false);
|
|
6092
6212
|
event_id = _get(data, 'event_id');
|
|
6093
|
-
onProcessTicketSuccess(
|
|
6213
|
+
onProcessTicketSuccess(_response.data);
|
|
6094
6214
|
window.location.href = "/billing/billing-info/?age_required=" + age_required + "&names_required=" + names_required + "&event_id=" + event_id;
|
|
6095
|
-
_context.next =
|
|
6215
|
+
_context.next = 35;
|
|
6096
6216
|
break;
|
|
6097
6217
|
|
|
6098
|
-
case
|
|
6099
|
-
_context.prev =
|
|
6100
|
-
_context.
|
|
6101
|
-
setError(_context.
|
|
6102
|
-
onProcessTicketError(_context.
|
|
6218
|
+
case 31:
|
|
6219
|
+
_context.prev = 31;
|
|
6220
|
+
_context.t1 = _context["catch"](19);
|
|
6221
|
+
setError(_context.t1 == null ? void 0 : (_error$response2 = _context.t1.response) == null ? void 0 : (_error$response2$data = _error$response2.data) == null ? void 0 : _error$response2$data.message);
|
|
6222
|
+
onProcessTicketError(_context.t1.response);
|
|
6103
6223
|
|
|
6104
|
-
case
|
|
6105
|
-
_context.next =
|
|
6224
|
+
case 35:
|
|
6225
|
+
_context.next = 38;
|
|
6106
6226
|
break;
|
|
6107
6227
|
|
|
6108
|
-
case
|
|
6228
|
+
case 37:
|
|
6109
6229
|
window.location.href = '/';
|
|
6110
6230
|
|
|
6111
|
-
case
|
|
6231
|
+
case 38:
|
|
6112
6232
|
case "end":
|
|
6113
6233
|
return _context.stop();
|
|
6114
6234
|
}
|
|
6115
6235
|
}
|
|
6116
|
-
}, _callee, null, [[
|
|
6236
|
+
}, _callee, null, [[6, 14], [19, 31]]);
|
|
6117
6237
|
}))();
|
|
6118
6238
|
}, []);
|
|
6119
6239
|
return React__default.createElement("div", {
|
|
6120
6240
|
className: "ticket-resale-page"
|
|
6121
6241
|
}, React__default.createElement("div", {
|
|
6122
|
-
className: "error-block
|
|
6123
|
-
}, React__default.createElement("h3", null, error)));
|
|
6242
|
+
className: "" + (successMessage ? 'success-block' : 'error-block')
|
|
6243
|
+
}, React__default.createElement("h3", null, successMessage ? successMessage : error)));
|
|
6124
6244
|
};
|
|
6125
6245
|
|
|
6126
6246
|
var style$3 = {
|