@paynext/sdk 0.0.136 → 0.0.137

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
@@ -1,2920 +0,0 @@
1
- import { c as Q, g as te } from "./_commonjs-dynamic-modules-C4BgavC4.js";
2
- function ne(Y, G) {
3
- for (var n = 0; n < G.length; n++) {
4
- const u = G[n];
5
- if (typeof u != "string" && !Array.isArray(u)) {
6
- for (const a in u)
7
- if (a !== "default" && !(a in Y)) {
8
- const e = Object.getOwnPropertyDescriptor(u, a);
9
- e && Object.defineProperty(Y, a, e.get ? e : {
10
- enumerable: !0,
11
- get: () => u[a]
12
- });
13
- }
14
- }
15
- }
16
- return Object.freeze(Object.defineProperty(Y, Symbol.toStringTag, { value: "Module" }));
17
- }
18
- var q = { exports: {} }, J;
19
- function re() {
20
- return J || (J = 1, function(Y, G) {
21
- (function(n) {
22
- Y.exports = n();
23
- })(function() {
24
- return (/* @__PURE__ */ function() {
25
- function n(u, a, e) {
26
- function s(t, o) {
27
- if (!a[t]) {
28
- if (!u[t]) {
29
- var c = typeof Q == "function" && Q;
30
- if (!o && c) return c(t, !0);
31
- if (i) return i(t, !0);
32
- var f = new Error("Cannot find module '" + t + "'");
33
- throw f.code = "MODULE_NOT_FOUND", f;
34
- }
35
- var m = a[t] = { exports: {} };
36
- u[t][0].call(m.exports, function(v) {
37
- var h = u[t][1][v];
38
- return s(h || v);
39
- }, m, m.exports, n, u, a, e);
40
- }
41
- return a[t].exports;
42
- }
43
- for (var i = typeof Q == "function" && Q, r = 0; r < e.length; r++) s(e[r]);
44
- return s;
45
- }
46
- return n;
47
- }())({ 1: [function(n, u, a) {
48
- var e = {};
49
- function s(i) {
50
- var r, t = JSON.stringify(i);
51
- if (!i.forceScriptReload && (r = e[t], r))
52
- return r;
53
- var o = document.createElement("script"), c = i.dataAttributes || {}, f = i.container || document.head;
54
- return o.src = i.src, o.id = i.id || "", o.async = !0, i.type && o.setAttribute("type", "".concat(i.type)), i.crossorigin && o.setAttribute("crossorigin", "".concat(i.crossorigin)), i.integrity && o.setAttribute("integrity", "".concat(i.integrity)), Object.keys(c).forEach(function(m) {
55
- o.setAttribute("data-".concat(m), "".concat(c[m]));
56
- }), r = new Promise(function(m, v) {
57
- o.addEventListener("load", function() {
58
- m(o);
59
- }), o.addEventListener("error", function() {
60
- v(new Error("".concat(i.src, " failed to load.")));
61
- }), o.addEventListener("abort", function() {
62
- v(new Error("".concat(i.src, " has aborted.")));
63
- }), f.appendChild(o);
64
- }), e[t] = r, r;
65
- }
66
- s.clearCache = function() {
67
- e = {};
68
- }, u.exports = s;
69
- }, {}], 2: [function(n, u, a) {
70
- u.exports = n("./dist/load-script");
71
- }, { "./dist/load-script": 1 }], 3: [function(n, u, a) {
72
- u.exports = function(s) {
73
- return s = s || window.navigator.userAgent, /Android/i.test(s);
74
- };
75
- }, {}], 4: [function(n, u, a) {
76
- var e = n("./is-edge"), s = n("./is-samsung"), i = n("./is-duckduckgo"), r = n("./is-opera"), t = n("./is-silk");
77
- u.exports = function(c) {
78
- return c = c || window.navigator.userAgent, (c.indexOf("Chrome") !== -1 || c.indexOf("CriOS") !== -1) && !e(c) && !s(c) && !i(c) && !r(c) && !t(c);
79
- };
80
- }, { "./is-duckduckgo": 5, "./is-edge": 6, "./is-opera": 14, "./is-samsung": 15, "./is-silk": 16 }], 5: [function(n, u, a) {
81
- u.exports = function(s) {
82
- return s = s || window.navigator.userAgent, s.indexOf("DuckDuckGo/") !== -1;
83
- };
84
- }, {}], 6: [function(n, u, a) {
85
- u.exports = function(s) {
86
- return s = s || window.navigator.userAgent, s.indexOf("Edge/") !== -1 || s.indexOf("Edg/") !== -1;
87
- };
88
- }, {}], 7: [function(n, u, a) {
89
- u.exports = function(s) {
90
- return s = s || window.navigator.userAgent, /FxiOS/i.test(s);
91
- };
92
- }, {}], 8: [function(n, u, a) {
93
- var e = n("./is-ios");
94
- function s(i) {
95
- return /\bGSA\b/.test(i);
96
- }
97
- u.exports = function(r) {
98
- return r = r || window.navigator.userAgent, e(r) && s(r);
99
- };
100
- }, { "./is-ios": 12 }], 9: [function(n, u, a) {
101
- var e = n("./is-ios"), s = n("./is-ios-firefox"), i = /webkit/i;
102
- function r(c) {
103
- return i.test(c);
104
- }
105
- function t(c) {
106
- return c.indexOf("CriOS") > -1;
107
- }
108
- function o(c) {
109
- return c.indexOf("FBAN") > -1;
110
- }
111
- u.exports = function(f) {
112
- return f = f || window.navigator.userAgent, e(f) && r(f) && !t(f) && !s(f) && !o(f);
113
- };
114
- }, { "./is-ios": 12, "./is-ios-firefox": 7 }], 10: [function(n, u, a) {
115
- var e = n("./is-ios"), s = n("./is-ios-google-search-app");
116
- u.exports = function(r) {
117
- return r = r || window.navigator.userAgent, e(r) ? s(r) ? !0 : /.+AppleWebKit(?!.*Safari)/i.test(r) : !1;
118
- };
119
- }, { "./is-ios": 12, "./is-ios-google-search-app": 8 }], 11: [function(n, u, a) {
120
- var e = n("./is-ios-webview");
121
- u.exports = function(i, r) {
122
- return r = typeof r != "undefined" ? r : window.statusbar.visible, e(i) && r;
123
- };
124
- }, { "./is-ios-webview": 10 }], 12: [function(n, u, a) {
125
- var e = n("./is-ipados");
126
- u.exports = function(i, r, t) {
127
- r === void 0 && (r = !0), i = i || window.navigator.userAgent;
128
- var o = /iPhone|iPod|iPad/i.test(i);
129
- return r ? o || e(i, t) : o;
130
- };
131
- }, { "./is-ipados": 13 }], 13: [function(n, u, a) {
132
- u.exports = function(s, i) {
133
- return s = s || window.navigator.userAgent, i = i || window.document, /Mac|iPad/i.test(s) && "ontouchend" in i;
134
- };
135
- }, {}], 14: [function(n, u, a) {
136
- u.exports = function(s) {
137
- return s = s || window.navigator.userAgent, s.indexOf("OPR/") !== -1 || s.indexOf("Opera/") !== -1 || s.indexOf("OPT/") !== -1;
138
- };
139
- }, {}], 15: [function(n, u, a) {
140
- u.exports = function(s) {
141
- return s = s || window.navigator.userAgent, /SamsungBrowser/i.test(s);
142
- };
143
- }, {}], 16: [function(n, u, a) {
144
- u.exports = function(s) {
145
- return s = s || window.navigator.userAgent, s.indexOf("Silk/") !== -1;
146
- };
147
- }, {}], 17: [function(n, u, a) {
148
- var e = 48, s = n("./is-android"), i = n("./is-ios-firefox"), r = n("./is-ios-webview"), t = n("./is-chrome"), o = n("./is-samsung"), c = n("./is-duckduckgo");
149
- function f(l) {
150
- l = l || window.navigator.userAgent;
151
- var _ = l.match(/CriOS\/(\d+)\./);
152
- if (!_)
153
- return !1;
154
- var w = parseInt(_[1], 10);
155
- return w < e;
156
- }
157
- function m(l) {
158
- return l = l || window.navigator.userAgent, l.indexOf("Opera Mini") > -1;
159
- }
160
- function v(l) {
161
- var _ = /Version\/[\d.]+/i;
162
- return l = l || window.navigator.userAgent, s(l) ? _.test(l) && !m(l) && !c(l) : !1;
163
- }
164
- function h(l) {
165
- return !t(l) && !o(l) && /samsung/i.test(l);
166
- }
167
- u.exports = function(_) {
168
- return _ = _ || window.navigator.userAgent, !(r(_) || i(_) || v(_) || m(_) || f(_) || h(_));
169
- };
170
- }, { "./is-android": 3, "./is-chrome": 4, "./is-duckduckgo": 5, "./is-ios-firefox": 7, "./is-ios-webview": 10, "./is-samsung": 15 }], 18: [function(n, u, a) {
171
- u.exports = n("./dist/is-android");
172
- }, { "./dist/is-android": 3 }], 19: [function(n, u, a) {
173
- u.exports = n("./dist/is-chrome");
174
- }, { "./dist/is-chrome": 4 }], 20: [function(n, u, a) {
175
- u.exports = n("./dist/is-ios-safari");
176
- }, { "./dist/is-ios-safari": 9 }], 21: [function(n, u, a) {
177
- u.exports = n("./dist/is-ios-webview");
178
- }, { "./dist/is-ios-webview": 10 }], 22: [function(n, u, a) {
179
- u.exports = n("./dist/is-ios-wkwebview");
180
- }, { "./dist/is-ios-wkwebview": 11 }], 23: [function(n, u, a) {
181
- u.exports = n("./dist/is-ios");
182
- }, { "./dist/is-ios": 12 }], 24: [function(n, u, a) {
183
- u.exports = n("./dist/is-samsung");
184
- }, { "./dist/is-samsung": 15 }], 25: [function(n, u, a) {
185
- u.exports = n("./dist/supports-popups");
186
- }, { "./dist/supports-popups": 17 }], 26: [function(n, u, a) {
187
- var e = typeof Promise != "undefined" ? Promise : null, s = (
188
- /** @class */
189
- function() {
190
- function i(r) {
191
- var t = this;
192
- if (typeof r == "function") {
193
- this._promise = new i.Promise(r);
194
- return;
195
- }
196
- this._promise = new i.Promise(function(o, c) {
197
- t._resolveFunction = o, t._rejectFunction = c;
198
- }), r = r || {}, this._onResolve = r.onResolve || i.defaultOnResolve, this._onReject = r.onReject || i.defaultOnReject, i.shouldCatchExceptions(r) && this._promise.catch(function() {
199
- }), this._resetState();
200
- }
201
- return i.defaultOnResolve = function(r) {
202
- return i.Promise.resolve(r);
203
- }, i.defaultOnReject = function(r) {
204
- return i.Promise.reject(r);
205
- }, i.setPromise = function(r) {
206
- i.Promise = r;
207
- }, i.shouldCatchExceptions = function(r) {
208
- return r.hasOwnProperty("suppressUnhandledPromiseMessage") ? !!r.suppressUnhandledPromiseMessage : !!i.suppressUnhandledPromiseMessage;
209
- }, i.all = function(r) {
210
- return i.Promise.all(r);
211
- }, i.allSettled = function(r) {
212
- return i.Promise.allSettled(r);
213
- }, i.race = function(r) {
214
- return i.Promise.race(r);
215
- }, i.reject = function(r) {
216
- return i.Promise.reject(r);
217
- }, i.resolve = function(r) {
218
- return i.Promise.resolve(r);
219
- }, i.prototype.then = function() {
220
- for (var r, t = [], o = 0; o < arguments.length; o++)
221
- t[o] = arguments[o];
222
- return (r = this._promise).then.apply(r, t);
223
- }, i.prototype.catch = function() {
224
- for (var r, t = [], o = 0; o < arguments.length; o++)
225
- t[o] = arguments[o];
226
- return (r = this._promise).catch.apply(r, t);
227
- }, i.prototype.resolve = function(r) {
228
- var t = this;
229
- return this.isFulfilled ? this : (this._setResolved(), i.Promise.resolve().then(function() {
230
- return t._onResolve(r);
231
- }).then(function(o) {
232
- t._resolveFunction(o);
233
- }).catch(function(o) {
234
- t._resetState(), t.reject(o);
235
- }), this);
236
- }, i.prototype.reject = function(r) {
237
- var t = this;
238
- return this.isFulfilled ? this : (this._setRejected(), i.Promise.resolve().then(function() {
239
- return t._onReject(r);
240
- }).then(function(o) {
241
- t._setResolved(), t._resolveFunction(o);
242
- }).catch(function(o) {
243
- return t._rejectFunction(o);
244
- }), this);
245
- }, i.prototype._resetState = function() {
246
- this.isFulfilled = !1, this.isResolved = !1, this.isRejected = !1;
247
- }, i.prototype._setResolved = function() {
248
- this.isFulfilled = !0, this.isResolved = !0, this.isRejected = !1;
249
- }, i.prototype._setRejected = function() {
250
- this.isFulfilled = !0, this.isResolved = !1, this.isRejected = !0;
251
- }, i.Promise = e, i;
252
- }()
253
- );
254
- u.exports = s;
255
- }, {}], 27: [function(n, u, a) {
256
- var e = n("./lib/set-attributes"), s = n("./lib/default-attributes"), i = n("./lib/assign");
257
- u.exports = function(t) {
258
- t === void 0 && (t = {});
259
- var o = document.createElement("iframe"), c = (0, i.assign)({}, s.defaultAttributes, t);
260
- return c.style && typeof c.style != "string" && ((0, i.assign)(o.style, c.style), delete c.style), (0, e.setAttributes)(o, c), o.getAttribute("id") || (o.id = o.name), o;
261
- };
262
- }, { "./lib/assign": 28, "./lib/default-attributes": 29, "./lib/set-attributes": 30 }], 28: [function(n, u, a) {
263
- Object.defineProperty(a, "__esModule", { value: !0 }), a.assign = void 0;
264
- function e(s) {
265
- for (var i = [], r = 1; r < arguments.length; r++)
266
- i[r - 1] = arguments[r];
267
- return i.forEach(function(t) {
268
- typeof t == "object" && Object.keys(t).forEach(function(o) {
269
- s[o] = t[o];
270
- });
271
- }), s;
272
- }
273
- a.assign = e;
274
- }, {}], 29: [function(n, u, a) {
275
- Object.defineProperty(a, "__esModule", { value: !0 }), a.defaultAttributes = void 0, a.defaultAttributes = {
276
- src: "about:blank",
277
- frameBorder: 0,
278
- allowtransparency: !0,
279
- scrolling: "no"
280
- };
281
- }, {}], 30: [function(n, u, a) {
282
- Object.defineProperty(a, "__esModule", { value: !0 }), a.setAttributes = void 0;
283
- function e(s, i) {
284
- for (var r in i)
285
- if (i.hasOwnProperty(r)) {
286
- var t = i[r];
287
- t == null ? s.removeAttribute(r) : s.setAttribute(r, t);
288
- }
289
- }
290
- a.setAttributes = e;
291
- }, {}], 31: [function(n, u, a) {
292
- function e() {
293
- return "xxxxxxxx-xxxx-4xxx-yxxx-xxxxxxxxxxxx".replace(/[xy]/g, function(s) {
294
- var i = Math.random() * 16 | 0, r = s === "x" ? i : i & 3 | 8;
295
- return r.toString(16);
296
- });
297
- }
298
- u.exports = e;
299
- }, {}], 32: [function(n, u, a) {
300
- Object.defineProperty(a, "__esModule", { value: !0 });
301
- function e(s) {
302
- return function() {
303
- for (var i = [], r = 0; r < arguments.length; r++)
304
- i[r] = arguments[r];
305
- setTimeout(function() {
306
- try {
307
- s.apply(void 0, i);
308
- } catch (t) {
309
- console.log("Error in callback function"), console.log(t);
310
- }
311
- }, 1);
312
- };
313
- }
314
- a.deferred = e;
315
- }, {}], 33: [function(n, u, a) {
316
- Object.defineProperty(a, "__esModule", { value: !0 });
317
- function e(s) {
318
- var i = !1;
319
- return function() {
320
- for (var r = [], t = 0; t < arguments.length; t++)
321
- r[t] = arguments[t];
322
- i || (i = !0, s.apply(void 0, r));
323
- };
324
- }
325
- a.once = e;
326
- }, {}], 34: [function(n, u, a) {
327
- Object.defineProperty(a, "__esModule", { value: !0 });
328
- function e(s, i) {
329
- if (!i)
330
- return s;
331
- s.then(function(r) {
332
- return i(null, r);
333
- }).catch(function(r) {
334
- return i(r);
335
- });
336
- }
337
- a.promiseOrCallback = e;
338
- }, {}], 35: [function(n, u, a) {
339
- var e = n("./lib/deferred"), s = n("./lib/once"), i = n("./lib/promise-or-callback");
340
- function r(t) {
341
- return function() {
342
- for (var o = [], c = 0; c < arguments.length; c++)
343
- o[c] = arguments[c];
344
- var f, m = o[o.length - 1];
345
- return typeof m == "function" && (f = o.pop(), f = s.once(e.deferred(f))), i.promiseOrCallback(t.apply(this, o), f);
346
- };
347
- }
348
- r.wrapPrototype = function(t, o) {
349
- o === void 0 && (o = {});
350
- var c = o.ignoreMethods || [], f = o.transformPrivateMethods === !0, m = Object.getOwnPropertyNames(t.prototype).filter(function(v) {
351
- var h, l = v !== "constructor" && typeof t.prototype[v] == "function", _ = c.indexOf(v) === -1;
352
- return f ? h = !0 : h = v.charAt(0) !== "_", l && h && _;
353
- });
354
- return m.forEach(function(v) {
355
- var h = t.prototype[v];
356
- t.prototype[v] = r(h);
357
- }), t;
358
- }, u.exports = r;
359
- }, { "./lib/deferred": 32, "./lib/once": 33, "./lib/promise-or-callback": 34 }], 36: [function(n, u, a) {
360
- (function(e, s) {
361
- typeof a == "object" && typeof u != "undefined" ? s(a) : (e = typeof globalThis != "undefined" ? globalThis : e || self, s(e.loadAxo = {}));
362
- })(this, function(e) {
363
- /*! *****************************************************************************
364
- Copyright (c) Microsoft Corporation.
365
-
366
- Permission to use, copy, modify, and/or distribute this software for any
367
- purpose with or without fee is hereby granted.
368
-
369
- THE SOFTWARE IS PROVIDED "AS IS" AND THE AUTHOR DISCLAIMS ALL WARRANTIES WITH
370
- REGARD TO THIS SOFTWARE INCLUDING ALL IMPLIED WARRANTIES OF MERCHANTABILITY
371
- AND FITNESS. IN NO EVENT SHALL THE AUTHOR BE LIABLE FOR ANY SPECIAL, DIRECT,
372
- INDIRECT, OR CONSEQUENTIAL DAMAGES OR ANY DAMAGES WHATSOEVER RESULTING FROM
373
- LOSS OF USE, DATA OR PROFITS, WHETHER IN AN ACTION OF CONTRACT, NEGLIGENCE OR
374
- OTHER TORTIOUS ACTION, ARISING OUT OF OR IN CONNECTION WITH THE USE OR
375
- PERFORMANCE OF THIS SOFTWARE.
376
- ***************************************************************************** */
377
- function s(E, g, y, P) {
378
- function S(b) {
379
- return b instanceof y ? b : new y(function(F) {
380
- F(b);
381
- });
382
- }
383
- return new (y || (y = Promise))(function(b, F) {
384
- function z(K) {
385
- try {
386
- L(P.next(K));
387
- } catch ($) {
388
- F($);
389
- }
390
- }
391
- function Z(K) {
392
- try {
393
- L(P.throw(K));
394
- } catch ($) {
395
- F($);
396
- }
397
- }
398
- function L(K) {
399
- K.done ? b(K.value) : S(K.value).then(z, Z);
400
- }
401
- L((P = P.apply(E, [])).next());
402
- });
403
- }
404
- function i(E, g) {
405
- var y = { label: 0, sent: function() {
406
- if (b[0] & 1) throw b[1];
407
- return b[1];
408
- }, trys: [], ops: [] }, P, S, b, F;
409
- return F = { next: z(0), throw: z(1), return: z(2) }, typeof Symbol == "function" && (F[Symbol.iterator] = function() {
410
- return this;
411
- }), F;
412
- function z(L) {
413
- return function(K) {
414
- return Z([L, K]);
415
- };
416
- }
417
- function Z(L) {
418
- if (P) throw new TypeError("Generator is already executing.");
419
- for (; y; ) try {
420
- if (P = 1, S && (b = L[0] & 2 ? S.return : L[0] ? S.throw || ((b = S.return) && b.call(S), 0) : S.next) && !(b = b.call(S, L[1])).done) return b;
421
- switch (S = 0, b && (L = [L[0] & 2, b.value]), L[0]) {
422
- case 0:
423
- case 1:
424
- b = L;
425
- break;
426
- case 4:
427
- return y.label++, { value: L[1], done: !1 };
428
- case 5:
429
- y.label++, S = L[1], L = [0];
430
- continue;
431
- case 7:
432
- L = y.ops.pop(), y.trys.pop();
433
- continue;
434
- default:
435
- if (b = y.trys, !(b = b.length > 0 && b[b.length - 1]) && (L[0] === 6 || L[0] === 2)) {
436
- y = 0;
437
- continue;
438
- }
439
- if (L[0] === 3 && (!b || L[1] > b[0] && L[1] < b[3])) {
440
- y.label = L[1];
441
- break;
442
- }
443
- if (L[0] === 6 && y.label < b[1]) {
444
- y.label = b[1], b = L;
445
- break;
446
- }
447
- if (b && y.label < b[2]) {
448
- y.label = b[2], y.ops.push(L);
449
- break;
450
- }
451
- b[2] && y.ops.pop(), y.trys.pop();
452
- continue;
453
- }
454
- L = g.call(E, y);
455
- } catch (K) {
456
- L = [6, K], S = 0;
457
- } finally {
458
- P = b = 0;
459
- }
460
- if (L[0] & 5) throw L[1];
461
- return { value: L[0] ? L[1] : void 0, done: !0 };
462
- }
463
- }
464
- var r = {}, t = {};
465
- function o(E) {
466
- var g, y = JSON.stringify(E);
467
- if (!E.forceScriptReload && (g = t[y], g))
468
- return g;
469
- var P = document.createElement("script"), S = E.dataAttributes || {}, b = E.container || document.head;
470
- return P.src = E.src, P.id = E.id || "", P.async = !0, E.type && P.setAttribute("type", "".concat(E.type)), E.crossorigin && P.setAttribute("crossorigin", "".concat(E.crossorigin)), Object.keys(S).forEach(function(F) {
471
- P.setAttribute("data-".concat(F), "".concat(S[F]));
472
- }), g = new Promise(function(F, z) {
473
- P.addEventListener("load", function() {
474
- F(P);
475
- }), P.addEventListener("error", function() {
476
- z(new Error("".concat(E.src, " failed to load.")));
477
- }), P.addEventListener("abort", function() {
478
- z(new Error("".concat(E.src, " has aborted.")));
479
- }), b.appendChild(P);
480
- }), t[y] = g, g;
481
- }
482
- o.clearCache = function() {
483
- t = {};
484
- };
485
- var c = o, f = function(g) {
486
- var y = document.querySelector('link[href="'.concat(g.href, '"]'));
487
- if (y)
488
- return Promise.resolve(y);
489
- y = document.createElement("link");
490
- var P = g.container || document.head;
491
- return y.setAttribute("rel", "stylesheet"), y.setAttribute("type", "text/css"), y.setAttribute("href", g.href), y.setAttribute("id", g.id), P.firstChild ? P.insertBefore(y, P.firstChild) : P.appendChild(y), Promise.resolve(y);
492
- };
493
- Object.defineProperty(r, "__esModule", { value: !0 }), r.loadStylesheet = v = r.loadScript = void 0;
494
- var m = c, v = r.loadScript = m, h = f;
495
- r.loadStylesheet = h;
496
- var l = "https://www.paypalobjects.com", _ = {
497
- minified: "axo.min",
498
- unminified: "axo"
499
- }, w = "fastlane", R = "connect-boba", U = "".concat(R, "/locales/"), T = {
500
- AXO_ASSET_NAME: _,
501
- AXO_ASSET_PATH: R,
502
- LOCALE_PATH: U,
503
- CDNX_PROD: l
504
- }, N = {
505
- BT: "BT",
506
- PPCP: "PPCP"
507
- };
508
- function C() {
509
- return typeof window.define == "function" && !!window.define.amd;
510
- }
511
- function D() {
512
- return C() && typeof window.requirejs == "function" && typeof window.requirejs.config == "function";
513
- }
514
- function x(E, g, y) {
515
- var P, S;
516
- return y === void 0 && (y = !0), s(this, void 0, void 0, function() {
517
- var b, F;
518
- return i(this, function(z) {
519
- if (b = V(), b && b[E.module]) {
520
- if (g && ((P = b[E.module]) === null || P === void 0 ? void 0 : P.VERSION) !== g)
521
- throw F = (S = b[E.module]) === null || S === void 0 ? void 0 : S.VERSION, new Error("".concat(E.module, " already loaded with version ").concat(F, " cannot load version ").concat(g));
522
- return [2, !0];
523
- }
524
- if (!g)
525
- throw new Error("Attempted to load ".concat(E.module, " without specifying version"));
526
- return [2, W(E, g, y)];
527
- });
528
- });
529
- }
530
- function W(E, g, y) {
531
- if (y === void 0 && (y = !0), C()) {
532
- var P = y ? E.amdModule.minified : E.amdModule.unminified;
533
- return new Promise(function(b, F) {
534
- window.require([P], b, F);
535
- });
536
- }
537
- var S = y ? E.script.minified : E.script.unminified;
538
- return v({
539
- id: "".concat(E.id, "-").concat(g),
540
- src: "https://js.braintreegateway.com/web/".concat(g, "/js/").concat(S)
541
- });
542
- }
543
- function V() {
544
- return window == null ? void 0 : window.braintree;
545
- }
546
- var A, k, M = {
547
- Client: "client",
548
- HostedCardFields: "hostedFields"
549
- }, H = "braintree", B = (A = {}, A[M.Client] = "client", A[M.HostedCardFields] = "hosted-fields", A), j = (k = {}, k[M.Client] = {
550
- id: "client",
551
- module: M.Client,
552
- amdModule: {
553
- unminified: "".concat(H, "/").concat(B[M.Client]),
554
- minified: "".concat(H, "/").concat(B[M.Client], ".min")
555
- },
556
- script: {
557
- unminified: "".concat(B[M.Client], ".js"),
558
- minified: "".concat(B[M.Client], ".min.js")
559
- }
560
- }, k[M.HostedCardFields] = {
561
- id: "hcf",
562
- module: M.HostedCardFields,
563
- amdModule: {
564
- unminified: "".concat(H, "/").concat(B[M.HostedCardFields]),
565
- minified: "".concat(H, "/").concat(B[M.HostedCardFields], ".min")
566
- },
567
- script: {
568
- unminified: "".concat(B[M.HostedCardFields], ".js"),
569
- minified: "".concat(B[M.HostedCardFields], ".min.js")
570
- }
571
- }, k);
572
- function X(E) {
573
- return s(this, void 0, void 0, function() {
574
- var g, y, P, S;
575
- return i(this, function(b) {
576
- switch (b.label) {
577
- case 0:
578
- return performance.mark("pp_axo_sdk_init_invoked"), g = E.btSdkVersion, y = E.minified, P = O(E), S = I(E), E.platform !== N.BT ? [3, 2] : [4, Promise.all([
579
- x(j.hostedFields, g, y),
580
- d(P, y)
581
- ])];
582
- case 1:
583
- return b.sent(), [3, 5];
584
- case 2:
585
- return E.platform !== N.PPCP ? [3, 4] : [4, Promise.all([
586
- x(j.client, g, y),
587
- x(j.hostedFields, g, y),
588
- d(P, y)
589
- ])];
590
- case 3:
591
- return b.sent(), [3, 5];
592
- case 4:
593
- throw new Error("unsupported axo platform");
594
- case 5:
595
- return [2, { metadata: { localeUrl: S } }];
596
- }
597
- });
598
- });
599
- }
600
- function d(E, g) {
601
- var y;
602
- if (g === void 0 && (g = !0), C()) {
603
- D() && requirejs.config({
604
- paths: (y = {}, y[w] = E, y)
605
- });
606
- var P = "".concat(w, "/").concat(g ? T.AXO_ASSET_NAME.minified : T.AXO_ASSET_NAME.unminified);
607
- return new Promise(function(S, b) {
608
- window.require([P], S, b);
609
- });
610
- }
611
- return v({
612
- id: "axo-id",
613
- src: E,
614
- forceScriptReload: !0
615
- });
616
- }
617
- function p(E) {
618
- var g = E.assetUrl, y = E.bundleId;
619
- return y ? "https://cdn-".concat(y, ".static.engineering.dev.paypalinc.com/").concat(g) : "".concat(T.CDNX_PROD, "/").concat(g);
620
- }
621
- function O(E) {
622
- var g, y = (E == null ? void 0 : E.minified) !== !1 ? T.AXO_ASSET_NAME.minified : T.AXO_ASSET_NAME.unminified, P = C() ? T.AXO_ASSET_PATH : "".concat(T.AXO_ASSET_PATH, "/").concat(y, ".js");
623
- return p({
624
- assetUrl: P,
625
- bundleId: (g = E == null ? void 0 : E.metadata) === null || g === void 0 ? void 0 : g.bundleIdOverride
626
- });
627
- }
628
- function I(E) {
629
- var g;
630
- return p({
631
- assetUrl: T.LOCALE_PATH,
632
- bundleId: (g = E == null ? void 0 : E.metadata) === null || g === void 0 ? void 0 : g.bundleIdOverride
633
- });
634
- }
635
- e.constants = T, e.loadAxo = X;
636
- });
637
- }, {}], 37: [function(n, u, a) {
638
- Object.defineProperty(a, "__esModule", { value: !0 }), a.Framebus = void 0;
639
- var e = n("./lib"), s = typeof window != "undefined" && window.Promise, i = (
640
- /** @class */
641
- function() {
642
- function r(t) {
643
- t === void 0 && (t = {}), this.origin = t.origin || "*", this.channel = t.channel || "", this.verifyDomain = t.verifyDomain, this.targetFrames = t.targetFrames || [], this.limitBroadcastToFramesArray = !!t.targetFrames, this.isDestroyed = !1, this.listeners = [], this.hasAdditionalChecksForOnListeners = !!(this.verifyDomain || this.limitBroadcastToFramesArray);
644
- }
645
- return r.setPromise = function(t) {
646
- r.Promise = t;
647
- }, r.target = function(t) {
648
- return new r(t);
649
- }, r.prototype.addTargetFrame = function(t) {
650
- this.limitBroadcastToFramesArray && this.targetFrames.push(t);
651
- }, r.prototype.include = function(t) {
652
- return t == null || t.Window == null || t.constructor !== t.Window ? !1 : (e.childWindows.push(t), !0);
653
- }, r.prototype.target = function(t) {
654
- return r.target(t);
655
- }, r.prototype.emit = function(t, o, c) {
656
- if (this.isDestroyed)
657
- return !1;
658
- var f = this.origin;
659
- if (t = this.namespaceEvent(t), (0, e.isntString)(t) || (0, e.isntString)(f))
660
- return !1;
661
- typeof o == "function" && (c = o, o = void 0);
662
- var m = (0, e.packagePayload)(t, f, o, c);
663
- return m ? (this.limitBroadcastToFramesArray ? this.targetFramesAsWindows().forEach(function(v) {
664
- (0, e.sendMessage)(v, m, f);
665
- }) : (0, e.broadcast)(m, {
666
- origin: f,
667
- frame: window.top || window.self
668
- }), !0) : !1;
669
- }, r.prototype.emitAsPromise = function(t, o) {
670
- var c = this;
671
- return new r.Promise(function(f, m) {
672
- var v = c.emit(t, o, function(h) {
673
- f(h);
674
- });
675
- v || m(new Error('Listener not added for "'.concat(t, '"')));
676
- });
677
- }, r.prototype.on = function(t, o) {
678
- if (this.isDestroyed)
679
- return !1;
680
- var c = this, f = this.origin, m = o;
681
- return t = this.namespaceEvent(t), (0, e.subscriptionArgsInvalid)(t, m, f) ? !1 : (this.hasAdditionalChecksForOnListeners && (m = function() {
682
- for (var v = [], h = 0; h < arguments.length; h++)
683
- v[h] = arguments[h];
684
- c.passesVerifyDomainCheck(this && this.origin) && c.hasMatchingTargetFrame(this && this.source) && o.apply(void 0, v);
685
- }), this.listeners.push({
686
- eventName: t,
687
- handler: m,
688
- originalHandler: o
689
- }), e.subscribers[f] = e.subscribers[f] || {}, e.subscribers[f][t] = e.subscribers[f][t] || [], e.subscribers[f][t].push(m), !0);
690
- }, r.prototype.off = function(t, o) {
691
- var c = o;
692
- if (this.isDestroyed)
693
- return !1;
694
- if (this.hasAdditionalChecksForOnListeners)
695
- for (var f = 0; f < this.listeners.length; f++) {
696
- var m = this.listeners[f];
697
- m.originalHandler === o && (c = m.handler);
698
- }
699
- t = this.namespaceEvent(t);
700
- var v = this.origin;
701
- if ((0, e.subscriptionArgsInvalid)(t, c, v))
702
- return !1;
703
- var h = e.subscribers[v] && e.subscribers[v][t];
704
- if (!h)
705
- return !1;
706
- for (var f = 0; f < h.length; f++)
707
- if (h[f] === c)
708
- return h.splice(f, 1), !0;
709
- return !1;
710
- }, r.prototype.teardown = function() {
711
- if (!this.isDestroyed) {
712
- this.isDestroyed = !0;
713
- for (var t = 0; t < this.listeners.length; t++) {
714
- var o = this.listeners[t];
715
- this.off(o.eventName, o.handler);
716
- }
717
- this.listeners.length = 0;
718
- }
719
- }, r.prototype.passesVerifyDomainCheck = function(t) {
720
- return this.verifyDomain ? this.checkOrigin(t) : !0;
721
- }, r.prototype.targetFramesAsWindows = function() {
722
- return this.limitBroadcastToFramesArray ? this.targetFrames.map(function(t) {
723
- return t instanceof HTMLIFrameElement ? t.contentWindow : t;
724
- }).filter(function(t) {
725
- return t;
726
- }) : [];
727
- }, r.prototype.hasMatchingTargetFrame = function(t) {
728
- if (!this.limitBroadcastToFramesArray)
729
- return !0;
730
- var o = this.targetFramesAsWindows().find(function(c) {
731
- return c === t;
732
- });
733
- return !!o;
734
- }, r.prototype.checkOrigin = function(t) {
735
- var o, c = document.createElement("a");
736
- c.href = location.href, c.protocol === "https:" ? o = c.host.replace(/:443$/, "") : c.protocol === "http:" ? o = c.host.replace(/:80$/, "") : o = c.host;
737
- var f = c.protocol + "//" + o;
738
- return f === t ? !0 : this.verifyDomain ? this.verifyDomain(t) : !0;
739
- }, r.prototype.namespaceEvent = function(t) {
740
- return this.channel ? "".concat(this.channel, ":").concat(t) : t;
741
- }, r.Promise = s, r;
742
- }()
743
- );
744
- a.Framebus = i;
745
- }, { "./lib": 45 }], 38: [function(n, u, a) {
746
- var e = n("./lib"), s = n("./framebus");
747
- (0, e.attach)(), u.exports = s.Framebus;
748
- }, { "./framebus": 37, "./lib": 45 }], 39: [function(n, u, a) {
749
- Object.defineProperty(a, "__esModule", { value: !0 }), a.detach = a.attach = void 0;
750
- var e = n("./"), s = !1;
751
- function i() {
752
- s || typeof window == "undefined" || (s = !0, window.addEventListener("message", e.onMessage, !1));
753
- }
754
- a.attach = i;
755
- function r() {
756
- s = !1, window.removeEventListener("message", e.onMessage, !1);
757
- }
758
- a.detach = r;
759
- }, { "./": 45 }], 40: [function(n, u, a) {
760
- Object.defineProperty(a, "__esModule", { value: !0 }), a.broadcastToChildWindows = void 0;
761
- var e = n("./");
762
- function s(i, r, t) {
763
- for (var o = e.childWindows.length - 1; o >= 0; o--) {
764
- var c = e.childWindows[o];
765
- c.closed ? e.childWindows.splice(o, 1) : t !== c && (0, e.broadcast)(i, {
766
- origin: r,
767
- frame: c.top
768
- });
769
- }
770
- }
771
- a.broadcastToChildWindows = s;
772
- }, { "./": 45 }], 41: [function(n, u, a) {
773
- Object.defineProperty(a, "__esModule", { value: !0 }), a.broadcast = void 0;
774
- var e = n("./");
775
- function s(i, r) {
776
- var t = 0, o, c = r.origin, f = r.frame;
777
- try {
778
- for (f.postMessage(i, c), (0, e.hasOpener)(f) && f.opener.top !== window.top && s(i, {
779
- origin: c,
780
- frame: f.opener.top
781
- }); o = f.frames[t]; )
782
- s(i, {
783
- origin: c,
784
- frame: o
785
- }), t++;
786
- } catch (m) {
787
- }
788
- }
789
- a.broadcast = s;
790
- }, { "./": 45 }], 42: [function(n, u, a) {
791
- Object.defineProperty(a, "__esModule", { value: !0 }), a.subscribers = a.childWindows = a.prefix = void 0, a.prefix = "/*framebus*/", a.childWindows = [], a.subscribers = {};
792
- }, {}], 43: [function(n, u, a) {
793
- Object.defineProperty(a, "__esModule", { value: !0 }), a.dispatch = void 0;
794
- var e = n("./");
795
- function s(i, r, t, o, c) {
796
- if (e.subscribers[i] && e.subscribers[i][r]) {
797
- var f = [];
798
- t && f.push(t), o && f.push(o);
799
- for (var m = 0; m < e.subscribers[i][r].length; m++)
800
- e.subscribers[i][r][m].apply(c, f);
801
- }
802
- }
803
- a.dispatch = s;
804
- }, { "./": 45 }], 44: [function(n, u, a) {
805
- Object.defineProperty(a, "__esModule", { value: !0 }), a.hasOpener = void 0;
806
- function e(s) {
807
- return !(s.top !== s || s.opener == null || s.opener === s || s.opener.closed === !0);
808
- }
809
- a.hasOpener = e;
810
- }, {}], 45: [function(n, u, a) {
811
- var e = this && this.__createBinding || (Object.create ? function(i, r, t, o) {
812
- o === void 0 && (o = t);
813
- var c = Object.getOwnPropertyDescriptor(r, t);
814
- (!c || ("get" in c ? !r.__esModule : c.writable || c.configurable)) && (c = { enumerable: !0, get: function() {
815
- return r[t];
816
- } }), Object.defineProperty(i, o, c);
817
- } : function(i, r, t, o) {
818
- o === void 0 && (o = t), i[o] = r[t];
819
- }), s = this && this.__exportStar || function(i, r) {
820
- for (var t in i) t !== "default" && !Object.prototype.hasOwnProperty.call(r, t) && e(r, i, t);
821
- };
822
- Object.defineProperty(a, "__esModule", { value: !0 }), s(n("./attach"), a), s(n("./broadcast-to-child-windows"), a), s(n("./broadcast"), a), s(n("./constants"), a), s(n("./dispatch"), a), s(n("./has-opener"), a), s(n("./is-not-string"), a), s(n("./message"), a), s(n("./package-payload"), a), s(n("./send-message"), a), s(n("./subscribe-replier"), a), s(n("./subscription-args-invalid"), a), s(n("./types"), a), s(n("./unpack-payload"), a);
823
- }, { "./attach": 39, "./broadcast": 41, "./broadcast-to-child-windows": 40, "./constants": 42, "./dispatch": 43, "./has-opener": 44, "./is-not-string": 46, "./message": 47, "./package-payload": 48, "./send-message": 49, "./subscribe-replier": 50, "./subscription-args-invalid": 51, "./types": 52, "./unpack-payload": 53 }], 46: [function(n, u, a) {
824
- Object.defineProperty(a, "__esModule", { value: !0 }), a.isntString = void 0;
825
- function e(s) {
826
- return typeof s != "string";
827
- }
828
- a.isntString = e;
829
- }, {}], 47: [function(n, u, a) {
830
- Object.defineProperty(a, "__esModule", { value: !0 }), a.onMessage = void 0;
831
- var e = n("./");
832
- function s(i) {
833
- if (!(0, e.isntString)(i.data)) {
834
- var r = (0, e.unpackPayload)(i);
835
- if (r) {
836
- var t = r.eventData, o = r.reply;
837
- (0, e.dispatch)("*", r.event, t, o, i), (0, e.dispatch)(i.origin, r.event, t, o, i), (0, e.broadcastToChildWindows)(i.data, r.origin, i.source);
838
- }
839
- }
840
- }
841
- a.onMessage = s;
842
- }, { "./": 45 }], 48: [function(n, u, a) {
843
- Object.defineProperty(a, "__esModule", { value: !0 }), a.packagePayload = void 0;
844
- var e = n("./");
845
- function s(i, r, t, o) {
846
- var c, f = {
847
- event: i,
848
- origin: r
849
- };
850
- typeof o == "function" && (f.reply = (0, e.subscribeReplier)(o, r)), f.eventData = t;
851
- try {
852
- c = e.prefix + JSON.stringify(f);
853
- } catch (m) {
854
- throw new Error("Could not stringify event: ".concat(m.message));
855
- }
856
- return c;
857
- }
858
- a.packagePayload = s;
859
- }, { "./": 45 }], 49: [function(n, u, a) {
860
- Object.defineProperty(a, "__esModule", { value: !0 }), a.sendMessage = void 0;
861
- function e(s, i, r) {
862
- try {
863
- s.postMessage(i, r);
864
- } catch (t) {
865
- }
866
- }
867
- a.sendMessage = e;
868
- }, {}], 50: [function(n, u, a) {
869
- var e = this && this.__importDefault || function(t) {
870
- return t && t.__esModule ? t : { default: t };
871
- };
872
- Object.defineProperty(a, "__esModule", { value: !0 }), a.subscribeReplier = void 0;
873
- var s = n("../framebus"), i = e(n("@braintree/uuid"));
874
- function r(t, o) {
875
- var c = (0, i.default)();
876
- function f(m, v) {
877
- t(m, v), s.Framebus.target({
878
- origin: o
879
- }).off(c, f);
880
- }
881
- return s.Framebus.target({
882
- origin: o
883
- }).on(c, f), c;
884
- }
885
- a.subscribeReplier = r;
886
- }, { "../framebus": 37, "@braintree/uuid": 31 }], 51: [function(n, u, a) {
887
- Object.defineProperty(a, "__esModule", { value: !0 }), a.subscriptionArgsInvalid = void 0;
888
- var e = n("./");
889
- function s(i, r, t) {
890
- return (0, e.isntString)(i) || typeof r != "function" ? !0 : (0, e.isntString)(t);
891
- }
892
- a.subscriptionArgsInvalid = s;
893
- }, { "./": 45 }], 52: [function(n, u, a) {
894
- Object.defineProperty(a, "__esModule", { value: !0 });
895
- }, {}], 53: [function(n, u, a) {
896
- Object.defineProperty(a, "__esModule", { value: !0 }), a.unpackPayload = void 0;
897
- var e = n("./");
898
- function s(i) {
899
- var r;
900
- if (i.data.slice(0, e.prefix.length) !== e.prefix)
901
- return !1;
902
- try {
903
- r = JSON.parse(i.data.slice(e.prefix.length));
904
- } catch (f) {
905
- return !1;
906
- }
907
- if (r.reply) {
908
- var t = i.origin, o = i.source, c = r.reply;
909
- r.reply = function(m) {
910
- if (o) {
911
- var v = (0, e.packagePayload)(c, t, m);
912
- v && o.postMessage(v, t);
913
- }
914
- };
915
- }
916
- return r;
917
- }
918
- a.unpackPayload = s;
919
- }, { "./": 45 }], 54: [function(n, u, a) {
920
- var e = n("./create-authorization-data"), s = n("./json-clone"), i = n("./constants");
921
- function r(o, c) {
922
- var f, m = c ? s(c) : {}, v = e(o.authorization).attrs, h = s(o.analyticsMetadata);
923
- m.braintreeLibraryVersion = i.BRAINTREE_LIBRARY_VERSION;
924
- for (f in m._meta)
925
- m._meta.hasOwnProperty(f) && (h[f] = m._meta[f]);
926
- return m._meta = h, v.tokenizationKey ? m.tokenizationKey = v.tokenizationKey : m.authorizationFingerprint = v.authorizationFingerprint, m;
927
- }
928
- function t(o) {
929
- var c = o.getConfiguration(), f = e(c.authorization).attrs, m = c.gatewayConfiguration.environment === "production", v = {
930
- api_integration_type: c.analyticsMetadata.integrationType,
931
- app_id: window.location.host,
932
- c_sdk_ver: i.VERSION,
933
- component: "braintreeclientsdk",
934
- merchant_sdk_env: m ? "production" : "sandbox",
935
- merchant_id: c.gatewayConfiguration.merchantId,
936
- event_source: "web",
937
- platform: i.PLATFORM,
938
- platform_version: window.navigator.userAgent,
939
- session_id: c.analyticsMetadata.sessionId,
940
- client_session_id: c.analyticsMetadata.sessionId,
941
- tenant_name: "braintree",
942
- product_name: "BT_DCC",
943
- space_key: "SKDUYK"
944
- };
945
- return f.tokenizationKey ? v.tokenization_key = f.tokenizationKey : v.auth_fingerprint = f.authorizationFingerprint, v;
946
- }
947
- u.exports = {
948
- addMetadata: r,
949
- addEventMetadata: t
950
- };
951
- }, { "./constants": 60, "./create-authorization-data": 63, "./json-clone": 80 }], 55: [function(n, u, a) {
952
- var e = n("./constants"), s = n("./add-metadata"), i = n("./assign").assign;
953
- function r(c, f, m) {
954
- return t(
955
- c,
956
- f,
957
- {},
958
- m
959
- );
960
- }
961
- function t(c, f, m, v) {
962
- var h = Date.now();
963
- return m.flow === "vault" ? m.context_type = "BA_Token" : m.flow === "checkout" && (m.context_type = "EC_Token"), Promise.resolve(c).then(function(l) {
964
- var _ = l._request, w = e.ANALYTICS_URL, R = e.ANALYTICS_PREFIX + f, U = l.getConfiguration(), T = U.gatewayConfiguration.environment === "production", N = {
965
- events: [],
966
- tracking: []
967
- }, C = s.addEventMetadata(l, N);
968
- return C.event_name = R, C.t = h, N.events = [
969
- {
970
- level: "info",
971
- event: R,
972
- payload: i(
973
- {
974
- env: T ? "production" : "sandbox",
975
- timestamp: h
976
- },
977
- m
978
- )
979
- }
980
- ], N.tracking = [C], m && typeof m == "object" && (N.tracking = [o(C, m)]), _(
981
- {
982
- url: w,
983
- method: "post",
984
- data: N,
985
- timeout: e.ANALYTICS_REQUEST_TIMEOUT_MS
986
- },
987
- v
988
- );
989
- }).catch(function(l) {
990
- v && v(l);
991
- });
992
- }
993
- function o(c, f) {
994
- var m = {}, v = i({}, f);
995
- return Object.keys(v).forEach(function(h) {
996
- e.ALLOWED_EXTRA_EVENT_FIELDS.indexOf(h) === -1 && delete v[h];
997
- }), m = i(c, v), m;
998
- }
999
- u.exports = {
1000
- sendEvent: r,
1001
- sendEventPlus: t
1002
- };
1003
- }, { "./add-metadata": 54, "./assign": 57, "./constants": 60 }], 56: [function(n, u, a) {
1004
- var e = n("@braintree/asset-loader/load-script"), s = n("@paypal/accelerated-checkout-loader");
1005
- u.exports = {
1006
- loadScript: e,
1007
- loadFastlane: s.loadAxo
1008
- };
1009
- }, { "@braintree/asset-loader/load-script": 2, "@paypal/accelerated-checkout-loader": 36 }], 57: [function(n, u, a) {
1010
- var e = typeof Object.assign == "function" ? Object.assign : s;
1011
- function s(i) {
1012
- var r, t, o;
1013
- for (r = 1; r < arguments.length; r++) {
1014
- t = arguments[r];
1015
- for (o in t)
1016
- t.hasOwnProperty(o) && (i[o] = t[o]);
1017
- }
1018
- return i;
1019
- }
1020
- u.exports = {
1021
- assign: e,
1022
- _assign: s
1023
- };
1024
- }, {}], 58: [function(n, u, a) {
1025
- var e = n("./braintree-error"), s = n("./errors"), i = "3.126.0";
1026
- function r(t) {
1027
- var o, c, f;
1028
- return t ? (f = t.name, o = t.client, c = t.authorization, !o && !c ? Promise.reject(
1029
- new e({
1030
- type: s.INSTANTIATION_OPTION_REQUIRED.type,
1031
- code: s.INSTANTIATION_OPTION_REQUIRED.code,
1032
- // NEXT_MAJOR_VERSION in major version, we expose passing in authorization for all components
1033
- // instead of passing in a client instance. Leave this a silent feature for now.
1034
- message: "options.client is required when instantiating " + f + "."
1035
- })
1036
- ) : !c && o.getVersion() !== i ? Promise.reject(
1037
- new e({
1038
- type: s.INCOMPATIBLE_VERSIONS.type,
1039
- code: s.INCOMPATIBLE_VERSIONS.code,
1040
- message: "Client (version " + o.getVersion() + ") and " + f + " (version " + i + ") components must be from the same SDK version."
1041
- })
1042
- ) : Promise.resolve()) : Promise.reject(
1043
- new e({
1044
- type: s.INVALID_USE_OF_INTERNAL_FUNCTION.type,
1045
- code: s.INVALID_USE_OF_INTERNAL_FUNCTION.code,
1046
- message: "Options must be passed to basicComponentVerification function."
1047
- })
1048
- );
1049
- }
1050
- u.exports = {
1051
- verify: r
1052
- };
1053
- }, { "./braintree-error": 59, "./errors": 66 }], 59: [function(n, u, a) {
1054
- var e = n("./enumerate");
1055
- function s(i) {
1056
- if (!s.types.hasOwnProperty(i.type))
1057
- throw new Error(i.type + " is not a valid type.");
1058
- if (!i.code)
1059
- throw new Error("Error code required.");
1060
- if (!i.message)
1061
- throw new Error("Error message required.");
1062
- this.name = "BraintreeError", this.code = i.code, this.message = i.message, this.type = i.type, this.details = i.details;
1063
- }
1064
- s.prototype = Object.create(Error.prototype), s.prototype.constructor = s, s.types = e([
1065
- "CUSTOMER",
1066
- "MERCHANT",
1067
- "NETWORK",
1068
- "INTERNAL",
1069
- "UNKNOWN"
1070
- ]), s.findRootError = function(i) {
1071
- return i instanceof s && i.details && i.details.originalError ? s.findRootError(i.details.originalError) : i;
1072
- }, u.exports = s;
1073
- }, { "./enumerate": 65 }], 60: [function(n, u, a) {
1074
- var e = "3.126.0", s = "web", i = {
1075
- production: "https://api.braintreegateway.com:443",
1076
- sandbox: "https://api.sandbox.braintreegateway.com:443"
1077
- }, r = {
1078
- production: "https://assets.braintreegateway.com",
1079
- sandbox: "https://assets.braintreegateway.com"
1080
- }, t = {
1081
- production: "https://payments.braintree-api.com/graphql",
1082
- sandbox: "https://payments.sandbox.braintree-api.com/graphql"
1083
- };
1084
- u.exports = {
1085
- ANALYTICS_PREFIX: s + ".",
1086
- ANALYTICS_REQUEST_TIMEOUT_MS: 2e3,
1087
- ANALYTICS_URL: "https://www.paypal.com/xoplatform/logger/api/logger",
1088
- ASSETS_URLS: r,
1089
- CLIENT_API_URLS: i,
1090
- FRAUDNET_SOURCE: "BRAINTREE_SIGNIN",
1091
- FRAUDNET_FNCLS: "fnparams-dede7cc5-15fd-4c75-a9f4-36c430ee3a99",
1092
- FRAUDNET_URL: "https://c.paypal.com/da/r/fb.js",
1093
- BUS_CONFIGURATION_REQUEST_EVENT: "BUS_CONFIGURATION_REQUEST",
1094
- GRAPHQL_URLS: t,
1095
- INTEGRATION_TIMEOUT_MS: 6e4,
1096
- VERSION: e,
1097
- INTEGRATION: "custom",
1098
- SOURCE: "client",
1099
- PLATFORM: s,
1100
- BRAINTREE_LIBRARY_VERSION: "braintree/" + s + "/" + e,
1101
- ALLOWED_EXTRA_EVENT_FIELDS: ["context_id", "context_type"]
1102
- };
1103
- }, {}], 61: [function(n, u, a) {
1104
- var e = n("./braintree-error"), s = n("./errors");
1105
- u.exports = function(i, r) {
1106
- r.forEach(function(t) {
1107
- i[t] = function() {
1108
- throw new e({
1109
- type: s.METHOD_CALLED_AFTER_TEARDOWN.type,
1110
- code: s.METHOD_CALLED_AFTER_TEARDOWN.code,
1111
- message: t + " cannot be called after teardown."
1112
- });
1113
- };
1114
- });
1115
- };
1116
- }, { "./braintree-error": 59, "./errors": 66 }], 62: [function(n, u, a) {
1117
- var e = n("./constants").ASSETS_URLS;
1118
- function s(i) {
1119
- return e.production;
1120
- }
1121
- u.exports = {
1122
- create: s
1123
- };
1124
- }, { "./constants": 60 }], 63: [function(n, u, a) {
1125
- var e = n("../lib/vendor/polyfill").atob, s = n("../lib/constants").CLIENT_API_URLS;
1126
- function i(o) {
1127
- return /^[a-zA-Z0-9]+_[a-zA-Z0-9]+_[a-zA-Z0-9_]+$/.test(o);
1128
- }
1129
- function r(o) {
1130
- var c = o.split("_"), f = c[0], m = c.slice(2).join("_");
1131
- return {
1132
- merchantId: m,
1133
- environment: f
1134
- };
1135
- }
1136
- function t(o) {
1137
- var c, f, m = {
1138
- attrs: {},
1139
- configUrl: ""
1140
- };
1141
- return i(o) ? (f = r(o), m.environment = f.environment, m.attrs.tokenizationKey = o, m.configUrl = s[f.environment] + "/merchants/" + f.merchantId + "/client_api/v1/configuration") : (c = JSON.parse(e(o)), m.environment = c.environment, m.attrs.authorizationFingerprint = c.authorizationFingerprint, m.configUrl = c.configUrl, m.graphQL = c.graphQL), m;
1142
- }
1143
- u.exports = t;
1144
- }, { "../lib/constants": 60, "../lib/vendor/polyfill": 86 }], 64: [function(n, u, a) {
1145
- var e = n("./braintree-error"), s = n("./assets"), i = n("./errors"), r = "3.126.0";
1146
- function t(o) {
1147
- var c = Promise.resolve();
1148
- return o.client ? Promise.resolve(o.client) : (window.braintree && window.braintree.client || (c = s.loadScript({
1149
- src: o.assetsUrl + "/web/" + r + "/js/client.min.js"
1150
- }).catch(function(f) {
1151
- return Promise.reject(
1152
- new e({
1153
- type: i.CLIENT_SCRIPT_FAILED_TO_LOAD.type,
1154
- code: i.CLIENT_SCRIPT_FAILED_TO_LOAD.code,
1155
- message: i.CLIENT_SCRIPT_FAILED_TO_LOAD.message,
1156
- details: {
1157
- originalError: f
1158
- }
1159
- })
1160
- );
1161
- })), c.then(function() {
1162
- return window.braintree.client.VERSION !== r ? Promise.reject(
1163
- new e({
1164
- type: i.INCOMPATIBLE_VERSIONS.type,
1165
- code: i.INCOMPATIBLE_VERSIONS.code,
1166
- message: "Client (version " + window.braintree.client.VERSION + ") and " + o.name + " (version " + r + ") components must be from the same SDK version."
1167
- })
1168
- ) : window.braintree.client.create({
1169
- authorization: o.authorization,
1170
- debug: o.debug
1171
- });
1172
- }));
1173
- }
1174
- u.exports = {
1175
- create: t
1176
- };
1177
- }, { "./assets": 56, "./braintree-error": 59, "./errors": 66 }], 65: [function(n, u, a) {
1178
- function e(s, i) {
1179
- return i = i == null ? "" : i, s.reduce(function(r, t) {
1180
- return r[t] = i + t, r;
1181
- }, {});
1182
- }
1183
- u.exports = e;
1184
- }, {}], 66: [function(n, u, a) {
1185
- var e = n("./braintree-error");
1186
- u.exports = {
1187
- INVALID_USE_OF_INTERNAL_FUNCTION: {
1188
- type: e.types.INTERNAL,
1189
- code: "INVALID_USE_OF_INTERNAL_FUNCTION"
1190
- },
1191
- INSTANTIATION_OPTION_REQUIRED: {
1192
- type: e.types.MERCHANT,
1193
- code: "INSTANTIATION_OPTION_REQUIRED"
1194
- },
1195
- INCOMPATIBLE_VERSIONS: {
1196
- type: e.types.MERCHANT,
1197
- code: "INCOMPATIBLE_VERSIONS"
1198
- },
1199
- CLIENT_SCRIPT_FAILED_TO_LOAD: {
1200
- type: e.types.NETWORK,
1201
- code: "CLIENT_SCRIPT_FAILED_TO_LOAD",
1202
- message: "Braintree client script could not be loaded."
1203
- },
1204
- METHOD_CALLED_AFTER_TEARDOWN: {
1205
- type: e.types.MERCHANT,
1206
- code: "METHOD_CALLED_AFTER_TEARDOWN"
1207
- }
1208
- };
1209
- }, { "./braintree-error": 59 }], 67: [function(n, u, a) {
1210
- var e = n("./strategies/popup"), s = n("./strategies/popup-bridge"), i = n("./strategies/modal"), r = n("framebus"), t = n("../shared/events"), o = n("../shared/errors"), c = n("../shared/constants"), f = n("@braintree/uuid"), m = n("@braintree/iframer"), v = n("../../braintree-error"), h = n("../shared/browser-detection"), l = n("./../../assign").assign, _ = n("../../constants").BUS_CONFIGURATION_REQUEST_EVENT, w = ["name", "dispatchFrameUrl", "openFrameUrl"];
1211
- function R() {
1212
- }
1213
- function U(N) {
1214
- if (!N)
1215
- throw new Error("Valid configuration is required");
1216
- if (w.forEach(function(C) {
1217
- if (!N.hasOwnProperty(C))
1218
- throw new Error("A valid frame " + C + " must be provided");
1219
- }), !/^[\w_]+$/.test(N.name))
1220
- throw new Error("A valid frame name must be provided");
1221
- }
1222
- function T(N) {
1223
- U(N), this._serviceId = f().replace(/-/g, ""), this._options = {
1224
- name: N.name + "_" + this._serviceId,
1225
- dispatchFrameUrl: N.dispatchFrameUrl,
1226
- openFrameUrl: N.openFrameUrl,
1227
- height: N.height,
1228
- width: N.width,
1229
- top: N.top,
1230
- left: N.left
1231
- }, this.state = N.state || {}, this._bus = new r({ channel: this._serviceId }), this._setBusEvents();
1232
- }
1233
- T.prototype.initialize = function(N) {
1234
- var C = function() {
1235
- N(), this._bus.off(t.DISPATCH_FRAME_READY, C);
1236
- }.bind(this);
1237
- this._bus.on(t.DISPATCH_FRAME_READY, C), this._writeDispatchFrame();
1238
- }, T.prototype._writeDispatchFrame = function() {
1239
- var N = c.DISPATCH_FRAME_NAME + "_" + this._serviceId, C = this._options.dispatchFrameUrl;
1240
- this._dispatchFrame = m({
1241
- "aria-hidden": !0,
1242
- name: N,
1243
- title: N,
1244
- src: C,
1245
- class: c.DISPATCH_FRAME_CLASS,
1246
- height: 0,
1247
- width: 0,
1248
- style: {
1249
- position: "absolute",
1250
- left: "-9999px"
1251
- }
1252
- }), document.body.appendChild(this._dispatchFrame);
1253
- }, T.prototype._setBusEvents = function() {
1254
- this._bus.on(
1255
- t.DISPATCH_FRAME_REPORT,
1256
- function(N, C) {
1257
- this._onCompleteCallback && this._onCompleteCallback.call(null, N.err, N.payload), this._frame.close(), this._onCompleteCallback = null, C && C();
1258
- }.bind(this)
1259
- ), this._bus.on(
1260
- _,
1261
- function(N) {
1262
- N(this.state);
1263
- }.bind(this)
1264
- );
1265
- }, T.prototype.open = function(N, C) {
1266
- if (N = N || {}, this._frame = this._getFrameForEnvironment(N), this._frame.initialize(C), !(this._frame instanceof s)) {
1267
- if (l(this.state, N.state), this._onCompleteCallback = C, this._frame.open(), this.isFrameClosed()) {
1268
- this._cleanupFrame(), C && C(new v(o.FRAME_SERVICE_FRAME_OPEN_FAILED));
1269
- return;
1270
- }
1271
- this._pollForPopupClose();
1272
- }
1273
- }, T.prototype.redirect = function(N) {
1274
- this._frame && !this.isFrameClosed() && this._frame.redirect(N);
1275
- }, T.prototype.close = function() {
1276
- this.isFrameClosed() || this._frame.close();
1277
- }, T.prototype.focus = function() {
1278
- this.isFrameClosed() || this._frame.focus();
1279
- }, T.prototype.createHandler = function(N) {
1280
- return N = N || {}, {
1281
- close: function() {
1282
- N.beforeClose && N.beforeClose(), this.close();
1283
- }.bind(this),
1284
- focus: function() {
1285
- N.beforeFocus && N.beforeFocus(), this.focus();
1286
- }.bind(this)
1287
- };
1288
- }, T.prototype.createNoopHandler = function() {
1289
- return {
1290
- close: R,
1291
- focus: R
1292
- };
1293
- }, T.prototype.teardown = function() {
1294
- this.close(), this._dispatchFrame.parentNode.removeChild(this._dispatchFrame), this._dispatchFrame = null, this._cleanupFrame();
1295
- }, T.prototype.isFrameClosed = function() {
1296
- return this._frame == null || this._frame.isClosed();
1297
- }, T.prototype._cleanupFrame = function() {
1298
- this._frame = null, clearInterval(this._popupInterval), this._popupInterval = null;
1299
- }, T.prototype._pollForPopupClose = function() {
1300
- return this._popupInterval = setInterval(
1301
- function() {
1302
- this.isFrameClosed() && (this._cleanupFrame(), this._onCompleteCallback && this._onCompleteCallback(
1303
- new v(o.FRAME_SERVICE_FRAME_CLOSED)
1304
- ));
1305
- }.bind(this),
1306
- c.POPUP_POLL_INTERVAL
1307
- ), this._popupInterval;
1308
- }, T.prototype._getFrameForEnvironment = function(N) {
1309
- var C = h.supportsPopups(), D = !!window.popupBridge, x = l({}, this._options, N);
1310
- return D ? new s(x) : C ? new e(x) : new i(x);
1311
- }, u.exports = T;
1312
- }, { "../../braintree-error": 59, "../../constants": 60, "../shared/browser-detection": 74, "../shared/constants": 75, "../shared/errors": 76, "../shared/events": 77, "./../../assign": 57, "./strategies/modal": 69, "./strategies/popup": 72, "./strategies/popup-bridge": 70, "@braintree/iframer": 27, "@braintree/uuid": 31, framebus: 38 }], 68: [function(n, u, a) {
1313
- var e = n("./frame-service");
1314
- u.exports = {
1315
- create: function(i, r) {
1316
- var t = new e(i);
1317
- t.initialize(function() {
1318
- r(t);
1319
- });
1320
- }
1321
- };
1322
- }, { "./frame-service": 67 }], 69: [function(n, u, a) {
1323
- var e = n("@braintree/iframer"), s = n("../../../assign").assign, i = n("../../shared/browser-detection"), r = {
1324
- position: "fixed",
1325
- top: 0,
1326
- left: 0,
1327
- bottom: 0,
1328
- padding: 0,
1329
- margin: 0,
1330
- border: 0,
1331
- outline: "none",
1332
- zIndex: 20001,
1333
- background: "#FFFFFF"
1334
- };
1335
- function t() {
1336
- }
1337
- function o(c) {
1338
- this._closed = null, this._frame = null, this._options = c || {}, this._container = this._options.container || document.body;
1339
- }
1340
- o.prototype.initialize = t, o.prototype.open = function() {
1341
- var c = {
1342
- src: this._options.openFrameUrl,
1343
- name: this._options.name,
1344
- scrolling: "yes",
1345
- height: "100%",
1346
- width: "100%",
1347
- style: s({}, r),
1348
- title: "Lightbox Frame"
1349
- };
1350
- i.isIos() ? (i.isIosWKWebview() && (this._lockScrolling(), c.style = {}), this._el = document.createElement("div"), s(this._el.style, r, {
1351
- height: "100%",
1352
- width: "100%",
1353
- overflow: "auto",
1354
- "-webkit-overflow-scrolling": "touch"
1355
- }), this._frame = e(c), this._el.appendChild(this._frame)) : this._el = this._frame = e(c), this._closed = !1, this._container.appendChild(this._el);
1356
- }, o.prototype.focus = t, o.prototype.close = function() {
1357
- this._container.removeChild(this._el), this._frame = null, this._closed = !0, i.isIosWKWebview() && this._unlockScrolling();
1358
- }, o.prototype.isClosed = function() {
1359
- return !!this._closed;
1360
- }, o.prototype.redirect = function(c) {
1361
- this._frame.src = c;
1362
- }, o.prototype._unlockScrolling = function() {
1363
- document.body.style.overflow = this._savedBodyProperties.overflowStyle, document.body.style.position = this._savedBodyProperties.positionStyle, window.scrollTo(
1364
- this._savedBodyProperties.left,
1365
- this._savedBodyProperties.top
1366
- ), delete this._savedBodyProperties;
1367
- }, o.prototype._lockScrolling = function() {
1368
- var c = document.documentElement;
1369
- this._savedBodyProperties = {
1370
- left: (window.pageXOffset || c.scrollLeft) - (c.clientLeft || 0),
1371
- top: (window.pageYOffset || c.scrollTop) - (c.clientTop || 0),
1372
- overflowStyle: document.body.style.overflow,
1373
- positionStyle: document.body.style.position
1374
- }, document.body.style.overflow = "hidden", document.body.style.position = "fixed", window.scrollTo(0, 0);
1375
- }, u.exports = o;
1376
- }, { "../../../assign": 57, "../../shared/browser-detection": 74, "@braintree/iframer": 27 }], 70: [function(n, u, a) {
1377
- var e = n("../../../braintree-error"), s = n("../../shared/errors");
1378
- function i() {
1379
- }
1380
- function r(t) {
1381
- this._closed = null, this._options = t;
1382
- }
1383
- r.prototype.initialize = function(t) {
1384
- var o = this;
1385
- window.popupBridge.onComplete = function(c, f) {
1386
- var m = !f && !c;
1387
- if (o._closed = !0, c || m) {
1388
- t(new e(s.FRAME_SERVICE_FRAME_CLOSED));
1389
- return;
1390
- }
1391
- t(null, f);
1392
- };
1393
- }, r.prototype.open = function(t) {
1394
- var o;
1395
- t = t || {}, o = t.openFrameUrl || this._options.openFrameUrl, this._closed = !1, window.popupBridge.open(o);
1396
- }, r.prototype.focus = i, r.prototype.close = i, r.prototype.isClosed = function() {
1397
- return !!this._closed;
1398
- }, r.prototype.redirect = function(t) {
1399
- this.open({ openFrameUrl: t });
1400
- }, u.exports = r;
1401
- }, { "../../../braintree-error": 59, "../../shared/errors": 76 }], 71: [function(n, u, a) {
1402
- var e = n("../../../shared/constants"), s = n("./position");
1403
- function i(r, t, o) {
1404
- return typeof t != "undefined" ? t : s[r](o);
1405
- }
1406
- u.exports = function(t) {
1407
- var o = t.height || e.DEFAULT_POPUP_HEIGHT, c = t.width || e.DEFAULT_POPUP_WIDTH, f = i("top", t.top, o), m = i("left", t.left, c);
1408
- return [
1409
- e.POPUP_BASE_OPTIONS,
1410
- "height=" + o,
1411
- "width=" + c,
1412
- "top=" + f,
1413
- "left=" + m
1414
- ].join(",");
1415
- };
1416
- }, { "../../../shared/constants": 75, "./position": 73 }], 72: [function(n, u, a) {
1417
- var e = n("./compose-options");
1418
- function s() {
1419
- }
1420
- function i(r) {
1421
- this._frame = null, this._options = r || {};
1422
- }
1423
- i.prototype.initialize = s, i.prototype.open = function() {
1424
- this._frame = window.open(
1425
- this._options.openFrameUrl,
1426
- this._options.name,
1427
- e(this._options)
1428
- );
1429
- }, i.prototype.focus = function() {
1430
- this._frame.focus();
1431
- }, i.prototype.close = function() {
1432
- this._frame.closed || this._frame.close();
1433
- }, i.prototype.isClosed = function() {
1434
- return !this._frame || !!this._frame.closed;
1435
- }, i.prototype.redirect = function(r) {
1436
- this._frame.location.href = r;
1437
- }, u.exports = i;
1438
- }, { "./compose-options": 71 }], 73: [function(n, u, a) {
1439
- function e(r) {
1440
- var t = window.outerHeight || document.documentElement.clientHeight, o = window.screenY == null ? window.screenTop : window.screenY;
1441
- return i(t, r, o);
1442
- }
1443
- function s(r) {
1444
- var t = window.outerWidth || document.documentElement.clientWidth, o = window.screenX == null ? window.screenLeft : window.screenX;
1445
- return i(t, r, o);
1446
- }
1447
- function i(r, t, o) {
1448
- return (r - t) / 2 + o;
1449
- }
1450
- u.exports = {
1451
- top: e,
1452
- left: s,
1453
- center: i
1454
- };
1455
- }, {}], 74: [function(n, u, a) {
1456
- u.exports = {
1457
- isIos: n("@braintree/browser-detection/is-ios"),
1458
- isIosWKWebview: n("@braintree/browser-detection/is-ios-wkwebview"),
1459
- supportsPopups: n("@braintree/browser-detection/supports-popups")
1460
- };
1461
- }, { "@braintree/browser-detection/is-ios": 23, "@braintree/browser-detection/is-ios-wkwebview": 22, "@braintree/browser-detection/supports-popups": 25 }], 75: [function(n, u, a) {
1462
- u.exports = {
1463
- DISPATCH_FRAME_NAME: "dispatch",
1464
- DISPATCH_FRAME_CLASS: "braintree-dispatch-frame",
1465
- POPUP_BASE_OPTIONS: "resizable,scrollbars",
1466
- DEFAULT_POPUP_WIDTH: 450,
1467
- DEFAULT_POPUP_HEIGHT: 535,
1468
- POPUP_POLL_INTERVAL: 100,
1469
- POPUP_CLOSE_TIMEOUT: 100
1470
- };
1471
- }, {}], 76: [function(n, u, a) {
1472
- var e = n("../../braintree-error");
1473
- u.exports = {
1474
- FRAME_SERVICE_FRAME_CLOSED: {
1475
- type: e.types.INTERNAL,
1476
- code: "FRAME_SERVICE_FRAME_CLOSED",
1477
- message: "Frame closed before tokenization could occur."
1478
- },
1479
- FRAME_SERVICE_FRAME_OPEN_FAILED: {
1480
- type: e.types.INTERNAL,
1481
- code: "FRAME_SERVICE_FRAME_OPEN_FAILED",
1482
- message: "Frame failed to open."
1483
- }
1484
- };
1485
- }, { "../../braintree-error": 59 }], 77: [function(n, u, a) {
1486
- var e = n("../../enumerate");
1487
- u.exports = e(
1488
- ["DISPATCH_FRAME_READY", "DISPATCH_FRAME_REPORT"],
1489
- "frameService:"
1490
- );
1491
- }, { "../../enumerate": 65 }], 78: [function(n, u, a) {
1492
- u.exports = function(s) {
1493
- s = s || window;
1494
- try {
1495
- return s.self !== s.top;
1496
- } catch (i) {
1497
- return !0;
1498
- }
1499
- };
1500
- }, {}], 79: [function(n, u, a) {
1501
- var e, s = {
1502
- "paypal.com": 1,
1503
- "braintreepayments.com": 1,
1504
- "braintreegateway.com": 1,
1505
- "braintree-api.com": 1
1506
- };
1507
- function i(t) {
1508
- return t.split(".").slice(-2).join(".");
1509
- }
1510
- function r(t) {
1511
- var o;
1512
- return t = t.toLowerCase(), /^https:/.test(t) ? (e = e || document.createElement("a"), e.href = t, o = i(e.hostname), s.hasOwnProperty(o)) : !1;
1513
- }
1514
- u.exports = r;
1515
- }, {}], 80: [function(n, u, a) {
1516
- u.exports = function(e) {
1517
- return JSON.parse(JSON.stringify(e));
1518
- };
1519
- }, {}], 81: [function(n, u, a) {
1520
- u.exports = function(e) {
1521
- return Object.keys(e).filter(function(s) {
1522
- return typeof e[s] == "function";
1523
- });
1524
- };
1525
- }, {}], 82: [function(n, u, a) {
1526
- function e(c) {
1527
- var f;
1528
- for (f in c)
1529
- if (c.hasOwnProperty(f))
1530
- return !0;
1531
- return !1;
1532
- }
1533
- function s(c) {
1534
- return c && typeof c == "object" && typeof c.length == "number" && Object.prototype.toString.call(c) === "[object Array]" || !1;
1535
- }
1536
- function i(c) {
1537
- return c = c || window.location.href, /\?/.test(c);
1538
- }
1539
- function r(c) {
1540
- var f, m;
1541
- return c = c || window.location.href, i(c) ? (f = c.split("?")[1] || "", f = f.replace(/#.*$/, "").split("&"), m = f.reduce(function(v, h) {
1542
- var l = h.split("="), _ = decodeURIComponent(l[0]), w = decodeURIComponent(l[1]);
1543
- return v[_] = w, v;
1544
- }, {}), m) : {};
1545
- }
1546
- function t(c, f) {
1547
- var m, v, h, l = [];
1548
- for (h in c)
1549
- c.hasOwnProperty(h) && (v = c[h], f ? s(c) ? m = f + "[]" : m = f + "[" + h + "]" : m = h, typeof v == "object" ? l.push(t(v, m)) : l.push(encodeURIComponent(m) + "=" + encodeURIComponent(v)));
1550
- return l.join("&");
1551
- }
1552
- function o(c, f) {
1553
- return c = c || "", f != null && typeof f == "object" && e(f) && (c += c.indexOf("?") === -1 ? "?" : "", c += c.indexOf("=") !== -1 ? "&" : "", c += t(f)), c;
1554
- }
1555
- u.exports = {
1556
- parse: r,
1557
- stringify: t,
1558
- queryify: o,
1559
- hasQueryParams: i
1560
- };
1561
- }, {}], 83: [function(n, u, a) {
1562
- u.exports = function(e) {
1563
- return e.indexOf("_") === -1 ? e : e.toLowerCase().replace(/(\_\w)/g, function(s) {
1564
- return s[1].toUpperCase();
1565
- });
1566
- };
1567
- }, {}], 84: [function(n, u, a) {
1568
- var e = n("./querystring");
1569
- function s() {
1570
- return e.parse(window.location.href);
1571
- }
1572
- u.exports = {
1573
- getUrlParams: s
1574
- };
1575
- }, { "./querystring": 82 }], 85: [function(n, u, a) {
1576
- function e(s) {
1577
- return s ? "" : ".min";
1578
- }
1579
- u.exports = e;
1580
- }, {}], 86: [function(n, u, a) {
1581
- var e = typeof atob == "function" ? atob : s;
1582
- function s(i) {
1583
- var r, t, o, c, f, m, v, h, l = /^(?:[A-Za-z0-9+/]{4})*(?:[A-Za-z0-9+/]{2}==|[A-Za-z0-9+/]{3}=|[A-Za-z0-9+/]{4})([=]{1,2})?$/, _ = "ABCDEFGHIJKLMNOPQRSTUVWXYZabcdefghijklmnopqrstuvwxyz0123456789+/=", w = "";
1584
- if (!l.test(i))
1585
- throw new Error("Non base64 encoded input passed to window.atob polyfill");
1586
- h = 0;
1587
- do
1588
- c = _.indexOf(i.charAt(h++)), f = _.indexOf(i.charAt(h++)), m = _.indexOf(i.charAt(h++)), v = _.indexOf(i.charAt(h++)), r = (c & 63) << 2 | f >> 4 & 3, t = (f & 15) << 4 | m >> 2 & 15, o = (m & 3) << 6 | v & 63, w += String.fromCharCode(r) + (t ? String.fromCharCode(t) : "") + (o ? String.fromCharCode(o) : "");
1589
- while (h < i.length);
1590
- return w;
1591
- }
1592
- u.exports = {
1593
- atob: function(i) {
1594
- return e.call(window, i);
1595
- },
1596
- _atob: s
1597
- };
1598
- }, {}], 87: [function(n, u, a) {
1599
- var e = this && this.__importDefault || function(i) {
1600
- return i && i.__esModule ? i : { default: i };
1601
- }, s = e(n("./venmo-desktop"));
1602
- u.exports = function(r) {
1603
- var t = new s.default(r);
1604
- return t.initialize();
1605
- };
1606
- }, { "./venmo-desktop": 89 }], 88: [function(n, u, a) {
1607
- Object.defineProperty(a, "__esModule", { value: !0 }), a.VENMO_PAYMENT_CONTEXT_STATUS_QUERY = a.LEGACY_VENMO_PAYMENT_CONTEXT_STATUS_QUERY = a.UPDATE_PAYMENT_CONTEXT_QUERY = a.LEGACY_UPDATE_PAYMENT_CONTEXT_QUERY = a.CREATE_PAYMENT_CONTEXT_QUERY = a.LEGACY_CREATE_PAYMENT_CONTEXT_QUERY = void 0, a.LEGACY_CREATE_PAYMENT_CONTEXT_QUERY = `mutation CreateVenmoQRCodePaymentContext($input: CreateVenmoQRCodePaymentContextInput!) {
1608
- createVenmoQRCodePaymentContext(input: $input) {
1609
- clientMutationId
1610
- venmoQRCodePaymentContext {
1611
- id
1612
- merchantId
1613
- createdAt
1614
- expiresAt
1615
- }
1616
- }
1617
- }`, a.CREATE_PAYMENT_CONTEXT_QUERY = `mutation CreateVenmoPaymentContext($input: CreateVenmoPaymentContextInput!) {
1618
- createVenmoPaymentContext(input: $input) {
1619
- clientMutationId
1620
- venmoPaymentContext {
1621
- id
1622
- merchantId
1623
- createdAt
1624
- expiresAt
1625
- }
1626
- }
1627
- }`, a.LEGACY_UPDATE_PAYMENT_CONTEXT_QUERY = `mutation UpdateVenmoQRCodePaymentContext($input: UpdateVenmoQRCodePaymentContextInput!) {
1628
- updateVenmoQRCodePaymentContext(input: $input) {
1629
- clientMutationId
1630
- }
1631
- }`, a.UPDATE_PAYMENT_CONTEXT_QUERY = `mutation UpdateVenmoPaymentContextStatus($input: UpdateVenmoPaymentContextStatusInput!) {
1632
- updateVenmoPaymentContextStatus(input: $input) {
1633
- clientMutationId
1634
- }
1635
- }`, a.LEGACY_VENMO_PAYMENT_CONTEXT_STATUS_QUERY = `query PaymentContext($id: ID!) {
1636
- node(id: $id) {
1637
- ... on VenmoQRCodePaymentContext {
1638
- status
1639
- paymentMethodId
1640
- userName
1641
- }
1642
- }
1643
- }`, a.VENMO_PAYMENT_CONTEXT_STATUS_QUERY = `query PaymentContext($id: ID!) {
1644
- node(id: $id) {
1645
- ... on VenmoPaymentContext {
1646
- status
1647
- paymentMethodId
1648
- userName
1649
- payerInfo {
1650
- firstName
1651
- lastName
1652
- phoneNumber
1653
- email
1654
- externalId
1655
- userName
1656
- billingAddress {
1657
- fullName
1658
- addressLine1
1659
- addressLine2
1660
- adminArea1
1661
- adminArea2
1662
- postalCode
1663
- countryCode
1664
- }
1665
- shippingAddress {
1666
- fullName
1667
- addressLine1
1668
- addressLine2
1669
- adminArea1
1670
- adminArea2
1671
- postalCode
1672
- countryCode
1673
- }
1674
- }
1675
- }
1676
- }
1677
- }`;
1678
- }, {}], 89: [function(n, u, a) {
1679
- var e = this && this.__assign || function() {
1680
- return e = Object.assign || function(h) {
1681
- for (var l, _ = 1, w = arguments.length; _ < w; _++) {
1682
- l = arguments[_];
1683
- for (var R in l)
1684
- Object.prototype.hasOwnProperty.call(l, R) && (h[R] = l[R]);
1685
- }
1686
- return h;
1687
- }, e.apply(this, arguments);
1688
- }, s = this && this.__importDefault || function(h) {
1689
- return h && h.__esModule ? h : { default: h };
1690
- };
1691
- Object.defineProperty(a, "__esModule", { value: !0 });
1692
- var i = s(n("framebus")), r = s(n("@braintree/iframer")), t = s(n("@braintree/uuid")), o = n("../shared/events"), c = n("./queries"), f = 1e3, m = 2e3, v = (
1693
- /** @class */
1694
- function() {
1695
- function h(l) {
1696
- this.isHidden = !0, this.env = l.environment, this.id = t.default(), this.profileId = l.profileId, this.displayName = l.displayName, this.paymentMethodUsage = l.paymentMethodUsage, this.shouldUseLegacyQRCodeMutation = !this.paymentMethodUsage;
1697
- var _ = l.url + "#" + this.env + "_" + this.id;
1698
- this.bus = new i.default({
1699
- channel: this.id,
1700
- verifyDomain: l.verifyDomain,
1701
- targetFrames: []
1702
- }), this.apiRequest = l.apiRequest, this.sendEvent = l.sendEvent, this.Promise = l.Promise, this.alertBox = document.createElement("div"), this.alertBox.setAttribute("data-venmo-desktop-id", this.id), this.alertBox.setAttribute("role", "alert"), this.alertBox.style.position = "fixed", this.alertBox.style.display = "none", this.alertBox.style.height = "1px", this.alertBox.style.width = "1px", this.alertBox.style.overflow = "hidden", this.alertBox.style.zIndex = "0", this.iframe = r.default({
1703
- src: _,
1704
- name: "venmo-desktop-iframe",
1705
- style: {
1706
- display: "none",
1707
- position: "fixed",
1708
- top: "0",
1709
- bottom: "0",
1710
- right: "0",
1711
- left: "0",
1712
- height: "100%",
1713
- width: "100%",
1714
- zIndex: "9999999"
1715
- },
1716
- title: "Venmo Desktop"
1717
- }), this.bus.addTargetFrame(this.iframe);
1718
- }
1719
- return h.prototype.initialize = function() {
1720
- var l = this;
1721
- return new this.Promise(function(_) {
1722
- l.bus.on(o.VENMO_DESKTOP_IFRAME_READY, function() {
1723
- _(l);
1724
- }), l.bus.on(o.VENMO_DESKTOP_REQUEST_NEW_QR_CODE, function() {
1725
- l.sendEvent("venmo.tokenize.desktop.restarted-from-error-view"), l.startPolling();
1726
- }), document.body.appendChild(l.iframe), document.body.appendChild(l.alertBox);
1727
- });
1728
- }, h.prototype.launchDesktopFlow = function() {
1729
- var l = this;
1730
- this.isHidden = !1;
1731
- var _ = new this.Promise(function(w, R) {
1732
- l.launchDesktopPromiseRejectFunction = R;
1733
- var U = function() {
1734
- l.bus.off(
1735
- o.VENMO_DESKTOP_CUSTOMER_CANCELED,
1736
- N
1737
- ), l.bus.off(
1738
- o.VENMO_DESKTOP_UNKNOWN_ERROR,
1739
- T
1740
- );
1741
- }, T = function(C) {
1742
- U(), l.sendEvent("venmo.tokenize.desktop.unknown-error"), R({
1743
- allowUIToHandleError: !1,
1744
- reason: "UNKNOWN_ERROR",
1745
- err: C
1746
- });
1747
- }, N = function() {
1748
- U(), l.updateVenmoDesktopPaymentContext("CANCELED"), l.sendEvent(
1749
- "venmo.tokenize.desktop.status-change.canceled-from-modal"
1750
- ), R({
1751
- allowUIToHandleError: !1,
1752
- reason: "CUSTOMER_CANCELED"
1753
- });
1754
- };
1755
- l.completedHandler = function(C) {
1756
- U(), w(C);
1757
- }, l.bus.on(
1758
- o.VENMO_DESKTOP_CUSTOMER_CANCELED,
1759
- N
1760
- ), l.bus.on(o.VENMO_DESKTOP_UNKNOWN_ERROR, T);
1761
- });
1762
- return this.iframe.style.display = "block", this.setAlert("Generating a QR code, get your Venmo app ready"), this.iframe.focus(), this.startPolling(), _.then(function(w) {
1763
- return delete l.venmoContextId, delete l.launchDesktopPromiseRejectFunction, w;
1764
- }).catch(function(w) {
1765
- return delete l.venmoContextId, delete l.launchDesktopPromiseRejectFunction, l.Promise.reject(w);
1766
- });
1767
- }, h.prototype.triggerCompleted = function(l) {
1768
- var _ = this;
1769
- this.isHidden || setTimeout(function() {
1770
- _.completedHandler && _.completedHandler(l), delete _.completedHandler;
1771
- }, m);
1772
- }, h.prototype.triggerRejected = function(l) {
1773
- this.launchDesktopPromiseRejectFunction && this.launchDesktopPromiseRejectFunction(l);
1774
- }, h.prototype.hideDesktopFlow = function() {
1775
- this.setAlert(""), this.iframe.style.display = "none", this.bus.emit(o.VENMO_DESKTOP_CLOSED_FROM_PARENT), this.isHidden = !0;
1776
- }, h.prototype.displayError = function(l) {
1777
- this.isHidden || (this.bus.emit(o.VENMO_DESKTOP_DISPLAY_ERROR, {
1778
- message: l
1779
- }), this.setAlert(l));
1780
- }, h.prototype.displayQRCode = function(l, _) {
1781
- this.isHidden || (this.bus.emit(o.VENMO_DESKTOP_DISPLAY_QR_CODE, {
1782
- id: l,
1783
- merchantId: _
1784
- }), this.setAlert("To scan the QR code, open your Venmo app"));
1785
- }, h.prototype.authorize = function() {
1786
- this.isHidden || (this.bus.emit(o.VENMO_DESKTOP_AUTHORIZE), this.setAlert("Venmo account authorized"));
1787
- }, h.prototype.authorizing = function() {
1788
- this.isHidden || (this.bus.emit(o.VENMO_DESKTOP_AUTHORIZING), this.setAlert("Authorize on your Venmo app"));
1789
- }, h.prototype.startPolling = function() {
1790
- var l = this;
1791
- return this.createVenmoDesktopPaymentContext().then(function(_) {
1792
- var w = new Date(_.expiresAt).getTime() - new Date(_.createdAt).getTime(), R = Date.now() + w;
1793
- return l.displayQRCode(_.id, _.merchantId), l.pollForStatusChange(_.status, R);
1794
- }).then(function(_) {
1795
- if (_) {
1796
- var w = _.userName || "";
1797
- w = "@" + w.replace("@", ""), l.triggerCompleted({
1798
- paymentMethodNonce: _.paymentMethodId,
1799
- username: w,
1800
- payerInfo: _.payerInfo,
1801
- id: l.venmoContextId || ""
1802
- });
1803
- }
1804
- }).catch(function(_) {
1805
- _.allowUIToHandleError || (l.sendEvent("venmo.tokenize.desktop.unhandled-error"), l.triggerRejected(_));
1806
- });
1807
- }, h.prototype.pollForStatusChange = function(l, _) {
1808
- var w = this;
1809
- return this.venmoContextId ? Date.now() > _ ? this.updateVenmoDesktopPaymentContext("EXPIRED").then(function() {
1810
- return w.displayError("Something went wrong"), w.sendEvent("venmo.tokenize.desktop.status-change.sdk-timeout"), w.Promise.reject({
1811
- allowUIToHandleError: !0,
1812
- reason: "TIMEOUT"
1813
- });
1814
- }) : this.lookupVenmoDesktopPaymentContext().then(function(R) {
1815
- if (!w.venmoContextId || !R)
1816
- return w.Promise.resolve();
1817
- var U = R.status;
1818
- if (U !== l)
1819
- switch (l = U, w.sendEvent(
1820
- "venmo.tokenize.desktop.status-change." + l.toLowerCase()
1821
- ), l) {
1822
- case "CREATED":
1823
- break;
1824
- case "EXPIRED":
1825
- case "FAILED":
1826
- case "CANCELED":
1827
- var T = l === "CANCELED" ? "The authorization was canceled" : "Something went wrong";
1828
- return w.displayError(T), w.Promise.reject({
1829
- allowUIToHandleError: !0,
1830
- reason: l
1831
- });
1832
- case "SCANNED":
1833
- w.authorizing();
1834
- break;
1835
- case "APPROVED":
1836
- return w.authorize(), w.Promise.resolve(R);
1837
- }
1838
- return new w.Promise(function(N, C) {
1839
- setTimeout(function() {
1840
- w.pollForStatusChange(l, _).then(N).catch(C);
1841
- }, f);
1842
- });
1843
- }) : this.Promise.resolve();
1844
- }, h.prototype.teardown = function() {
1845
- this.bus.teardown(), this.iframe.parentNode && this.iframe.parentNode.removeChild(this.iframe), this.alertBox.parentNode && this.alertBox.parentNode.removeChild(this.alertBox);
1846
- }, h.prototype.setAlert = function(l) {
1847
- this.alertBox.style.display = l ? "block" : "none", this.alertBox.textContent = l;
1848
- }, h.prototype.createPaymentContextFromGraphqlLegacyQRCodeMutation = function(l) {
1849
- return this.apiRequest(c.LEGACY_CREATE_PAYMENT_CONTEXT_QUERY, {
1850
- input: {
1851
- environment: this.env,
1852
- intent: l
1853
- }
1854
- }).then(function(_) {
1855
- return _.createVenmoQRCodePaymentContext.venmoQRCodePaymentContext;
1856
- });
1857
- }, h.prototype.createPaymentContextFromGraphQL = function(l) {
1858
- var _ = {
1859
- intent: l,
1860
- paymentMethodUsage: this.paymentMethodUsage,
1861
- customerClient: "DESKTOP"
1862
- };
1863
- return this.profileId && (_.merchantProfileId = this.profileId), this.displayName && (_.displayName = this.displayName), this.apiRequest(c.CREATE_PAYMENT_CONTEXT_QUERY, {
1864
- input: _
1865
- }).then(function(w) {
1866
- return w.createVenmoPaymentContext.venmoPaymentContext;
1867
- });
1868
- }, h.prototype.createVenmoDesktopPaymentContext = function() {
1869
- var l = this, _ = this.shouldUseLegacyQRCodeMutation ? this.createPaymentContextFromGraphqlLegacyQRCodeMutation("PAY_FROM_APP") : this.createPaymentContextFromGraphQL("PAY_FROM_APP");
1870
- return _.then(function(w) {
1871
- l.venmoContextId = w.id;
1872
- var R = l.profileId || w.merchantId;
1873
- return {
1874
- id: w.id,
1875
- status: w.status,
1876
- merchantId: R,
1877
- createdAt: w.createdAt,
1878
- expiresAt: w.expiresAt
1879
- };
1880
- });
1881
- }, h.prototype.updateVenmoDesktopPaymentContext = function(l, _) {
1882
- if (_ === void 0 && (_ = {}), !this.venmoContextId)
1883
- return this.Promise.resolve();
1884
- var w = {
1885
- input: e(
1886
- { id: this.venmoContextId, status: l },
1887
- _
1888
- )
1889
- }, R = this.shouldUseLegacyQRCodeMutation ? c.LEGACY_UPDATE_PAYMENT_CONTEXT_QUERY : c.UPDATE_PAYMENT_CONTEXT_QUERY;
1890
- return this.apiRequest(R, w).then(function() {
1891
- });
1892
- }, h.prototype.lookupVenmoDesktopPaymentContext = function() {
1893
- if (!this.venmoContextId)
1894
- return this.Promise.resolve();
1895
- var l = this.shouldUseLegacyQRCodeMutation ? c.LEGACY_VENMO_PAYMENT_CONTEXT_STATUS_QUERY : c.VENMO_PAYMENT_CONTEXT_STATUS_QUERY;
1896
- return this.apiRequest(l, {
1897
- id: this.venmoContextId
1898
- }).then(function(_) {
1899
- return _.node;
1900
- });
1901
- }, h;
1902
- }()
1903
- );
1904
- a.default = v;
1905
- }, { "../shared/events": 94, "./queries": 88, "@braintree/iframer": 27, "@braintree/uuid": 31, framebus: 38 }], 90: [function(n, u, a) {
1906
- var e = n("../lib/analytics"), s = n("../lib/basic-component-verification"), i = n("../lib/create-deferred-client"), r = n("../lib/create-assets-url"), t = n("./shared/errors"), o = n("@braintree/wrap-promise"), c = n("../lib/braintree-error"), f = n("./venmo"), m = n("./shared/supports-venmo"), v = "3.126.0";
1907
- function h(_) {
1908
- var w = "Venmo";
1909
- return s.verify({
1910
- name: w,
1911
- client: _.client,
1912
- authorization: _.authorization
1913
- }).then(function() {
1914
- var R, U;
1915
- return _.profileId && typeof _.profileId != "string" ? Promise.reject(
1916
- new c(t.VENMO_INVALID_PROFILE_ID)
1917
- ) : _.deepLinkReturnUrl && typeof _.deepLinkReturnUrl != "string" ? Promise.reject(
1918
- new c(t.VENMO_INVALID_DEEP_LINK_RETURN_URL)
1919
- ) : (R = i.create({
1920
- authorization: _.authorization,
1921
- client: _.client,
1922
- debug: _.debug,
1923
- assetsUrl: r.create(_.authorization),
1924
- name: w
1925
- }).then(function(T) {
1926
- var N = T.getConfiguration();
1927
- return _.client = T, N.gatewayConfiguration.payWithVenmo ? T : Promise.reject(new c(t.VENMO_NOT_ENABLED));
1928
- }), _.createPromise = R, U = new f(_), e.sendEvent(R, "venmo.initialized"), R.then(function() {
1929
- return U;
1930
- }));
1931
- });
1932
- }
1933
- function l(_) {
1934
- return m.isBrowserSupported(_);
1935
- }
1936
- u.exports = {
1937
- create: o(h),
1938
- isBrowserSupported: l,
1939
- /**
1940
- * @description The current version of the SDK, i.e. `{@pkg version}`.
1941
- * @type {string}
1942
- */
1943
- VERSION: v
1944
- };
1945
- }, { "../lib/analytics": 55, "../lib/basic-component-verification": 58, "../lib/braintree-error": 59, "../lib/create-assets-url": 62, "../lib/create-deferred-client": 64, "./shared/errors": 93, "./shared/supports-venmo": 96, "./venmo": 98, "@braintree/wrap-promise": 35 }], 91: [function(n, u, a) {
1946
- var e = n("@braintree/browser-detection/is-android"), s = n("@braintree/browser-detection/is-chrome"), i = n("@braintree/browser-detection/is-ios"), r = n("@braintree/browser-detection/is-ios-safari"), t = n("@braintree/browser-detection/is-ios-webview"), o = n("@braintree/browser-detection/is-samsung");
1947
- function c() {
1948
- return e() && window.navigator.userAgent.toLowerCase().indexOf("wv") > -1;
1949
- }
1950
- function f() {
1951
- return i() ? t() || !r() : !1;
1952
- }
1953
- function m() {
1954
- var h = window.navigator.userAgent.toLowerCase();
1955
- return h.indexOf("huawei") > -1 && h.indexOf("fban") > -1 ? !0 : e() ? h.indexOf("fb_iab") > -1 || h.indexOf("instagram") > -1 : !1;
1956
- }
1957
- function v() {
1958
- return i() && s();
1959
- }
1960
- u.exports = {
1961
- isAndroid: e,
1962
- isAndroidWebview: c,
1963
- isChrome: s,
1964
- isIos: i,
1965
- isIosChrome: v,
1966
- isSamsung: o,
1967
- isIosSafari: r,
1968
- isIosWebview: t,
1969
- isFacebookOwnedBrowserOnAndroid: m,
1970
- doesNotSupportWindowOpenInIos: f
1971
- };
1972
- }, { "@braintree/browser-detection/is-android": 18, "@braintree/browser-detection/is-chrome": 19, "@braintree/browser-detection/is-ios": 23, "@braintree/browser-detection/is-ios-safari": 20, "@braintree/browser-detection/is-ios-webview": 21, "@braintree/browser-detection/is-samsung": 24 }], 92: [function(n, u, a) {
1973
- u.exports = {
1974
- DOCUMENT_VISIBILITY_CHANGE_EVENT_DELAY: 500,
1975
- DEFAULT_PROCESS_RESULTS_DELAY: 1e3,
1976
- VENMO_APP_OR_MOBILE_AUTH_URL: "https://venmo.com/go/checkout",
1977
- VENMO_MOBILE_APP_AUTH_ONLY_URL: "https://venmo.com/braintree/checkout",
1978
- VENMO_WEB_LOGIN_URL: "https://account.venmo.com/go/web"
1979
- };
1980
- }, {}], 93: [function(n, u, a) {
1981
- var e = n("../../lib/braintree-error");
1982
- u.exports = {
1983
- VENMO_NOT_ENABLED: {
1984
- type: e.types.MERCHANT,
1985
- code: "VENMO_NOT_ENABLED",
1986
- message: "Venmo is not enabled for this merchant."
1987
- },
1988
- VENMO_TOKENIZATION_REQUEST_ACTIVE: {
1989
- type: e.types.MERCHANT,
1990
- code: "VENMO_TOKENIZATION_REQUEST_ACTIVE",
1991
- message: "Another tokenization request is active."
1992
- },
1993
- VENMO_TOKENIZATION_REQUEST_NOT_ACTIVE: {
1994
- type: e.types.MERCHANT,
1995
- code: "VENMO_TOKENIZATION_REQUEST_NOT_ACTIVE",
1996
- message: "No tokenization in progress."
1997
- },
1998
- VENMO_APP_FAILED: {
1999
- type: e.types.UNKNOWN,
2000
- code: "VENMO_APP_FAILED",
2001
- message: "Venmo app encountered a problem."
2002
- },
2003
- VENMO_APP_CANCELED: {
2004
- type: e.types.CUSTOMER,
2005
- code: "VENMO_APP_CANCELED",
2006
- message: "Venmo app authorization was canceled."
2007
- },
2008
- VENMO_CANCELED: {
2009
- type: e.types.CUSTOMER,
2010
- code: "VENMO_CANCELED",
2011
- message: "User canceled Venmo authorization, or Venmo app is not available."
2012
- },
2013
- VENMO_CUSTOMER_CANCELED: {
2014
- type: e.types.CUSTOMER,
2015
- code: "VENMO_CUSTOMER_CANCELED",
2016
- message: "User canceled Venmo authorization."
2017
- },
2018
- VENMO_NETWORK_ERROR: {
2019
- type: e.types.NETWORK,
2020
- code: "VENMO_NETWORK_ERROR",
2021
- message: "Something went wrong making the request"
2022
- },
2023
- VENMO_DESKTOP_CANCELED: {
2024
- type: e.types.CUSTOMER,
2025
- code: "VENMO_DESKTOP_CANCELED",
2026
- message: "User canceled Venmo authorization by closing the Venmo Desktop modal."
2027
- },
2028
- VENMO_TOKENIZATION_CANCELED_BY_MERCHANT: {
2029
- type: e.types.MERCHANT,
2030
- code: "VENMO_TOKENIZATION_CANCELED_BY_MERCHANT",
2031
- message: "The Venmo tokenization was canceled by the merchant."
2032
- },
2033
- VENMO_DESKTOP_UNKNOWN_ERROR: {
2034
- type: e.types.UNKNOWN,
2035
- code: "VENMO_DESKTOP_UNKNOWN_ERROR",
2036
- message: "Something went wrong with the Venmo Desktop flow."
2037
- },
2038
- VENMO_MOBILE_PAYMENT_CONTEXT_SETUP_FAILED: {
2039
- type: e.types.NETWORK,
2040
- code: "VENMO_MOBILE_PAYMENT_CONTEXT_SETUP_FAILED",
2041
- message: "Something went wrong creating the Venmo Payment Context."
2042
- },
2043
- VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR: {
2044
- type: e.types.UNKNOWN,
2045
- code: "VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR",
2046
- message: "Something went wrong during mobile polling."
2047
- },
2048
- VENMO_MOBILE_POLLING_TOKENIZATION_EXPIRED: {
2049
- type: e.types.CUSTOMER,
2050
- code: "VENMO_MOBILE_POLLING_TOKENIZATION_EXPIRED",
2051
- message: "The Venmo authorization request is expired."
2052
- },
2053
- VENMO_MOBILE_POLLING_TOKENIZATION_CANCELED: {
2054
- type: e.types.CUSTOMER,
2055
- code: "VENMO_MOBILE_POLLING_TOKENIZATION_CANCELED",
2056
- message: "The Venmo authorization was canceled"
2057
- },
2058
- VENMO_MOBILE_POLLING_TOKENIZATION_TIMEOUT: {
2059
- type: e.types.CUSTOMER,
2060
- code: "VENMO_MOBILE_POLLING_TOKENIZATION_TIMEOUT",
2061
- message: "Customer took too long to authorize Venmo payment."
2062
- },
2063
- VENMO_MOBILE_POLLING_TOKENIZATION_NO_CONTEXT_ID: {
2064
- type: e.types.UNKNOWN,
2065
- code: "VENMO_MOBILE_POLLING_TOKENIZATION_NO_CONTEXT_ID",
2066
- message: "No Venmo payment context ID available."
2067
- },
2068
- VENMO_MOBILE_POLLING_TOKENIZATION_FAILED: {
2069
- type: e.types.UNKNOWN,
2070
- code: "VENMO_MOBILE_POLLING_TOKENIZATION_FAILED",
2071
- message: "The Venmo authorization failed."
2072
- },
2073
- VENMO_INVALID_PROFILE_ID: {
2074
- type: e.types.MERCHANT,
2075
- code: "VENMO_INVALID_PROFILE_ID",
2076
- message: "Venmo profile ID is invalid."
2077
- },
2078
- VENMO_INVALID_DEEP_LINK_RETURN_URL: {
2079
- type: e.types.MERCHANT,
2080
- code: "VENMO_INVALID_DEEP_LINK_RETURN_URL",
2081
- message: "Venmo deep link return URL is invalid."
2082
- },
2083
- VENMO_TOKENIZATION_FAILED: {
2084
- type: e.types.UNKNOWN,
2085
- code: "VENMO_TOKENIZATION_FAILED",
2086
- message: "Venmo encountered a problem"
2087
- },
2088
- VENMO_ECD_DISABLED: {
2089
- type: e.types.MERCHANT,
2090
- code: "ECD_DISABLED",
2091
- message: "Cannot collect customer data when ECD is disabled. Enable this feature in the Control Panel to collect this data."
2092
- }
2093
- };
2094
- }, { "../../lib/braintree-error": 59 }], 94: [function(n, u, a) {
2095
- Object.defineProperty(a, "__esModule", { value: !0 }), a.VENMO_DESKTOP_UNKNOWN_ERROR = a.VENMO_DESKTOP_REQUEST_NEW_QR_CODE = a.VENMO_DESKTOP_CLOSED_FROM_PARENT = a.VENMO_DESKTOP_IFRAME_READY = a.VENMO_DESKTOP_DISPLAY_QR_CODE = a.VENMO_DESKTOP_DISPLAY_ERROR = a.VENMO_DESKTOP_CUSTOMER_CANCELED = a.VENMO_DESKTOP_AUTHORIZING = a.VENMO_DESKTOP_AUTHORIZE = a.VENMO_DESKTOP_AUTHORIZATION_TIMED_OUT = void 0, a.VENMO_DESKTOP_AUTHORIZATION_TIMED_OUT = "VENMO_DESKTOP_AUTHORIZATION_TIMED_OUT", a.VENMO_DESKTOP_AUTHORIZE = "VENMO_DESKTOP_AUTHORIZE", a.VENMO_DESKTOP_AUTHORIZING = "VENMO_DESKTOP_AUTHORIZING", a.VENMO_DESKTOP_CUSTOMER_CANCELED = "VENMO_DESKTOP_CUSTOMER_CANCELED", a.VENMO_DESKTOP_DISPLAY_ERROR = "VENMO_DESKTOP_DISPLAY_ERROR", a.VENMO_DESKTOP_DISPLAY_QR_CODE = "VENMO_DESKTOP_DISPLAY_QR_CODE", a.VENMO_DESKTOP_IFRAME_READY = "VENMO_DESKTOP_IFRAME_READY", a.VENMO_DESKTOP_CLOSED_FROM_PARENT = "VENMO_DESKTOP_CLOSED_FROM_PARENT", a.VENMO_DESKTOP_REQUEST_NEW_QR_CODE = "VENMO_DESKTOP_REQUEST_NEW_QR_CODE", a.VENMO_DESKTOP_UNKNOWN_ERROR = "VENMO_DESKTOP_UNKNOWN_ERROR";
2096
- }, {}], 95: [function(n, u, a) {
2097
- var e = n("./constants");
2098
- function s(i) {
2099
- return i.useAllowDesktopWebLogin ? e.VENMO_WEB_LOGIN_URL : i.mobileWebFallBack ? e.VENMO_APP_OR_MOBILE_AUTH_URL : e.VENMO_MOBILE_APP_AUTH_ONLY_URL;
2100
- }
2101
- u.exports = s;
2102
- }, { "./constants": 92 }], 96: [function(n, u, a) {
2103
- var e = n("./browser-detection"), s = n("../../lib/in-iframe");
2104
- function i(r) {
2105
- var t, o, c, f, m, v = e.isAndroid(), h = v || e.isIos(), l = v && e.isChrome(), _ = e.isIosSafari() || l;
2106
- return r = r || {}, o = (r.allowDesktopWebLogin || r.allowDesktop) === !0, f = r.hasOwnProperty(
2107
- "allowNewBrowserTab"
2108
- ) ? r.allowNewBrowserTab : !0, m = r.hasOwnProperty("allowWebviews") ? r.allowWebviews : !0, c = f && !s(), t = !c && e.isIosChrome() || e.isFacebookOwnedBrowserOnAndroid() || e.isSamsung(), t || !m && (e.isAndroidWebview() || e.isIosWebview()) ? !1 : h ? f ? h : _ : o;
2109
- }
2110
- u.exports = {
2111
- isBrowserSupported: i
2112
- };
2113
- }, { "../../lib/in-iframe": 78, "./browser-detection": 91 }], 97: [function(n, u, a) {
2114
- var e = n("../../lib/frame-service/external"), s = n("../../lib/use-min"), i = n("@braintree/extended-promise"), r = n("../shared/errors"), t = n("../../lib/braintree-error"), o = "3.126.0", c = `<svg width="198" height="58" viewBox="0 0 198 58" fill="none" xmlns="http://www.w3.org/2000/svg">
2115
- <path fill-rule="evenodd" clip-rule="evenodd" d="M43.0702 13.6572C44.1935 15.4585 44.6999 17.3139 44.6999 19.6576C44.6999 27.1328 38.1277 36.8436 32.7935 43.6625H20.6099L15.7236 15.2939L26.3917 14.3105L28.9751 34.4966C31.389 30.6783 34.3678 24.6779 34.3678 20.587C34.3678 18.3477 33.9727 16.8225 33.3553 15.5666L43.0702 13.6572Z" fill="white"/>
2116
- <path fill-rule="evenodd" clip-rule="evenodd" d="M56.8965 26.1491C58.8596 26.1491 63.8018 25.2772 63.8018 22.5499C63.8018 21.2402 62.8481 20.587 61.7242 20.587C59.7579 20.587 57.1776 22.8763 56.8965 26.1491ZM56.6715 31.5506C56.6715 34.8807 58.5787 36.1873 61.107 36.1873C63.8603 36.1873 66.4966 35.534 69.923 33.8433L68.6324 42.3523C66.2183 43.4976 62.4559 44.2617 58.8039 44.2617C49.5403 44.2617 46.2249 38.8071 46.2249 31.9879C46.2249 23.1496 51.6179 13.765 62.7365 13.765C68.858 13.765 72.2809 17.0949 72.2809 21.7317C72.2815 29.2066 62.4005 31.4965 56.6715 31.5506Z" fill="white"/>
2117
- <path fill-rule="evenodd" clip-rule="evenodd" d="M103.067 20.3142C103.067 21.4052 102.897 22.9875 102.727 24.0216L99.5262 43.6622H89.1385L92.0585 25.658C92.1139 25.1696 92.284 24.1865 92.284 23.6411C92.284 22.3314 91.4414 22.0047 90.4282 22.0047C89.0826 22.0047 87.7337 22.6042 86.8354 23.0418L83.5234 43.6625H73.0772L77.8495 14.257H86.8908L87.0052 16.6041C89.1382 15.2404 91.9469 13.7656 95.932 13.7656C101.212 13.765 103.067 16.3845 103.067 20.3142Z" fill="white"/>
2118
- <path fill-rule="evenodd" clip-rule="evenodd" d="M133.906 16.9841C136.881 14.9131 139.69 13.765 143.563 13.765C148.897 13.765 150.753 16.3845 150.753 20.3142C150.753 21.4052 150.583 22.9875 150.413 24.0216L147.216 43.6622H136.825L139.801 25.2774C139.855 24.786 139.971 24.1865 139.971 23.8063C139.971 22.3317 139.128 22.0047 138.115 22.0047C136.824 22.0047 135.535 22.5501 134.577 23.0418L131.266 43.6625H120.878L123.854 25.2777C123.908 24.7863 124.02 24.1868 124.02 23.8065C124.02 22.332 123.177 22.0049 122.167 22.0049C120.819 22.0049 119.473 22.6045 118.574 23.0421L115.26 43.6628H104.817L109.589 14.2573H118.52L118.8 16.7122C120.878 15.241 123.684 13.7662 127.446 13.7662C130.704 13.765 132.837 15.129 133.906 16.9841Z" fill="white"/>
2119
- <path fill-rule="evenodd" clip-rule="evenodd" d="M171.426 25.5502C171.426 23.1496 170.808 21.513 168.956 21.513C164.857 21.513 164.015 28.55 164.015 32.1498C164.015 34.8807 164.802 36.5709 166.653 36.5709C170.528 36.5709 171.426 29.1497 171.426 25.5502ZM153.458 31.7152C153.458 22.442 158.511 13.765 170.136 13.765C178.896 13.765 182.098 18.7854 182.098 25.7148C182.098 34.8805 177.099 44.3723 165.194 44.3723C156.378 44.3723 153.458 38.7525 153.458 31.7152Z" fill="white"/>
2120
- </svg>`, f = "Tap cancel payment to cancel and return to the business. Continue payment will relaunch the payment window.", m = 400, v = 570, h = {
2121
- backdrop: "venmo-desktop-web-backdrop",
2122
- backdropHidden: "venmo-desktop-web-backdrop.hidden",
2123
- backdropContainer: "venmo-backdrop-container",
2124
- cancelButton: "venmo-popup-cancel-button",
2125
- continueButton: "venmo-popup-continue-button",
2126
- message: "venmo-message",
2127
- instructions: "venmo-instructions",
2128
- venmoLogo: "venmo-full-logo"
2129
- };
2130
- i.suppressUnhandledPromiseMessage = !0;
2131
- function l(C) {
2132
- var D = C.frameServiceInstance, x = C.venmoUrl, W = C.checkForStatusChange, V = C.cancelTokenization, A = C.checkPaymentContextStatus, k = new i();
2133
- return document.getElementById(h.continueButton).addEventListener("click", function() {
2134
- D.focus();
2135
- }), document.getElementById(h.cancelButton).addEventListener("click", function() {
2136
- D.close(), V(), w();
2137
- }), D.open({}, function(M) {
2138
- var H = 1;
2139
- M ? k.reject(M) : W(H).then(function(B) {
2140
- k.resolve(B);
2141
- }).catch(function(B) {
2142
- A().then(function(j) {
2143
- j.status === "CREATED" ? k.reject(
2144
- new t(r.VENMO_CUSTOMER_CANCELED)
2145
- ) : k.reject(B);
2146
- });
2147
- }), D.close(), w();
2148
- }), D.redirect(x), k;
2149
- }
2150
- function _() {
2151
- var C = Math.round((window.outerHeight - v) / 2) + window.screenTop, D = Math.round((window.outerWidth - m) / 2) + window.screenLeft;
2152
- return {
2153
- top: C,
2154
- left: D
2155
- };
2156
- }
2157
- function w() {
2158
- document.getElementById("venmo-desktop-web-backdrop").classList.add("hidden");
2159
- }
2160
- function R() {
2161
- var C = [
2162
- "#" + h.backdropHidden + " {",
2163
- "display: none;",
2164
- "}",
2165
- "#" + h.backdrop + " {",
2166
- "z-index: 3141592632;",
2167
- "cursor: pointer;",
2168
- "position: fixed;",
2169
- "top: 0;",
2170
- "left: 0;",
2171
- "bottom: 0;",
2172
- "width: 100%;",
2173
- "background: rgba(0, 0, 0, 0.8);",
2174
- "}"
2175
- ], D = [
2176
- "#" + h.backdropContainer + " {",
2177
- "display: flex;",
2178
- "align-content: center;",
2179
- "justify-content: center;",
2180
- "align-items: center;",
2181
- "width: 100%;",
2182
- "height: 100%;",
2183
- "flex-direction: column;",
2184
- "}"
2185
- ], x = [
2186
- "#" + h.cancelButton + " {",
2187
- "height: 24px;",
2188
- "width: 380px;",
2189
- "font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;",
2190
- "font-style: normal;",
2191
- "font-weight: 700;",
2192
- "font-size: 18px;",
2193
- "line-height: 24px;",
2194
- "text-align: center;",
2195
- "background-color: transparent;",
2196
- "border: none;",
2197
- "color: #FFFFFF;",
2198
- "margin-top: 28px;",
2199
- "}"
2200
- ], W = [
2201
- "#" + h.continueButton + " {",
2202
- "width: 400px;",
2203
- "height: 50px;",
2204
- "background: #0074DE;",
2205
- "border-radius: 24px;",
2206
- "border: none;",
2207
- "font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;",
2208
- "font-style: normal;",
2209
- "font-weight: 700;",
2210
- "font-size: 18px;",
2211
- "color: #FFFFFF;",
2212
- "margin-top: 44px;",
2213
- "}"
2214
- ], V = [
2215
- "#" + h.message + " {",
2216
- "font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;",
2217
- "font-style: normal;",
2218
- "font-weight: 500;",
2219
- "font-size: 24px;",
2220
- "line-height: 32px;",
2221
- "text-align: center;",
2222
- "color: #FFFFFF;",
2223
- "margin-top: 32px;",
2224
- "}"
2225
- ], A = [
2226
- "#" + h.instructions + " {",
2227
- "font-family: 'Helvetica Neue', Helvetica, Arial, sans-serif;",
2228
- "font-style: normal;",
2229
- "font-weight: 400;",
2230
- "font-size: 16px;",
2231
- "line-height: 20px;",
2232
- "text-align: center;",
2233
- "color: #FFFFFF;",
2234
- "margin-top: 16px;",
2235
- "width: 400px;",
2236
- "}"
2237
- ], k = C.concat(
2238
- D,
2239
- x,
2240
- W,
2241
- V,
2242
- A
2243
- );
2244
- return k.join(`
2245
- `);
2246
- }
2247
- function U(C) {
2248
- var D = document.getElementById(h.backdrop), x, W, V, A, k, M, H, B;
2249
- if (D) {
2250
- D.classList.remove("hidden");
2251
- return;
2252
- }
2253
- x = document.createElement("style"), W = document.createElement("div"), V = document.createElement("div"), A = document.createElement("div"), k = document.createElement("div"), M = document.createElement("div"), H = document.createElement("button"), B = document.createElement("button"), C && (x.nonce = C), x.id = "venmo-desktop-web__injected-styles", x.innerHTML = R(), W.id = h.backdrop, V.id = h.backdropContainer, A.id = h.venmoLogo, A.innerHTML = c, k.id = h.message, k.innerText = "What would you like to do?", M.id = h.instructions, M.innerText = f, H.id = h.continueButton, H.innerText = "Continue payment", B.id = h.cancelButton, B.innerText = "Cancel payment", document.head.appendChild(x), V.appendChild(A), V.appendChild(k), V.appendChild(M), V.appendChild(H), V.appendChild(B), W.appendChild(V), document.body.appendChild(W), W.addEventListener("click", function(j) {
2254
- j.stopPropagation();
2255
- });
2256
- }
2257
- function T(C) {
2258
- return U(C.styleCspNonce), l(C);
2259
- }
2260
- function N(C) {
2261
- var D = new i(), x = "venmoDesktopWebLogin", W = C.assetsUrl, V = C.debug || !1, A = _(), k = W + "/web/" + o + "/html";
2262
- return e.create(
2263
- {
2264
- name: x,
2265
- dispatchFrameUrl: k + "/dispatch-frame" + s(V) + ".html",
2266
- openFrameUrl: k + "/venmo-landing-frame" + s(V) + ".html",
2267
- top: A.top,
2268
- left: A.left,
2269
- height: v,
2270
- width: m
2271
- },
2272
- function(M) {
2273
- D.resolve(M);
2274
- }
2275
- ), D;
2276
- }
2277
- u.exports = {
2278
- runWebLogin: T,
2279
- openPopup: l,
2280
- setupDesktopWebLogin: N,
2281
- POPUP_WIDTH: m,
2282
- POPUP_HEIGHT: v
2283
- };
2284
- }, { "../../lib/braintree-error": 59, "../../lib/frame-service/external": 68, "../../lib/use-min": 85, "../shared/errors": 93, "@braintree/extended-promise": 26 }], 98: [function(n, u, a) {
2285
- var e = n("../lib/analytics"), s = n("../lib/assign").assign, i = n("./shared/supports-venmo"), r = n("./shared/browser-detection"), t = n("./shared/constants"), o = n("./shared/errors"), c = n("../lib/querystring"), f = n("../lib/is-verified-domain"), m = n("../lib/methods"), v = n("../lib/convert-methods-to-error"), h = n("@braintree/wrap-promise"), l = n("../lib/braintree-error"), _ = n("../lib/in-iframe"), w = n("@braintree/extended-promise"), R = n("./shared/get-venmo-url"), U = n("./shared/web-login-backdrop"), T = n("../lib/snake-case-to-camel-case"), N = n("../lib/url-params"), C = n("./external/"), D = n("./external/queries"), x = "3.126.0", W = 250, V = 3e5;
2286
- w.suppressUnhandledPromiseMessage = !0;
2287
- function A(d) {
2288
- var p = this;
2289
- this._allowDesktopWebLogin = d.allowDesktopWebLogin || !1, this._mobileWebFallBack = d.mobileWebFallBack || !1, this._createPromise = d.createPromise, this._allowNewBrowserTab = d.allowNewBrowserTab !== !1, this._allowWebviews = d.allowWebviews !== !1, this._allowDesktop = d.allowDesktop === !0, this._useRedirectForIOS = d.useRedirectForIOS === !0, this._profileId = d.profileId, this._displayName = d.displayName, this._deepLinkReturnUrl = d.deepLinkReturnUrl, this._ignoreHistoryChanges = d.ignoreHistoryChanges, this._paymentMethodUsage = (d.paymentMethodUsage || "").toUpperCase(), this._shouldUseLegacyFlow = !this._paymentMethodUsage, this._requireManualReturn = d.requireManualReturn === !0, this._useDesktopQRFlow = this._allowDesktop && this._isDesktop() && !this._allowDesktopWebLogin, this._useAllowDesktopWebLogin = this._allowDesktopWebLogin && this._isDesktop(), this._cannotHaveReturnUrls = _() || this._requireManualReturn, this._allowAndroidRecreation = d.allowAndroidRecreation !== !1, this._maxRetryCount = 3, this._collectCustomerBillingAddress = d.collectCustomerBillingAddress || !1, this._collectCustomerShippingAddress = d.collectCustomerShippingAddress || !1, this._isFinalAmount = d.isFinalAmount || !1, this._lineItems = d.lineItems, this._subTotalAmount = d.subTotalAmount, this._discountAmount = d.discountAmount, this._taxAmount = d.taxAmount, this._shippingAmount = d.shippingAmount, this._totalAmount = d.totalAmount, this._cspNonce = (this._mobileWebFallBack || this._allowDesktopWebLogin) && (d.styleCspNonce || !1), this._shouldCreateVenmoPaymentContext = this._cannotHaveReturnUrls || !this._shouldUseLegacyFlow, e.sendEvent(
2290
- this._createPromise,
2291
- "venmo.desktop-flow.configured." + String(!!this._allowDesktop)
2292
- ), this.hasTokenizationResult() ? e.sendEvent(
2293
- this._createPromise,
2294
- "venmo.appswitch.return-in-new-tab"
2295
- ) : this._useDesktopQRFlow ? this._createPromise = this._createPromise.then(function(O) {
2296
- var I = O.getConfiguration().gatewayConfiguration;
2297
- return C({
2298
- url: I.assetsUrl + "/web/" + x + "/html/venmo-desktop-frame.html",
2299
- environment: I.environment === "production" ? "PRODUCTION" : "SANDBOX",
2300
- profileId: p._profileId || I.payWithVenmo.merchantId,
2301
- paymentMethodUsage: p._paymentMethodUsage,
2302
- displayName: p._displayName,
2303
- Promise,
2304
- apiRequest: function(E, g) {
2305
- return O.request({
2306
- api: "graphQLApi",
2307
- data: {
2308
- query: E,
2309
- variables: g
2310
- }
2311
- }).then(function(y) {
2312
- return y.data;
2313
- });
2314
- },
2315
- sendEvent: function(E) {
2316
- e.sendEvent(p._createPromise, E);
2317
- },
2318
- verifyDomain: f
2319
- }).then(function(E) {
2320
- return p._venmoDesktopInstance = E, e.sendEvent(
2321
- p._createPromise,
2322
- "venmo.desktop-flow.presented"
2323
- ), O;
2324
- }).catch(function() {
2325
- return e.sendEvent(
2326
- p._createPromise,
2327
- "venmo.desktop-flow.setup-failed"
2328
- ), p._useDesktopQRFlow = !1, O;
2329
- });
2330
- }) : this._shouldCreateVenmoPaymentContext && (this._mobilePollingInterval = W, this._mobilePollingExpiresThreshold = V, this._createPromise = this._createPromise.then(function(O) {
2331
- var I, E, g = p._cannotHaveReturnUrls ? "manual-return" : "mobile-payment-context", y = O.getConfiguration();
2332
- return E = U.setupDesktopWebLogin({
2333
- assetsUrl: y.gatewayConfiguration.assetsUrl,
2334
- debug: y.isDebug
2335
- }).then(function(P) {
2336
- p._frameServiceInstance = P;
2337
- }).catch(function(P) {
2338
- return P;
2339
- }), p._mobilePollingContextEnvironment = y.gatewayConfiguration.environment.toUpperCase(), I = p._createVenmoPaymentContext(O).then(function() {
2340
- return e.sendEvent(
2341
- p._createPromise,
2342
- "venmo." + g + ".presented"
2343
- ), O;
2344
- }).catch(function(P) {
2345
- return e.sendEvent(
2346
- p._createPromise,
2347
- "venmo." + g + ".setup-failed"
2348
- ), Promise.reject(
2349
- new l({
2350
- type: o.VENMO_MOBILE_PAYMENT_CONTEXT_SETUP_FAILED.type,
2351
- code: o.VENMO_MOBILE_PAYMENT_CONTEXT_SETUP_FAILED.code,
2352
- message: k(P) ? P.details.originalError[0].message : o.VENMO_MOBILE_PAYMENT_CONTEXT_SETUP_FAILED.message,
2353
- details: {
2354
- originalError: P
2355
- }
2356
- })
2357
- );
2358
- }), w.all([E, I]).then(function(P) {
2359
- var S = P[1];
2360
- return Promise.resolve(S);
2361
- }).catch(function(P) {
2362
- return Promise.reject(P);
2363
- });
2364
- }));
2365
- }
2366
- function k(d) {
2367
- return d.details && d.details.originalError && d.details.originalError[0] && d.details.originalError[0].extensions && d.details.originalError[0].extensions.errorClass === "VALIDATION" && d.details.originalError[0].extensions.errorType === "user_error";
2368
- }
2369
- A.prototype._createVenmoPaymentContext = function(d, p) {
2370
- var O = this, I, E, g = d.getConfiguration(), y = g.gatewayConfiguration.payWithVenmo, P = !1, S = O._useAllowDesktopWebLogin ? "NATIVE_WEB" : "MOBILE_WEB";
2371
- if (!this._shouldCreateVenmoPaymentContext)
2372
- return Promise.resolve();
2373
- if (this._shouldUseLegacyFlow)
2374
- I = d.request({
2375
- api: "graphQLApi",
2376
- data: {
2377
- query: D.LEGACY_CREATE_PAYMENT_CONTEXT_QUERY,
2378
- variables: {
2379
- input: {
2380
- environment: this._mobilePollingContextEnvironment,
2381
- intent: "PAY_FROM_APP"
2382
- }
2383
- }
2384
- }
2385
- }).then(function(b) {
2386
- return b.data.createVenmoQRCodePaymentContext.venmoQRCodePaymentContext;
2387
- });
2388
- else {
2389
- if ((this._collectCustomerBillingAddress || this._collectCustomerShippingAddress) && !y.enrichedCustomerDataEnabled)
2390
- return Promise.reject(new l(o.VENMO_ECD_DISABLED));
2391
- this._lineItems && this._lineItems.forEach(function(b) {
2392
- b.unitTaxAmount = b.unitTaxAmount || "0";
2393
- }), E = {
2394
- subTotalAmount: this._subTotalAmount,
2395
- discountAmount: this._discountAmount,
2396
- taxAmount: this._taxAmount,
2397
- shippingAmount: this._shippingAmount,
2398
- totalAmount: this._totalAmount,
2399
- lineItems: this._lineItems
2400
- }, P = Object.keys(E).some(
2401
- function(b) {
2402
- return E[b] !== void 0;
2403
- }
2404
- ), I = d.request({
2405
- api: "graphQLApi",
2406
- data: {
2407
- query: D.CREATE_PAYMENT_CONTEXT_QUERY,
2408
- variables: {
2409
- input: {
2410
- paymentMethodUsage: this._paymentMethodUsage,
2411
- intent: "CONTINUE",
2412
- customerClient: S,
2413
- isFinalAmount: this._isFinalAmount,
2414
- displayName: this._displayName,
2415
- paysheetDetails: {
2416
- collectCustomerBillingAddress: this._collectCustomerBillingAddress,
2417
- collectCustomerShippingAddress: this._collectCustomerShippingAddress,
2418
- transactionDetails: P ? E : void 0
2419
- }
2420
- }
2421
- }
2422
- }
2423
- }).then(function(b) {
2424
- return b.data.createVenmoPaymentContext.venmoPaymentContext;
2425
- });
2426
- }
2427
- return I.then(function(b) {
2428
- var F = new Date(b.expiresAt) - new Date(b.createdAt), z = F * 0.6666;
2429
- clearTimeout(O._refreshPaymentContextTimeout), O._refreshPaymentContextTimeout = setTimeout(function() {
2430
- O._tokenizationInProgress || O._createVenmoPaymentContext(d, !0);
2431
- }, z), !(p && O._tokenizationInProgress) && (O._venmoPaymentContextStatus = b.status, O._venmoPaymentContextId = b.id);
2432
- });
2433
- }, A.prototype._popupBridgeIsInstalled = function() {
2434
- return window.popupBridge && typeof window.popupBridge.open == "function";
2435
- }, A.prototype._venmoNativeAppIsInstalled = function() {
2436
- return !!(window.popupBridge && (window.parent && window.parent.popupBridge.isVenmoInstalled || window.popupBridge.isVenmoInstalled));
2437
- }, A.prototype._handleDeepLinkAppSwitch = function(d) {
2438
- X() ? this._handleIosWebviewDeepLink(d) : this._popupBridgeIsInstalled() ? this._handlePopupBridgeAppSwitch(d) : (e.sendEvent(this._createPromise, "venmo.appswitch.start.webview"), this._venmoWindow = window.open(d));
2439
- }, A.prototype._handleIosWebviewDeepLink = function(d) {
2440
- e.sendEvent(this._createPromise, "venmo.appswitch.start.ios-webview"), _() ? this._handleIosWebviewInIframe(d) : !this._venmoNativeAppIsInstalled() && this._popupBridgeIsInstalled() ? this._handlePopupBridgeAppSwitch(d) : window.location.href = d;
2441
- }, A.prototype._handleIosWebviewInIframe = function(d) {
2442
- this._venmoNativeAppIsInstalled() ? this._handleIFrameBreakout(d) : this._popupBridgeIsInstalled() ? this._handlePopupBridgeAppSwitch(d) : this._handleIFrameBreakout(d);
2443
- }, A.prototype._handlePopupBridgeAppSwitch = function(d) {
2444
- e.sendEvent(
2445
- this._createPromise,
2446
- "venmo.appswitch.start.popup-bridge"
2447
- ), window.popupBridge.open(d);
2448
- }, A.prototype._handleBrowserAppSwitch = function(d) {
2449
- e.sendEvent(this._createPromise, "venmo.appswitch.start.browser"), r.doesNotSupportWindowOpenInIos() || this._shouldUseRedirectStrategy() || this._mobileWebFallBack && r.isAndroid() && r.isChrome() ? window.location.href = d : this._venmoWindow = window.open(d);
2450
- }, A.prototype._handleIFrameBreakout = function(d) {
2451
- window.top.location.href = d;
2452
- }, A.prototype.appSwitch = function(d) {
2453
- this._deepLinkReturnUrl ? this._handleDeepLinkAppSwitch(d) : this._handleBrowserAppSwitch(d);
2454
- }, A.prototype.getUrl = function() {
2455
- return this._createPromise.then(
2456
- function(d) {
2457
- var p = d.getConfiguration(), O = {}, I = this._deepLinkReturnUrl || window.location.href.replace(window.location.hash, ""), E = p.gatewayConfiguration.payWithVenmo, g = p.analyticsMetadata, y = E.accessToken, P = {
2458
- _meta: {
2459
- version: g.sdkVersion,
2460
- integration: g.integration,
2461
- platform: g.platform,
2462
- sessionId: g.sessionId
2463
- }
2464
- };
2465
- return this._isDebug = p.isDebug, this._assetsUrl = p.gatewayConfiguration.assetsUrl, I = I.replace(/#*$/, ""), this._venmoPaymentContextId && (this._shouldUseLegacyFlow ? y += "|pcid:" + this._venmoPaymentContextId : O.resource_id = this._venmoPaymentContextId), this._shouldIncludeReturnUrls() || this._useAllowDesktopWebLogin ? (this._useAllowDesktopWebLogin && (I = this._assetsUrl + "/web/" + x + "/html/redirect-frame.html"), O["x-success"] = I + "#venmoSuccess=1", O["x-cancel"] = I + "#venmoCancel=1", O["x-error"] = I + "#venmoError=1") : (O["x-success"] = "NOOP", O["x-cancel"] = "NOOP", O["x-error"] = "NOOP"), this._allowAndroidRecreation ? O.allowAndroidRecreation = 1 : O.allowAndroidRecreation = 0, O.ua = window.navigator.userAgent, O.braintree_merchant_id = // eslint-disable-line camelcase
2466
- this._profileId || E.merchantId, O.braintree_access_token = y, O.braintree_environment = E.environment, O.braintree_sdk_data = btoa(JSON.stringify(P)), R({
2467
- useAllowDesktopWebLogin: this._useAllowDesktopWebLogin,
2468
- mobileWebFallBack: this._mobileWebFallBack
2469
- }) + "?" + c.stringify(O);
2470
- }.bind(this)
2471
- );
2472
- }, A.prototype.isBrowserSupported = function() {
2473
- return i.isBrowserSupported({
2474
- allowNewBrowserTab: this._allowNewBrowserTab,
2475
- allowWebviews: this._allowWebviews,
2476
- allowDesktop: this._allowDesktop,
2477
- allowDesktopWebLogin: this._allowDesktopWebLogin
2478
- });
2479
- }, A.prototype.hasTokenizationResult = function() {
2480
- return this._hasTokenizationResult();
2481
- }, A.prototype._hasTokenizationResult = function(d) {
2482
- var p = M(d), O = N.getUrlParams();
2483
- return O.resource_id ? this._venmoPaymentContextId = O.resource_id : p.id && (this._venmoPaymentContextId = p.id), typeof (p.venmoSuccess || p.venmoError || p.venmoCancel) != "undefined";
2484
- }, A.prototype._shouldIncludeReturnUrls = function() {
2485
- return this._deepLinkReturnUrl ? !0 : !this._cannotHaveReturnUrls;
2486
- }, A.prototype._isDesktop = function() {
2487
- return !(r.isIos() || r.isAndroid());
2488
- }, A.prototype.tokenize = function(d) {
2489
- var p = this, O;
2490
- return d = d || {}, this._tokenizationInProgress === !0 ? Promise.reject(
2491
- new l(o.VENMO_TOKENIZATION_REQUEST_ACTIVE)
2492
- ) : (this._tokenizationInProgress = !0, this._useDesktopQRFlow ? O = this._tokenizeForDesktopQRFlow(d) : this._useAllowDesktopWebLogin ? O = this._tokenizeWebLoginWithRedirect(d) : this._cannotHaveReturnUrls ? O = this._tokenizeForMobileWithManualReturn() : O = this._tokenizeForMobileWithHashChangeListeners(d), O.then(function(I) {
2493
- return p._createPromise.then(function(E) {
2494
- return p._createVenmoPaymentContext(E);
2495
- }).then(function() {
2496
- return p._tokenizationInProgress = !1, p._venmoWindow = null, B(I);
2497
- });
2498
- }).catch(function(I) {
2499
- return p._createPromise.then(function(E) {
2500
- return p._createVenmoPaymentContext(E);
2501
- }).then(function() {
2502
- return p._tokenizationInProgress = !1, p._venmoWindow = null, Promise.reject(I);
2503
- });
2504
- }));
2505
- }, A.prototype.cancelTokenization = function() {
2506
- return this._tokenizationInProgress ? (this._removeVisibilityEventListener(), this._tokenizePromise && this._tokenizePromise.reject(
2507
- new l(o.VENMO_TOKENIZATION_CANCELED_BY_MERCHANT)
2508
- ), Promise.all([
2509
- this._cancelMobilePaymentContext(),
2510
- this._cancelVenmoDesktopContext()
2511
- ])) : Promise.reject(
2512
- new l(o.VENMO_TOKENIZATION_REQUEST_NOT_ACTIVE)
2513
- );
2514
- }, A.prototype._tokenizeWebLoginWithRedirect = function() {
2515
- var d = this, p;
2516
- return e.sendEventPlus(
2517
- d._createPromise,
2518
- "venmo.tokenize.web-login.start",
2519
- {
2520
- context_id: d._venmoPaymentContextId
2521
- // eslint-disable-line camelcase
2522
- }
2523
- ), this._tokenizePromise = new w(), this.getUrl().then(function(O) {
2524
- return p = {
2525
- checkForStatusChange: d._checkPaymentContextStatusAndProcessResult.bind(d),
2526
- cancelTokenization: d.cancelTokenization.bind(d),
2527
- frameServiceInstance: d._frameServiceInstance,
2528
- venmoUrl: O,
2529
- debug: d._isDebug,
2530
- checkPaymentContextStatus: d._checkPaymentContextStatus.bind(d)
2531
- }, d._cspNonce && (p = s({}, p, {
2532
- styleCspNonce: d._cspNonce
2533
- })), U.runWebLogin(p).then(function(I) {
2534
- e.sendEventPlus(
2535
- d._createPromise,
2536
- "venmo.tokenize.web-login.success",
2537
- {
2538
- context_id: d._venmoPaymentContextId
2539
- // eslint-disable-line camelcase
2540
- }
2541
- ), d._tokenizePromise.resolve({
2542
- paymentMethodNonce: I.paymentMethodId,
2543
- username: I.userName,
2544
- payerInfo: I.payerInfo,
2545
- id: d._venmoPaymentContextId
2546
- });
2547
- }).catch(function(I) {
2548
- e.sendEventPlus(
2549
- d._createPromise,
2550
- "venmo.tokenize.web-login.failure",
2551
- {
2552
- context_id: d._venmoPaymentContextId
2553
- // eslint-disable-line camelcase
2554
- }
2555
- ), d._tokenizePromise.reject(I);
2556
- }), d._tokenizePromise;
2557
- });
2558
- }, A.prototype._queryPaymentContextStatus = function(d) {
2559
- var p = this;
2560
- return this._createPromise.then(function(O) {
2561
- var I = p._shouldUseLegacyFlow ? D.LEGACY_VENMO_PAYMENT_CONTEXT_STATUS_QUERY : D.VENMO_PAYMENT_CONTEXT_STATUS_QUERY;
2562
- return O.request({
2563
- api: "graphQLApi",
2564
- data: {
2565
- query: I,
2566
- variables: {
2567
- id: d
2568
- }
2569
- }
2570
- });
2571
- }).then(function(O) {
2572
- return O.data.node;
2573
- });
2574
- }, A.prototype._checkPaymentContextStatusAndProcessResult = function(d) {
2575
- var p = this;
2576
- return p._checkPaymentContextStatus().then(function(O) {
2577
- var I = O.status;
2578
- if (I !== p._venmoPaymentContextStatus)
2579
- switch (p._venmoPaymentContextStatus = I, e.sendEventPlus(
2580
- p._createPromise,
2581
- "venmo.tokenize.web-login.status-change",
2582
- {
2583
- context_id: p._venmoPaymentContextId
2584
- // eslint-disable-line camelcase
2585
- }
2586
- ), I) {
2587
- case "APPROVED":
2588
- return Promise.resolve(O);
2589
- case "CANCELED":
2590
- return Promise.reject(
2591
- new l(o.VENMO_CUSTOMER_CANCELED)
2592
- );
2593
- case "FAILED":
2594
- return Promise.reject(
2595
- new l(o.VENMO_TOKENIZATION_FAILED)
2596
- );
2597
- }
2598
- return new Promise(function(E, g) {
2599
- d < p._maxRetryCount ? (d++, p._checkPaymentContextStatusAndProcessResult(d).then(E).catch(g)) : g(new l(o.VENMO_TOKENIZATION_FAILED));
2600
- });
2601
- });
2602
- }, A.prototype._checkPaymentContextStatus = function() {
2603
- var d = this;
2604
- return d._queryPaymentContextStatus(d._venmoPaymentContextId).catch(function(p) {
2605
- return Promise.reject(
2606
- new l({
2607
- type: o.VENMO_NETWORK_ERROR.type,
2608
- code: o.VENMO_NETWORK_ERROR.code,
2609
- message: o.VENMO_NETWORK_ERROR.message,
2610
- details: p
2611
- })
2612
- );
2613
- }).then(function(p) {
2614
- return Promise.resolve(p);
2615
- });
2616
- }, A.prototype._pollForStatusChange = function() {
2617
- var d = this;
2618
- return d._venmoPaymentContextId ? Date.now() > d._mobilePollingContextExpiresIn ? Promise.reject(
2619
- new l(o.VENMO_MOBILE_POLLING_TOKENIZATION_TIMEOUT)
2620
- ) : d._venmoWindow && d._venmoWindow.closed && d._venmoPaymentContextStatus === "CREATED" ? (e.sendEvent(
2621
- d._createPromise,
2622
- "venmo.appswitch.browser-window.closed"
2623
- ), d._cancelMobilePaymentContext().then(function() {
2624
- e.sendEventPlus(
2625
- d._createPromise,
2626
- "venmo.tokenize.manual-return.canceled",
2627
- {
2628
- context_id: d._venmoPaymentContextId
2629
- // eslint-disable-line camelcase
2630
- }
2631
- );
2632
- }).catch(function(p) {
2633
- e.sendEventPlus(
2634
- d._createPromise,
2635
- "venmo.tokenize.manual-return.canceled.error",
2636
- {
2637
- context_id: d._venmoPaymentContextId
2638
- // eslint-disable-line camelcase
2639
- }
2640
- );
2641
- }), Promise.reject(
2642
- new l(o.VENMO_MOBILE_POLLING_TOKENIZATION_CANCELED)
2643
- )) : this._queryPaymentContextStatus(this._venmoPaymentContextId).catch(function(p) {
2644
- return Promise.reject(
2645
- new l({
2646
- type: o.VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR.type,
2647
- code: o.VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR.code,
2648
- message: o.VENMO_MOBILE_POLLING_TOKENIZATION_NETWORK_ERROR.message,
2649
- details: {
2650
- originalError: p
2651
- }
2652
- })
2653
- );
2654
- }).then(function(p) {
2655
- var O = p.status;
2656
- if (O !== d._venmoPaymentContextStatus)
2657
- switch (d._venmoPaymentContextStatus = O, e.sendEventPlus(
2658
- d._createPromise,
2659
- "venmo.tokenize.manual-return.status-change." + O.toLowerCase(),
2660
- {
2661
- context_id: d._venmoPaymentContextId
2662
- // eslint-disable-line camelcase
2663
- }
2664
- ), O) {
2665
- case "EXPIRED":
2666
- case "FAILED":
2667
- case "CANCELED":
2668
- return Promise.reject(
2669
- new l(
2670
- o["VENMO_MOBILE_POLLING_TOKENIZATION_" + O]
2671
- )
2672
- );
2673
- case "APPROVED":
2674
- return Promise.resolve(p);
2675
- }
2676
- return new Promise(function(I, E) {
2677
- setTimeout(function() {
2678
- d._pollForStatusChange().then(I).catch(E);
2679
- }, d._mobilePollingInterval);
2680
- });
2681
- }) : Promise.reject(
2682
- new l(o.VENMO_MOBILE_POLLING_TOKENIZATION_NO_CONTEXT_ID)
2683
- );
2684
- }, A.prototype._tokenizeForMobileWithManualReturn = function() {
2685
- var d = this;
2686
- return e.sendEventPlus(
2687
- this._createPromise,
2688
- "venmo.tokenize.manual-return.start",
2689
- {
2690
- context_id: d._venmoPaymentContextId
2691
- // eslint-disable-line camelcase
2692
- }
2693
- ), this._mobilePollingContextExpiresIn = Date.now() + this._mobilePollingExpiresThreshold, this._tokenizePromise = new w(), this._pollForStatusChange().then(function(p) {
2694
- e.sendEventPlus(
2695
- d._createPromise,
2696
- "venmo.tokenize.manual-return.success",
2697
- {
2698
- context_id: d._venmoPaymentContextId
2699
- // eslint-disable-line camelcase
2700
- }
2701
- ), d._tokenizePromise.resolve({
2702
- paymentMethodNonce: p.paymentMethodId,
2703
- username: p.userName,
2704
- payerInfo: p.payerInfo,
2705
- id: d._venmoPaymentContextId
2706
- });
2707
- }).catch(function(p) {
2708
- e.sendEventPlus(
2709
- d._createPromise,
2710
- "venmo.tokenize.manual-return.failure",
2711
- {
2712
- context_id: d._venmoPaymentContextId
2713
- // eslint-disable-line camelcase
2714
- }
2715
- ), d._tokenizePromise.reject(p);
2716
- }), this.getUrl().then(function(p) {
2717
- return d.appSwitch(p), d._tokenizePromise;
2718
- });
2719
- }, A.prototype._shouldUseRedirectStrategy = function() {
2720
- return r.isIos() ? this._mobileWebFallBack === !0 ? !0 : this._useRedirectForIOS : !1;
2721
- }, A.prototype._tokenizeForMobileWithHashChangeListeners = function(d) {
2722
- var p = this, O, I;
2723
- if (this.hasTokenizationResult())
2724
- return this.processHashChangeFlowResults();
2725
- e.sendEvent(this._createPromise, "venmo.tokenize.mobile.start"), this._tokenizePromise = new w(), this._previousHash = window.location.hash;
2726
- function E(g) {
2727
- var y;
2728
- p.processHashChangeFlowResults(g).catch(function(P) {
2729
- y = P;
2730
- }).then(function(P) {
2731
- !p._ignoreHistoryChanges && window.location.hash !== p._previousHash && (window.location.hash = p._previousHash), p._removeVisibilityEventListener(), y ? p._tokenizePromise.reject(y) : p._tokenizePromise.resolve(P), delete p._tokenizePromise;
2732
- });
2733
- }
2734
- return this._onHashChangeListener = function(g) {
2735
- var y = g.newURL.split("#")[1];
2736
- p._hasTokenizationResult(y) && (O = !0, clearTimeout(I), E(y));
2737
- }, window.addEventListener("hashchange", this._onHashChangeListener, !1), this._visibilityChangeListener = function() {
2738
- var g = d.processResultsDelay || t.DEFAULT_PROCESS_RESULTS_DELAY;
2739
- window.document.hidden || (p._venmoWindow && !p._venmoWindow.closed && p._venmoWindow.close(), O || (I = setTimeout(E, g)));
2740
- }, this.getUrl().then(function(g) {
2741
- return p.appSwitch(g), setTimeout(function() {
2742
- window.document.addEventListener(
2743
- j(),
2744
- p._visibilityChangeListener
2745
- );
2746
- }, t.DOCUMENT_VISIBILITY_CHANGE_EVENT_DELAY), p._tokenizePromise;
2747
- });
2748
- }, A.prototype._tokenizeForDesktopQRFlow = function() {
2749
- var d = this;
2750
- return e.sendEvent(this._createPromise, "venmo.tokenize.desktop.start"), this._tokenizePromise = new w(), this._createPromise.then(function() {
2751
- return d._venmoDesktopInstance.launchDesktopFlow();
2752
- }).then(function(p) {
2753
- d._venmoDesktopInstance.hideDesktopFlow(), e.sendEvent(
2754
- d._createPromise,
2755
- "venmo.tokenize.desktop.success"
2756
- ), d._tokenizePromise.resolve(p);
2757
- }).catch(function(p) {
2758
- if (e.sendEvent(
2759
- d._createPromise,
2760
- "venmo.tokenize.desktop.failure"
2761
- ), d._venmoDesktopInstance && d._venmoDesktopInstance.hideDesktopFlow(), p && p.reason === "CUSTOMER_CANCELED") {
2762
- d._tokenizePromise.reject(
2763
- new l(o.VENMO_DESKTOP_CANCELED)
2764
- );
2765
- return;
2766
- }
2767
- d._tokenizePromise.reject(
2768
- new l({
2769
- type: o.VENMO_DESKTOP_UNKNOWN_ERROR.type,
2770
- code: o.VENMO_DESKTOP_UNKNOWN_ERROR.code,
2771
- message: o.VENMO_DESKTOP_UNKNOWN_ERROR.message,
2772
- details: {
2773
- originalError: p
2774
- }
2775
- })
2776
- );
2777
- }), this._tokenizePromise;
2778
- }, A.prototype._cancelMobilePaymentContext = function() {
2779
- var d = this;
2780
- return this._createPromise.then(function(p) {
2781
- var O;
2782
- return d._venmoPaymentContextId ? (O = d._shouldUseLegacyFlow ? D.LEGACY_UPDATE_PAYMENT_CONTEXT_QUERY : D.UPDATE_PAYMENT_CONTEXT_QUERY, p.request({
2783
- api: "graphQLApi",
2784
- data: {
2785
- query: O,
2786
- variables: {
2787
- input: {
2788
- id: d._venmoPaymentContextId,
2789
- status: "CANCELED"
2790
- }
2791
- }
2792
- }
2793
- })) : Promise.resolve();
2794
- });
2795
- }, A.prototype._cancelVenmoDesktopContext = function() {
2796
- var d = this;
2797
- return this._createPromise.then(function() {
2798
- return d._venmoDesktopInstance && d._venmoDesktopInstance.updateVenmoDesktopPaymentContext("CANCELED"), Promise.resolve();
2799
- });
2800
- }, A.prototype.teardown = function() {
2801
- var d = this;
2802
- return this._removeVisibilityEventListener(), this._createPromise.then(
2803
- function() {
2804
- d._venmoDesktopInstance && d._venmoDesktopInstance.teardown(), clearTimeout(d._refreshPaymentContextTimeout), d._cancelMobilePaymentContext(), v(this, m(A.prototype));
2805
- }.bind(this)
2806
- );
2807
- }, A.prototype._removeVisibilityEventListener = function() {
2808
- window.removeEventListener("hashchange", this._onHashChangeListener), window.document.removeEventListener(
2809
- j(),
2810
- this._visibilityChangeListener
2811
- ), delete this._visibilityChangeListener, delete this._onHashChangeListener;
2812
- }, A.prototype.processHashChangeFlowResults = function(d) {
2813
- var p = this, O = M(d);
2814
- return new Promise(function(I, E) {
2815
- p._shouldUseLegacyFlow ? O.venmoSuccess ? (e.sendEvent(
2816
- p._createPromise,
2817
- "venmo.appswitch.handle.success"
2818
- ), window.popupBridge && e.sendEvent(
2819
- p._createPromise,
2820
- "popup-bridge:venmo:succeeded"
2821
- ), I(O)) : O.venmoError ? (e.sendEvent(p._createPromise, "venmo.appswitch.handle.error"), window.popupBridge && e.sendEvent(p._createPromise, "popup-bridge:venmo:failed"), E(
2822
- new l({
2823
- type: o.VENMO_APP_FAILED.type,
2824
- code: o.VENMO_APP_FAILED.code,
2825
- message: o.VENMO_APP_FAILED.message,
2826
- details: {
2827
- originalError: {
2828
- message: decodeURIComponent(O.errorMessage),
2829
- code: O.errorCode
2830
- }
2831
- }
2832
- })
2833
- )) : O.venmoCancel ? (e.sendEvent(p._createPromise, "venmo.appswitch.handle.cancel"), window.popupBridge && e.sendEvent(p._createPromise, "popup-bridge:venmo:canceled"), E(new l(o.VENMO_APP_CANCELED))) : (e.sendEvent(
2834
- p._createPromise,
2835
- "venmo.appswitch.cancel-or-unavailable"
2836
- ), E(new l(o.VENMO_CANCELED))) : p._pollForStatusChange().then(function(g) {
2837
- return e.sendEventPlus(
2838
- p._createPromise,
2839
- "venmo.appswitch.handle.payment-context-status-query.success",
2840
- {
2841
- context_id: p._venmoPaymentContextId
2842
- // eslint-disable-line camelcase
2843
- }
2844
- ), window.popupBridge && e.sendEvent(
2845
- p._createPromise,
2846
- "popup-bridge:venmo:succeeded"
2847
- ), I({
2848
- paymentMethodNonce: g.paymentMethodId,
2849
- username: g.userName,
2850
- payerInfo: g.payerInfo,
2851
- id: p._venmoPaymentContextId
2852
- });
2853
- }).catch(function(g) {
2854
- g.code === o.VENMO_MOBILE_POLLING_TOKENIZATION_CANCELED.code ? (window.popupBridge && e.sendEvent(
2855
- p._createPromise,
2856
- "popup-bridge:venmo:canceled"
2857
- ), E(g)) : window.popupBridge && e.sendEvent(
2858
- p._createPromise,
2859
- "popup-bridge:venmo:failed"
2860
- ), e.sendEventPlus(
2861
- p._createPromise,
2862
- "venmo.process-results.payment-context-status-query-failed",
2863
- {
2864
- context_id: p._venmoPaymentContextId
2865
- // eslint-disable-line camelcase
2866
- }
2867
- ), I(O);
2868
- }), p._clearFragmentParameters();
2869
- });
2870
- }, A.prototype._clearFragmentParameters = function() {
2871
- this._ignoreHistoryChanges || typeof window.history.replaceState == "function" && window.location.hash && history.pushState(
2872
- {},
2873
- "",
2874
- window.location.href.slice(0, window.location.href.indexOf("#"))
2875
- );
2876
- };
2877
- function M(d) {
2878
- var p = (d || window.location.hash.substring(1)).split("&"), O = p.reduce(function(I, E) {
2879
- var g = E.split("="), y = decodeURIComponent(g[0]).replace(/\W/g, ""), P = T(y), S = decodeURIComponent(g[1]);
2880
- return I[P] = S, I;
2881
- }, {});
2882
- return O.resourceId && (O.id = O.resourceId), O;
2883
- }
2884
- function H(d) {
2885
- return d = d || "", "@" + d.replace("@", "");
2886
- }
2887
- function B(d) {
2888
- var p = {
2889
- nonce: d.paymentMethodNonce,
2890
- type: "VenmoAccount",
2891
- details: {
2892
- username: H(d.username),
2893
- paymentContextId: d.id
2894
- }
2895
- };
2896
- return d.payerInfo && (p.details.payerInfo = d.payerInfo, p.details.payerInfo.userName = H(
2897
- d.payerInfo.userName
2898
- )), p;
2899
- }
2900
- function j() {
2901
- var d;
2902
- return typeof window.document.hidden != "undefined" ? d = "visibilitychange" : typeof window.document.msHidden != "undefined" ? d = "msvisibilitychange" : typeof window.document.webkitHidden != "undefined" && (d = "webkitvisibilitychange"), d;
2903
- }
2904
- function X() {
2905
- return window.navigator.platform && /iPhone|iPad|iPod/.test(window.navigator.platform);
2906
- }
2907
- u.exports = h.wrapPrototype(A);
2908
- }, { "../lib/analytics": 55, "../lib/assign": 57, "../lib/braintree-error": 59, "../lib/convert-methods-to-error": 61, "../lib/in-iframe": 78, "../lib/is-verified-domain": 79, "../lib/methods": 81, "../lib/querystring": 82, "../lib/snake-case-to-camel-case": 83, "../lib/url-params": 84, "./external/": 87, "./external/queries": 88, "./shared/browser-detection": 91, "./shared/constants": 92, "./shared/errors": 93, "./shared/get-venmo-url": 95, "./shared/supports-venmo": 96, "./shared/web-login-backdrop": 97, "@braintree/extended-promise": 26, "@braintree/wrap-promise": 35 }] }, {}, [90])(90);
2909
- });
2910
- }(q)), q.exports;
2911
- }
2912
- var ee = re();
2913
- const ie = /* @__PURE__ */ te(ee), se = /* @__PURE__ */ ne({
2914
- __proto__: null,
2915
- default: ie
2916
- }, [ee]);
2917
- export {
2918
- se as v
2919
- };
2920
- //# sourceMappingURL=venmo-Dybrh4_x.js.map