summit-registration-lite 2.0.11 → 2.0.14

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.css CHANGED
@@ -1,11 +1,13 @@
1
- .outerWrapper___OWXyi{border:1px solid lightgray;background-color:white;border-radius:5px}.innerWrapper___mIrBF{padding:10px}.title___Tbvkl{display:flex;justify-content:center;align-items:center;border-bottom:1px solid lightgray;margin:0px -10px;padding:0px 15px 5px}.title___Tbvkl i{cursor:pointer;margin-left:auto}.title___Tbvkl span{width:100%;font-weight:bold;font-size:18px;text-align:center;color:var(--color_primary)}
1
+ #modal___G3Cmq{padding:100px 0}.outerWrapper___OWXyi{border:1px solid lightgray;background-color:white;border-radius:5px}.innerWrapper___mIrBF{padding:10px}.title___Tbvkl{display:flex;justify-content:center;align-items:center;border-bottom:1px solid lightgray;margin:0px -10px;padding:0px 15px 5px}.title___Tbvkl i{cursor:pointer;margin-left:auto}.title___Tbvkl span{width:100%;font-weight:bold;font-size:18px;text-align:center;color:var(--color_primary)}
2
2
 
3
- :root{--color_primary: lightgray;--color_primary50: lightgray;--color_primary_contrast: #fff;--color_primary_contrast50: #ffffff50;--color_secondary: lightgray;--color_secondary_contrast: lightgray;--color_text_dark: #212121;--color_text_light: #ffffff;--color_text_input_hints: #212121}.step-wrapper{padding:10px;margin:10px;border:1px solid lightgray;border-radius:5px}.summit-registration-lite{color:var(--color_text_dark);font-size:15px;font-smooth:unset !important;-moz-osx-font-smoothing:none !important;-webkit-font-smoothing:auto !important}input{outline:none}
3
+ :root{--color_primary: lightgray;--color_primary50: lightgray;--color_primary_contrast: #fff;--color_primary_contrast50: #ffffff50;--color_secondary: lightgray;--color_secondary_contrast: lightgray;--color_text_dark: #212121;--color_text_light: #ffffff;--color_text_input_hints: #212121}.step-wrapper{padding:10px;margin:10px;border:1px solid lightgray;border-radius:5px}.summit-registration-lite{color:var(--color_text_dark);font-size:15px;font-smooth:auto !important;-moz-osx-font-smoothing:auto !important;-webkit-font-smoothing:auto !important}.summit-registration-lite input:-moz-placeholder,.summit-registration-lite input::-moz-placeholder{opacity:1}input{outline:none}
4
4
 
5
5
  .loginWrapper___sxUEn{display:flex;justify-content:center;font-weight:bold;text-align:center;padding:20px 0 30px}.innerWrapper___GQRkq{display:flex;flex-direction:column;justify-content:center;width:300px}.innerWrapper___GQRkq span{margin:10px 0}.button___QMZPu{padding:10px 30px;background-color:red;color:white;font-weight:normal;display:inline-flex;justify-content:center;margin:5px 0;border-radius:5px;cursor:pointer;background-position:28px center;background-repeat:no-repeat;background-size:16px;line-height:1.4;box-shadow:0px 3px 1px -2px rgba(0,0,0,0.2),0px 2px 2px 0px rgba(0,0,0,0.14),0px 1px 5px 0px rgba(0,0,0,0.12)}.button___QMZPu:hover{box-shadow:0px 2px 4px -1px rgba(0,0,0,0.2),0px 4px 5px 0px rgba(0,0,0,0.14),0px 1px 10px 0px rgba(0,0,0,0.12)}.loginCode___dDBup{margin-bottom:10px;font-size:16px}.loginCode___dDBup>div{margin-top:10px}.loginCode___dDBup span{display:inline-block;font-weight:normal;font-size:14px;color:#e5424d}.input___QR9sA{display:flex;height:40px;margin-top:5px}.input___QR9sA input{border:1px solid var(--color_primary);border-radius:5px;padding:5px;width:100%}.input___QR9sA input::placeholder{color:var(--color_text_input_hints)}.input___QR9sA button{margin-left:5px;background-color:var(--color_secondary_contrast);padding:0px 15px;border:1px solid var(--color_secondary_contrast);color:#fff;box-shadow:none;text-align:center;white-space:nowrap;font-weight:bold;border-radius:5px;cursor:pointer;display:flex;align-items:center;justify-content:center}
6
6
 
7
7
  .title___LksVm{font-weight:bold;cursor:pointer}.form___v5GIx{display:flex;flex-wrap:wrap;justify-content:space-between;margin:10px 0}.form___v5GIx div.fieldWrapper___Eoe61{width:48%;border-radius:5px;background-color:#e6f3ff;border:1px solid #3fa2f7;height:36px;padding:5px 10px;display:flex;justify-content:space-between;align-items:center;margin-bottom:5px}.form___v5GIx div.fieldWrapper___Eoe61:first-of-type{width:100%}.form___v5GIx div.fieldWrapper___Eoe61 input{width:100%;background-color:transparent;border:none}.form___v5GIx div.fieldWrapper___Eoe61 input:focus-visible{outline:none}.form___v5GIx div.fieldWrapper___Eoe61 i{position:relative}.form___v5GIx div.fieldWrapper___Eoe61>div{width:100%}.form___v5GIx div.fieldWrapper___Eoe61>div:first-of-type{width:95%}.form___v5GIx input{width:48%;border-radius:5px;border:1px solid #3fa2f7;color:#3486cd;font-size:16px;background-color:#e6f3ff;height:36px;padding:5px 10px;display:flex;justify-content:space-between;align-items:center;margin-bottom:5px;font-weight:bold}.form___v5GIx input::placeholder{color:#3486cd}
8
8
 
9
+ .form___zXb7s{display:flex;flex-wrap:wrap;justify-content:space-between;margin:10px 0}.form___zXb7s div.fieldWrapper___G4Wqw{width:100%;margin-bottom:5px}.form___zXb7s div.fieldWrapper___G4Wqw:first-of-type div.inputWrapper___Yz5zB{width:100%}.form___zXb7s div.fieldWrapper___G4Wqw .fieldRow___NfZdJ{justify-content:space-between;display:flex}.form___zXb7s div.fieldWrapper___G4Wqw div.inputWrapper___Yz5zB{width:48%}.form___zXb7s div.lawpayWrapper___hpUBf{height:36px}.form___zXb7s div.dateWrapper___XDfqs{display:flex;justify-content:space-between}.form___zXb7s div.dateWrapper___XDfqs>div{width:48%}.form___zXb7s div.dateWrapper___XDfqs>div .dropdown___l3_bk{width:100%}.form___zXb7s div.dateWrapper___XDfqs>div .dropdown___l3_bk>div{border:1px solid var(--color_primary);width:100%}.form___zXb7s div.inputWrapper___Yz5zB{display:flex;border-radius:5px;border:1px solid var(--color_primary);height:36px;padding:5px 10px;justify-content:space-between;align-items:center}.form___zXb7s div.inputWrapper___Yz5zB iframe{height:inherit;width:inherit}.form___zXb7s div.inputWrapper___Yz5zB input{width:100%;background-color:transparent;border:none;padding:0;font-size:16px;display:flex;justify-content:space-between;align-items:center}.form___zXb7s div.inputWrapper___Yz5zB input::placeholder{color:var(--color_text_input_hints);font-size:16px}.form___zXb7s div.inputWrapper___Yz5zB input:focus-visible{outline:none}.form___zXb7s div.inputWrapper___Yz5zB i{position:relative}.form___zXb7s div.inputWrapper___Yz5zB>div{width:100%}.form___zXb7s div.inputWrapper___Yz5zB>div:first-of-type{width:95%}.form___zXb7s div.fieldError___Igq3U{margin-top:5px;margin-bottom:5px;color:#e5424d;font-size:14px;line-height:1.5}.form___zXb7s div.fieldError___Igq3U::before{font-family:FontAwesome;content:'\f071';margin-right:5px}
10
+
9
11
  .form___DoT3x{display:flex;flex-wrap:wrap;justify-content:space-between;margin:10px 0}.form___DoT3x div.fieldWrapper___wa1Ks{width:48%;margin-bottom:5px}.form___DoT3x div.fieldWrapper___wa1Ks:first-of-type{width:100%}.form___DoT3x div.inputWrapper___CbXhF{display:flex;border-radius:5px;border:1px solid var(--color_primary);height:36px;padding:5px 10px;justify-content:space-between;align-items:center}.form___DoT3x div.inputWrapper___CbXhF input{width:100%;background-color:transparent;border:none;padding:0;font-size:16px;display:flex;justify-content:space-between;align-items:center}.form___DoT3x div.inputWrapper___CbXhF input::placeholder{color:var(--color_text_input_hints);font-size:16px}.form___DoT3x div.inputWrapper___CbXhF input:focus-visible{outline:none}.form___DoT3x div.inputWrapper___CbXhF i{position:relative}.form___DoT3x div.inputWrapper___CbXhF>div{width:100%}.form___DoT3x div.inputWrapper___CbXhF>div:first-of-type{width:95%}.form___DoT3x div.fieldError___QrMYW{margin-top:5px;margin-bottom:5px;color:#e5424d;font-size:14px;line-height:1.5}.form___DoT3x div.fieldError___QrMYW::before{font-family:FontAwesome;content:'\f071';margin-right:5px}
10
12
 
11
13
  .title___ECoNz{font-weight:bold;cursor:pointer;display:flex;justify-content:space-between}.title___ECoNz div{font-weight:normal}.form___lDFka{display:flex;flex-wrap:wrap;justify-content:space-between;margin:10px 0 0}.form___lDFka div.fieldWrapper___Mi_nL{width:48%;margin-bottom:5px}.form___lDFka div.inputWrapper___PEQFR{display:flex;border-radius:5px;border:1px solid var(--color_primary);height:36px;padding:5px 10px;justify-content:space-between;align-items:center}.form___lDFka div.inputWrapper___PEQFR input{width:100%;background-color:transparent;border:none;padding:0;font-size:16px;display:flex;justify-content:space-between;align-items:center}.form___lDFka div.inputWrapper___PEQFR input::placeholder{color:var(--color_text_input_hints);font-size:16px}.form___lDFka div.inputWrapper___PEQFR input:focus-visible{outline:none}.form___lDFka div.inputWrapper___PEQFR .readOnly___WRazF{opacity:0.6;cursor:default}.form___lDFka div.fieldError___ksJVe{margin-top:5px;margin-bottom:5px;color:#e5424d;font-size:14px;line-height:1.5}.form___lDFka div.fieldError___ksJVe::before{font-family:FontAwesome;content:'\f071';margin-right:5px}.form___lDFka .companies___kmGFB>div{position:relative;width:100%;border-radius:5px;display:flex;justify-content:space-between;align-items:center;font-size:15px}.form___lDFka .companies___kmGFB>div::placeholder{color:var(--color_text_input_hints)}.form___lDFka .companies___kmGFB>div>div{height:100%;width:100%}.form___lDFka .companies___kmGFB>div>div>div{height:36px;padding:0px;border:1px solid var(--color_primary);box-shadow:0 0 1px var(--color_primary)}.form___lDFka .companies___kmGFB>div>div>div>div{height:36px}.form___lDFka .companies___kmGFB>div>div>span+div+div{overflow:auto;height:auto}.form___lDFka .companies___kmGFB>div>div>span+div+div>div{height:auto}.form___lDFka .companies___kmGFB>div input{padding:5px 10px;border:1px solid var(--color_primary);padding-right:0px !important;background-color:transparent}.form___lDFka .companies___kmGFB>div i{right:10px !important}.moreInfo___cQYdZ{display:inline-block;margin-top:10px}.moreInfoTooltip___lslgT{max-width:280px}.ticketQuantityNotice___L6gis{margin:10px 0 0 !important}.formErrors___dQQMe{margin-top:10px}.formErrors___dQQMe div+div{margin-top:10px}
package/dist/index.js CHANGED
@@ -84,12 +84,215 @@ const actions_namespaceObject = require("openstack-uicore-foundation/lib/utils/a
84
84
  ;// CONCATENATED MODULE: external "sweetalert2"
85
85
  const external_sweetalert2_namespaceObject = require("sweetalert2");
86
86
  var external_sweetalert2_default = /*#__PURE__*/__webpack_require__.n(external_sweetalert2_namespaceObject);
87
- ;// CONCATENATED MODULE: ./src/actions.js
87
+ ;// CONCATENATED MODULE: ./src/utils/payment-providers/lawpay-provider.js
88
+ 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; }
89
+
90
+
91
+
92
+
93
+ class LawPayProvider {
94
+ constructor({
95
+ reservation,
96
+ summitId,
97
+ userProfile,
98
+ access_token,
99
+ apiBaseUrl,
100
+ dispatch
101
+ }) {
102
+ _defineProperty(this, "payTicket", ({
103
+ token
104
+ }) => async dispatch => {
105
+ var _this$userProfile, _this$userProfile2, _this$userProfile3, _this$userProfile4;
106
+
107
+ // Pay using affinity lawpay
108
+ let params = {
109
+ access_token: this.access_token,
110
+ 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'
111
+ };
112
+ let normalizedEntity = {
113
+ billing_address_1: token.address1 || '',
114
+ billing_address_2: ((_this$userProfile = this.userProfile) === null || _this$userProfile === void 0 ? void 0 : _this$userProfile.address2) || '',
115
+ billing_address_zip_code: token.postal_code,
116
+ billing_address_city: ((_this$userProfile2 = this.userProfile) === null || _this$userProfile2 === void 0 ? void 0 : _this$userProfile2.locality) || '',
117
+ billing_address_state: ((_this$userProfile3 = this.userProfile) === null || _this$userProfile3 === void 0 ? void 0 : _this$userProfile3.region) || '',
118
+ billing_address_country: ((_this$userProfile4 = this.userProfile) === null || _this$userProfile4 === void 0 ? void 0 : _this$userProfile4.country) || '',
119
+ payment_method_id: token.id
120
+ };
121
+ this.dispatch(startWidgetLoading());
122
+
123
+ if (this.reservation.amount > 0) {
124
+ return (0,actions_namespaceObject.putRequest)(null, (0,actions_namespaceObject.createAction)(PAY_RESERVATION), `${this.apiBaseUrl}/api/v1/summits/${this.summitId}/orders/${this.reservation.hash}/checkout`, normalizedEntity, actions_namespaceObject.authErrorHandler // entity
125
+ )(params)(this.dispatch).then(payload => {
126
+ this.dispatch(stopWidgetLoading());
127
+ this.dispatch((0,actions_namespaceObject.createAction)(CLEAR_RESERVATION)({}));
128
+ this.dispatch(changeStep(3));
129
+ return payload;
130
+ }).catch(e => {
131
+ this.dispatch(removeReservedTicket());
132
+ this.dispatch(changeStep(1));
133
+ this.dispatch(stopWidgetLoading());
134
+ return e;
135
+ }); // The payment has succeeded. Display a success message.
136
+ } else {
137
+ // FREE TICKET
138
+ return (0,actions_namespaceObject.putRequest)(null, (0,actions_namespaceObject.createAction)(PAY_RESERVATION), `${this.apiBaseUrl}/api/v1/summits/${this.summitId}/orders/${this.reservation.hash}/checkout`, normalizedEntity, actions_namespaceObject.authErrorHandler // entity
139
+ )(params)(this.dispatch).then(payload => {
140
+ this.dispatch(stopWidgetLoading());
141
+ this.dispatch((0,actions_namespaceObject.createAction)(CLEAR_RESERVATION)({}));
142
+ this.dispatch(changeStep(3));
143
+ return payload;
144
+ }).catch(e => {
145
+ this.dispatch(removeReservedTicket());
146
+ this.dispatch(changeStep(1));
147
+ this.dispatch(stopWidgetLoading());
148
+ return e;
149
+ }); // The payment has succeeded. Display a success message.
150
+ }
151
+ });
152
+
153
+ this.reservation = reservation;
154
+ this.summitId = summitId;
155
+ this.userProfile = userProfile;
156
+ this.access_token = access_token;
157
+ this.apiBaseUrl = apiBaseUrl;
158
+ this.dispatch = dispatch;
159
+ }
160
+
161
+ }
162
+ ;// CONCATENATED MODULE: ./src/utils/payment-providers/stripe-provider.js
163
+ function stripe_provider_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; }
164
+
165
+
166
+
167
+
168
+
169
+ class StripeProvider {
170
+ constructor({
171
+ reservation,
172
+ summitId,
173
+ userProfile,
174
+ access_token,
175
+ apiBaseUrl,
176
+ dispatch: _dispatch
177
+ }) {
178
+ stripe_provider_defineProperty(this, "payTicket", ({
179
+ token = null,
180
+ stripe = null,
181
+ zipCode = null
182
+ }) => async dispatch => {
183
+ var _this$userProfile, _this$userProfile2, _this$userProfile3, _this$userProfile4, _this$userProfile5;
184
+
185
+ let params = {
186
+ access_token: this.access_token,
187
+ 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'
188
+ };
189
+ let normalizedEntity = {
190
+ billing_address_1: ((_this$userProfile = this.userProfile) === null || _this$userProfile === void 0 ? void 0 : _this$userProfile.address1) || '',
191
+ billing_address_2: ((_this$userProfile2 = this.userProfile) === null || _this$userProfile2 === void 0 ? void 0 : _this$userProfile2.address2) || '',
192
+ billing_address_zip_code: zipCode,
193
+ billing_address_city: ((_this$userProfile3 = this.userProfile) === null || _this$userProfile3 === void 0 ? void 0 : _this$userProfile3.locality) || '',
194
+ billing_address_state: ((_this$userProfile4 = this.userProfile) === null || _this$userProfile4 === void 0 ? void 0 : _this$userProfile4.region) || '',
195
+ billing_address_country: ((_this$userProfile5 = this.userProfile) === null || _this$userProfile5 === void 0 ? void 0 : _this$userProfile5.country) || ''
196
+ };
197
+ dispatch(startWidgetLoading());
198
+
199
+ if (this.reservation.amount > 0) {
200
+ const {
201
+ id
202
+ } = token;
203
+ stripe.confirmCardPayment(this.reservation.payment_gateway_client_token, {
204
+ payment_method: {
205
+ card: {
206
+ token: id
207
+ }
208
+ }
209
+ }).then(result => {
210
+ if (result.error) {
211
+ // Reserve error.message in your UI.
212
+ external_sweetalert2_default().fire(result.error.message, "Please retry purchase.", "warning");
213
+ this.dispatch(changeStep(1));
214
+ this.dispatch(removeReservedTicket());
215
+ this.dispatch(stopWidgetLoading());
216
+ } else {
217
+ return (0,actions_namespaceObject.putRequest)(null, (0,actions_namespaceObject.createAction)(PAY_RESERVATION), `${this.apiBaseUrl}/api/v1/summits/${this.summitId}/orders/${this.reservation.hash}/checkout`, normalizedEntity, actions_namespaceObject.authErrorHandler // entity
218
+ )(params)(this.dispatch).then(payload => {
219
+ this.dispatch(stopWidgetLoading());
220
+ this.dispatch((0,actions_namespaceObject.createAction)(CLEAR_RESERVATION)({}));
221
+ this.dispatch(changeStep(3));
222
+ return payload;
223
+ }).catch(e => {
224
+ this.dispatch(stopWidgetLoading());
225
+ return e;
226
+ }); // The payment has succeeded. Display a success message.
227
+ }
228
+ }).catch(e => {
229
+ this.dispatch(removeReservedTicket());
230
+ this.dispatch(changeStep(1));
231
+ this.dispatch(stopWidgetLoading());
232
+ return e;
233
+ });
234
+ } else {
235
+ // FREE TICKET
236
+ return (0,actions_namespaceObject.putRequest)(null, (0,actions_namespaceObject.createAction)(PAY_RESERVATION), `${this.apiBaseUrl}/api/v1/summits/${this.summitId}/orders/${this.reservation.hash}/checkout`, normalizedEntity, actions_namespaceObject.authErrorHandler // entity
237
+ )(params)(this.dispatch).then(payload => {
238
+ this.dispatch(stopWidgetLoading());
239
+ this.dispatch((0,actions_namespaceObject.createAction)(CLEAR_RESERVATION)({}));
240
+ this.dispatch(changeStep(3));
241
+ return payload;
242
+ }).catch(e => {
243
+ this.dispatch(removeReservedTicket());
244
+ this.dispatch(changeStep(1));
245
+ this.dispatch(stopWidgetLoading());
246
+ return e;
247
+ }); // The payment has succeeded. Display a success message.
248
+ }
249
+ });
250
+
251
+ this.reservation = reservation;
252
+ this.summitId = summitId;
253
+ this.userProfile = userProfile;
254
+ this.access_token = access_token;
255
+ this.apiBaseUrl = apiBaseUrl;
256
+ this.dispatch = _dispatch;
257
+ }
258
+
259
+ }
260
+ ;// CONCATENATED MODULE: ./src/utils/payment-providers/payment-provider-factory.js
88
261
  function ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
89
262
 
90
- function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { _defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
263
+ function _objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? ownKeys(Object(source), !0).forEach(function (key) { payment_provider_factory_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
91
264
 
92
- 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; }
265
+ function payment_provider_factory_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; }
266
+
267
+
268
+
269
+ class PaymentProviderFactory {}
270
+
271
+ payment_provider_factory_defineProperty(PaymentProviderFactory, "build", (provider, params = {}) => {
272
+ let currentProvider = null;
273
+
274
+ switch (provider) {
275
+ case 'LawPay':
276
+ {
277
+ currentProvider = new LawPayProvider(_objectSpread({}, params));
278
+ break;
279
+ }
280
+
281
+ case 'Stripe':
282
+ {
283
+ currentProvider = new StripeProvider(_objectSpread({}, params));
284
+ break;
285
+ }
286
+ }
287
+
288
+ return currentProvider;
289
+ });
290
+ ;// CONCATENATED MODULE: ./src/actions.js
291
+ function actions_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
292
+
293
+ function actions_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? actions_ownKeys(Object(source), !0).forEach(function (key) { actions_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : actions_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
294
+
295
+ function actions_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; }
93
296
 
94
297
  /**
95
298
  * Copyright 2020 OpenStack Foundation
@@ -106,6 +309,7 @@ function _defineProperty(obj, key, value) { if (key in obj) { Object.definePrope
106
309
 
107
310
 
108
311
 
312
+
109
313
  const START_WIDGET_LOADING = 'START_WIDGET_LOADING';
110
314
  const STOP_WIDGET_LOADING = 'STOP_WIDGET_LOADING';
111
315
  const LOAD_INITIAL_VARS = 'LOAD_INITIAL_VARS';
@@ -228,7 +432,7 @@ const reserveTicket = ({
228
432
  dispatch(stopWidgetLoading());
229
433
  payload.response.promo_code = promoCode || null;
230
434
 
231
- if (!payload.response.payment_gateway_client_token) {
435
+ if (!payload.response.amount) {
232
436
  dispatch(payTicket(null, null, getAccessToken));
233
437
  return payload;
234
438
  } else {
@@ -273,7 +477,7 @@ const removeReservedTicket = () => async (dispatch, getState, {
273
477
  return e;
274
478
  });
275
479
  };
276
- const payTicket = (token = null, stripe = null, zipCode = null) => async (dispatch, getState, {
480
+ const payTicketWithProvider = (provider, params = {}) => async (dispatch, getState, {
277
481
  apiBaseUrl,
278
482
  getAccessToken
279
483
  }) => {
@@ -287,70 +491,16 @@ const payTicket = (token = null, stripe = null, zipCode = null) => async (dispat
287
491
  }
288
492
  } = getState();
289
493
  const access_token = await getAccessToken();
290
- let params = {
291
- access_token,
292
- 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'
293
- };
294
- let normalizedEntity = {
295
- billing_address_1: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.address1) || '',
296
- billing_address_2: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.address2) || '',
297
- billing_address_zip_code: zipCode,
298
- billing_address_city: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.locality) || '',
299
- billing_address_state: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.region) || '',
300
- billing_address_country: (userProfile === null || userProfile === void 0 ? void 0 : userProfile.country) || ''
301
- };
302
494
  dispatch(startWidgetLoading());
303
-
304
- if (reservation.payment_gateway_client_token) {
305
- const {
306
- id
307
- } = token;
308
- stripe.confirmCardPayment(reservation.payment_gateway_client_token, {
309
- payment_method: {
310
- card: {
311
- token: id
312
- }
313
- }
314
- }).then(result => {
315
- if (result.error) {
316
- // Reserve error.message in your UI.
317
- external_sweetalert2_default().fire(result.error.message, "Please retry purchase.", "warning");
318
- dispatch(changeStep(1));
319
- dispatch(removeReservedTicket());
320
- dispatch(stopWidgetLoading());
321
- } else {
322
- return (0,actions_namespaceObject.putRequest)(null, (0,actions_namespaceObject.createAction)(PAY_RESERVATION), `${apiBaseUrl}/api/v1/summits/${summitId}/orders/${reservation.hash}/checkout`, normalizedEntity, actions_namespaceObject.authErrorHandler // entity
323
- )(params)(dispatch).then(payload => {
324
- dispatch(stopWidgetLoading());
325
- dispatch((0,actions_namespaceObject.createAction)(CLEAR_RESERVATION)({}));
326
- dispatch(changeStep(3));
327
- return payload;
328
- }).catch(e => {
329
- dispatch(stopWidgetLoading());
330
- return e;
331
- }); // The payment has succeeded. Display a success message.
332
- }
333
- }).catch(e => {
334
- dispatch(removeReservedTicket());
335
- dispatch(changeStep(1));
336
- dispatch(stopWidgetLoading());
337
- return e;
338
- });
339
- } else {
340
- // FREE TICKET
341
- return (0,actions_namespaceObject.putRequest)(null, (0,actions_namespaceObject.createAction)(PAY_RESERVATION), `${apiBaseUrl}/api/v1/summits/${summitId}/orders/${reservation.hash}/checkout`, normalizedEntity, actions_namespaceObject.authErrorHandler // entity
342
- )(params)(dispatch).then(payload => {
343
- dispatch(stopWidgetLoading());
344
- dispatch((0,actions_namespaceObject.createAction)(CLEAR_RESERVATION)({}));
345
- dispatch(changeStep(3));
346
- return payload;
347
- }).catch(e => {
348
- dispatch(removeReservedTicket());
349
- dispatch(changeStep(1));
350
- dispatch(stopWidgetLoading());
351
- return e;
352
- }); // The payment has succeeded. Display a success message.
353
- }
495
+ const currentProvider = PaymentProviderFactory.build(provider, {
496
+ reservation,
497
+ summitId,
498
+ userProfile,
499
+ access_token,
500
+ apiBaseUrl,
501
+ dispatch
502
+ });
503
+ return dispatch(currentProvider.payTicket(actions_objectSpread({}, params)));
354
504
  };
355
505
  const changeStep = step => (dispatch, getState) => {
356
506
  dispatch(startWidgetLoading());
@@ -404,7 +554,7 @@ const isInPersonTicketType = ticketType => {
404
554
  };
405
555
 
406
556
  const normalizeReservation = entity => {
407
- const normalizedEntity = _objectSpread({}, entity);
557
+ const normalizedEntity = actions_objectSpread({}, entity);
408
558
 
409
559
  if (!entity.owner_company.id) {
410
560
  normalizedEntity['owner_company'] = entity.owner_company.name;
@@ -658,11 +808,9 @@ const external_react_use_namespaceObject = require("react-use");
658
808
  ;// CONCATENATED MODULE: external "openstack-uicore-foundation/lib/components/ajaxloader"
659
809
  const ajaxloader_namespaceObject = require("openstack-uicore-foundation/lib/components/ajaxloader");
660
810
  var ajaxloader_default = /*#__PURE__*/__webpack_require__.n(ajaxloader_namespaceObject);
661
- ;// CONCATENATED MODULE: external "@stripe/stripe-js"
662
- const stripe_js_namespaceObject = require("@stripe/stripe-js");
663
811
  ;// CONCATENATED MODULE: ./src/styles/general.module.scss
664
812
  // extracted by mini-css-extract-plugin
665
- /* harmony default export */ const general_module = ({"outerWrapper":"outerWrapper___OWXyi","innerWrapper":"innerWrapper___mIrBF","title":"title___Tbvkl"});
813
+ /* harmony default export */ const general_module = ({"modal":"modal___G3Cmq","outerWrapper":"outerWrapper___OWXyi","innerWrapper":"innerWrapper___mIrBF","title":"title___Tbvkl"});
666
814
  ;// CONCATENATED MODULE: ./src/components/login/index.module.scss
667
815
  // extracted by mini-css-extract-plugin
668
816
  /* harmony default export */ const index_module = ({"loginWrapper":"loginWrapper___sxUEn","innerWrapper":"innerWrapper___GQRkq","button":"button___QMZPu","loginCode":"loginCode___dDBup","input":"input___QR9sA"});
@@ -713,7 +861,7 @@ const LoginComponent = ({
713
861
  className: `${index_module.innerWrapper}`
714
862
  }, /*#__PURE__*/external_react_default().createElement("div", {
715
863
  className: index_module.loginCode
716
- }, "Enter your email address to login or signup:", /*#__PURE__*/external_react_default().createElement("div", {
864
+ }, "Enter your email to begin registration:", /*#__PURE__*/external_react_default().createElement("div", {
717
865
  className: index_module.input
718
866
  }, /*#__PURE__*/external_react_default().createElement("input", {
719
867
  placeholder: "youremail@example.com",
@@ -726,7 +874,7 @@ const LoginComponent = ({
726
874
  "data-testid": "email-button"
727
875
  }, ">"), /*#__PURE__*/external_react_default().createElement("br", null)), emailError && /*#__PURE__*/external_react_default().createElement("span", {
728
876
  "data-testid": "email-error"
729
- }, "Please enter a valid email address")), /*#__PURE__*/external_react_default().createElement("span", null, "Or you may signup or login with a social provider:"), options.map((o, index) => {
877
+ }, "Please enter a valid email address")), /*#__PURE__*/external_react_default().createElement("span", null, "Or you may login with one of the following:"), options.map((o, index) => {
730
878
  return o.provider_param ? /*#__PURE__*/external_react_default().createElement("div", {
731
879
  className: `${index_module.button}`,
732
880
  key: `provider-${o.provider_param}`,
@@ -773,11 +921,287 @@ const LoginComponent = ({
773
921
  /* harmony default export */ const login = (LoginComponent);
774
922
  ;// CONCATENATED MODULE: external "prop-types"
775
923
  const external_prop_types_namespaceObject = require("prop-types");
776
- ;// CONCATENATED MODULE: external "@stripe/react-stripe-js"
777
- const react_stripe_js_namespaceObject = require("@stripe/react-stripe-js");
778
924
  ;// CONCATENATED MODULE: ./src/components/payment/index.module.scss
779
925
  // extracted by mini-css-extract-plugin
780
926
  /* harmony default export */ const payment_index_module = ({"title":"title___LksVm","form":"form___v5GIx","fieldWrapper":"fieldWrapper___Eoe61"});
927
+ ;// CONCATENATED MODULE: external "openstack-uicore-foundation/lib/components"
928
+ const components_namespaceObject = require("openstack-uicore-foundation/lib/components");
929
+ ;// CONCATENATED MODULE: external "openstack-uicore-foundation/lib/utils/methods"
930
+ const methods_namespaceObject = require("openstack-uicore-foundation/lib/utils/methods");
931
+ ;// CONCATENATED MODULE: ./src/components/lawpay-form/index.module.scss
932
+ // extracted by mini-css-extract-plugin
933
+ /* harmony default export */ const lawpay_form_index_module = ({"form":"form___zXb7s","fieldWrapper":"fieldWrapper___G4Wqw","inputWrapper":"inputWrapper___Yz5zB","fieldRow":"fieldRow___NfZdJ","lawpayWrapper":"lawpayWrapper___hpUBf","dateWrapper":"dateWrapper___XDfqs","dropdown":"dropdown___l3_bk","fieldError":"fieldError___Igq3U"});
934
+ ;// CONCATENATED MODULE: ./src/components/lawpay-form/index.js
935
+ function lawpay_form_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
936
+
937
+ function lawpay_form_objectSpread(target) { for (var i = 1; i < arguments.length; i++) { var source = null != arguments[i] ? arguments[i] : {}; i % 2 ? lawpay_form_ownKeys(Object(source), !0).forEach(function (key) { lawpay_form_defineProperty(target, key, source[key]); }) : Object.getOwnPropertyDescriptors ? Object.defineProperties(target, Object.getOwnPropertyDescriptors(source)) : lawpay_form_ownKeys(Object(source)).forEach(function (key) { Object.defineProperty(target, key, Object.getOwnPropertyDescriptor(source, key)); }); } return target; }
938
+
939
+ function lawpay_form_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; }
940
+
941
+ /**
942
+ * Copyright 2020 OpenStack Foundation
943
+ * Licensed under the Apache License, Version 2.0 (the "License");
944
+ * you may not use this file except in compliance with the License.
945
+ * You may obtain a copy of the License at
946
+ * http://www.apache.org/licenses/LICENSE-2.0
947
+ * Unless required by applicable law or agreed to in writing, software
948
+ * distributed under the License is distributed on an "AS IS" BASIS,
949
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
950
+ * See the License for the specific language governing permissions and
951
+ * limitations under the License.
952
+ **/
953
+
954
+
955
+
956
+
957
+
958
+
959
+
960
+ const LawPayForm = ({
961
+ reservation,
962
+ payTicket,
963
+ userProfile,
964
+ marketingData,
965
+ providerKey,
966
+ provider,
967
+ timestamp
968
+ }) => {
969
+ const [hostedFields, setHostedFields] = (0,external_react_namespaceObject.useState)(null);
970
+ const [lawPayFields, setLawPayFields] = (0,external_react_namespaceObject.useState)({
971
+ exp_month: '',
972
+ exp_year: '',
973
+ postal_code: userProfile.postal_code || '',
974
+ address1: userProfile.address1 || ''
975
+ });
976
+ const [lawPayErrors, setLawPayErrors] = (0,external_react_namespaceObject.useState)({
977
+ exp_month: '',
978
+ exp_year: '',
979
+ postal_code: '',
980
+ credit_card_number: '',
981
+ cvv: '',
982
+ address1: ''
983
+ });
984
+ const style = {
985
+ color: marketingData.color_text_dark,
986
+ fontSize: '16px',
987
+ fontFamily: 'inherit',
988
+ backgroundColor: '#ffffff',
989
+ '::placeholder': {
990
+ color: marketingData.color_text_input_hints
991
+ }
992
+ };
993
+ const hostedFieldsConfiguration = {
994
+ publicKey: `${providerKey}`,
995
+ fields: [{
996
+ selector: "#my_credit_card_field_id",
997
+ input: {
998
+ type: "credit_card_number",
999
+ placeholder: "Credit Card Number",
1000
+ css: style
1001
+ }
1002
+ }, {
1003
+ selector: "#my_cvv_field_id",
1004
+ input: {
1005
+ type: "cvv",
1006
+ placeholder: "CCV",
1007
+ css: style
1008
+ }
1009
+ }]
1010
+ };
1011
+
1012
+ const hostedFieldsCallBack = state => {
1013
+ let fieldErrors = {};
1014
+ state.fields.map(f => {
1015
+ fieldErrors = lawpay_form_objectSpread(lawpay_form_objectSpread({}, fieldErrors), {}, {
1016
+ [f.type]: f.error
1017
+ });
1018
+ });
1019
+ setLawPayErrors(lawpay_form_objectSpread(lawpay_form_objectSpread({}, lawPayErrors), fieldErrors));
1020
+ };
1021
+
1022
+ (0,external_react_namespaceObject.useEffect)(() => {
1023
+ if (window.AffiniPay && hostedFields === null) {
1024
+ setHostedFields(window.AffiniPay.HostedFields.initializeFields(hostedFieldsConfiguration, hostedFieldsCallBack));
1025
+ }
1026
+ }, [reservation]);
1027
+
1028
+ const onExpireChange = ev => {
1029
+ setLawPayFields(lawpay_form_objectSpread(lawpay_form_objectSpread({}, lawPayFields), {}, {
1030
+ [ev.target.id]: ev.target.value
1031
+ }));
1032
+ };
1033
+
1034
+ const formHasErrors = () => {
1035
+ let errors = {};
1036
+ Object.keys(lawPayFields).map(key => {
1037
+ if (!lawPayFields[key]) {
1038
+ errors = lawpay_form_objectSpread(lawpay_form_objectSpread({}, errors), {}, {
1039
+ [key]: 'This field is required.'
1040
+ });
1041
+ }
1042
+ });
1043
+ setLawPayErrors(lawpay_form_objectSpread(lawpay_form_objectSpread({}, lawPayErrors), errors));
1044
+ return Object.keys(errors).length > 0;
1045
+ };
1046
+
1047
+ const onSubmit = async event => {
1048
+ event.preventDefault();
1049
+
1050
+ if (!hostedFields) {
1051
+ // Affinity Pay has not loaded yet. Make sure to disable
1052
+ // form submission until Affinity Pay has loaded.
1053
+ return;
1054
+ }
1055
+
1056
+ if (!formHasErrors()) {
1057
+ try {
1058
+ const token = await hostedFields.getPaymentToken({
1059
+ "postal_code": lawPayFields.postal_code,
1060
+ "address1": lawPayFields.address1,
1061
+ "exp_year": lawPayFields.exp_year,
1062
+ "exp_month": lawPayFields.exp_month
1063
+ });
1064
+ payTicket(provider, {
1065
+ token
1066
+ });
1067
+ } catch (error) {
1068
+ external_sweetalert2_default().fire("Payment error", error.message, "warning");
1069
+ }
1070
+ }
1071
+ };
1072
+
1073
+ const ddl_month = [{
1074
+ label: '1 - January',
1075
+ value: '01'
1076
+ }, {
1077
+ label: '2 - February',
1078
+ value: '02'
1079
+ }, {
1080
+ label: '3 - March',
1081
+ value: '03'
1082
+ }, {
1083
+ label: '4 - April',
1084
+ value: '04'
1085
+ }, {
1086
+ label: '5 - May',
1087
+ value: '05'
1088
+ }, {
1089
+ label: '6 - June',
1090
+ value: '06'
1091
+ }, {
1092
+ label: '7 - July',
1093
+ value: '07'
1094
+ }, {
1095
+ label: '8 - August',
1096
+ value: '08'
1097
+ }, {
1098
+ label: '9 - September',
1099
+ value: '09'
1100
+ }, {
1101
+ label: '10 - October',
1102
+ value: '10'
1103
+ }, {
1104
+ label: '11 - November',
1105
+ value: '11'
1106
+ }, {
1107
+ label: '12 - December',
1108
+ value: '12'
1109
+ }];
1110
+ const current_year = (0,methods_namespaceObject.epochToMomentTimeZone)(timestamp, 'utc').year();
1111
+ const year_ddl = Array.from({
1112
+ length: 15
1113
+ }, (_, i) => {
1114
+ return {
1115
+ label: `${current_year + i}`,
1116
+ value: `${current_year + i}`
1117
+ };
1118
+ });
1119
+ return /*#__PURE__*/external_react_default().createElement("form", {
1120
+ className: lawpay_form_index_module.form,
1121
+ id: "payment-form",
1122
+ onSubmit: onSubmit
1123
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1124
+ className: lawpay_form_index_module.fieldWrapper
1125
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1126
+ className: lawpay_form_index_module.inputWrapper
1127
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1128
+ id: "my_credit_card_field_id",
1129
+ className: lawpay_form_index_module.lawpayWrapper
1130
+ }), /*#__PURE__*/external_react_default().createElement("i", {
1131
+ className: "fa fa-credit-card"
1132
+ })), lawPayErrors.credit_card_number && /*#__PURE__*/external_react_default().createElement("div", {
1133
+ className: lawpay_form_index_module.fieldError
1134
+ }, lawPayErrors.credit_card_number)), /*#__PURE__*/external_react_default().createElement("div", {
1135
+ className: lawpay_form_index_module.fieldWrapper
1136
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1137
+ className: lawpay_form_index_module.dateWrapper
1138
+ }, /*#__PURE__*/external_react_default().createElement("div", null, /*#__PURE__*/external_react_default().createElement(components_namespaceObject.Dropdown, {
1139
+ className: lawpay_form_index_module.dropdown,
1140
+ placeholder: "Month",
1141
+ onChange: onExpireChange,
1142
+ id: "exp_month",
1143
+ options: ddl_month
1144
+ }), lawPayErrors.exp_month && /*#__PURE__*/external_react_default().createElement("div", {
1145
+ className: lawpay_form_index_module.fieldError
1146
+ }, lawPayErrors.exp_month)), /*#__PURE__*/external_react_default().createElement("div", null, /*#__PURE__*/external_react_default().createElement(components_namespaceObject.Dropdown, {
1147
+ className: lawpay_form_index_module.dropdown,
1148
+ placeholder: "Year",
1149
+ onChange: onExpireChange,
1150
+ id: "exp_year",
1151
+ options: year_ddl
1152
+ }), lawPayErrors.exp_year && /*#__PURE__*/external_react_default().createElement("div", {
1153
+ className: lawpay_form_index_module.fieldError
1154
+ }, lawPayErrors.exp_year)))), /*#__PURE__*/external_react_default().createElement("div", {
1155
+ className: lawpay_form_index_module.fieldWrapper
1156
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1157
+ className: lawpay_form_index_module.fieldRow
1158
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1159
+ className: lawpay_form_index_module.inputWrapper
1160
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1161
+ id: "my_cvv_field_id",
1162
+ className: lawpay_form_index_module.lawpayWrapper
1163
+ })), /*#__PURE__*/external_react_default().createElement("div", {
1164
+ className: lawpay_form_index_module.inputWrapper
1165
+ }, /*#__PURE__*/external_react_default().createElement("input", {
1166
+ type: "text",
1167
+ name: "postal_code",
1168
+ placeholder: "ZIP Code *",
1169
+ onChange: e => setLawPayFields(lawpay_form_objectSpread(lawpay_form_objectSpread({}, lawPayFields), {}, {
1170
+ postal_code: e.target.value
1171
+ }))
1172
+ }))), /*#__PURE__*/external_react_default().createElement("div", {
1173
+ className: lawpay_form_index_module.fieldRow
1174
+ }, lawPayErrors.cvv && /*#__PURE__*/external_react_default().createElement("div", {
1175
+ className: lawpay_form_index_module.fieldError
1176
+ }, lawPayErrors.cvv), lawPayErrors.postal_code && /*#__PURE__*/external_react_default().createElement("div", {
1177
+ className: lawpay_form_index_module.fieldError
1178
+ }, lawPayErrors.postal_code))), /*#__PURE__*/external_react_default().createElement("div", {
1179
+ className: lawpay_form_index_module.fieldWrapper
1180
+ }, /*#__PURE__*/external_react_default().createElement("div", {
1181
+ className: lawpay_form_index_module.inputWrapper
1182
+ }, /*#__PURE__*/external_react_default().createElement("input", {
1183
+ type: "text",
1184
+ name: "address1",
1185
+ placeholder: "Address *",
1186
+ onChange: e => setLawPayFields(lawpay_form_objectSpread(lawpay_form_objectSpread({}, lawPayFields), {}, {
1187
+ address1: e.target.value
1188
+ }))
1189
+ })), lawPayErrors.address1 && /*#__PURE__*/external_react_default().createElement("div", {
1190
+ className: lawpay_form_index_module.fieldError
1191
+ }, lawPayErrors.address1)));
1192
+ };
1193
+
1194
+ const mapStateToProps = ({
1195
+ registrationLiteState
1196
+ }) => ({
1197
+ marketingData: registrationLiteState.settings.marketingData
1198
+ });
1199
+
1200
+ /* harmony default export */ const lawpay_form = ((0,external_react_redux_namespaceObject.connect)(mapStateToProps, null)(LawPayForm));
1201
+ ;// CONCATENATED MODULE: external "@stripe/stripe-js"
1202
+ const stripe_js_namespaceObject = require("@stripe/stripe-js");
1203
+ ;// CONCATENATED MODULE: external "@stripe/react-stripe-js"
1204
+ const react_stripe_js_namespaceObject = require("@stripe/react-stripe-js");
781
1205
  ;// CONCATENATED MODULE: external "react-hook-form"
782
1206
  const external_react_hook_form_namespaceObject = require("react-hook-form");
783
1207
  ;// CONCATENATED MODULE: external "lodash/merge"
@@ -852,7 +1276,8 @@ const StripeForm = ({
852
1276
  payTicket,
853
1277
  userProfile,
854
1278
  marketingData,
855
- stripeOptions
1279
+ stripeOptions,
1280
+ provider
856
1281
  }) => {
857
1282
  const stripe = (0,react_stripe_js_namespaceObject.useStripe)();
858
1283
  const elements = (0,react_stripe_js_namespaceObject.useElements)();
@@ -903,7 +1328,11 @@ const StripeForm = ({
903
1328
  });
904
1329
 
905
1330
  if (token) {
906
- payTicket(token, stripe, data.zipCode);
1331
+ payTicket(provider, {
1332
+ token,
1333
+ stripe,
1334
+ zipCode: data.zipCode
1335
+ });
907
1336
  } else if (error) {
908
1337
  if (stripeErrorCodeMap[error.code]) {
909
1338
  setStripeErrors({
@@ -969,13 +1398,59 @@ const StripeForm = ({
969
1398
  }, "This field is required.")));
970
1399
  };
971
1400
 
972
- const mapStateToProps = ({
1401
+ const stripe_form_mapStateToProps = ({
973
1402
  registrationLiteState
974
1403
  }) => ({
975
1404
  marketingData: registrationLiteState.settings.marketingData
976
1405
  });
977
1406
 
978
- /* harmony default export */ const stripe_form = ((0,external_react_redux_namespaceObject.connect)(mapStateToProps, null)(StripeForm));
1407
+ /* harmony default export */ const stripe_form = ((0,external_react_redux_namespaceObject.connect)(stripe_form_mapStateToProps, null)(StripeForm));
1408
+ ;// CONCATENATED MODULE: ./src/components/stripe-component/index.js
1409
+ /**
1410
+ * Copyright 2020 OpenStack Foundation
1411
+ * Licensed under the Apache License, Version 2.0 (the "License");
1412
+ * you may not use this file except in compliance with the License.
1413
+ * You may obtain a copy of the License at
1414
+ * http://www.apache.org/licenses/LICENSE-2.0
1415
+ * Unless required by applicable law or agreed to in writing, software
1416
+ * distributed under the License is distributed on an "AS IS" BASIS,
1417
+ * WITHOUT WARRANTIES OR CONDITIONS OF ANY KIND, either express or implied.
1418
+ * See the License for the specific language governing permissions and
1419
+ * limitations under the License.
1420
+ **/
1421
+
1422
+
1423
+
1424
+
1425
+
1426
+
1427
+ const stripe_component_StripeProvider = ({
1428
+ userProfile,
1429
+ reservation,
1430
+ payTicket,
1431
+ providerKey,
1432
+ provider,
1433
+ stripeOptions
1434
+ }) => {
1435
+ const stripePromise = (0,external_react_namespaceObject.useMemo)(() => (0,stripe_js_namespaceObject.loadStripe)(providerKey), [providerKey]);
1436
+ const options = {
1437
+ fonts: stripeOptions === null || stripeOptions === void 0 ? void 0 : stripeOptions.fonts
1438
+ };
1439
+ return /*#__PURE__*/external_react_default().createElement(react_stripe_js_namespaceObject.Elements, {
1440
+ options: options,
1441
+ stripe: stripePromise
1442
+ }, /*#__PURE__*/external_react_default().createElement(stripe_form, {
1443
+ reservation: reservation,
1444
+ payTicket: payTicket,
1445
+ userProfile: userProfile,
1446
+ stripeOptions: stripeOptions,
1447
+ provider: provider
1448
+ }));
1449
+ };
1450
+
1451
+ /* harmony default export */ const stripe_component = (stripe_component_StripeProvider);
1452
+ ;// CONCATENATED MODULE: external "react-helmet"
1453
+ const external_react_helmet_namespaceObject = require("react-helmet");
979
1454
  ;// CONCATENATED MODULE: ./src/components/payment/index.js
980
1455
  function payment_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
981
1456
 
@@ -1003,13 +1478,16 @@ function payment_defineProperty(obj, key, value) { if (key in obj) { Object.defi
1003
1478
 
1004
1479
 
1005
1480
 
1481
+
1006
1482
  const PaymentComponent = ({
1007
1483
  isActive,
1008
1484
  userProfile,
1009
1485
  reservation,
1010
1486
  payTicket,
1011
- stripeKey,
1012
- stripeOptions
1487
+ providerKey,
1488
+ provider,
1489
+ stripeOptions,
1490
+ timestamp
1013
1491
  }) => {
1014
1492
  const [ref, {
1015
1493
  height
@@ -1028,9 +1506,6 @@ const PaymentComponent = ({
1028
1506
  marginBottom: isActive ? 5 : 0
1029
1507
  }
1030
1508
  });
1031
- const options = {
1032
- fonts: stripeOptions === null || stripeOptions === void 0 ? void 0 : stripeOptions.fonts
1033
- };
1034
1509
  return /*#__PURE__*/external_react_default().createElement("div", {
1035
1510
  className: `${payment_index_module.outerWrapper} step-wrapper`
1036
1511
  }, /*#__PURE__*/external_react_default().createElement((external_react_default()).Fragment, null, /*#__PURE__*/external_react_default().createElement("div", {
@@ -1039,24 +1514,30 @@ const PaymentComponent = ({
1039
1514
  className: payment_index_module.title
1040
1515
  }, /*#__PURE__*/external_react_default().createElement("span", null, "Payment")), /*#__PURE__*/external_react_default().createElement(external_react_spring_namespaceObject.animated.div, {
1041
1516
  style: payment_objectSpread({
1042
- overflow: 'hidden'
1517
+ overflow: `${isActive ? '' : 'hidden'}`
1043
1518
  }, toggleAnimation)
1044
1519
  }, /*#__PURE__*/external_react_default().createElement("div", {
1045
1520
  ref: ref
1046
- }, /*#__PURE__*/external_react_default().createElement(react_stripe_js_namespaceObject.Elements, {
1047
- options: options,
1048
- stripe: stripeKey
1049
- }, /*#__PURE__*/external_react_default().createElement(stripe_form, {
1521
+ }, provider === 'Stripe' && /*#__PURE__*/external_react_default().createElement(stripe_component, {
1522
+ provider: provider,
1523
+ providerKey: providerKey,
1050
1524
  reservation: reservation,
1051
1525
  payTicket: payTicket,
1052
1526
  userProfile: userProfile,
1053
1527
  stripeOptions: stripeOptions
1528
+ }), provider === 'LawPay' && /*#__PURE__*/external_react_default().createElement((external_react_default()).Fragment, null, /*#__PURE__*/external_react_default().createElement(external_react_helmet_namespaceObject.Helmet, null, /*#__PURE__*/external_react_default().createElement("script", {
1529
+ src: "https://cdn.affinipay.com/hostedfields/1.1.1/fieldGen_1.1.1.js"
1530
+ })), /*#__PURE__*/external_react_default().createElement(lawpay_form, {
1531
+ provider: provider,
1532
+ reservation: reservation,
1533
+ payTicket: payTicket,
1534
+ userProfile: userProfile,
1535
+ providerKey: providerKey,
1536
+ timestamp: timestamp
1054
1537
  })))))));
1055
1538
  };
1056
1539
 
1057
1540
  /* harmony default export */ const payment = (PaymentComponent);
1058
- ;// CONCATENATED MODULE: external "openstack-uicore-foundation/lib/components"
1059
- const components_namespaceObject = require("openstack-uicore-foundation/lib/components");
1060
1541
  ;// CONCATENATED MODULE: external "react-tooltip"
1061
1542
  const external_react_tooltip_namespaceObject = require("react-tooltip");
1062
1543
  var external_react_tooltip_default = /*#__PURE__*/__webpack_require__.n(external_react_tooltip_namespaceObject);
@@ -1634,8 +2115,6 @@ const ButtonBarComponent = ({
1634
2115
  ;// CONCATENATED MODULE: ./src/components/purchase-complete/index.module.scss
1635
2116
  // extracted by mini-css-extract-plugin
1636
2117
  /* harmony default export */ const purchase_complete_index_module = ({"button":"button___XMN8a","wrapper":"wrapper___Jd5Xg","circle":"circle___lcN86","complete":"complete___HAHzl","actions":"actions___jJdPX","footer":"footer___FL9TW"});
1637
- ;// CONCATENATED MODULE: external "openstack-uicore-foundation/lib/utils/methods"
1638
- const methods_namespaceObject = require("openstack-uicore-foundation/lib/utils/methods");
1639
2118
  ;// CONCATENATED MODULE: ./src/components/purchase-complete/index.js
1640
2119
  /**
1641
2120
  * Copyright 2020 OpenStack Foundation
@@ -1783,7 +2262,7 @@ const PasswordlessLoginComponent = ({
1783
2262
  className: `${login_passwordless_index_module.button} button`,
1784
2263
  onClick: () => tryPasswordlessLogin(otpCode),
1785
2264
  "data-testid": "verify"
1786
- }, "Verify"), /*#__PURE__*/external_react_default().createElement("b", null, "or go back and ", /*#__PURE__*/external_react_default().createElement("span", {
2265
+ }, "Verify Email"), /*#__PURE__*/external_react_default().createElement("b", null, "or go back and ", /*#__PURE__*/external_react_default().createElement("span", {
1787
2266
  className: login_passwordless_index_module.link,
1788
2267
  onClick: () => goToLogin(),
1789
2268
  "data-testid": "go-back"
@@ -1835,7 +2314,7 @@ const TicketOwnedComponent = ({
1835
2314
 
1836
2315
  /* harmony default export */ const ticket_owned = (TicketOwnedComponent);
1837
2316
  ;// CONCATENATED MODULE: ./src/components/registration-lite.js
1838
- const registration_lite_excluded = ["loadSession", "setMarketingSettings", "changeStep", "removeReservedTicket", "reserveTicket", "payTicket", "onPurchaseComplete", "getTicketTypes", "getTaxesTypes", "getLoginCode", "passwordlessLogin", "goToLogin", "loginOptions", "allowsNativeAuth", "allowsOtpAuth", "reservation", "checkout", "ticketTypes", "taxTypes", "step", "passwordlessCodeSent", "passwordlessEmail", "passwordlessCode", "getPasswordlessCode", "passwordlessCodeError", "loginWithCode", "goToExtraQuestions", "goToEvent", "goToRegistration", "profileData", "summitData", "supportEmail", "ticketOwned", "ownedTickets", "widgetLoading", "loading", "inPersonDisclaimer", "userProfile", "handleCompanyError", "stripeOptions"];
2317
+ const registration_lite_excluded = ["loadSession", "setMarketingSettings", "changeStep", "removeReservedTicket", "reserveTicket", "payTicketWithProvider", "onPurchaseComplete", "getTicketTypes", "getTaxesTypes", "getLoginCode", "passwordlessLogin", "goToLogin", "loginOptions", "allowsNativeAuth", "allowsOtpAuth", "reservation", "checkout", "ticketTypes", "taxTypes", "step", "passwordlessCodeSent", "passwordlessEmail", "passwordlessCode", "getPasswordlessCode", "passwordlessCodeError", "loginWithCode", "goToExtraQuestions", "goToEvent", "goToRegistration", "profileData", "summitData", "supportEmail", "ticketOwned", "ownedTickets", "widgetLoading", "loading", "inPersonDisclaimer", "userProfile", "handleCompanyError", "stripeOptions"];
1839
2318
 
1840
2319
  function registration_lite_ownKeys(object, enumerableOnly) { var keys = Object.keys(object); if (Object.getOwnPropertySymbols) { var symbols = Object.getOwnPropertySymbols(object); enumerableOnly && (symbols = symbols.filter(function (sym) { return Object.getOwnPropertyDescriptor(object, sym).enumerable; })), keys.push.apply(keys, symbols); } return keys; }
1841
2320
 
@@ -1876,7 +2355,6 @@ function registration_lite_objectWithoutPropertiesLoose(source, excluded) { if (
1876
2355
 
1877
2356
 
1878
2357
 
1879
-
1880
2358
  const RegistrationLite = _ref => {
1881
2359
  var _formValues$ticketTyp, _formValues$ticketTyp2;
1882
2360
 
@@ -1886,7 +2364,7 @@ const RegistrationLite = _ref => {
1886
2364
  changeStep,
1887
2365
  removeReservedTicket,
1888
2366
  reserveTicket,
1889
- payTicket,
2367
+ payTicketWithProvider,
1890
2368
  onPurchaseComplete,
1891
2369
  getTicketTypes,
1892
2370
  getTaxesTypes,
@@ -1947,15 +2425,16 @@ const RegistrationLite = _ref => {
1947
2425
  }));
1948
2426
 
1949
2427
  let publicKey = null;
2428
+ let provider = '';
1950
2429
 
1951
2430
  for (let profile of summitData.payment_profiles) {
1952
2431
  if (profile.application_type === 'Registration') {
1953
2432
  publicKey = profile.test_mode_enabled ? profile.test_publishable_key : profile.live_publishable_key;
2433
+ provider = profile.provider;
1954
2434
  break;
1955
2435
  }
1956
2436
  }
1957
2437
 
1958
- const stripePromise = (0,external_react_namespaceObject.useMemo)(() => (0,stripe_js_namespaceObject.loadStripe)(publicKey), [publicKey]);
1959
2438
  (0,external_react_namespaceObject.useEffect)(() => {
1960
2439
  loadSession(registration_lite_objectSpread(registration_lite_objectSpread({}, rest), {}, {
1961
2440
  summitData,
@@ -2010,12 +2489,12 @@ const RegistrationLite = _ref => {
2010
2489
  };
2011
2490
 
2012
2491
  return /*#__PURE__*/external_react_default().createElement("div", {
2013
- id: "modal",
2492
+ id: `${general_module.modal}`,
2014
2493
  className: "modal is-active"
2015
2494
  }, /*#__PURE__*/external_react_default().createElement("div", {
2016
2495
  className: "modal-background"
2017
2496
  }), /*#__PURE__*/external_react_default().createElement("div", {
2018
- className: "modal-content"
2497
+ className: `${general_module.modal} modal-content`
2019
2498
  }, /*#__PURE__*/external_react_default().createElement((ajaxloader_default()), {
2020
2499
  relative: true,
2021
2500
  color: '#ffffff',
@@ -2077,9 +2556,11 @@ const RegistrationLite = _ref => {
2077
2556
  }, /*#__PURE__*/external_react_default().createElement(payment, {
2078
2557
  isActive: step === 2,
2079
2558
  reservation: reservation,
2080
- payTicket: payTicket,
2559
+ payTicket: payTicketWithProvider,
2081
2560
  userProfile: profileData,
2082
- stripeKey: stripePromise,
2561
+ timestamp: summitData.timestamp,
2562
+ provider: provider,
2563
+ providerKey: publicKey,
2083
2564
  stripeOptions: stripeOptions
2084
2565
  })))), profileData && step === 3 && /*#__PURE__*/external_react_default().createElement(purchase_complete, {
2085
2566
  checkout: checkout,
@@ -2118,7 +2599,7 @@ const registration_lite_mapStateToProps = ({
2118
2599
  changeStep: changeStep,
2119
2600
  reserveTicket: reserveTicket,
2120
2601
  removeReservedTicket: removeReservedTicket,
2121
- payTicket: payTicket,
2602
+ payTicketWithProvider: payTicketWithProvider,
2122
2603
  getTicketTypes: getTicketTypes,
2123
2604
  getTaxesTypes: getTaxesTypes,
2124
2605
  getLoginCode: getLoginCode,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "summit-registration-lite",
3
- "version": "2.0.11",
3
+ "version": "2.0.14",
4
4
  "description": "Summit Registration Lite",
5
5
  "main": "index.js",
6
6
  "scripts": {
@@ -46,6 +46,7 @@
46
46
  "crypto-js": "^4.1.1",
47
47
  "css-loader": "^6.7.1",
48
48
  "dotenv-webpack": "^7.1.0",
49
+ "dropzone": "^6.0.0-beta.2",
49
50
  "file-loader": "^6.2.0",
50
51
  "font-awesome": "4.7.0",
51
52
  "history": "^4.7.2",
@@ -65,10 +66,14 @@
65
66
  "react": "^16.8.4",
66
67
  "react-bootstrap": "^0.33.1",
67
68
  "react-datetime": "^2.15.0",
69
+ "react-dnd": "^16.0.1",
70
+ "react-dnd-html5-backend": "^16.0.1",
68
71
  "react-dom": "^16.4.1",
72
+ "react-dropzone": "^14.2.1",
69
73
  "react-redux": "^7.2.0",
70
74
  "react-router": "^4.3.1",
71
75
  "react-router-dom": "^4.3.1",
76
+ "react-rte": "^0.16.5",
72
77
  "react-select": "^2.4.3",
73
78
  "react-test-renderer": "^17.0.2",
74
79
  "react-tooltip": "^3.11.6",
@@ -85,6 +90,7 @@
85
90
  "timesync": "^1.0.5",
86
91
  "urijs": "^1.19.1",
87
92
  "url-loader": "^4.1.1",
93
+ "video.js": "^7.19.2",
88
94
  "webpack": "^5.70.0",
89
95
  "webpack-cli": "^4.9.2",
90
96
  "webpack-dev-server": "^4.7.4",
@@ -122,6 +128,7 @@
122
128
  "dependencies": {
123
129
  "@stripe/react-stripe-js": "^1.4.1",
124
130
  "@stripe/stripe-js": "^1.15.0",
131
+ "react-helmet": "^6.1.0",
125
132
  "react-hook-form": "^7.6.7",
126
133
  "react-otp-input": "^2.4.0",
127
134
  "react-spring": "^9.1.2",