tf-checkout-react 1.2.22 → 1.2.25

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.
@@ -1,5 +1,6 @@
1
1
  /// <reference types="react" />
2
2
  import './style.css';
3
+ import { IActionColumns, ITicketTypes } from './ticketsTable';
3
4
  interface OrderDetailsTypes {
4
5
  columns: Array<{
5
6
  label: string;
@@ -12,6 +13,12 @@ interface OrderDetailsTypes {
12
13
  onResaleTicketSuccess: () => void;
13
14
  onResaleTicketError: (err: any) => void;
14
15
  personalLinkIcon?: string;
16
+ displayColumnNameInRow?: boolean;
17
+ ticketsTableColumns?: Array<{
18
+ id?: string | number;
19
+ key: keyof ITicketTypes & keyof IActionColumns;
20
+ label: string | number | null | undefined;
21
+ }>;
15
22
  }
16
- export declare const OrderDetailsContainer: ({ columns, onGetOrdersSuccess, onGetOrdersError, onRemoveFromResaleSuccess, onRemoveFromResaleError, onResaleTicketSuccess, onResaleTicketError, onReturnButtonClick, personalLinkIcon, }: OrderDetailsTypes) => JSX.Element;
23
+ export declare const OrderDetailsContainer: ({ columns, onGetOrdersSuccess, onGetOrdersError, onRemoveFromResaleSuccess, onRemoveFromResaleError, onResaleTicketSuccess, onResaleTicketError, onReturnButtonClick, personalLinkIcon, displayColumnNameInRow, ticketsTableColumns, }: OrderDetailsTypes) => JSX.Element;
17
24
  export {};
@@ -18,11 +18,21 @@ export interface ITicketTypes {
18
18
  ticket_type_hash: string;
19
19
  ticket_type_is_active?: boolean;
20
20
  }
21
+ export interface IActionColumns {
22
+ download?: boolean;
23
+ sell_ticket?: boolean;
24
+ }
21
25
  interface TicketsTableTypes {
22
26
  tickets: ITicketTypes[];
27
+ columns: Array<{
28
+ id?: string | number;
29
+ key: keyof ITicketTypes & keyof IActionColumns;
30
+ label: string | number | null | undefined;
31
+ }>;
23
32
  handleSellTicket: (ticket: ITicketTypes) => void;
24
33
  handleRemoveFromResale: (ticket: ITicketTypes) => void;
25
34
  icon?: string;
35
+ displayColumnNameInRow?: boolean;
26
36
  }
27
- declare const TicketsTable: ({ tickets, handleSellTicket, handleRemoveFromResale, icon, }: TicketsTableTypes) => JSX.Element;
37
+ declare const TicketsTable: ({ tickets, columns, handleSellTicket, handleRemoveFromResale, icon, displayColumnNameInRow, }: TicketsTableTypes) => JSX.Element;
28
38
  export default TicketsTable;
@@ -5341,19 +5341,6 @@ var TicketsContainer = function TicketsContainer(_ref) {
5341
5341
  };
5342
5342
  }();
5343
5343
 
5344
- React.useEffect(function () {
5345
- try {
5346
- if (typeof window !== 'undefined') {
5347
- var userData = window.localStorage.getItem('user_data') ? JSON.parse(window.localStorage.getItem('user_data') || '{}') : {};
5348
-
5349
- if (userData.country === '') {
5350
- handleLogout();
5351
- window.open('https://www.ticketfairy.com/account/change_information?need_country=true');
5352
- }
5353
- }
5354
- } catch (e) {}
5355
- }, []);
5356
-
5357
5344
  var handleExternalLogin = function handleExternalLogin() {
5358
5345
  setIsLogged(true);
5359
5346
  };
@@ -5377,7 +5364,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
5377
5364
 
5378
5365
  function _getTicketsApi() {
5379
5366
  _getTicketsApi = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee3(isUpdateingCode, type) {
5380
- var previewKey, response, eventResponse, attributes, _event2;
5367
+ var _previewKey, response, eventResponse, attributes, _event2;
5381
5368
 
5382
5369
  return runtime_1.wrap(function _callee3$(_context3) {
5383
5370
  while (1) {
@@ -5385,14 +5372,14 @@ var TicketsContainer = function TicketsContainer(_ref) {
5385
5372
  case 0:
5386
5373
  _context3.prev = 0;
5387
5374
  isUpdateingCode ? setCodeIsLoading(true) : setIsLoading(true);
5388
- previewKey = getQueryVariable('pk') || undefined;
5375
+ _previewKey = getQueryVariable('pk') || undefined;
5389
5376
  _context3.next = 5;
5390
- return getTickets(eventId, code, previewKey);
5377
+ return getTickets(eventId, code, _previewKey);
5391
5378
 
5392
5379
  case 5:
5393
5380
  response = _context3.sent;
5394
5381
  _context3.next = 8;
5395
- return getEvent(eventId, previewKey);
5382
+ return getEvent(eventId, _previewKey);
5396
5383
 
5397
5384
  case 8:
5398
5385
  eventResponse = _context3.sent;
@@ -5625,6 +5612,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
5625
5612
  var externalUrl = event == null ? void 0 : event.redirectUrl;
5626
5613
  var eventSaleIsNotStarted = !(event != null && event.salesStarted) && (event == null ? void 0 : event.salesStart);
5627
5614
  var influencers = event != null && event.referralsEnabled ? event == null ? void 0 : event.referrals : [];
5615
+ var previewKey = getQueryVariable('pk') || undefined;
5628
5616
  return React__default.createElement(privateTheming.ThemeProvider, {
5629
5617
  theme: themeMui
5630
5618
  }, !isLoading && React__default.createElement(ReferralLogic, {
@@ -5667,7 +5655,7 @@ var TicketsContainer = function TicketsContainer(_ref) {
5667
5655
  setShowPromoInput: setShowPromoInput,
5668
5656
  setCode: setCode,
5669
5657
  updateTickets: updateTickets
5670
- }) : null, wrappedActionsSectionComponent, !wrappedActionsSectionComponent && !eventSaleIsNotStarted && isTicketOnSale && !(event != null && event.salesEnded) && !externalUrl && React__default.createElement(Button$1, {
5658
+ }) : null, wrappedActionsSectionComponent, !wrappedActionsSectionComponent && !eventSaleIsNotStarted && isTicketOnSale && !(event != null && event.salesEnded) && !externalUrl && !previewKey && React__default.createElement(Button$1, {
5671
5659
  "aria-hidden": true,
5672
5660
  className: "book-button \n " + (bookButtonIsDisabled ? 'disabled' : '') + " \n " + (isButtonScrollable ? 'is-scrollable' : '') + "\n " + (!isLoggedIn ? 'on-bottom' : '') + "\n ",
5673
5661
  onClick: handleGetTicketClick
@@ -5757,7 +5745,7 @@ var Row = function Row(_ref) {
5757
5745
  component: "th",
5758
5746
  scope: "row"
5759
5747
  }, React__default.createElement("button", {
5760
- type: 'button',
5748
+ type: "button",
5761
5749
  className: "order-details-button",
5762
5750
  onClick: function onClick() {
5763
5751
  return handleDetailsInfo(row.id);
@@ -6171,17 +6159,109 @@ var TicketResaleModal = function TicketResaleModal(_ref) {
6171
6159
  var TicketsTable = function TicketsTable(_ref) {
6172
6160
  var _ref$tickets = _ref.tickets,
6173
6161
  tickets = _ref$tickets === void 0 ? [] : _ref$tickets,
6162
+ _ref$columns = _ref.columns,
6163
+ columns = _ref$columns === void 0 ? [] : _ref$columns,
6174
6164
  _ref$handleSellTicket = _ref.handleSellTicket,
6175
6165
  handleSellTicket = _ref$handleSellTicket === void 0 ? _identity : _ref$handleSellTicket,
6176
6166
  _ref$handleRemoveFrom = _ref.handleRemoveFromResale,
6177
6167
  handleRemoveFromResale = _ref$handleRemoveFrom === void 0 ? _identity : _ref$handleRemoveFrom,
6178
6168
  _ref$icon = _ref.icon,
6179
- icon = _ref$icon === void 0 ? '' : _ref$icon;
6169
+ icon = _ref$icon === void 0 ? '' : _ref$icon,
6170
+ _ref$displayColumnNam = _ref.displayColumnNameInRow,
6171
+ displayColumnNameInRow = _ref$displayColumnNam === void 0 ? false : _ref$displayColumnNam;
6180
6172
 
6181
6173
  var _useState = React.useState(null),
6182
6174
  pdfError = _useState[0],
6183
6175
  setPdfError = _useState[1];
6184
6176
 
6177
+ var getRow = function getRow(ticket) {
6178
+ return _map(columns, function (column, columnIndex) {
6179
+ if (column.key === 'download') {
6180
+ if (ticket.pdf_link && ticket.status === 'Sold') return null;
6181
+ return React__default.createElement(TableCell, {
6182
+ key: columnIndex
6183
+ }, Boolean(icon) && React__default.createElement("img", {
6184
+ src: icon,
6185
+ alt: "nodata"
6186
+ }), React__default.createElement("span", {
6187
+ "aria-hidden": true,
6188
+ className: "action-button",
6189
+ onClick: function () {
6190
+ var _onClick = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
6191
+ var pdfDownloadError;
6192
+ return runtime_1.wrap(function _callee$(_context) {
6193
+ while (1) {
6194
+ switch (_context.prev = _context.next) {
6195
+ case 0:
6196
+ _context.prev = 0;
6197
+ _context.next = 3;
6198
+ return downloadPDF(ticket.pdf_link);
6199
+
6200
+ case 3:
6201
+ pdfDownloadError = _context.sent;
6202
+
6203
+ if (pdfDownloadError) {
6204
+ setPdfError(pdfDownloadError == null ? void 0 : pdfDownloadError.message);
6205
+ }
6206
+
6207
+ _context.next = 10;
6208
+ break;
6209
+
6210
+ case 7:
6211
+ _context.prev = 7;
6212
+ _context.t0 = _context["catch"](0);
6213
+
6214
+ if (_context.t0 && typeof _context.t0 === 'string') {
6215
+ setPdfError(_context.t0);
6216
+ }
6217
+
6218
+ case 10:
6219
+ case "end":
6220
+ return _context.stop();
6221
+ }
6222
+ }
6223
+ }, _callee, null, [[0, 7]]);
6224
+ }));
6225
+
6226
+ function onClick() {
6227
+ return _onClick.apply(this, arguments);
6228
+ }
6229
+
6230
+ return onClick;
6231
+ }()
6232
+ }, "Download"));
6233
+ }
6234
+
6235
+ if (column.key === 'sell_ticket') {
6236
+ return React__default.createElement(TableCell, {
6237
+ key: columnIndex
6238
+ }, ticket.is_sellable && React__default.createElement("span", {
6239
+ "aria-hidden": true,
6240
+ className: "action-button",
6241
+ onClick: function onClick() {
6242
+ return handleSellTicket(ticket);
6243
+ }
6244
+ }, "Sell Ticket"), ticket.is_on_sale && React__default.createElement("span", {
6245
+ "aria-hidden": true,
6246
+ className: "action-button",
6247
+ onClick: function onClick() {
6248
+ return handleRemoveFromResale(ticket);
6249
+ }
6250
+ }, "Remove from Resale"));
6251
+ }
6252
+
6253
+ return displayColumnNameInRow ? React__default.createElement(TableCell, {
6254
+ key: columnIndex
6255
+ }, React__default.createElement("div", {
6256
+ className: "cell-block"
6257
+ }, React__default.createElement("span", null, column.label), React__default.createElement("span", null, ticket[column.key]))) : React__default.createElement(TableCell, {
6258
+ key: columnIndex
6259
+ }, React__default.createElement("div", {
6260
+ className: "cell-block"
6261
+ }, React__default.createElement("span", null, ticket[column.key])));
6262
+ });
6263
+ };
6264
+
6185
6265
  return React__default.createElement("div", {
6186
6266
  className: "tickets-box"
6187
6267
  }, React__default.createElement(SnackbarAlert, {
@@ -6197,81 +6277,16 @@ var TicketsTable = function TicketsTable(_ref) {
6197
6277
  component: Paper
6198
6278
  }, React__default.createElement(Table, {
6199
6279
  "aria-label": "collapsible table"
6200
- }, React__default.createElement(TableHead, null, React__default.createElement(TableRow, null, React__default.createElement(TableCell, null), React__default.createElement(TableCell, null), React__default.createElement(TableCell, null), React__default.createElement(TableCell, null), React__default.createElement(TableCell, null), React__default.createElement(TableCell, null))), React__default.createElement(TableBody, null, tickets.map(function (ticket, index) {
6280
+ }, displayColumnNameInRow ? null : React__default.createElement(TableHead, null, React__default.createElement(TableRow, null, _map(columns, function (item) {
6281
+ return React__default.createElement(TableCell, {
6282
+ key: item.key
6283
+ }, item.label || '');
6284
+ }))), React__default.createElement(TableBody, null, tickets.map(function (ticket, index) {
6201
6285
  var _ticket$add_ons;
6202
6286
 
6203
6287
  return React__default.createElement(React.Fragment, {
6204
6288
  key: index
6205
- }, React__default.createElement(TableRow, null, React__default.createElement(TableCell, null, React__default.createElement("div", {
6206
- className: "cell-block"
6207
- }, React__default.createElement("span", null, "Ticket ID"), React__default.createElement("span", null, ticket.hash))), React__default.createElement(TableCell, null, React__default.createElement("div", {
6208
- className: "cell-block"
6209
- }, React__default.createElement("span", null, "Ticket Type"), React__default.createElement("span", null, ticket.ticket_type))), React__default.createElement(TableCell, null, React__default.createElement("div", {
6210
- className: "cell-block"
6211
- }, React__default.createElement("span", null, "Ticket Holder"), React__default.createElement("span", null, ticket.holder_name))), React__default.createElement(TableCell, null, React__default.createElement("div", {
6212
- className: "cell-block"
6213
- }, React__default.createElement("span", null, "Status"), React__default.createElement("span", null, ticket.status))), ticket.pdf_link && ticket.status !== "Sold" ? React__default.createElement(TableCell, null, Boolean(icon) && React__default.createElement("img", {
6214
- src: icon,
6215
- alt: "nodata"
6216
- }), React__default.createElement("span", {
6217
- "aria-hidden": true,
6218
- className: "action-button",
6219
- onClick: function () {
6220
- var _onClick = _asyncToGenerator( /*#__PURE__*/runtime_1.mark(function _callee() {
6221
- var pdfDownloadError;
6222
- return runtime_1.wrap(function _callee$(_context) {
6223
- while (1) {
6224
- switch (_context.prev = _context.next) {
6225
- case 0:
6226
- _context.prev = 0;
6227
- _context.next = 3;
6228
- return downloadPDF(ticket.pdf_link);
6229
-
6230
- case 3:
6231
- pdfDownloadError = _context.sent;
6232
-
6233
- if (pdfDownloadError) {
6234
- setPdfError(pdfDownloadError == null ? void 0 : pdfDownloadError.message);
6235
- }
6236
-
6237
- _context.next = 10;
6238
- break;
6239
-
6240
- case 7:
6241
- _context.prev = 7;
6242
- _context.t0 = _context["catch"](0);
6243
-
6244
- if (_context.t0 && typeof _context.t0 === 'string') {
6245
- setPdfError(_context.t0);
6246
- }
6247
-
6248
- case 10:
6249
- case "end":
6250
- return _context.stop();
6251
- }
6252
- }
6253
- }, _callee, null, [[0, 7]]);
6254
- }));
6255
-
6256
- function onClick() {
6257
- return _onClick.apply(this, arguments);
6258
- }
6259
-
6260
- return onClick;
6261
- }()
6262
- }, "Download")) : null, React__default.createElement(TableCell, null, ticket.is_sellable && React__default.createElement("span", {
6263
- "aria-hidden": true,
6264
- className: "action-button",
6265
- onClick: function onClick() {
6266
- return handleSellTicket(ticket);
6267
- }
6268
- }, "Sell Ticket"), ticket.is_on_sale && React__default.createElement("span", {
6269
- "aria-hidden": true,
6270
- className: "action-button",
6271
- onClick: function onClick() {
6272
- return handleRemoveFromResale(ticket);
6273
- }
6274
- }, "Remove from Resale"))), !!((_ticket$add_ons = ticket.add_ons) != null && _ticket$add_ons.length) && React__default.createElement(TableRow, null, React__default.createElement(TableCell, {
6289
+ }, React__default.createElement(TableRow, null, getRow(ticket)), !!((_ticket$add_ons = ticket.add_ons) != null && _ticket$add_ons.length) && React__default.createElement(TableRow, null, React__default.createElement(TableCell, {
6275
6290
  colSpan: 6
6276
6291
  }, React__default.createElement(Table, {
6277
6292
  className: "ticket-add-on-table"
@@ -6294,20 +6309,23 @@ var OrderDetailsContainer = function OrderDetailsContainer(_ref) {
6294
6309
  var _ref$columns = _ref.columns,
6295
6310
  columns = _ref$columns === void 0 ? [] : _ref$columns,
6296
6311
  _ref$onGetOrdersSucce = _ref.onGetOrdersSuccess,
6297
- onGetOrdersSuccess = _ref$onGetOrdersSucce === void 0 ? function () {} : _ref$onGetOrdersSucce,
6312
+ onGetOrdersSuccess = _ref$onGetOrdersSucce === void 0 ? _identity : _ref$onGetOrdersSucce,
6298
6313
  _ref$onGetOrdersError = _ref.onGetOrdersError,
6299
- onGetOrdersError = _ref$onGetOrdersError === void 0 ? function () {} : _ref$onGetOrdersError,
6314
+ onGetOrdersError = _ref$onGetOrdersError === void 0 ? _identity : _ref$onGetOrdersError,
6300
6315
  _ref$onRemoveFromResa = _ref.onRemoveFromResaleSuccess,
6301
- onRemoveFromResaleSuccess = _ref$onRemoveFromResa === void 0 ? function () {} : _ref$onRemoveFromResa,
6316
+ onRemoveFromResaleSuccess = _ref$onRemoveFromResa === void 0 ? _identity : _ref$onRemoveFromResa,
6302
6317
  _ref$onRemoveFromResa2 = _ref.onRemoveFromResaleError,
6303
- onRemoveFromResaleError = _ref$onRemoveFromResa2 === void 0 ? function () {} : _ref$onRemoveFromResa2,
6318
+ onRemoveFromResaleError = _ref$onRemoveFromResa2 === void 0 ? _identity : _ref$onRemoveFromResa2,
6304
6319
  _ref$onResaleTicketSu = _ref.onResaleTicketSuccess,
6305
- onResaleTicketSuccess = _ref$onResaleTicketSu === void 0 ? function () {} : _ref$onResaleTicketSu,
6320
+ onResaleTicketSuccess = _ref$onResaleTicketSu === void 0 ? _identity : _ref$onResaleTicketSu,
6306
6321
  _ref$onResaleTicketEr = _ref.onResaleTicketError,
6307
- onResaleTicketError = _ref$onResaleTicketEr === void 0 ? function () {} : _ref$onResaleTicketEr,
6322
+ onResaleTicketError = _ref$onResaleTicketEr === void 0 ? _identity : _ref$onResaleTicketEr,
6308
6323
  onReturnButtonClick = _ref.onReturnButtonClick,
6309
6324
  _ref$personalLinkIcon = _ref.personalLinkIcon,
6310
- personalLinkIcon = _ref$personalLinkIcon === void 0 ? '' : _ref$personalLinkIcon;
6325
+ personalLinkIcon = _ref$personalLinkIcon === void 0 ? '' : _ref$personalLinkIcon,
6326
+ _ref$displayColumnNam = _ref.displayColumnNameInRow,
6327
+ displayColumnNameInRow = _ref$displayColumnNam === void 0 ? false : _ref$displayColumnNam,
6328
+ ticketsTableColumns = _ref.ticketsTableColumns;
6311
6329
 
6312
6330
  var _useState = React.useState({}),
6313
6331
  data = _useState[0],
@@ -6594,7 +6612,7 @@ var OrderDetailsContainer = function OrderDetailsContainer(_ref) {
6594
6612
  }))), React__default.createElement(TableBody, null, data == null ? void 0 : (_data$items = data.items) == null ? void 0 : (_data$items$ticket_ty = _data$items.ticket_types) == null ? void 0 : _data$items$ticket_ty.map(function (ticket, index) {
6595
6613
  return React__default.createElement(TableRow, {
6596
6614
  key: index
6597
- }, React__default.createElement(TableCell, null, React__default.createElement("b", null, "Ticket Type: "), ticket.name), React__default.createElement(TableCell, null, ticket.currency + ticket.price), React__default.createElement(TableCell, null, ticket.quantity), React__default.createElement(TableCell, null, ticket.currency + ticket.total));
6615
+ }, React__default.createElement(TableCell, null, React__default.createElement("b", null, "Ticket Type:"), " ", ticket.name), React__default.createElement(TableCell, null, ticket.currency + ticket.price), React__default.createElement(TableCell, null, ticket.quantity), React__default.createElement(TableCell, null, ticket.currency + ticket.total));
6598
6616
  }), data == null ? void 0 : (_data$items2 = data.items) == null ? void 0 : (_data$items2$add_ons = _data$items2.add_ons) == null ? void 0 : _data$items2$add_ons.map(function (ticket, index) {
6599
6617
  return React__default.createElement(TableRow, {
6600
6618
  key: index
@@ -6603,8 +6621,28 @@ var OrderDetailsContainer = function OrderDetailsContainer(_ref) {
6603
6621
  className: "total-row"
6604
6622
  }, React__default.createElement(TableCell, null), React__default.createElement(TableCell, null), React__default.createElement(TableCell, null, "Total"), React__default.createElement(TableCell, null, getTotal(data))))))), React__default.createElement(TicketsTable, {
6605
6623
  tickets: data.tickets,
6624
+ columns: ticketsTableColumns != null && ticketsTableColumns.length ? ticketsTableColumns : [{
6625
+ key: 'hash',
6626
+ label: 'Ticket ID'
6627
+ }, {
6628
+ key: 'ticket_type',
6629
+ label: 'Ticket Type'
6630
+ }, {
6631
+ key: 'holder_name',
6632
+ label: 'Ticket Holder'
6633
+ }, {
6634
+ key: 'status',
6635
+ label: 'Status'
6636
+ }, {
6637
+ key: 'download',
6638
+ label: ''
6639
+ }, {
6640
+ key: 'sell_ticket',
6641
+ label: ''
6642
+ }],
6606
6643
  handleSellTicket: handleSellTicket,
6607
- handleRemoveFromResale: handleRemoveFromResale
6644
+ handleRemoveFromResale: handleRemoveFromResale,
6645
+ displayColumnNameInRow: displayColumnNameInRow
6608
6646
  }), React__default.createElement("div", {
6609
6647
  className: "return-button-container"
6610
6648
  }, React__default.createElement("button", {