summit-registration-lite 1.0.80 → 1.0.81

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/index.js DELETED
@@ -1,2115 +0,0 @@
1
- (function webpackUniversalModuleDefinition(root, factory) {
2
- if(typeof exports === 'object' && typeof module === 'object')
3
- module.exports = factory();
4
- else if(typeof define === 'function' && define.amd)
5
- define("summit-registration-lite", [], factory);
6
- else if(typeof exports === 'object')
7
- exports["summit-registration-lite"] = factory();
8
- else
9
- root["summit-registration-lite"] = factory();
10
- })(this, function() {
11
- return /******/ (function(modules) { // webpackBootstrap
12
- /******/ // The module cache
13
- /******/ var installedModules = {};
14
- /******/
15
- /******/ // The require function
16
- /******/ function __webpack_require__(moduleId) {
17
- /******/
18
- /******/ // Check if module is in cache
19
- /******/ if(installedModules[moduleId]) {
20
- /******/ return installedModules[moduleId].exports;
21
- /******/ }
22
- /******/ // Create a new module (and put it into the cache)
23
- /******/ var module = installedModules[moduleId] = {
24
- /******/ i: moduleId,
25
- /******/ l: false,
26
- /******/ exports: {}
27
- /******/ };
28
- /******/
29
- /******/ // Execute the module function
30
- /******/ modules[moduleId].call(module.exports, module, module.exports, __webpack_require__);
31
- /******/
32
- /******/ // Flag the module as loaded
33
- /******/ module.l = true;
34
- /******/
35
- /******/ // Return the exports of the module
36
- /******/ return module.exports;
37
- /******/ }
38
- /******/
39
- /******/
40
- /******/ // expose the modules object (__webpack_modules__)
41
- /******/ __webpack_require__.m = modules;
42
- /******/
43
- /******/ // expose the module cache
44
- /******/ __webpack_require__.c = installedModules;
45
- /******/
46
- /******/ // define getter function for harmony exports
47
- /******/ __webpack_require__.d = function(exports, name, getter) {
48
- /******/ if(!__webpack_require__.o(exports, name)) {
49
- /******/ Object.defineProperty(exports, name, { enumerable: true, get: getter });
50
- /******/ }
51
- /******/ };
52
- /******/
53
- /******/ // define __esModule on exports
54
- /******/ __webpack_require__.r = function(exports) {
55
- /******/ if(typeof Symbol !== 'undefined' && Symbol.toStringTag) {
56
- /******/ Object.defineProperty(exports, Symbol.toStringTag, { value: 'Module' });
57
- /******/ }
58
- /******/ Object.defineProperty(exports, '__esModule', { value: true });
59
- /******/ };
60
- /******/
61
- /******/ // create a fake namespace object
62
- /******/ // mode & 1: value is a module id, require it
63
- /******/ // mode & 2: merge all properties of value into the ns
64
- /******/ // mode & 4: return value when already ns object
65
- /******/ // mode & 8|1: behave like require
66
- /******/ __webpack_require__.t = function(value, mode) {
67
- /******/ if(mode & 1) value = __webpack_require__(value);
68
- /******/ if(mode & 8) return value;
69
- /******/ if((mode & 4) && typeof value === 'object' && value && value.__esModule) return value;
70
- /******/ var ns = Object.create(null);
71
- /******/ __webpack_require__.r(ns);
72
- /******/ Object.defineProperty(ns, 'default', { enumerable: true, value: value });
73
- /******/ if(mode & 2 && typeof value != 'string') for(var key in value) __webpack_require__.d(ns, key, function(key) { return value[key]; }.bind(null, key));
74
- /******/ return ns;
75
- /******/ };
76
- /******/
77
- /******/ // getDefaultExport function for compatibility with non-harmony modules
78
- /******/ __webpack_require__.n = function(module) {
79
- /******/ var getter = module && module.__esModule ?
80
- /******/ function getDefault() { return module['default']; } :
81
- /******/ function getModuleExports() { return module; };
82
- /******/ __webpack_require__.d(getter, 'a', getter);
83
- /******/ return getter;
84
- /******/ };
85
- /******/
86
- /******/ // Object.prototype.hasOwnProperty.call
87
- /******/ __webpack_require__.o = function(object, property) { return Object.prototype.hasOwnProperty.call(object, property); };
88
- /******/
89
- /******/ // __webpack_public_path__
90
- /******/ __webpack_require__.p = "/dist/";
91
- /******/
92
- /******/
93
- /******/ // Load entry module and return exports
94
- /******/ return __webpack_require__(__webpack_require__.s = 29);
95
- /******/ })
96
- /************************************************************************/
97
- /******/ ([
98
- /* 0 */
99
- /***/ (function(module, exports) {
100
-
101
- module.exports = require("react");
102
-
103
- /***/ }),
104
- /* 1 */
105
- /***/ (function(module, exports) {
106
-
107
- module.exports = require("openstack-uicore-foundation/lib/methods");
108
-
109
- /***/ }),
110
- /* 2 */
111
- /***/ (function(module, exports) {
112
-
113
- module.exports = require("react-spring");
114
-
115
- /***/ }),
116
- /* 3 */
117
- /***/ (function(module, exports, __webpack_require__) {
118
-
119
- // extracted by mini-css-extract-plugin
120
- module.exports = {"button":"button___2t2wu","outerWrapper":"outerWrapper___1mTpT","innerWrapper":"innerWrapper___3THAF","registration":"registration___3PmSf","actions":"actions___I9WTO"};
121
-
122
- /***/ }),
123
- /* 4 */
124
- /***/ (function(module, exports, __webpack_require__) {
125
-
126
- // extracted by mini-css-extract-plugin
127
- module.exports = {"passwordlessWrapper":"passwordlessWrapper___1p18R","innerWrapper":"innerWrapper___4MdlE","digits":"digits___F0Kcb","codeInput":"codeInput___1xtWR","error":"error___1v7Eo","verify":"verify___1b49k","button":"button___5OMnr","link":"link___3Jnwz","resend":"resend___35Xcu"};
128
-
129
- /***/ }),
130
- /* 5 */
131
- /***/ (function(module, exports, __webpack_require__) {
132
-
133
- // extracted by mini-css-extract-plugin
134
- module.exports = {"title":"title___3SYkl","summary":"summary___38fgb","crossOut":"crossOut___2q3QH","discount":"discount___sJ1Bg","promo":"promo___11cRU","dropdown":"dropdown___2F1ra","inPersonDisclaimer":"inPersonDisclaimer___47veY"};
135
-
136
- /***/ }),
137
- /* 6 */
138
- /***/ (function(module, exports, __webpack_require__) {
139
-
140
- // extracted by mini-css-extract-plugin
141
- module.exports = {"button":"button___2ecjs","wrapper":"wrapper___3h7RA","circle":"circle___2jWZb","complete":"complete___3RjCF","actions":"actions___2ru3L","footer":"footer___KBj_E"};
142
-
143
- /***/ }),
144
- /* 7 */
145
- /***/ (function(module, exports) {
146
-
147
- module.exports = require("@stripe/react-stripe-js");
148
-
149
- /***/ }),
150
- /* 8 */
151
- /***/ (function(module, exports) {
152
-
153
- module.exports = require("react-use");
154
-
155
- /***/ }),
156
- /* 9 */
157
- /***/ (function(module, exports, __webpack_require__) {
158
-
159
- // extracted by mini-css-extract-plugin
160
- module.exports = {"title":"title___3ZHGA","form":"form___3v5vW","readOnly":"readOnly___GTMgw","companies":"companies___EjHEl"};
161
-
162
- /***/ }),
163
- /* 10 */
164
- /***/ (function(module, exports) {
165
-
166
- module.exports = require("react-redux");
167
-
168
- /***/ }),
169
- /* 11 */
170
- /***/ (function(module, exports) {
171
-
172
- module.exports = require("openstack-uicore-foundation/lib/components");
173
-
174
- /***/ }),
175
- /* 12 */
176
- /***/ (function(module, exports, __webpack_require__) {
177
-
178
- // extracted by mini-css-extract-plugin
179
- module.exports = {"outerWrapper":"outerWrapper___Ctsl4","innerWrapper":"innerWrapper___HgUWp","title":"title___2V7rZ"};
180
-
181
- /***/ }),
182
- /* 13 */
183
- /***/ (function(module, exports, __webpack_require__) {
184
-
185
- // extracted by mini-css-extract-plugin
186
- module.exports = {"loginWrapper":"loginWrapper___29UY5","innerWrapper":"innerWrapper___3ls8s","button":"button___XnwyV","loginCode":"loginCode___1tdoI","input":"input___2qKqP"};
187
-
188
- /***/ }),
189
- /* 14 */
190
- /***/ (function(module, exports, __webpack_require__) {
191
-
192
- // extracted by mini-css-extract-plugin
193
- module.exports = {"form":"form___29UFw","fieldWrapper":"fieldWrapper___16TrJ"};
194
-
195
- /***/ }),
196
- /* 15 */
197
- /***/ (function(module, exports) {
198
-
199
- module.exports = require("prop-types");
200
-
201
- /***/ }),
202
- /* 16 */
203
- /***/ (function(module, exports, __webpack_require__) {
204
-
205
- // extracted by mini-css-extract-plugin
206
- module.exports = {"wrapper":"wrapper___3G9ab","circle":"circle___2EnTU","complete":"complete___P-4ft"};
207
-
208
- /***/ }),
209
- /* 17 */
210
- /***/ (function(module, exports) {
211
-
212
- module.exports = require("sweetalert2");
213
-
214
- /***/ }),
215
- /* 18 */
216
- /***/ (function(module, exports) {
217
-
218
- module.exports = require("redux");
219
-
220
- /***/ }),
221
- /* 19 */
222
- /***/ (function(module, exports, __webpack_require__) {
223
-
224
- // extracted by mini-css-extract-plugin
225
- module.exports = {"title":"title___3msFT","form":"form___1imhA","fieldWrapper":"fieldWrapper___26upm"};
226
-
227
- /***/ }),
228
- /* 20 */
229
- /***/ (function(module, exports, __webpack_require__) {
230
-
231
- // extracted by mini-css-extract-plugin
232
- module.exports = {"placeholder":"placeholder___1AQcO","inPersonDisclaimer":"inPersonDisclaimer___qehRb","dropdown":"dropdown___2BSL8"};
233
-
234
- /***/ }),
235
- /* 21 */
236
- /***/ (function(module, exports) {
237
-
238
- module.exports = require("redux-persist");
239
-
240
- /***/ }),
241
- /* 22 */
242
- /***/ (function(module, exports) {
243
-
244
- module.exports = require("redux-thunk");
245
-
246
- /***/ }),
247
- /* 23 */
248
- /***/ (function(module, exports) {
249
-
250
- module.exports = require("redux-persist/es/storage");
251
-
252
- /***/ }),
253
- /* 24 */
254
- /***/ (function(module, exports) {
255
-
256
- module.exports = require("redux-persist/integration/react");
257
-
258
- /***/ }),
259
- /* 25 */
260
- /***/ (function(module, exports) {
261
-
262
- module.exports = require("@stripe/stripe-js");
263
-
264
- /***/ }),
265
- /* 26 */
266
- /***/ (function(module, exports) {
267
-
268
- module.exports = require("react-hook-form");
269
-
270
- /***/ }),
271
- /* 27 */
272
- /***/ (function(module, exports) {
273
-
274
- module.exports = require("react-otp-input");
275
-
276
- /***/ }),
277
- /* 28 */
278
- /***/ (function(module, exports, __webpack_require__) {
279
-
280
- // extracted by mini-css-extract-plugin
281
-
282
- /***/ }),
283
- /* 29 */
284
- /***/ (function(module, __webpack_exports__, __webpack_require__) {
285
-
286
- "use strict";
287
- // ESM COMPAT FLAG
288
- __webpack_require__.r(__webpack_exports__);
289
-
290
- // EXTERNAL MODULE: external "react"
291
- var external_react_ = __webpack_require__(0);
292
- var external_react_default = /*#__PURE__*/__webpack_require__.n(external_react_);
293
-
294
- // EXTERNAL MODULE: external "react-redux"
295
- var external_react_redux_ = __webpack_require__(10);
296
-
297
- // EXTERNAL MODULE: external "redux"
298
- var external_redux_ = __webpack_require__(18);
299
-
300
- // EXTERNAL MODULE: external "redux-thunk"
301
- var external_redux_thunk_ = __webpack_require__(22);
302
- var external_redux_thunk_default = /*#__PURE__*/__webpack_require__.n(external_redux_thunk_);
303
-
304
- // EXTERNAL MODULE: external "redux-persist"
305
- var external_redux_persist_ = __webpack_require__(21);
306
-
307
- // EXTERNAL MODULE: external "redux-persist/es/storage"
308
- var storage_ = __webpack_require__(23);
309
- var storage_default = /*#__PURE__*/__webpack_require__.n(storage_);
310
-
311
- // EXTERNAL MODULE: external "openstack-uicore-foundation/lib/methods"
312
- var methods_ = __webpack_require__(1);
313
-
314
- // EXTERNAL MODULE: external "sweetalert2"
315
- var external_sweetalert2_ = __webpack_require__(17);
316
- var external_sweetalert2_default = /*#__PURE__*/__webpack_require__.n(external_sweetalert2_);
317
-
318
- // CONCATENATED MODULE: ./src/actions.js
319
- function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
320
-
321
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ownKeys(Object(source), true).forEach(function (key) { _defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
322
-
323
- function _defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
324
-
325
- /**
326
- * Copyright 2020 OpenStack Foundation
327
- * Licensed under the Apache License, Version 2.0 (the "License");
328
- * you may not use this file except in compliance with the License.
329
- * You may obtain a copy of the License at
330
- * http://www.apache.org/licenses/LICENSE-2.0
331
- * Unless required by applicable law or agreed to in writing, software
332
- * distributed under the License is distributed on an "AS IS" BASIS,
333
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
334
- * See the License for the specific language governing permissions and
335
- * limitations under the License.
336
- **/
337
-
338
-
339
-
340
- const START_WIDGET_LOADING = 'START_WIDGET_LOADING';
341
- const STOP_WIDGET_LOADING = 'STOP_WIDGET_LOADING';
342
- const LOAD_INITIAL_VARS = 'LOAD_INITIAL_VARS';
343
- const CHANGE_STEP = 'CHANGE_STEP';
344
- const GET_TICKET_TYPES = 'GET_TICKET_TYPES';
345
- const GET_TAX_TYPES = 'GET_TAX_TYPES';
346
- const CREATE_RESERVATION = 'CREATE_RESERVATION';
347
- const CREATE_RESERVATION_SUCCESS = 'CREATE_RESERVATION_SUCCESS';
348
- const CREATE_RESERVATION_ERROR = 'CREATE_RESERVATION_ERROR';
349
- const DELETE_RESERVATION = 'DELETE_RESERVATION';
350
- const DELETE_RESERVATION_SUCCESS = 'DELETE_RESERVATION_SUCCESS';
351
- const DELETE_RESERVATION_ERROR = 'DELETE_RESERVATION_ERROR';
352
- const PAY_RESERVATION = 'PAY_RESERVATION';
353
- const CLEAR_RESERVATION = 'CLEAR_RESERVATION';
354
- const SET_PASSWORDLESS_LOGIN = 'SET_PASSWORDLESS_LOGIN';
355
- const SET_PASSWORDLESS_LENGTH = 'SET_PASSWORDLESS_LENGTH';
356
- const SET_PASSWORDLESS_ERROR = 'SET_PASSWORDLESS_ERROR';
357
- const GO_TO_LOGIN = 'GO_TO_LOGIN';
358
- const startWidgetLoading = Object(methods_["createAction"])(START_WIDGET_LOADING);
359
- const stopWidgetLoading = Object(methods_["createAction"])(STOP_WIDGET_LOADING);
360
- const actions_loadSession = settings => dispatch => {
361
- dispatch(Object(methods_["createAction"])(LOAD_INITIAL_VARS)(settings));
362
- };
363
- /*********************************************************************************/
364
-
365
- /* TICKETS */
366
-
367
- /*********************************************************************************/
368
- // api/v1/summits/{id}/ticket-types
369
- // api/v1/summits/{id}/tax-types
370
-
371
- const actions_getTicketTypes = summitId => async (dispatch, getState, {
372
- apiBaseUrl,
373
- getAccessToken
374
- }) => {
375
- try {
376
- const accessToken = await getAccessToken();
377
- let params = {
378
- expand: 'badge_type,badge_type.access_levels,badge_type.badge_features',
379
- access_token: accessToken
380
- };
381
- dispatch(startWidgetLoading());
382
- return Object(methods_["getRequest"])(null, Object(methods_["createAction"])(GET_TICKET_TYPES), `${apiBaseUrl}/api/v1/summits/${summitId}/ticket-types`, methods_["authErrorHandler"])(params)(dispatch).then(() => {
383
- dispatch(stopWidgetLoading());
384
- });
385
- } catch (e) {
386
- return Promise.reject();
387
- }
388
- };
389
- const actions_getTaxesTypes = summitId => async (dispatch, getState, {
390
- apiBaseUrl,
391
- getAccessToken
392
- }) => {
393
- try {
394
- const accessToken = await getAccessToken();
395
- let params = {
396
- access_token: accessToken
397
- };
398
- dispatch(startWidgetLoading());
399
- return Object(methods_["getRequest"])(null, Object(methods_["createAction"])(GET_TAX_TYPES), `${apiBaseUrl}/api/v1/summits/${summitId}/tax-types`, methods_["authErrorHandler"])(params)(dispatch).then(() => {
400
- dispatch(stopWidgetLoading());
401
- });
402
- } catch (e) {
403
- return Promise.reject();
404
- }
405
- };
406
- const actions_reserveTicket = (personalInformation, ticket) => async (dispatch, getState, {
407
- apiBaseUrl,
408
- getAccessToken
409
- }) => {
410
- const {
411
- registrationLiteState: {
412
- settings: {
413
- summitId
414
- }
415
- }
416
- } = getState();
417
- let {
418
- firstName,
419
- lastName,
420
- email,
421
- company,
422
- promoCode
423
- } = personalInformation;
424
- dispatch(startWidgetLoading());
425
- const access_token = await getAccessToken();
426
- let params = {
427
- access_token,
428
- expand: 'tickets,tickets.owner,tickets.ticket_type,tickets.ticket_type.taxes'
429
- };
430
- let normalizedEntity = normalizeReservation({
431
- owner_email: email,
432
- owner_first_name: firstName,
433
- owner_last_name: lastName,
434
- owner_company: company,
435
- tickets: [{
436
- type_id: ticket.id,
437
- promo_code: promoCode || null,
438
- attendee_first_name: firstName,
439
- attendee_last_name: lastName,
440
- attendee_email: email
441
- }]
442
- });
443
- return Object(methods_["postRequest"])(Object(methods_["createAction"])(CREATE_RESERVATION), Object(methods_["createAction"])(CREATE_RESERVATION_SUCCESS), `${apiBaseUrl}/api/v1/summits/${summitId}/orders/reserve`, normalizedEntity, methods_["authErrorHandler"] // entity
444
- )(params)(dispatch).then(payload => {
445
- dispatch(stopWidgetLoading());
446
- payload.response.promo_code = promoCode || null;
447
-
448
- if (!payload.response.payment_gateway_client_token) {
449
- dispatch(actions_payTicket(null, null, getAccessToken));
450
- return payload;
451
- } else {
452
- dispatch(actions_changeStep(2));
453
- return payload;
454
- }
455
- }).catch(e => {
456
- dispatch(Object(methods_["createAction"])(CREATE_RESERVATION_ERROR)(e));
457
- dispatch(stopWidgetLoading());
458
- return e;
459
- });
460
- };
461
- const actions_removeReservedTicket = () => async (dispatch, getState, {
462
- apiBaseUrl,
463
- getAccessToken
464
- }) => {
465
- let {
466
- registrationLiteState: {
467
- settings: {
468
- summitId
469
- },
470
- reservation: {
471
- hash
472
- }
473
- }
474
- } = getState();
475
- const access_token = await getAccessToken();
476
- let params = {
477
- access_token,
478
- expand: 'tickets,tickets.owner'
479
- };
480
- dispatch(startWidgetLoading());
481
- return Object(methods_["deleteRequest"])(Object(methods_["createAction"])(DELETE_RESERVATION), Object(methods_["createAction"])(DELETE_RESERVATION_SUCCESS), `${apiBaseUrl}/api/v1/summits/${summitId}/orders/${hash}`, {}, methods_["authErrorHandler"] // entity
482
- )(params)(dispatch).then(payload => {
483
- dispatch(stopWidgetLoading());
484
- dispatch(actions_changeStep(1));
485
- return payload;
486
- }).catch(e => {
487
- dispatch(Object(methods_["createAction"])(DELETE_RESERVATION_ERROR)(e));
488
- dispatch(actions_changeStep(1));
489
- dispatch(stopWidgetLoading());
490
- return e;
491
- });
492
- };
493
- const actions_payTicket = (token = null, stripe = null, zipCode = null) => async (dispatch, getState, {
494
- apiBaseUrl,
495
- getAccessToken
496
- }) => {
497
- let {
498
- registrationLiteState: {
499
- settings: {
500
- summitId,
501
- userProfile
502
- },
503
- reservation
504
- }
505
- } = getState();
506
- const access_token = await getAccessToken();
507
- let params = {
508
- access_token,
509
- expand: 'tickets,' + 'tickets.owner,' + 'tickets.owner.extra_questions,' + 'tickets.badge,' + 'tickets.badge.type,' + 'tickets.badge.type.access_levels,' + 'tickets.badge.type.features,' + 'tickets.ticket_type,' + 'tickets.ticket_type.taxes'
510
- };
511
- let normalizedEntity = {
512
- billing_address_1: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.address1) || '',
513
- billing_address_2: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.address2) || '',
514
- billing_address_zip_code: zipCode,
515
- billing_address_city: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.locality) || '',
516
- billing_address_state: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.region) || '',
517
- billing_address_country: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.country) || ''
518
- };
519
- dispatch(startWidgetLoading());
520
-
521
- if (reservation.payment_gateway_client_token) {
522
- const {
523
- id
524
- } = token;
525
- stripe.confirmCardPayment(reservation.payment_gateway_client_token, {
526
- payment_method: {
527
- card: {
528
- token: id
529
- }
530
- }
531
- }).then(result => {
532
- if (result.error) {
533
- // Reserve error.message in your UI.
534
- external_sweetalert2_default.a.fire(result.error.message, "Please retry purchase.", "warning");
535
- dispatch(actions_changeStep(1));
536
- dispatch(actions_removeReservedTicket());
537
- dispatch(stopWidgetLoading());
538
- } else {
539
- return Object(methods_["putRequest"])(null, Object(methods_["createAction"])(PAY_RESERVATION), `${apiBaseUrl}/api/v1/summits/${summitId}/orders/${reservation.hash}/checkout`, normalizedEntity, methods_["authErrorHandler"] // entity
540
- )(params)(dispatch).then(payload => {
541
- dispatch(stopWidgetLoading());
542
- dispatch(Object(methods_["createAction"])(CLEAR_RESERVATION)({}));
543
- dispatch(actions_changeStep(3));
544
- return payload;
545
- }).catch(e => {
546
- dispatch(stopWidgetLoading());
547
- return e;
548
- }); // The payment has succeeded. Display a success message.
549
- }
550
- }).catch(e => {
551
- dispatch(actions_removeReservedTicket());
552
- dispatch(actions_changeStep(1));
553
- dispatch(stopWidgetLoading());
554
- return e;
555
- });
556
- } else {
557
- // FREE TICKET
558
- return Object(methods_["putRequest"])(null, Object(methods_["createAction"])(PAY_RESERVATION), `${apiBaseUrl}/api/v1/summits/${summitId}/orders/${reservation.hash}/checkout`, normalizedEntity, methods_["authErrorHandler"] // entity
559
- )(params)(dispatch).then(payload => {
560
- dispatch(stopWidgetLoading());
561
- dispatch(Object(methods_["createAction"])(CLEAR_RESERVATION)({}));
562
- dispatch(actions_changeStep(3));
563
- return payload;
564
- }).catch(e => {
565
- dispatch(actions_removeReservedTicket());
566
- dispatch(actions_changeStep(1));
567
- dispatch(stopWidgetLoading());
568
- return e;
569
- }); // The payment has succeeded. Display a success message.
570
- }
571
- };
572
- const actions_changeStep = step => (dispatch, getState) => {
573
- dispatch(startWidgetLoading());
574
- dispatch(Object(methods_["createAction"])(CHANGE_STEP)(step));
575
- dispatch(stopWidgetLoading());
576
- };
577
- const actions_goToLogin = () => (dispatch, getState) => {
578
- dispatch(Object(methods_["createAction"])(GO_TO_LOGIN)());
579
- };
580
- const actions_getLoginCode = (email, getPasswordlessCode) => async (dispatch, getState) => {
581
- dispatch(Object(methods_["createAction"])(SET_PASSWORDLESS_LOGIN)(email));
582
- return new Promise((resolve, reject) => {
583
- getPasswordlessCode(email).then(res => {
584
- dispatch(Object(methods_["createAction"])(SET_PASSWORDLESS_LENGTH)(res.response));
585
- resolve(res);
586
- }, err => {
587
- reject(err);
588
- });
589
- });
590
- };
591
- const actions_passwordlessLogin = (code, loginWithCode) => async (dispatch, getState) => {
592
- const {
593
- registrationLiteState: {
594
- passwordless: {
595
- email
596
- }
597
- }
598
- } = getState();
599
- return new Promise((resolve, reject) => {
600
- loginWithCode(code, email).then(res => {
601
- if (res) {
602
- dispatch(Object(methods_["createAction"])(SET_PASSWORDLESS_ERROR)());
603
- }
604
-
605
- resolve(res);
606
- }, err => {
607
- reject(err);
608
- });
609
- });
610
- };
611
- const isInPersonTicketType = ticketType => {
612
- /** check is the current order has or not IN_PERSON tickets types **/
613
- if (ticketType.hasOwnProperty("badge_type")) {
614
- let badgeType = ticketType.badge_type;
615
- return badgeType.access_levels.some(al => {
616
- return al.name == 'IN_PERSON';
617
- });
618
- }
619
-
620
- return false;
621
- };
622
-
623
- const normalizeReservation = entity => {
624
- const normalizedEntity = _objectSpread({}, entity);
625
-
626
- if (!entity.owner_company.id) {
627
- normalizedEntity['owner_company'] = entity.owner_company.name;
628
- } else {
629
- delete normalizedEntity['owner_company'];
630
- normalizedEntity['owner_company_id'] = entity.owner_company.id;
631
- }
632
-
633
- return normalizedEntity;
634
- };
635
- // CONCATENATED MODULE: ./src/reducer.js
636
- function reducer_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
637
-
638
- function reducer_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { reducer_ownKeys(Object(source), true).forEach(function (key) { reducer_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { reducer_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
639
-
640
- function reducer_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
641
-
642
- /**
643
- * Copyright 2020 OpenStack Foundation
644
- * Licensed under the Apache License, Version 2.0 (the "License");
645
- * you may not use this file except in compliance with the License.
646
- * You may obtain a copy of the License at
647
- * http://www.apache.org/licenses/LICENSE-2.0
648
- * Unless required by applicable law or agreed to in writing, software
649
- * distributed under the License is distributed on an "AS IS" BASIS,
650
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
651
- * See the License for the specific language governing permissions and
652
- * limitations under the License.
653
- **/
654
-
655
- const DEFAULT_STATE = {
656
- reservation: null,
657
- checkout: null,
658
- step: 0,
659
- widgetLoading: false,
660
- passwordless: {
661
- email: null,
662
- otp_length: 0,
663
- code_sent: false,
664
- error: false
665
- },
666
- ticketTypes: [],
667
- taxTypes: [],
668
- settings: {
669
- apiBaseUrl: null,
670
- summitId: null,
671
- marketingData: null,
672
- userProfile: null
673
- }
674
- };
675
-
676
- const RegistrationLiteReducer = (state = DEFAULT_STATE, action) => {
677
- const {
678
- type,
679
- payload
680
- } = action;
681
-
682
- switch (type) {
683
- case START_WIDGET_LOADING:
684
- {
685
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
686
- widgetLoading: true
687
- });
688
- }
689
-
690
- case STOP_WIDGET_LOADING:
691
- {
692
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
693
- widgetLoading: false
694
- });
695
- }
696
-
697
- case LOAD_INITIAL_VARS:
698
- const {
699
- marketingData,
700
- summitData,
701
- apiBaseUrl,
702
- profileData
703
- } = payload;
704
- Object.keys(marketingData).forEach(setting => {
705
- if (getComputedStyle(document.documentElement).getPropertyValue(`--${setting}`)) {
706
- document.documentElement.style.setProperty(`--${setting}`, marketingData[setting]);
707
- document.documentElement.style.setProperty(`--${setting}50`, `${marketingData[setting]}50`);
708
- }
709
- });
710
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
711
- reservation: null,
712
- checkout: null,
713
- passwordless: reducer_objectSpread({}, DEFAULT_STATE.passwordless),
714
- settings: reducer_objectSpread(reducer_objectSpread({}, DEFAULT_STATE.settings), {}, {
715
- marketingData: marketingData,
716
- summitId: summitData.id,
717
- userProfile: profileData,
718
- apiBaseUrl: apiBaseUrl
719
- })
720
- });
721
-
722
- case CHANGE_STEP:
723
- {
724
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
725
- step: payload
726
- });
727
- }
728
-
729
- case GET_TICKET_TYPES:
730
- {
731
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
732
- ticketTypes: payload.response.data
733
- });
734
- }
735
-
736
- case GET_TAX_TYPES:
737
- {
738
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
739
- taxTypes: payload.response.data
740
- });
741
- }
742
-
743
- case GO_TO_LOGIN:
744
- {
745
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
746
- passwordless: reducer_objectSpread(reducer_objectSpread({}, state.passwordless), {}, {
747
- code_sent: false,
748
- error: false
749
- })
750
- });
751
- }
752
-
753
- case SET_PASSWORDLESS_LOGIN:
754
- {
755
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
756
- passwordless: reducer_objectSpread(reducer_objectSpread({}, state.passwordless), {}, {
757
- email: payload,
758
- error: false
759
- })
760
- });
761
- }
762
-
763
- case SET_PASSWORDLESS_LENGTH:
764
- {
765
- const {
766
- otp_length
767
- } = payload;
768
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
769
- passwordless: reducer_objectSpread(reducer_objectSpread({}, state.passwordless), {}, {
770
- otp_length,
771
- code_sent: true,
772
- error: false
773
- })
774
- });
775
- }
776
-
777
- case SET_PASSWORDLESS_ERROR:
778
- {
779
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
780
- passwordless: reducer_objectSpread(reducer_objectSpread({}, state.passwordless), {}, {
781
- error: true
782
- })
783
- });
784
- }
785
-
786
- case CREATE_RESERVATION_SUCCESS:
787
- {
788
- const reservation = payload.response;
789
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
790
- reservation
791
- });
792
- }
793
-
794
- case DELETE_RESERVATION_SUCCESS:
795
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
796
- reservation: null
797
- });
798
-
799
- case CLEAR_RESERVATION:
800
- {
801
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
802
- reservation: null
803
- });
804
- }
805
-
806
- case PAY_RESERVATION:
807
- {
808
- return reducer_objectSpread(reducer_objectSpread({}, state), {}, {
809
- checkout: payload.response,
810
- reservation: null,
811
- userProfile: null
812
- });
813
- }
814
-
815
- default:
816
- {
817
- return state;
818
- }
819
- }
820
- };
821
-
822
- /* harmony default export */ var reducer = (RegistrationLiteReducer);
823
- // CONCATENATED MODULE: ./src/store.js
824
- /**
825
- * Copyright 2019
826
- * Licensed under the Apache License, Version 2.0 (the "License");
827
- * you may not use this file except in compliance with the License.
828
- * You may obtain a copy of the License at
829
- * http://www.apache.org/licenses/LICENSE-2.0
830
- * Unless required by applicable law or agreed to in writing, software
831
- * distributed under the License is distributed on an "AS IS" BASIS,
832
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
833
- * See the License for the specific language governing permissions and
834
- * limitations under the License.
835
- **/
836
-
837
-
838
-
839
- // default: localStorage if web, AsyncStorage if react-native
840
-
841
-
842
- let store, persistor;
843
- const composeEnhancers = window.__REDUX_DEVTOOLS_EXTENSION_COMPOSE__ || external_redux_["compose"];
844
- const getStore = (clientId, apiBaseUrl, getAccessToken) => {
845
- if (store) return store;
846
- const config = {
847
- key: `root_registration_lite_${clientId}`,
848
- storage: storage_default.a,
849
- blacklist: ['ticketTypes', 'taxTypes'] // do not persist these keys
850
-
851
- };
852
- const reducers = Object(external_redux_persist_["persistCombineReducers"])(config, {
853
- registrationLiteState: reducer
854
- });
855
- store = Object(external_redux_["createStore"])(reducers, composeEnhancers(Object(external_redux_["applyMiddleware"])(external_redux_thunk_default.a.withExtraArgument({
856
- apiBaseUrl: apiBaseUrl,
857
- getAccessToken: getAccessToken
858
- }))));
859
- return store;
860
- };
861
- const getPersistor = () => {
862
- if (persistor) return persistor;
863
-
864
- const onRehydrateComplete = () => {};
865
-
866
- persistor = Object(external_redux_persist_["persistStore"])(store, null, onRehydrateComplete);
867
- return persistor;
868
- };
869
- // EXTERNAL MODULE: external "redux-persist/integration/react"
870
- var react_ = __webpack_require__(24);
871
-
872
- // EXTERNAL MODULE: external "react-spring"
873
- var external_react_spring_ = __webpack_require__(2);
874
-
875
- // EXTERNAL MODULE: external "react-use"
876
- var external_react_use_ = __webpack_require__(8);
877
-
878
- // EXTERNAL MODULE: external "openstack-uicore-foundation/lib/components"
879
- var components_ = __webpack_require__(11);
880
-
881
- // EXTERNAL MODULE: external "@stripe/stripe-js"
882
- var stripe_js_ = __webpack_require__(25);
883
-
884
- // EXTERNAL MODULE: ./src/styles/general.module.scss
885
- var general_module = __webpack_require__(12);
886
- var general_module_default = /*#__PURE__*/__webpack_require__.n(general_module);
887
-
888
- // EXTERNAL MODULE: ./src/styles/styles.scss
889
- var styles = __webpack_require__(28);
890
-
891
- // EXTERNAL MODULE: ./src/components/login/index.module.scss
892
- var index_module = __webpack_require__(13);
893
- var index_module_default = /*#__PURE__*/__webpack_require__.n(index_module);
894
-
895
- // CONCATENATED MODULE: ./src/components/login/index.js
896
- /**
897
- * Copyright 2020 OpenStack Foundation
898
- * Licensed under the Apache License, Version 2.0 (the "License");
899
- * you may not use this file except in compliance with the License.
900
- * You may obtain a copy of the License at
901
- * http://www.apache.org/licenses/LICENSE-2.0
902
- * Unless required by applicable law or agreed to in writing, software
903
- * distributed under the License is distributed on an "AS IS" BASIS,
904
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
905
- * See the License for the specific language governing permissions and
906
- * limitations under the License.
907
- **/
908
-
909
-
910
-
911
- const LoginComponent = ({
912
- options,
913
- login,
914
- getLoginCode,
915
- getPasswordlessCode
916
- }) => {
917
- const [email, setEmail] = Object(external_react_["useState"])('');
918
- const [emailError, setEmailError] = Object(external_react_["useState"])();
919
-
920
- const isValidEmail = email => {
921
- const re = /^(([^<>()[\]\\.,;:\s@"]+(\.[^<>()[\]\\.,;:\s@"]+)*)|(".+"))@((\[[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\.[0-9]{1,3}\])|(([a-zA-Z\-0-9]+\.)+[a-zA-Z]{2,}))$/;
922
- return re.test(String(email).toLowerCase());
923
- };
924
-
925
- const loginCode = () => {
926
- let isValid = isValidEmail(email);
927
- setEmailError(!isValid);
928
-
929
- if (isValid) {
930
- getLoginCode(email, getPasswordlessCode);
931
- }
932
- };
933
-
934
- return /*#__PURE__*/external_react_default.a.createElement("div", {
935
- className: `${index_module_default.a.loginWrapper} step-wrapper`
936
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
937
- className: `${index_module_default.a.innerWrapper}`
938
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
939
- className: index_module_default.a.loginCode
940
- }, "Enter your email address to login or signup:", /*#__PURE__*/external_react_default.a.createElement("div", {
941
- className: index_module_default.a.input
942
- }, /*#__PURE__*/external_react_default.a.createElement("input", {
943
- placeholder: "youremail@example.com",
944
- value: email,
945
- onChange: e => setEmail(e.target.value),
946
- onKeyPress: ev => ev.key === 'Enter' ? loginCode() : null,
947
- "data-testid": "email-input"
948
- }), /*#__PURE__*/external_react_default.a.createElement("button", {
949
- onClick: () => loginCode(),
950
- "data-testid": "email-button"
951
- }, ">"), /*#__PURE__*/external_react_default.a.createElement("br", null)), emailError && /*#__PURE__*/external_react_default.a.createElement("span", {
952
- "data-testid": "email-error"
953
- }, "Please enter a valid email adress")), /*#__PURE__*/external_react_default.a.createElement("span", null, "Or you may signup or login with a social provider:"), options.map((o, index) => {
954
- return /*#__PURE__*/external_react_default.a.createElement("div", {
955
- className: `${index_module_default.a.button}`,
956
- key: `provider-${o.provider_param ? o.provider_param : 'fnid'}`,
957
- "data-testid": "login-button",
958
- style: {
959
- color: o.button_border_color ? o.button_border_color : '#ffffff',
960
- border: `thin solid ${o.button_border_color ? o.button_border_color : o.button_color}`,
961
- backgroundColor: o.button_color,
962
- backgroundImage: o.provider_logo ? `url(${o.provider_logo})` : 'none',
963
- backgroundSize: o.provider_logo_size ? o.provider_logo_size : ''
964
- },
965
- onClick: () => login(o.provider_param)
966
- }, o.provider_label);
967
- }))));
968
- };
969
-
970
- /* harmony default export */ var components_login = (LoginComponent);
971
- // EXTERNAL MODULE: external "prop-types"
972
- var external_prop_types_ = __webpack_require__(15);
973
-
974
- // EXTERNAL MODULE: external "@stripe/react-stripe-js"
975
- var react_stripe_js_ = __webpack_require__(7);
976
-
977
- // EXTERNAL MODULE: ./src/components/payment/index.module.scss
978
- var payment_index_module = __webpack_require__(19);
979
- var payment_index_module_default = /*#__PURE__*/__webpack_require__.n(payment_index_module);
980
-
981
- // EXTERNAL MODULE: ./src/components/stripe-form/index.module.scss
982
- var stripe_form_index_module = __webpack_require__(14);
983
- var stripe_form_index_module_default = /*#__PURE__*/__webpack_require__.n(stripe_form_index_module);
984
-
985
- // CONCATENATED MODULE: ./src/components/stripe-form/index.js
986
- /**
987
- * Copyright 2020 OpenStack Foundation
988
- * Licensed under the Apache License, Version 2.0 (the "License");
989
- * you may not use this file except in compliance with the License.
990
- * You may obtain a copy of the License at
991
- * http://www.apache.org/licenses/LICENSE-2.0
992
- * Unless required by applicable law or agreed to in writing, software
993
- * distributed under the License is distributed on an "AS IS" BASIS,
994
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
995
- * See the License for the specific language governing permissions and
996
- * limitations under the License.
997
- **/
998
-
999
-
1000
-
1001
-
1002
-
1003
-
1004
- const StripeForm = ({
1005
- reservation,
1006
- payTicket,
1007
- userProfile,
1008
- marketingData
1009
- }) => {
1010
- const stripe = Object(react_stripe_js_["useStripe"])();
1011
- const elements = Object(react_stripe_js_["useElements"])();
1012
- const [zipCode, setZipCode] = Object(external_react_["useState"])('');
1013
- const [zipCodeError, setZipCodeError] = Object(external_react_["useState"])({
1014
- required: false
1015
- });
1016
- const stripeStyle = {
1017
- base: {
1018
- // Add your base input styles here. For example: #d4e5f4
1019
- color: marketingData.color_text_dark,
1020
- fontSize: '16px',
1021
- //fontFamily: 'inherit',
1022
- backgroundColor: '#ffffff',
1023
- '::placeholder': {
1024
- color: marketingData.color_text_input_hints
1025
- }
1026
- },
1027
- invalid: {
1028
- color: '#e5424d',
1029
- ':focus': {
1030
- color: '#3486cd'
1031
- }
1032
- }
1033
- };
1034
-
1035
- const handleSubmit = async event => {
1036
- event.preventDefault();
1037
-
1038
- if (!zipCode) {
1039
- setZipCodeError({
1040
- required: true
1041
- });
1042
- return;
1043
- } else {
1044
- setZipCodeError({
1045
- required: false
1046
- });
1047
- }
1048
-
1049
- if (!stripe) {
1050
- // Stripe.js has not loaded yet. Make sure to disable
1051
- // form submission until Stripe.js has loaded.
1052
- return;
1053
- }
1054
-
1055
- const cardElement = elements.getElement(react_stripe_js_["CardNumberElement"]);
1056
- const {
1057
- error,
1058
- token
1059
- } = await stripe.createToken(cardElement, {
1060
- name: `${reservation.owner_first_name} ${reservation.owner_last_name}`,
1061
- address_zip: zipCode,
1062
- address_country: userProfile.country || ''
1063
- });
1064
-
1065
- if (token) {
1066
- payTicket(token, stripe, zipCode);
1067
- } else if (error) {
1068
- external_sweetalert2_default.a.fire("Payment error", "There's an error generating your payment, please retry.", "warning");
1069
- }
1070
- };
1071
-
1072
- return /*#__PURE__*/external_react_default.a.createElement("form", {
1073
- className: stripe_form_index_module_default.a.form,
1074
- id: "payment-form",
1075
- onSubmit: handleSubmit
1076
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1077
- className: stripe_form_index_module_default.a.fieldWrapper
1078
- }, /*#__PURE__*/external_react_default.a.createElement(react_stripe_js_["CardNumberElement"], {
1079
- options: {
1080
- style: stripeStyle
1081
- }
1082
- }), /*#__PURE__*/external_react_default.a.createElement("i", {
1083
- className: "fa fa-credit-card"
1084
- })), /*#__PURE__*/external_react_default.a.createElement("div", {
1085
- className: stripe_form_index_module_default.a.fieldWrapper
1086
- }, /*#__PURE__*/external_react_default.a.createElement(react_stripe_js_["CardExpiryElement"], {
1087
- options: {
1088
- style: stripeStyle
1089
- }
1090
- })), /*#__PURE__*/external_react_default.a.createElement("div", {
1091
- className: stripe_form_index_module_default.a.fieldWrapper
1092
- }, /*#__PURE__*/external_react_default.a.createElement(react_stripe_js_["CardCvcElement"], {
1093
- options: {
1094
- style: stripeStyle
1095
- }
1096
- })), /*#__PURE__*/external_react_default.a.createElement("div", {
1097
- className: stripe_form_index_module_default.a.fieldWrapper,
1098
- style: {
1099
- marginBottom: `${zipCodeError.required ? '25px' : '0px'}`
1100
- }
1101
- }, /*#__PURE__*/external_react_default.a.createElement("input", {
1102
- placeholder: "Zip Code",
1103
- value: zipCode,
1104
- onChange: e => setZipCode(e.target.value)
1105
- }), zipCodeError.required && /*#__PURE__*/external_react_default.a.createElement("span", null, "This field is required")));
1106
- };
1107
-
1108
- const mapStateToProps = ({
1109
- registrationLiteState
1110
- }) => ({
1111
- marketingData: registrationLiteState.settings.marketingData
1112
- });
1113
-
1114
- /* harmony default export */ var stripe_form = (Object(external_react_redux_["connect"])(mapStateToProps, null)(StripeForm));
1115
- // CONCATENATED MODULE: ./src/components/payment/index.js
1116
- function payment_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
1117
-
1118
- function payment_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { payment_ownKeys(Object(source), true).forEach(function (key) { payment_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { payment_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
1119
-
1120
- function payment_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1121
-
1122
- /**
1123
- * Copyright 2020 OpenStack Foundation
1124
- * Licensed under the Apache License, Version 2.0 (the "License");
1125
- * you may not use this file except in compliance with the License.
1126
- * You may obtain a copy of the License at
1127
- * http://www.apache.org/licenses/LICENSE-2.0
1128
- * Unless required by applicable law or agreed to in writing, software
1129
- * distributed under the License is distributed on an "AS IS" BASIS,
1130
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1131
- * See the License for the specific language governing permissions and
1132
- * limitations under the License.
1133
- **/
1134
-
1135
-
1136
-
1137
-
1138
-
1139
-
1140
-
1141
-
1142
- const PaymentComponent = ({
1143
- isActive,
1144
- userProfile,
1145
- reservation,
1146
- payTicket,
1147
- stripeKey
1148
- }) => {
1149
- const [ref, {
1150
- height
1151
- }] = Object(external_react_use_["useMeasure"])();
1152
- const toggleAnimation = Object(external_react_spring_["useSpring"])({
1153
- config: payment_objectSpread({
1154
- bounce: 0
1155
- }, external_react_spring_["config"].stiff),
1156
- from: {
1157
- opacity: 0,
1158
- height: 0
1159
- },
1160
- to: {
1161
- opacity: 1,
1162
- height: isActive ? height + 10 : 0,
1163
- marginBottom: isActive ? 5 : 0
1164
- }
1165
- });
1166
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1167
- className: `${payment_index_module_default.a.outerWrapper} step-wrapper`
1168
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1169
- className: `${payment_index_module_default.a.innerWrapper}`
1170
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1171
- className: payment_index_module_default.a.title
1172
- }, /*#__PURE__*/external_react_default.a.createElement("span", null, "Payment")), /*#__PURE__*/external_react_default.a.createElement(external_react_spring_["animated"].div, {
1173
- style: payment_objectSpread({
1174
- overflow: 'hidden'
1175
- }, toggleAnimation)
1176
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1177
- ref: ref
1178
- }, /*#__PURE__*/external_react_default.a.createElement(react_stripe_js_["Elements"], {
1179
- stripe: stripeKey
1180
- }, /*#__PURE__*/external_react_default.a.createElement(stripe_form, {
1181
- reservation: reservation,
1182
- payTicket: payTicket,
1183
- userProfile: userProfile
1184
- })))))));
1185
- };
1186
-
1187
- /* harmony default export */ var payment = (PaymentComponent);
1188
- // EXTERNAL MODULE: external "react-hook-form"
1189
- var external_react_hook_form_ = __webpack_require__(26);
1190
-
1191
- // EXTERNAL MODULE: ./src/components/personal-information/index.module.scss
1192
- var personal_information_index_module = __webpack_require__(9);
1193
- var personal_information_index_module_default = /*#__PURE__*/__webpack_require__.n(personal_information_index_module);
1194
-
1195
- // CONCATENATED MODULE: ./src/components/personal-information/index.js
1196
- function _extends() { _extends = Object.assign || function (target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i]; for (var key in source) { if (Object.prototype.hasOwnProperty.call(source, key)) { target[key] = source[key]; } } } return target; }; return _extends.apply(this, arguments); }
1197
-
1198
- function personal_information_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
1199
-
1200
- function personal_information_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { personal_information_ownKeys(Object(source), true).forEach(function (key) { personal_information_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { personal_information_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
1201
-
1202
- function personal_information_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1203
-
1204
- /**
1205
- * Copyright 2020 OpenStack Foundation
1206
- * Licensed under the Apache License, Version 2.0 (the "License");
1207
- * you may not use this file except in compliance with the License.
1208
- * You may obtain a copy of the License at
1209
- * http://www.apache.org/licenses/LICENSE-2.0
1210
- * Unless required by applicable law or agreed to in writing, software
1211
- * distributed under the License is distributed on an "AS IS" BASIS,
1212
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1213
- * See the License for the specific language governing permissions and
1214
- * limitations under the License.
1215
- **/
1216
-
1217
-
1218
-
1219
-
1220
-
1221
-
1222
-
1223
-
1224
- const PersonalInfoComponent = ({
1225
- isActive,
1226
- changeForm,
1227
- reservation,
1228
- userProfile,
1229
- summitId,
1230
- handleCompanyError
1231
- }) => {
1232
- var _errors$email, _errors$email2;
1233
-
1234
- const [personalInfo, setPersonalInfo] = Object(external_react_["useState"])({
1235
- firstName: userProfile.given_name || '',
1236
- lastName: userProfile.family_name || '',
1237
- email: userProfile.email || '',
1238
- company: {
1239
- id: null,
1240
- name: userProfile.company || ''
1241
- },
1242
- promoCode: ''
1243
- });
1244
- const [companyError, setCompanyError] = Object(external_react_["useState"])(false);
1245
- const {
1246
- register,
1247
- handleSubmit,
1248
- formState: {
1249
- errors
1250
- }
1251
- } = Object(external_react_hook_form_["useForm"])();
1252
- Object(external_react_["useEffect"])(() => {
1253
- if (reservation) {
1254
- setPersonalInfo({
1255
- firstName: reservation.owner_first_name ? reservation.owner_first_name : personalInfo.firstName,
1256
- lastName: reservation.owner_last_name ? reservation.owner_last_name : personalInfo.lastName,
1257
- email: reservation.owner_email ? reservation.owner_email : personalInfo.email,
1258
- company: {
1259
- id: null,
1260
- name: reservation.owner_company ? reservation.owner_company : personalInfo.company
1261
- }
1262
- });
1263
- }
1264
- }, []);
1265
-
1266
- const onCompanyChange = ev => {
1267
- const newCompany = ev.target.value;
1268
- setCompanyError(false);
1269
- setPersonalInfo(personal_information_objectSpread(personal_information_objectSpread({}, personalInfo), {}, {
1270
- company: newCompany
1271
- }));
1272
- };
1273
-
1274
- const onSubmit = data => {
1275
- if (!personalInfo.company.name) {
1276
- setCompanyError(true);
1277
- return;
1278
- }
1279
-
1280
- setPersonalInfo(personal_information_objectSpread(personal_information_objectSpread({}, personalInfo), data));
1281
- changeForm(personal_information_objectSpread(personal_information_objectSpread({}, personalInfo), data));
1282
- };
1283
-
1284
- const [ref, {
1285
- height
1286
- }] = Object(external_react_use_["useMeasure"])();
1287
- const toggleAnimation = Object(external_react_spring_["useSpring"])({
1288
- config: personal_information_objectSpread({
1289
- bounce: 0
1290
- }, external_react_spring_["config"].stiff),
1291
- from: {
1292
- opacity: 0,
1293
- height: 0
1294
- },
1295
- to: {
1296
- opacity: 1,
1297
- height: isActive ? height + 10 : 0,
1298
- marginBottom: isActive ? 5 : 0
1299
- }
1300
- });
1301
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1302
- className: `${personal_information_index_module_default.a.outerWrapper} step-wrapper`
1303
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1304
- className: `${personal_information_index_module_default.a.innerWrapper}`
1305
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1306
- className: personal_information_index_module_default.a.title
1307
- }, /*#__PURE__*/external_react_default.a.createElement("span", null, "Personal Information"), !isActive && /*#__PURE__*/external_react_default.a.createElement("div", {
1308
- "data-testid": "personal-info"
1309
- }, /*#__PURE__*/external_react_default.a.createElement("span", null, `${personalInfo.firstName} ${personalInfo.lastName} ${personalInfo.company.name ? `- ${personalInfo.company.name}` : ''}`), /*#__PURE__*/external_react_default.a.createElement("br", null), /*#__PURE__*/external_react_default.a.createElement("span", null, personalInfo.email))), /*#__PURE__*/external_react_default.a.createElement(external_react_spring_["animated"].div, {
1310
- style: personal_information_objectSpread({
1311
- overflow: 'hidden'
1312
- }, toggleAnimation)
1313
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1314
- ref: ref
1315
- }, /*#__PURE__*/external_react_default.a.createElement("form", {
1316
- id: "personal-info-form",
1317
- onSubmit: handleSubmit(onSubmit),
1318
- className: personal_information_index_module_default.a.form,
1319
- "data-testid": "personal-form"
1320
- }, /*#__PURE__*/external_react_default.a.createElement("div", null, /*#__PURE__*/external_react_default.a.createElement("input", _extends({
1321
- type: "text",
1322
- placeholder: "First name *",
1323
- defaultValue: personalInfo.firstName || ''
1324
- }, register("firstName", {
1325
- required: true,
1326
- maxLength: 80
1327
- }), {
1328
- "data-testid": "first-name"
1329
- })), errors.firstName && /*#__PURE__*/external_react_default.a.createElement("span", {
1330
- "data-testid": "first-name-error"
1331
- }, "This field is required")), /*#__PURE__*/external_react_default.a.createElement("div", null, /*#__PURE__*/external_react_default.a.createElement("input", _extends({
1332
- type: "text",
1333
- placeholder: "Last name *",
1334
- defaultValue: personalInfo.lastName || ''
1335
- }, register("lastName", {
1336
- required: true,
1337
- maxLength: 100
1338
- }), {
1339
- "data-testid": "last-name"
1340
- })), errors.lastName && /*#__PURE__*/external_react_default.a.createElement("span", {
1341
- "data-testid": "last-name-error"
1342
- }, "This field is required")), /*#__PURE__*/external_react_default.a.createElement("div", null, /*#__PURE__*/external_react_default.a.createElement("input", _extends({
1343
- type: "text",
1344
- placeholder: "Email *",
1345
- className: personal_information_index_module_default.a.readOnly,
1346
- readOnly: true,
1347
- defaultValue: personalInfo.email || ''
1348
- }, register("email", {
1349
- required: true,
1350
- pattern: /^\S+@\S+$/i
1351
- }), {
1352
- "data-testid": "email"
1353
- })), ((_errors$email = errors.email) === null || _errors$email === void 0 ? void 0 : _errors$email.type) === 'required' && /*#__PURE__*/external_react_default.a.createElement("span", {
1354
- "data-testid": "email-error-required"
1355
- }, "This field is required"), ((_errors$email2 = errors.email) === null || _errors$email2 === void 0 ? void 0 : _errors$email2.type) === 'pattern' && /*#__PURE__*/external_react_default.a.createElement("span", {
1356
- "data-testid": "email-error-invalid"
1357
- }, "The email is invalid")), /*#__PURE__*/external_react_default.a.createElement("div", {
1358
- className: personal_information_index_module_default.a.companies
1359
- }, /*#__PURE__*/external_react_default.a.createElement(components_["RegistrationCompanyInput"], {
1360
- id: "company",
1361
- summitId: summitId,
1362
- onChange: onCompanyChange,
1363
- onError: handleCompanyError,
1364
- value: personalInfo.company
1365
- }), companyError && /*#__PURE__*/external_react_default.a.createElement("span", {
1366
- "data-testid": "company-error"
1367
- }, "This field is required")), /*#__PURE__*/external_react_default.a.createElement("div", null, /*#__PURE__*/external_react_default.a.createElement("input", _extends({
1368
- type: "text",
1369
- placeholder: "Promo Code"
1370
- }, register("promoCode"))))))))));
1371
- };
1372
-
1373
- /* harmony default export */ var personal_information = (PersonalInfoComponent);
1374
- // EXTERNAL MODULE: ./src/components/ticket-type/index.module.scss
1375
- var ticket_type_index_module = __webpack_require__(5);
1376
- var ticket_type_index_module_default = /*#__PURE__*/__webpack_require__.n(ticket_type_index_module);
1377
-
1378
- // EXTERNAL MODULE: ./src/components/ticket-dropdown/index.module.scss
1379
- var ticket_dropdown_index_module = __webpack_require__(20);
1380
- var ticket_dropdown_index_module_default = /*#__PURE__*/__webpack_require__.n(ticket_dropdown_index_module);
1381
-
1382
- // CONCATENATED MODULE: ./src/components/ticket-dropdown/index.js
1383
- /**
1384
- * Copyright 2020 OpenStack Foundation
1385
- * Licensed under the Apache License, Version 2.0 (the "License");
1386
- * you may not use this file except in compliance with the License.
1387
- * You may obtain a copy of the License at
1388
- * http://www.apache.org/licenses/LICENSE-2.0
1389
- * Unless required by applicable law or agreed to in writing, software
1390
- * distributed under the License is distributed on an "AS IS" BASIS,
1391
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1392
- * See the License for the specific language governing permissions and
1393
- * limitations under the License.
1394
- **/
1395
-
1396
-
1397
-
1398
-
1399
- const TicketDropdownComponent = ({
1400
- selectedTicket,
1401
- ticketTypes,
1402
- onTicketSelect
1403
- }) => {
1404
- const [active, setActive] = Object(external_react_["useState"])(false);
1405
-
1406
- const ticketSelect = ticket => {
1407
- onTicketSelect(ticket);
1408
- setActive(!active);
1409
- };
1410
-
1411
- const date = new Date();
1412
- let now_utc = Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds()) / 1000;
1413
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1414
- className: `${ticket_dropdown_index_module_default.a.outerWrapper}`
1415
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1416
- className: ticket_dropdown_index_module_default.a.placeholder,
1417
- onClick: () => setActive(!active),
1418
- "data-testid": "ticket-dropdown"
1419
- }, selectedTicket ? /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("span", {
1420
- "data-testid": "selected-ticket"
1421
- }, `${selectedTicket.name} - $${selectedTicket.cost} ${selectedTicket.currency}`), /*#__PURE__*/external_react_default.a.createElement("i", {
1422
- className: "fa fa-chevron-down"
1423
- })) : /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("span", {
1424
- "data-testid": "no-ticket"
1425
- }, "Select a ticket"), /*#__PURE__*/external_react_default.a.createElement("i", {
1426
- className: "fa fa-chevron-down"
1427
- }))), active && /*#__PURE__*/external_react_default.a.createElement("div", {
1428
- className: ticket_dropdown_index_module_default.a.dropdown,
1429
- "data-testid": "ticket-list"
1430
- }, ticketTypes.map(t => {
1431
- if (t.quantity_2_sell - t.quantity_sold > 0 && (t.sales_start_date === null && t.sales_end_date === null || now_utc >= t.sales_start_date && now_utc <= t.sales_end_date)) {
1432
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1433
- key: t.id,
1434
- onClick: () => ticketSelect(t)
1435
- }, `${t.name} - $${t.cost} ${t.currency}`);
1436
- }
1437
- })));
1438
- };
1439
-
1440
- /* harmony default export */ var ticket_dropdown = (TicketDropdownComponent);
1441
- // CONCATENATED MODULE: ./src/components/ticket-type/index.js
1442
- function ticket_type_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
1443
-
1444
- function ticket_type_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { ticket_type_ownKeys(Object(source), true).forEach(function (key) { ticket_type_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { ticket_type_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
1445
-
1446
- function ticket_type_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1447
-
1448
- /**
1449
- * Copyright 2020 OpenStack Foundation
1450
- * Licensed under the Apache License, Version 2.0 (the "License");
1451
- * you may not use this file except in compliance with the License.
1452
- * You may obtain a copy of the License at
1453
- * http://www.apache.org/licenses/LICENSE-2.0
1454
- * Unless required by applicable law or agreed to in writing, software
1455
- * distributed under the License is distributed on an "AS IS" BASIS,
1456
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1457
- * See the License for the specific language governing permissions and
1458
- * limitations under the License.
1459
- **/
1460
-
1461
-
1462
-
1463
-
1464
-
1465
-
1466
-
1467
-
1468
- const TicketTypeComponent = ({
1469
- ticketTypes,
1470
- taxTypes,
1471
- isActive,
1472
- changeForm,
1473
- reservation,
1474
- inPersonDisclaimer
1475
- }) => {
1476
- const [ticket, setTicket] = Object(external_react_["useState"])(null);
1477
- const [ref, {
1478
- height
1479
- }] = Object(external_react_use_["useMeasure"])();
1480
- const toggleAnimation = Object(external_react_spring_["useSpring"])({
1481
- config: ticket_type_objectSpread({
1482
- bounce: 0
1483
- }, external_react_spring_["config"].stiff),
1484
- from: {
1485
- opacity: 0,
1486
- height: 0
1487
- },
1488
- to: {
1489
- opacity: 1,
1490
- height: isActive ? height + 10 : 0,
1491
- marginBottom: isActive ? 5 : 0
1492
- }
1493
- });
1494
- Object(external_react_["useEffect"])(() => {
1495
- var _reservation$tickets;
1496
-
1497
- if (reservation && ((_reservation$tickets = reservation.tickets) === null || _reservation$tickets === void 0 ? void 0 : _reservation$tickets.length) > 0) {
1498
- setTicket(ticketTypes.find(t => t.id === reservation.tickets[0].ticket_type_id));
1499
- }
1500
- }, []);
1501
- Object(external_react_["useEffect"])(() => {
1502
- changeForm(ticket);
1503
- }, [ticket]);
1504
-
1505
- const ticketSelect = t => {
1506
- setTicket(t);
1507
- };
1508
-
1509
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1510
- className: `${ticket_type_index_module_default.a.outerWrapper} step-wrapper`
1511
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1512
- className: `${ticket_type_index_module_default.a.innerWrapper}`
1513
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1514
- className: ticket_type_index_module_default.a.title
1515
- }, /*#__PURE__*/external_react_default.a.createElement("span", null, "Ticket "), /*#__PURE__*/external_react_default.a.createElement("div", {
1516
- className: ticket_type_index_module_default.a.summary
1517
- }, !isActive && (reservation === null || reservation === void 0 ? void 0 : reservation.discount_amount) > 0 ? /*#__PURE__*/external_react_default.a.createElement("span", null, ticket && /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, ticket.name, " \xA0", /*#__PURE__*/external_react_default.a.createElement("span", {
1518
- className: ticket_type_index_module_default.a.crossOut
1519
- }, "$", ticket.cost, " \xA0"), /*#__PURE__*/external_react_default.a.createElement("span", {
1520
- className: ticket_type_index_module_default.a.discount
1521
- }, "$", reservation.raw_amount - reservation.discount_amount), ticket.currency), /*#__PURE__*/external_react_default.a.createElement("span", {
1522
- className: ticket_type_index_module_default.a.promo
1523
- }, "Promo code applied")) : /*#__PURE__*/external_react_default.a.createElement("span", null, ticket ? `${ticket.name}: $${ticket.cost} ${ticket.currency}` : 'No ticket selected'), !isActive && (reservation === null || reservation === void 0 ? void 0 : reservation.taxes_amount) > 0 && /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("br", null), /*#__PURE__*/external_react_default.a.createElement("span", null, "Taxes: $", reservation === null || reservation === void 0 ? void 0 : reservation.taxes_amount, " ", ticket === null || ticket === void 0 ? void 0 : ticket.currency)))), /*#__PURE__*/external_react_default.a.createElement(external_react_spring_["animated"].div, {
1524
- style: ticket_type_objectSpread({
1525
- overflow: 'hidden'
1526
- }, toggleAnimation)
1527
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1528
- ref: ref,
1529
- className: ticket_type_index_module_default.a.dropdown
1530
- }, /*#__PURE__*/external_react_default.a.createElement(ticket_dropdown, {
1531
- selectedTicket: ticket,
1532
- ticketTypes: ticketTypes,
1533
- onTicketSelect: t => ticketSelect(t)
1534
- }))), inPersonDisclaimer && ticket && isInPersonTicketType(ticket) && /*#__PURE__*/external_react_default.a.createElement("div", {
1535
- className: ticket_type_index_module_default.a.inPersonDisclaimer
1536
- }, /*#__PURE__*/external_react_default.a.createElement(components_["RawHTML"], null, inPersonDisclaimer)))));
1537
- };
1538
-
1539
- /* harmony default export */ var ticket_type = (TicketTypeComponent);
1540
- // EXTERNAL MODULE: ./src/components/button-bar/index.module.scss
1541
- var button_bar_index_module = __webpack_require__(3);
1542
- var button_bar_index_module_default = /*#__PURE__*/__webpack_require__.n(button_bar_index_module);
1543
-
1544
- // CONCATENATED MODULE: ./src/components/button-bar/index.js
1545
- /**
1546
- * Copyright 2020 OpenStack Foundation
1547
- * Licensed under the Apache License, Version 2.0 (the "License");
1548
- * you may not use this file except in compliance with the License.
1549
- * You may obtain a copy of the License at
1550
- * http://www.apache.org/licenses/LICENSE-2.0
1551
- * Unless required by applicable law or agreed to in writing, software
1552
- * distributed under the License is distributed on an "AS IS" BASIS,
1553
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1554
- * See the License for the specific language governing permissions and
1555
- * limitations under the License.
1556
- **/
1557
-
1558
-
1559
-
1560
-
1561
- const ButtonBarComponent = ({
1562
- step,
1563
- changeStep,
1564
- registrationForm,
1565
- removeReservedTicket,
1566
- inPersonDisclaimer,
1567
- goToRegistration
1568
- }) => {
1569
- var _registrationForm$tic, _registrationForm$tic2;
1570
-
1571
- const nextButtonText = inPersonDisclaimer && registrationForm !== null && registrationForm !== void 0 && registrationForm.ticketType && isInPersonTicketType(registrationForm.ticketType) ? 'Accept' : 'Next';
1572
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1573
- className: `${button_bar_index_module_default.a.outerWrapper}`
1574
- }, step !== 3 && /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1575
- className: `${button_bar_index_module_default.a.innerWrapper}`
1576
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1577
- className: button_bar_index_module_default.a.required
1578
- }, step !== 0 && /*#__PURE__*/external_react_default.a.createElement("span", null, "* Required fields ", /*#__PURE__*/external_react_default.a.createElement("br", null), " "), /*#__PURE__*/external_react_default.a.createElement("span", {
1579
- className: button_bar_index_module_default.a.registration,
1580
- onClick: () => goToRegistration()
1581
- }, "Need multiple tickets?")), /*#__PURE__*/external_react_default.a.createElement("div", {
1582
- className: button_bar_index_module_default.a.actions
1583
- }, step !== 0 && step !== 2 && /*#__PURE__*/external_react_default.a.createElement("button", {
1584
- className: `${button_bar_index_module_default.a.button} button`,
1585
- onClick: () => changeStep(step - 1)
1586
- }, "< Back"), step !== 0 && step === 2 && /*#__PURE__*/external_react_default.a.createElement("button", {
1587
- className: `${button_bar_index_module_default.a.button} button`,
1588
- onClick: () => removeReservedTicket()
1589
- }, "< Back"), step === 0 && /*#__PURE__*/external_react_default.a.createElement("button", {
1590
- disabled: !registrationForm.ticketType,
1591
- className: `${button_bar_index_module_default.a.button} button`,
1592
- onClick: () => changeStep(step + 1)
1593
- }, nextButtonText), step === 1 && ((_registrationForm$tic = registrationForm.ticketType) === null || _registrationForm$tic === void 0 ? void 0 : _registrationForm$tic.cost) === 0 && /*#__PURE__*/external_react_default.a.createElement("button", {
1594
- className: `${button_bar_index_module_default.a.button} button`,
1595
- type: "submit",
1596
- form: "personal-info-form"
1597
- }, "Get Ticket"), step === 1 && ((_registrationForm$tic2 = registrationForm.ticketType) === null || _registrationForm$tic2 === void 0 ? void 0 : _registrationForm$tic2.cost) > 0 && /*#__PURE__*/external_react_default.a.createElement("button", {
1598
- className: `${button_bar_index_module_default.a.button} button`,
1599
- type: "submit",
1600
- form: "personal-info-form"
1601
- }, "Next"), step === 2 && /*#__PURE__*/external_react_default.a.createElement("button", {
1602
- className: `${button_bar_index_module_default.a.button} button`,
1603
- type: "submit",
1604
- form: "payment-form"
1605
- }, "Pay Now")))));
1606
- };
1607
-
1608
- /* harmony default export */ var button_bar = (ButtonBarComponent);
1609
- // EXTERNAL MODULE: ./src/components/purchase-complete/index.module.scss
1610
- var purchase_complete_index_module = __webpack_require__(6);
1611
- var purchase_complete_index_module_default = /*#__PURE__*/__webpack_require__.n(purchase_complete_index_module);
1612
-
1613
- // CONCATENATED MODULE: ./src/components/purchase-complete/index.js
1614
- /**
1615
- * Copyright 2020 OpenStack Foundation
1616
- * Licensed under the Apache License, Version 2.0 (the "License");
1617
- * you may not use this file except in compliance with the License.
1618
- * You may obtain a copy of the License at
1619
- * http://www.apache.org/licenses/LICENSE-2.0
1620
- * Unless required by applicable law or agreed to in writing, software
1621
- * distributed under the License is distributed on an "AS IS" BASIS,
1622
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1623
- * See the License for the specific language governing permissions and
1624
- * limitations under the License.
1625
- **/
1626
-
1627
-
1628
-
1629
-
1630
-
1631
- const PurchaseComplete = ({
1632
- checkout,
1633
- onPurchaseComplete,
1634
- goToExtraQuestions,
1635
- goToEvent,
1636
- summit,
1637
- supportEmail = "support@fntech.com"
1638
- }) => {
1639
- Object(external_react_["useEffect"])(() => {
1640
- onPurchaseComplete(checkout);
1641
- }, []);
1642
- const date = new Date();
1643
- let now_utc = Date.UTC(date.getUTCFullYear(), date.getUTCMonth(), date.getUTCDate(), date.getUTCHours(), date.getUTCMinutes(), date.getUTCSeconds()) / 1000;
1644
- const isActive = summit.start_date < now_utc && summit.end_date > now_utc;
1645
- const startDateFormatted = {
1646
- date: Object(methods_["epochToMomentTimeZone"])(summit.start_date, summit.time_zone_id).format('MMMM D'),
1647
- time: Object(methods_["epochToMomentTimeZone"])(summit.start_date, summit.time_zone_id).format('HH:mm')
1648
- };
1649
-
1650
- const needExtraQuestions = () => {
1651
- return summit.order_extra_questions.some(q => q.mandatory === true) ? true : false;
1652
- };
1653
-
1654
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1655
- className: purchase_complete_index_module_default.a.wrapper
1656
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1657
- className: purchase_complete_index_module_default.a.circle
1658
- }, /*#__PURE__*/external_react_default.a.createElement("i", {
1659
- className: "fa fa-ticket"
1660
- })), /*#__PURE__*/external_react_default.a.createElement("span", {
1661
- className: purchase_complete_index_module_default.a.complete
1662
- }, "Your order is complete"), isActive ? needExtraQuestions() ? /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("span", null, "This ticket requires additional details. ", /*#__PURE__*/external_react_default.a.createElement("br", null)), /*#__PURE__*/external_react_default.a.createElement("button", {
1663
- className: `${purchase_complete_index_module_default.a.button} button`,
1664
- onClick: () => goToExtraQuestions()
1665
- }, "Finish now")) : /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("button", {
1666
- className: `${purchase_complete_index_module_default.a.button} button`,
1667
- onClick: () => goToEvent()
1668
- }, "Access event now")) : /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("span", null, "The event will start on ", startDateFormatted.date, " at ", startDateFormatted.time, " ", summit.time_zone_id, " ", /*#__PURE__*/external_react_default.a.createElement("br", null), "This ticket requires additional details."), /*#__PURE__*/external_react_default.a.createElement("div", {
1669
- className: purchase_complete_index_module_default.a.actions
1670
- }, /*#__PURE__*/external_react_default.a.createElement("button", {
1671
- className: `${purchase_complete_index_module_default.a.button} button`,
1672
- onClick: () => goToExtraQuestions()
1673
- }, "Finish Now"), /*#__PURE__*/external_react_default.a.createElement("button", {
1674
- className: `${purchase_complete_index_module_default.a.button} button`,
1675
- onClick: () => goToEvent()
1676
- }, "Do this later"))), /*#__PURE__*/external_react_default.a.createElement("span", {
1677
- className: purchase_complete_index_module_default.a.footer
1678
- }, "For further assistance, please email ", /*#__PURE__*/external_react_default.a.createElement("a", {
1679
- href: `mailto:${supportEmail}`
1680
- }, supportEmail)));
1681
- };
1682
-
1683
- /* harmony default export */ var purchase_complete = (PurchaseComplete);
1684
- // EXTERNAL MODULE: external "react-otp-input"
1685
- var external_react_otp_input_ = __webpack_require__(27);
1686
- var external_react_otp_input_default = /*#__PURE__*/__webpack_require__.n(external_react_otp_input_);
1687
-
1688
- // EXTERNAL MODULE: ./src/components/login-passwordless/index.module.scss
1689
- var login_passwordless_index_module = __webpack_require__(4);
1690
- var login_passwordless_index_module_default = /*#__PURE__*/__webpack_require__.n(login_passwordless_index_module);
1691
-
1692
- // CONCATENATED MODULE: ./src/components/login-passwordless/index.js
1693
- /**
1694
- * Copyright 2020 OpenStack Foundation
1695
- * Licensed under the Apache License, Version 2.0 (the "License");
1696
- * you may not use this file except in compliance with the License.
1697
- * You may obtain a copy of the License at
1698
- * http://www.apache.org/licenses/LICENSE-2.0
1699
- * Unless required by applicable law or agreed to in writing, software
1700
- * distributed under the License is distributed on an "AS IS" BASIS,
1701
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1702
- * See the License for the specific language governing permissions and
1703
- * limitations under the License.
1704
- **/
1705
-
1706
-
1707
-
1708
-
1709
-
1710
- const PasswordlessLoginComponent = ({
1711
- email,
1712
- codeLength,
1713
- passwordlessLogin,
1714
- loginWithCode,
1715
- codeError,
1716
- goToLogin,
1717
- getLoginCode,
1718
- getPasswordlessCode
1719
- }) => {
1720
- const [otpCode, setOtpCode] = Object(external_react_["useState"])('');
1721
- const [otpError, setOtpError] = Object(external_react_["useState"])(false);
1722
-
1723
- const tryPasswordlessLogin = code => {
1724
- if (code.length === codeLength) {
1725
- setOtpError(false);
1726
- passwordlessLogin(otpCode, loginWithCode);
1727
- } else {
1728
- setOtpError(true);
1729
- }
1730
- };
1731
-
1732
- const resendCode = () => {
1733
- getLoginCode(email, getPasswordlessCode);
1734
- };
1735
-
1736
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1737
- className: `${login_passwordless_index_module_default.a.passwordlessWrapper} step-wrapper`
1738
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1739
- className: `${login_passwordless_index_module_default.a.innerWrapper}`
1740
- }, /*#__PURE__*/external_react_default.a.createElement("span", null, "We sent your single-use login code to ", /*#__PURE__*/external_react_default.a.createElement("br", null), /*#__PURE__*/external_react_default.a.createElement("span", {
1741
- "data-testid": "email"
1742
- }, email), /*#__PURE__*/external_react_default.a.createElement("br", null), /*#__PURE__*/external_react_default.a.createElement("span", {
1743
- className: login_passwordless_index_module_default.a.digits,
1744
- "data-testid": "code-digits"
1745
- }, "Add the ", codeLength, " digit code below")), /*#__PURE__*/external_react_default.a.createElement("div", {
1746
- className: login_passwordless_index_module_default.a.codeInput
1747
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_otp_input_default.a, {
1748
- value: otpCode,
1749
- onChange: code => setOtpCode(code),
1750
- numInputs: codeLength,
1751
- shouldAutoFocus: true,
1752
- hasErrored: otpError || codeError,
1753
- errorStyle: {
1754
- border: '1px solid #e5424d'
1755
- },
1756
- "data-testid": "otp-input"
1757
- })), codeError && /*#__PURE__*/external_react_default.a.createElement("span", {
1758
- className: login_passwordless_index_module_default.a.error,
1759
- "data-testid": "error"
1760
- }, "The code you entered it's incorrect. ", /*#__PURE__*/external_react_default.a.createElement("br", null), " Please try again."), /*#__PURE__*/external_react_default.a.createElement("div", {
1761
- className: login_passwordless_index_module_default.a.verify
1762
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1763
- className: `${login_passwordless_index_module_default.a.button} button`,
1764
- onClick: () => tryPasswordlessLogin(otpCode),
1765
- "data-testid": "verify"
1766
- }, "Verify"), /*#__PURE__*/external_react_default.a.createElement("b", null, "or go back and ", /*#__PURE__*/external_react_default.a.createElement("span", {
1767
- className: login_passwordless_index_module_default.a.link,
1768
- onClick: () => goToLogin(),
1769
- "data-testid": "go-back"
1770
- }, "try another way")))), /*#__PURE__*/external_react_default.a.createElement("div", {
1771
- className: login_passwordless_index_module_default.a.resend
1772
- }, "Didn\u2019t receive it? Check your spam/junk folder, or ", /*#__PURE__*/external_react_default.a.createElement("span", {
1773
- className: login_passwordless_index_module_default.a.link,
1774
- onClick: () => resendCode(),
1775
- "data-testid": "resend"
1776
- }, "resend email"), " now.")));
1777
- };
1778
-
1779
- /* harmony default export */ var login_passwordless = (PasswordlessLoginComponent);
1780
- // EXTERNAL MODULE: ./src/components/ticket-owned/index.module.scss
1781
- var ticket_owned_index_module = __webpack_require__(16);
1782
- var ticket_owned_index_module_default = /*#__PURE__*/__webpack_require__.n(ticket_owned_index_module);
1783
-
1784
- // CONCATENATED MODULE: ./src/components/ticket-owned/index.js
1785
- /**
1786
- * Copyright 2020 OpenStack Foundation
1787
- * Licensed under the Apache License, Version 2.0 (the "License");
1788
- * you may not use this file except in compliance with the License.
1789
- * You may obtain a copy of the License at
1790
- * http://www.apache.org/licenses/LICENSE-2.0
1791
- * Unless required by applicable law or agreed to in writing, software
1792
- * distributed under the License is distributed on an "AS IS" BASIS,
1793
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1794
- * See the License for the specific language governing permissions and
1795
- * limitations under the License.
1796
- **/
1797
-
1798
-
1799
-
1800
- const TicketOwnedComponent = ({
1801
- goToRegistration
1802
- }) => {
1803
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1804
- className: `${ticket_owned_index_module_default.a.wrapper}`
1805
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1806
- className: ticket_owned_index_module_default.a.circle
1807
- }, /*#__PURE__*/external_react_default.a.createElement("i", {
1808
- className: "fa fa-ticket"
1809
- })), /*#__PURE__*/external_react_default.a.createElement("span", {
1810
- className: ticket_owned_index_module_default.a.complete
1811
- }, "Our records show you have a ticket(s) to this event."), /*#__PURE__*/external_react_default.a.createElement("span", {
1812
- className: ticket_owned_index_module_default.a.complete
1813
- }, "If you would like to purchase more, ", /*#__PURE__*/external_react_default.a.createElement("a", {
1814
- onClick: () => goToRegistration()
1815
- }, "click here"), ".")));
1816
- };
1817
-
1818
- /* harmony default export */ var ticket_owned = (TicketOwnedComponent);
1819
- // CONCATENATED MODULE: ./src/components/registration-lite.js
1820
- const _excluded = ["loadSession", "setMarketingSettings", "changeStep", "removeReservedTicket", "reserveTicket", "payTicket", "onPurchaseComplete", "getTicketTypes", "getTaxesTypes", "getLoginCode", "passwordlessLogin", "goToLogin", "loginOptions", "reservation", "checkout", "ticketTypes", "taxTypes", "step", "passwordlessCodeSent", "passwordlessEmail", "passwordlessCode", "getPasswordlessCode", "passwordlessCodeError", "loginWithCode", "goToExtraQuestions", "goToEvent", "goToRegistration", "profileData", "summitData", "supportEmail", "ticketOwned", "widgetLoading", "loading", "inPersonDisclaimer", "userProfile", "handleCompanyError"];
1821
-
1822
- function registration_lite_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); if (enumerableOnly) { symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; }); } keys.push.apply(keys, symbols); } return keys; }
1823
-
1824
- function registration_lite_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = arguments[i] != null ? arguments[i] : {}; if (i % 2) { registration_lite_ownKeys(Object(source), true).forEach(function (key) { registration_lite_defineProperty(target, key, source[key]); }); } else if (Object.getOwnPropertyDescriptors) { Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)); } else { registration_lite_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } } return target; }
1825
-
1826
- function registration_lite_defineProperty(obj, key, value) { if (key in obj) { Object.defineProperty(obj, key, { value: value, enumerable: true, configurable: true, writable: true }); } else { obj[key] = value; } return obj; }
1827
-
1828
- function _objectWithoutProperties(source, excluded) { if (source == null) return {}; var target = _objectWithoutPropertiesLoose(source, excluded); var key, i; if (Object.getOwnPropertySymbols) { var sourceSymbolKeys = Object.getOwnPropertySymbols(source); for (i = 0; i < sourceSymbolKeys.length; i++) { key = sourceSymbolKeys[i]; if (excluded.indexOf(key) >= 0) continue; if (!Object.prototype.propertyIsEnumerable.call(source, key)) continue; target[key] = source[key]; } } return target; }
1829
-
1830
- function _objectWithoutPropertiesLoose(source, excluded) { if (source == null) return {}; var target = {}; var sourceKeys = Object.keys(source); var key, i; for (i = 0; i < sourceKeys.length; i++) { key = sourceKeys[i]; if (excluded.indexOf(key) >= 0) continue; target[key] = source[key]; } return target; }
1831
-
1832
- /**
1833
- * Copyright 2020 OpenStack Foundation
1834
- * Licensed under the Apache License, Version 2.0 (the "License");
1835
- * you may not use this file except in compliance with the License.
1836
- * You may obtain a copy of the License at
1837
- * http://www.apache.org/licenses/LICENSE-2.0
1838
- * Unless required by applicable law or agreed to in writing, software
1839
- * distributed under the License is distributed on an "AS IS" BASIS,
1840
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1841
- * See the License for the specific language governing permissions and
1842
- * limitations under the License.
1843
- **/
1844
-
1845
-
1846
-
1847
-
1848
-
1849
-
1850
-
1851
-
1852
-
1853
-
1854
-
1855
-
1856
-
1857
-
1858
-
1859
-
1860
-
1861
-
1862
- const RegistrationLite = _ref => {
1863
- var _registrationForm$tic, _registrationForm$tic2;
1864
-
1865
- let {
1866
- loadSession,
1867
- setMarketingSettings,
1868
- changeStep,
1869
- removeReservedTicket,
1870
- reserveTicket,
1871
- payTicket,
1872
- onPurchaseComplete,
1873
- getTicketTypes,
1874
- getTaxesTypes,
1875
- getLoginCode,
1876
- passwordlessLogin,
1877
- goToLogin,
1878
- loginOptions,
1879
- reservation,
1880
- checkout,
1881
- ticketTypes,
1882
- taxTypes,
1883
- step,
1884
- passwordlessCodeSent,
1885
- passwordlessEmail,
1886
- passwordlessCode,
1887
- getPasswordlessCode,
1888
- passwordlessCodeError,
1889
- loginWithCode,
1890
- goToExtraQuestions,
1891
- goToEvent,
1892
- goToRegistration,
1893
- profileData,
1894
- summitData,
1895
- supportEmail,
1896
- ticketOwned,
1897
- widgetLoading,
1898
- loading,
1899
- inPersonDisclaimer,
1900
- userProfile,
1901
- handleCompanyError
1902
- } = _ref,
1903
- rest = _objectWithoutProperties(_ref, _excluded);
1904
-
1905
- const [registrationForm, setRegistrationForm] = Object(external_react_["useState"])({
1906
- ticketType: null,
1907
- personalInformation: null,
1908
- paymentInformation: null
1909
- });
1910
- let publicKey = null;
1911
-
1912
- for (let profile of summitData.payment_profiles) {
1913
- if (profile.application_type === 'Registration') {
1914
- publicKey = profile.test_mode_enabled ? profile.test_publishable_key : profile.live_publishable_key;
1915
- break;
1916
- }
1917
- }
1918
-
1919
- const stripePromise = Object(external_react_["useMemo"])(() => Object(stripe_js_["loadStripe"])(publicKey), [publicKey]);
1920
-
1921
- const ticketReservation = () => {
1922
- reserveTicket(registrationForm.personalInformation, registrationForm.ticketType);
1923
- };
1924
-
1925
- Object(external_react_["useEffect"])(() => {
1926
- loadSession(registration_lite_objectSpread(registration_lite_objectSpread({}, rest), {}, {
1927
- summitData,
1928
- profileData
1929
- }));
1930
-
1931
- if (!profileData) {
1932
- changeStep(0);
1933
- }
1934
- }, [profileData]);
1935
- Object(external_react_["useEffect"])(() => {
1936
- if (summitData && profileData) {
1937
- getTicketTypes(summitData.id).then(() => getTaxesTypes(summitData.id));
1938
- }
1939
- }, [summitData, profileData]);
1940
- Object(external_react_["useEffect"])(() => {
1941
- if (step === 1 && registrationForm.ticketType && registrationForm.personalInformation) {
1942
- ticketReservation();
1943
- }
1944
-
1945
- if (step > 0 && !registrationForm.ticketType) {
1946
- changeStep(0);
1947
- }
1948
- }, [registrationForm]);
1949
- const [ref, {
1950
- height
1951
- }] = Object(external_react_use_["useMeasure"])();
1952
- const toggleAnimation = Object(external_react_spring_["useSpring"])({
1953
- config: registration_lite_objectSpread({
1954
- bounce: 0
1955
- }, external_react_spring_["config"].stiff),
1956
- to: {
1957
- opacity: ((_registrationForm$tic = registrationForm.ticketType) === null || _registrationForm$tic === void 0 ? void 0 : _registrationForm$tic.cost) === 0 ? 0 : 1,
1958
- height: ((_registrationForm$tic2 = registrationForm.ticketType) === null || _registrationForm$tic2 === void 0 ? void 0 : _registrationForm$tic2.cost) === 0 ? 0 : height
1959
- }
1960
- });
1961
- return /*#__PURE__*/external_react_default.a.createElement("div", {
1962
- id: "modal",
1963
- className: "modal is-active"
1964
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1965
- className: "modal-background"
1966
- }), /*#__PURE__*/external_react_default.a.createElement("div", {
1967
- className: "modal-content"
1968
- }, /*#__PURE__*/external_react_default.a.createElement(components_["AjaxLoader"], {
1969
- relative: true,
1970
- color: '#ffffff',
1971
- show: widgetLoading || loading,
1972
- size: 80
1973
- }), /*#__PURE__*/external_react_default.a.createElement("div", {
1974
- className: `${general_module_default.a.outerWrapper} summit-registration-lite`
1975
- }, /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement("div", {
1976
- className: `${general_module_default.a.innerWrapper}`
1977
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
1978
- className: general_module_default.a.title
1979
- }, /*#__PURE__*/external_react_default.a.createElement("span", null, summitData.name), /*#__PURE__*/external_react_default.a.createElement("i", {
1980
- className: "fa fa-close",
1981
- "aria-label": "close",
1982
- onClick: () => rest.closeWidget()
1983
- })), ticketOwned && /*#__PURE__*/external_react_default.a.createElement("div", {
1984
- className: general_module_default.a.stepsWrapper
1985
- }, /*#__PURE__*/external_react_default.a.createElement(ticket_owned, {
1986
- goToRegistration: goToRegistration
1987
- })), !ticketOwned && /*#__PURE__*/external_react_default.a.createElement("div", {
1988
- className: general_module_default.a.stepsWrapper
1989
- }, !profileData && !passwordlessCodeSent && /*#__PURE__*/external_react_default.a.createElement(components_login, {
1990
- options: loginOptions,
1991
- login: provider => rest.authUser(provider),
1992
- getLoginCode: getLoginCode,
1993
- getPasswordlessCode: getPasswordlessCode
1994
- }), !profileData && passwordlessCodeSent && /*#__PURE__*/external_react_default.a.createElement(login_passwordless, {
1995
- codeLength: passwordlessCode,
1996
- email: passwordlessEmail,
1997
- passwordlessLogin: passwordlessLogin,
1998
- loginWithCode: loginWithCode,
1999
- codeError: passwordlessCodeError,
2000
- goToLogin: goToLogin,
2001
- getLoginCode: getLoginCode,
2002
- getPasswordlessCode: getPasswordlessCode
2003
- }), profileData && step !== 3 && ticketTypes.length > 0 && /*#__PURE__*/external_react_default.a.createElement(external_react_default.a.Fragment, null, /*#__PURE__*/external_react_default.a.createElement(ticket_type, {
2004
- ticketTypes: ticketTypes,
2005
- inPersonDisclaimer: inPersonDisclaimer,
2006
- taxTypes: taxTypes,
2007
- reservation: reservation,
2008
- isActive: step === 0,
2009
- changeForm: t => setRegistrationForm(registration_lite_objectSpread(registration_lite_objectSpread({}, registrationForm), {}, {
2010
- ticketType: t
2011
- }))
2012
- }), /*#__PURE__*/external_react_default.a.createElement(personal_information, {
2013
- isActive: step === 1,
2014
- reservation: reservation,
2015
- userProfile: profileData,
2016
- summitId: summitData.id,
2017
- changeForm: personalForm => setRegistrationForm(registration_lite_objectSpread(registration_lite_objectSpread({}, registrationForm), {}, {
2018
- personalInformation: personalForm
2019
- })),
2020
- handleCompanyError: handleCompanyError
2021
- }), /*#__PURE__*/external_react_default.a.createElement(external_react_spring_["animated"].div, {
2022
- style: registration_lite_objectSpread({}, toggleAnimation)
2023
- }, /*#__PURE__*/external_react_default.a.createElement("div", {
2024
- ref: ref
2025
- }, /*#__PURE__*/external_react_default.a.createElement(payment, {
2026
- isActive: step === 2,
2027
- reservation: reservation,
2028
- payTicket: payTicket,
2029
- userProfile: profileData,
2030
- stripeKey: stripePromise
2031
- })))), profileData && step === 3 && /*#__PURE__*/external_react_default.a.createElement(purchase_complete, {
2032
- checkout: checkout,
2033
- summit: summitData,
2034
- onPurchaseComplete: onPurchaseComplete,
2035
- supportEmail: supportEmail,
2036
- goToEvent: goToEvent,
2037
- goToExtraQuestions: goToExtraQuestions
2038
- })), profileData && !ticketOwned && step !== 3 && /*#__PURE__*/external_react_default.a.createElement(button_bar, {
2039
- step: step,
2040
- inPersonDisclaimer: inPersonDisclaimer,
2041
- registrationForm: registrationForm,
2042
- goToRegistration: goToRegistration,
2043
- removeReservedTicket: removeReservedTicket,
2044
- changeStep: changeStep
2045
- }))))));
2046
- };
2047
-
2048
- const registration_lite_mapStateToProps = ({
2049
- registrationLiteState
2050
- }) => ({
2051
- widgetLoading: registrationLiteState.widgetLoading,
2052
- reservation: registrationLiteState.reservation,
2053
- userProfile: registrationLiteState.settings.userProfile,
2054
- checkout: registrationLiteState.checkout,
2055
- ticketTypes: registrationLiteState.ticketTypes,
2056
- taxTypes: registrationLiteState.taxTypes,
2057
- step: registrationLiteState.step,
2058
- passwordlessEmail: registrationLiteState.passwordless.email,
2059
- passwordlessCode: registrationLiteState.passwordless.otp_length,
2060
- passwordlessCodeSent: registrationLiteState.passwordless.code_sent,
2061
- passwordlessCodeError: registrationLiteState.passwordless.error
2062
- });
2063
-
2064
- /* harmony default export */ var registration_lite = (Object(external_react_redux_["connect"])(registration_lite_mapStateToProps, {
2065
- loadSession: actions_loadSession,
2066
- changeStep: actions_changeStep,
2067
- reserveTicket: actions_reserveTicket,
2068
- removeReservedTicket: actions_removeReservedTicket,
2069
- payTicket: actions_payTicket,
2070
- getTicketTypes: actions_getTicketTypes,
2071
- getTaxesTypes: actions_getTaxesTypes,
2072
- getLoginCode: actions_getLoginCode,
2073
- passwordlessLogin: actions_passwordlessLogin,
2074
- goToLogin: actions_goToLogin
2075
- })(RegistrationLite));
2076
- // CONCATENATED MODULE: ./src/summit-registration-lite.js
2077
- /**
2078
- * Copyright 2017 OpenStack Foundation
2079
- * Licensed under the Apache License, Version 2.0 (the "License");
2080
- * you may not use this file except in compliance with the License.
2081
- * You may obtain a copy of the License at
2082
- * http://www.apache.org/licenses/LICENSE-2.0
2083
- * Unless required by applicable law or agreed to in writing, software
2084
- * distributed under the License is distributed on an "AS IS" BASIS,
2085
- * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
2086
- * See the License for the specific language governing permissions and
2087
- * limitations under the License.
2088
- **/
2089
-
2090
-
2091
-
2092
-
2093
-
2094
-
2095
- class summit_registration_lite_RegistrationLiteWidget extends external_react_default.a.PureComponent {
2096
- constructor(props) {
2097
- super(props);
2098
- this.store = getStore(props.clientId, props.apiBaseUrl, props.getAccessToken);
2099
- }
2100
-
2101
- render() {
2102
- return /*#__PURE__*/external_react_default.a.createElement(external_react_redux_["Provider"], {
2103
- store: this.store
2104
- }, /*#__PURE__*/external_react_default.a.createElement(react_["PersistGate"], {
2105
- persistor: getPersistor()
2106
- }, /*#__PURE__*/external_react_default.a.createElement(registration_lite, this.props)));
2107
- }
2108
-
2109
- }
2110
-
2111
- /* harmony default export */ var summit_registration_lite = __webpack_exports__["default"] = (summit_registration_lite_RegistrationLiteWidget);
2112
-
2113
- /***/ })
2114
- /******/ ]);
2115
- });