WooCommerce PayPal Powered by Braintree Payment Gateway - Version 2.2.6

Version Description

Download this release

Release Info

Developer SkyVerge
Plugin Icon 128x128 WooCommerce PayPal Powered by Braintree Payment Gateway
Version 2.2.6
Comparing to
See all releases

Code changes from version 2.2.5 to 2.2.6

assets/js/frontend/latinise.js ADDED
@@ -0,0 +1,827 @@
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
 
1
+ var Latinise={};Latinise.latin_map={"Á":"A",
2
+ "Ă":"A",
3
+ "Ắ":"A",
4
+ "Ặ":"A",
5
+ "Ằ":"A",
6
+ "Ẳ":"A",
7
+ "Ẵ":"A",
8
+ "Ǎ":"A",
9
+ "Â":"A",
10
+ "Ấ":"A",
11
+ "Ậ":"A",
12
+ "Ầ":"A",
13
+ "Ẩ":"A",
14
+ "Ẫ":"A",
15
+ "Ä":"A",
16
+ "Ǟ":"A",
17
+ "Ȧ":"A",
18
+ "Ǡ":"A",
19
+ "Ạ":"A",
20
+ "Ȁ":"A",
21
+ "À":"A",
22
+ "Ả":"A",
23
+ "Ȃ":"A",
24
+ "Ā":"A",
25
+ "Ą":"A",
26
+ "Å":"A",
27
+ "Ǻ":"A",
28
+ "Ḁ":"A",
29
+ "Ⱥ":"A",
30
+ "Ã":"A",
31
+ "Ꜳ":"AA",
32
+ "Æ":"AE",
33
+ "Ǽ":"AE",
34
+ "Ǣ":"AE",
35
+ "Ꜵ":"AO",
36
+ "Ꜷ":"AU",
37
+ "Ꜹ":"AV",
38
+ "Ꜻ":"AV",
39
+ "Ꜽ":"AY",
40
+ "Ḃ":"B",
41
+ "Ḅ":"B",
42
+ "Ɓ":"B",
43
+ "Ḇ":"B",
44
+ "Ƀ":"B",
45
+ "Ƃ":"B",
46
+ "Ć":"C",
47
+ "Č":"C",
48
+ "Ç":"C",
49
+ "Ḉ":"C",
50
+ "Ĉ":"C",
51
+ "Ċ":"C",
52
+ "Ƈ":"C",
53
+ "Ȼ":"C",
54
+ "Ď":"D",
55
+ "Ḑ":"D",
56
+ "Ḓ":"D",
57
+ "Ḋ":"D",
58
+ "Ḍ":"D",
59
+ "Ɗ":"D",
60
+ "Ḏ":"D",
61
+ "Dz":"D",
62
+ "Dž":"D",
63
+ "Đ":"D",
64
+ "Ƌ":"D",
65
+ "DZ":"DZ",
66
+ "DŽ":"DZ",
67
+ "É":"E",
68
+ "Ĕ":"E",
69
+ "Ě":"E",
70
+ "Ȩ":"E",
71
+ "Ḝ":"E",
72
+ "Ê":"E",
73
+ "Ế":"E",
74
+ "Ệ":"E",
75
+ "Ề":"E",
76
+ "Ể":"E",
77
+ "Ễ":"E",
78
+ "Ḙ":"E",
79
+ "Ë":"E",
80
+ "Ė":"E",
81
+ "Ẹ":"E",
82
+ "Ȅ":"E",
83
+ "È":"E",
84
+ "Ẻ":"E",
85
+ "Ȇ":"E",
86
+ "Ē":"E",
87
+ "Ḗ":"E",
88
+ "Ḕ":"E",
89
+ "Ę":"E",
90
+ "Ɇ":"E",
91
+ "Ẽ":"E",
92
+ "Ḛ":"E",
93
+ "Ꝫ":"ET",
94
+ "Ḟ":"F",
95
+ "Ƒ":"F",
96
+ "Ǵ":"G",
97
+ "Ğ":"G",
98
+ "Ǧ":"G",
99
+ "Ģ":"G",
100
+ "Ĝ":"G",
101
+ "Ġ":"G",
102
+ "Ɠ":"G",
103
+ "Ḡ":"G",
104
+ "Ǥ":"G",
105
+ "Ḫ":"H",
106
+ "Ȟ":"H",
107
+ "Ḩ":"H",
108
+ "Ĥ":"H",
109
+ "Ⱨ":"H",
110
+ "Ḧ":"H",
111
+ "Ḣ":"H",
112
+ "Ḥ":"H",
113
+ "Ħ":"H",
114
+ "Í":"I",
115
+ "Ĭ":"I",
116
+ "Ǐ":"I",
117
+ "Î":"I",
118
+ "Ï":"I",
119
+ "Ḯ":"I",
120
+ "İ":"I",
121
+ "Ị":"I",
122
+ "Ȉ":"I",
123
+ "Ì":"I",
124
+ "Ỉ":"I",
125
+ "Ȋ":"I",
126
+ "Ī":"I",
127
+ "Į":"I",
128
+ "Ɨ":"I",
129
+ "Ĩ":"I",
130
+ "Ḭ":"I",
131
+ "Ꝺ":"D",
132
+ "Ꝼ":"F",
133
+ "Ᵹ":"G",
134
+ "Ꞃ":"R",
135
+ "Ꞅ":"S",
136
+ "Ꞇ":"T",
137
+ "Ꝭ":"IS",
138
+ "Ĵ":"J",
139
+ "Ɉ":"J",
140
+ "Ḱ":"K",
141
+ "Ǩ":"K",
142
+ "Ķ":"K",
143
+ "Ⱪ":"K",
144
+ "Ꝃ":"K",
145
+ "Ḳ":"K",
146
+ "Ƙ":"K",
147
+ "Ḵ":"K",
148
+ "Ꝁ":"K",
149
+ "Ꝅ":"K",
150
+ "Ĺ":"L",
151
+ "Ƚ":"L",
152
+ "Ľ":"L",
153
+ "Ļ":"L",
154
+ "Ḽ":"L",
155
+ "Ḷ":"L",
156
+ "Ḹ":"L",
157
+ "Ⱡ":"L",
158
+ "Ꝉ":"L",
159
+ "Ḻ":"L",
160
+ "Ŀ":"L",
161
+ "Ɫ":"L",
162
+ "Lj":"L",
163
+ "Ł":"L",
164
+ "LJ":"LJ",
165
+ "Ḿ":"M",
166
+ "Ṁ":"M",
167
+ "Ṃ":"M",
168
+ "Ɱ":"M",
169
+ "Ń":"N",
170
+ "Ň":"N",
171
+ "Ņ":"N",
172
+ "Ṋ":"N",
173
+ "Ṅ":"N",
174
+ "Ṇ":"N",
175
+ "Ǹ":"N",
176
+ "Ɲ":"N",
177
+ "Ṉ":"N",
178
+ "Ƞ":"N",
179
+ "Nj":"N",
180
+ "Ñ":"N",
181
+ "NJ":"NJ",
182
+ "Ó":"O",
183
+ "Ŏ":"O",
184
+ "Ǒ":"O",
185
+ "Ô":"O",
186
+ "Ố":"O",
187
+ "Ộ":"O",
188
+ "Ồ":"O",
189
+ "Ổ":"O",
190
+ "Ỗ":"O",
191
+ "Ö":"O",
192
+ "Ȫ":"O",
193
+ "Ȯ":"O",
194
+ "Ȱ":"O",
195
+ "Ọ":"O",
196
+ "Ő":"O",
197
+ "Ȍ":"O",
198
+ "Ò":"O",
199
+ "Ỏ":"O",
200
+ "Ơ":"O",
201
+ "Ớ":"O",
202
+ "Ợ":"O",
203
+ "Ờ":"O",
204
+ "Ở":"O",
205
+ "Ỡ":"O",
206
+ "Ȏ":"O",
207
+ "Ꝋ":"O",
208
+ "Ꝍ":"O",
209
+ "Ō":"O",
210
+ "Ṓ":"O",
211
+ "Ṑ":"O",
212
+ "Ɵ":"O",
213
+ "Ǫ":"O",
214
+ "Ǭ":"O",
215
+ "Ø":"O",
216
+ "Ǿ":"O",
217
+ "Õ":"O",
218
+ "Ṍ":"O",
219
+ "Ṏ":"O",
220
+ "Ȭ":"O",
221
+ "Ƣ":"OI",
222
+ "Ꝏ":"OO",
223
+ "Ɛ":"E",
224
+ "Ɔ":"O",
225
+ "Ȣ":"OU",
226
+ "Ṕ":"P",
227
+ "Ṗ":"P",
228
+ "Ꝓ":"P",
229
+ "Ƥ":"P",
230
+ "Ꝕ":"P",
231
+ "Ᵽ":"P",
232
+ "Ꝑ":"P",
233
+ "Ꝙ":"Q",
234
+ "Ꝗ":"Q",
235
+ "Ŕ":"R",
236
+ "Ř":"R",
237
+ "Ŗ":"R",
238
+ "Ṙ":"R",
239
+ "Ṛ":"R",
240
+ "Ṝ":"R",
241
+ "Ȑ":"R",
242
+ "Ȓ":"R",
243
+ "Ṟ":"R",
244
+ "Ɍ":"R",
245
+ "Ɽ":"R",
246
+ "Ꜿ":"C",
247
+ "Ǝ":"E",
248
+ "Ś":"S",
249
+ "Ṥ":"S",
250
+ "Š":"S",
251
+ "Ṧ":"S",
252
+ "Ş":"S",
253
+ "Ŝ":"S",
254
+ "Ș":"S",
255
+ "Ṡ":"S",
256
+ "Ṣ":"S",
257
+ "Ṩ":"S",
258
+ "Ť":"T",
259
+ "Ţ":"T",
260
+ "Ṱ":"T",
261
+ "Ț":"T",
262
+ "Ⱦ":"T",
263
+ "Ṫ":"T",
264
+ "Ṭ":"T",
265
+ "Ƭ":"T",
266
+ "Ṯ":"T",
267
+ "Ʈ":"T",
268
+ "Ŧ":"T",
269
+ "Ɐ":"A",
270
+ "Ꞁ":"L",
271
+ "Ɯ":"M",
272
+ "Ʌ":"V",
273
+ "Ꜩ":"TZ",
274
+ "Ú":"U",
275
+ "Ŭ":"U",
276
+ "Ǔ":"U",
277
+ "Û":"U",
278
+ "Ṷ":"U",
279
+ "Ü":"U",
280
+ "Ǘ":"U",
281
+ "Ǚ":"U",
282
+ "Ǜ":"U",
283
+ "Ǖ":"U",
284
+ "Ṳ":"U",
285
+ "Ụ":"U",
286
+ "Ű":"U",
287
+ "Ȕ":"U",
288
+ "Ù":"U",
289
+ "Ủ":"U",
290
+ "Ư":"U",
291
+ "Ứ":"U",
292
+ "Ự":"U",
293
+ "Ừ":"U",
294
+ "Ử":"U",
295
+ "Ữ":"U",
296
+ "Ȗ":"U",
297
+ "Ū":"U",
298
+ "Ṻ":"U",
299
+ "Ų":"U",
300
+ "Ů":"U",
301
+ "Ũ":"U",
302
+ "Ṹ":"U",
303
+ "Ṵ":"U",
304
+ "Ꝟ":"V",
305
+ "Ṿ":"V",
306
+ "Ʋ":"V",
307
+ "Ṽ":"V",
308
+ "Ꝡ":"VY",
309
+ "Ẃ":"W",
310
+ "Ŵ":"W",
311
+ "Ẅ":"W",
312
+ "Ẇ":"W",
313
+ "Ẉ":"W",
314
+ "Ẁ":"W",
315
+ "Ⱳ":"W",
316
+ "Ẍ":"X",
317
+ "Ẋ":"X",
318
+ "Ý":"Y",
319
+ "Ŷ":"Y",
320
+ "Ÿ":"Y",
321
+ "Ẏ":"Y",
322
+ "Ỵ":"Y",
323
+ "Ỳ":"Y",
324
+ "Ƴ":"Y",
325
+ "Ỷ":"Y",
326
+ "Ỿ":"Y",
327
+ "Ȳ":"Y",
328
+ "Ɏ":"Y",
329
+ "Ỹ":"Y",
330
+ "Ź":"Z",
331
+ "Ž":"Z",
332
+ "Ẑ":"Z",
333
+ "Ⱬ":"Z",
334
+ "Ż":"Z",
335
+ "Ẓ":"Z",
336
+ "Ȥ":"Z",
337
+ "Ẕ":"Z",
338
+ "Ƶ":"Z",
339
+ "IJ":"IJ",
340
+ "Œ":"OE",
341
+ "ᴀ":"A",
342
+ "ᴁ":"AE",
343
+ "ʙ":"B",
344
+ "ᴃ":"B",
345
+ "ᴄ":"C",
346
+ "ᴅ":"D",
347
+ "ᴇ":"E",
348
+ "ꜰ":"F",
349
+ "ɢ":"G",
350
+ "ʛ":"G",
351
+ "ʜ":"H",
352
+ "ɪ":"I",
353
+ "ʁ":"R",
354
+ "ᴊ":"J",
355
+ "ᴋ":"K",
356
+ "ʟ":"L",
357
+ "ᴌ":"L",
358
+ "ᴍ":"M",
359
+ "ɴ":"N",
360
+ "ᴏ":"O",
361
+ "ɶ":"OE",
362
+ "ᴐ":"O",
363
+ "ᴕ":"OU",
364
+ "ᴘ":"P",
365
+ "ʀ":"R",
366
+ "ᴎ":"N",
367
+ "ᴙ":"R",
368
+ "ꜱ":"S",
369
+ "ᴛ":"T",
370
+ "ⱻ":"E",
371
+ "ᴚ":"R",
372
+ "ᴜ":"U",
373
+ "ᴠ":"V",
374
+ "ᴡ":"W",
375
+ "ʏ":"Y",
376
+ "ᴢ":"Z",
377
+ "á":"a",
378
+ "ă":"a",
379
+ "ắ":"a",
380
+ "ặ":"a",
381
+ "ằ":"a",
382
+ "ẳ":"a",
383
+ "ẵ":"a",
384
+ "ǎ":"a",
385
+ "â":"a",
386
+ "ấ":"a",
387
+ "ậ":"a",
388
+ "ầ":"a",
389
+ "ẩ":"a",
390
+ "ẫ":"a",
391
+ "ä":"a",
392
+ "ǟ":"a",
393
+ "ȧ":"a",
394
+ "ǡ":"a",
395
+ "ạ":"a",
396
+ "ȁ":"a",
397
+ "à":"a",
398
+ "ả":"a",
399
+ "ȃ":"a",
400
+ "ā":"a",
401
+ "ą":"a",
402
+ "ᶏ":"a",
403
+ "ẚ":"a",
404
+ "å":"a",
405
+ "ǻ":"a",
406
+ "ḁ":"a",
407
+ "ⱥ":"a",
408
+ "ã":"a",
409
+ "ꜳ":"aa",
410
+ "æ":"ae",
411
+ "ǽ":"ae",
412
+ "ǣ":"ae",
413
+ "ꜵ":"ao",
414
+ "ꜷ":"au",
415
+ "ꜹ":"av",
416
+ "ꜻ":"av",
417
+ "ꜽ":"ay",
418
+ "ḃ":"b",
419
+ "ḅ":"b",
420
+ "ɓ":"b",
421
+ "ḇ":"b",
422
+ "ᵬ":"b",
423
+ "ᶀ":"b",
424
+ "ƀ":"b",
425
+ "ƃ":"b",
426
+ "ɵ":"o",
427
+ "ć":"c",
428
+ "č":"c",
429
+ "ç":"c",
430
+ "ḉ":"c",
431
+ "ĉ":"c",
432
+ "ɕ":"c",
433
+ "ċ":"c",
434
+ "ƈ":"c",
435
+ "ȼ":"c",
436
+ "ď":"d",
437
+ "ḑ":"d",
438
+ "ḓ":"d",
439
+ "ȡ":"d",
440
+ "ḋ":"d",
441
+ "ḍ":"d",
442
+ "ɗ":"d",
443
+ "ᶑ":"d",
444
+ "ḏ":"d",
445
+ "ᵭ":"d",
446
+ "ᶁ":"d",
447
+ "đ":"d",
448
+ "ɖ":"d",
449
+ "ƌ":"d",
450
+ "ı":"i",
451
+ "ȷ":"j",
452
+ "ɟ":"j",
453
+ "ʄ":"j",
454
+ "dz":"dz",
455
+ "dž":"dz",
456
+ "é":"e",
457
+ "ĕ":"e",
458
+ "ě":"e",
459
+ "ȩ":"e",
460
+ "ḝ":"e",
461
+ "ê":"e",
462
+ "ế":"e",
463
+ "ệ":"e",
464
+ "ề":"e",
465
+ "ể":"e",
466
+ "ễ":"e",
467
+ "ḙ":"e",
468
+ "ë":"e",
469
+ "ė":"e",
470
+ "ẹ":"e",
471
+ "ȅ":"e",
472
+ "è":"e",
473
+ "ẻ":"e",
474
+ "ȇ":"e",
475
+ "ē":"e",
476
+ "ḗ":"e",
477
+ "ḕ":"e",
478
+ "ⱸ":"e",
479
+ "ę":"e",
480
+ "ᶒ":"e",
481
+ "ɇ":"e",
482
+ "ẽ":"e",
483
+ "ḛ":"e",
484
+ "ꝫ":"et",
485
+ "ḟ":"f",
486
+ "ƒ":"f",
487
+ "ᵮ":"f",
488
+ "ᶂ":"f",
489
+ "ǵ":"g",
490
+ "ğ":"g",
491
+ "ǧ":"g",
492
+ "ģ":"g",
493
+ "ĝ":"g",
494
+ "ġ":"g",
495
+ "ɠ":"g",
496
+ "ḡ":"g",
497
+ "ᶃ":"g",
498
+ "ǥ":"g",
499
+ "ḫ":"h",
500
+ "ȟ":"h",
501
+ "ḩ":"h",
502
+ "ĥ":"h",
503
+ "ⱨ":"h",
504
+ "ḧ":"h",
505
+ "ḣ":"h",
506
+ "ḥ":"h",
507
+ "ɦ":"h",
508
+ "ẖ":"h",
509
+ "ħ":"h",
510
+ "ƕ":"hv",
511
+ "í":"i",
512
+ "ĭ":"i",
513
+ "ǐ":"i",
514
+ "î":"i",
515
+ "ï":"i",
516
+ "ḯ":"i",
517
+ "ị":"i",
518
+ "ȉ":"i",
519
+ "ì":"i",
520
+ "ỉ":"i",
521
+ "ȋ":"i",
522
+ "ī":"i",
523
+ "į":"i",
524
+ "ᶖ":"i",
525
+ "ɨ":"i",
526
+ "ĩ":"i",
527
+ "ḭ":"i",
528
+ "ꝺ":"d",
529
+ "ꝼ":"f",
530
+ "ᵹ":"g",
531
+ "ꞃ":"r",
532
+ "ꞅ":"s",
533
+ "ꞇ":"t",
534
+ "ꝭ":"is",
535
+ "ǰ":"j",
536
+ "ĵ":"j",
537
+ "ʝ":"j",
538
+ "ɉ":"j",
539
+ "ḱ":"k",
540
+ "ǩ":"k",
541
+ "ķ":"k",
542
+ "ⱪ":"k",
543
+ "ꝃ":"k",
544
+ "ḳ":"k",
545
+ "ƙ":"k",
546
+ "ḵ":"k",
547
+ "ᶄ":"k",
548
+ "ꝁ":"k",
549
+ "ꝅ":"k",
550
+ "ĺ":"l",
551
+ "ƚ":"l",
552
+ "ɬ":"l",
553
+ "ľ":"l",
554
+ "ļ":"l",
555
+ "ḽ":"l",
556
+ "ȴ":"l",
557
+ "ḷ":"l",
558
+ "ḹ":"l",
559
+ "ⱡ":"l",
560
+ "ꝉ":"l",
561
+ "ḻ":"l",
562
+ "ŀ":"l",
563
+ "ɫ":"l",
564
+ "ᶅ":"l",
565
+ "ɭ":"l",
566
+ "ł":"l",
567
+ "lj":"lj",
568
+ "ſ":"s",
569
+ "ẜ":"s",
570
+ "ẛ":"s",
571
+ "ẝ":"s",
572
+ "ḿ":"m",
573
+ "ṁ":"m",
574
+ "ṃ":"m",
575
+ "ɱ":"m",
576
+ "ᵯ":"m",
577
+ "ᶆ":"m",
578
+ "ń":"n",
579
+ "ň":"n",
580
+ "ņ":"n",
581
+ "ṋ":"n",
582
+ "ȵ":"n",
583
+ "ṅ":"n",
584
+ "ṇ":"n",
585
+ "ǹ":"n",
586
+ "ɲ":"n",
587
+ "ṉ":"n",
588
+ "ƞ":"n",
589
+ "ᵰ":"n",
590
+ "ᶇ":"n",
591
+ "ɳ":"n",
592
+ "ñ":"n",
593
+ "nj":"nj",
594
+ "ó":"o",
595
+ "ŏ":"o",
596
+ "ǒ":"o",
597
+ "ô":"o",
598
+ "ố":"o",
599
+ "ộ":"o",
600
+ "ồ":"o",
601
+ "ổ":"o",
602
+ "ỗ":"o",
603
+ "ö":"o",
604
+ "ȫ":"o",
605
+ "ȯ":"o",
606
+ "ȱ":"o",
607
+ "ọ":"o",
608
+ "ő":"o",
609
+ "ȍ":"o",
610
+ "ò":"o",
611
+ "ỏ":"o",
612
+ "ơ":"o",
613
+ "ớ":"o",
614
+ "ợ":"o",
615
+ "ờ":"o",
616
+ "ở":"o",
617
+ "ỡ":"o",
618
+ "ȏ":"o",
619
+ "ꝋ":"o",
620
+ "ꝍ":"o",
621
+ "ⱺ":"o",
622
+ "ō":"o",
623
+ "ṓ":"o",
624
+ "ṑ":"o",
625
+ "ǫ":"o",
626
+ "ǭ":"o",
627
+ "ø":"o",
628
+ "ǿ":"o",
629
+ "õ":"o",
630
+ "ṍ":"o",
631
+ "ṏ":"o",
632
+ "ȭ":"o",
633
+ "ƣ":"oi",
634
+ "ꝏ":"oo",
635
+ "ɛ":"e",
636
+ "ᶓ":"e",
637
+ "ɔ":"o",
638
+ "ᶗ":"o",
639
+ "ȣ":"ou",
640
+ "ṕ":"p",
641
+ "ṗ":"p",
642
+ "ꝓ":"p",
643
+ "ƥ":"p",
644
+ "ᵱ":"p",
645
+ "ᶈ":"p",
646
+ "ꝕ":"p",
647
+ "ᵽ":"p",
648
+ "ꝑ":"p",
649
+ "ꝙ":"q",
650
+ "ʠ":"q",
651
+ "ɋ":"q",
652
+ "ꝗ":"q",
653
+ "ŕ":"r",
654
+ "ř":"r",
655
+ "ŗ":"r",
656
+ "ṙ":"r",
657
+ "ṛ":"r",
658
+ "ṝ":"r",
659
+ "ȑ":"r",
660
+ "ɾ":"r",
661
+ "ᵳ":"r",
662
+ "ȓ":"r",
663
+ "ṟ":"r",
664
+ "ɼ":"r",
665
+ "ᵲ":"r",
666
+ "ᶉ":"r",
667
+ "ɍ":"r",
668
+ "ɽ":"r",
669
+ "ↄ":"c",
670
+ "ꜿ":"c",
671
+ "ɘ":"e",
672
+ "ɿ":"r",
673
+ "ś":"s",
674
+ "ṥ":"s",
675
+ "š":"s",
676
+ "ṧ":"s",
677
+ "ş":"s",
678
+ "ŝ":"s",
679
+ "ș":"s",
680
+ "ṡ":"s",
681
+ "ṣ":"s",
682
+ "ṩ":"s",
683
+ "ʂ":"s",
684
+ "ᵴ":"s",
685
+ "ᶊ":"s",
686
+ "ȿ":"s",
687
+ "ɡ":"g",
688
+ "ᴑ":"o",
689
+ "ᴓ":"o",
690
+ "ᴝ":"u",
691
+ "ť":"t",
692
+ "ţ":"t",
693
+ "ṱ":"t",
694
+ "ț":"t",
695
+ "ȶ":"t",
696
+ "ẗ":"t",
697
+ "ⱦ":"t",
698
+ "ṫ":"t",
699
+ "ṭ":"t",
700
+ "ƭ":"t",
701
+ "ṯ":"t",
702
+ "ᵵ":"t",
703
+ "ƫ":"t",
704
+ "ʈ":"t",
705
+ "ŧ":"t",
706
+ "ᵺ":"th",
707
+ "ɐ":"a",
708
+ "ᴂ":"ae",
709
+ "ǝ":"e",
710
+ "ᵷ":"g",
711
+ "ɥ":"h",
712
+ "ʮ":"h",
713
+ "ʯ":"h",
714
+ "ᴉ":"i",
715
+ "ʞ":"k",
716
+ "ꞁ":"l",
717
+ "ɯ":"m",
718
+ "ɰ":"m",
719
+ "ᴔ":"oe",
720
+ "ɹ":"r",
721
+ "ɻ":"r",
722
+ "ɺ":"r",
723
+ "ⱹ":"r",
724
+ "ʇ":"t",
725
+ "ʌ":"v",
726
+ "ʍ":"w",
727
+ "ʎ":"y",
728
+ "ꜩ":"tz",
729
+ "ú":"u",
730
+ "ŭ":"u",
731
+ "ǔ":"u",
732
+ "û":"u",
733
+ "ṷ":"u",
734
+ "ü":"u",
735
+ "ǘ":"u",
736
+ "ǚ":"u",
737
+ "ǜ":"u",
738
+ "ǖ":"u",
739
+ "ṳ":"u",
740
+ "ụ":"u",
741
+ "ű":"u",
742
+ "ȕ":"u",
743
+ "ù":"u",
744
+ "ủ":"u",
745
+ "ư":"u",
746
+ "ứ":"u",
747
+ "ự":"u",
748
+ "ừ":"u",
749
+ "ử":"u",
750
+ "ữ":"u",
751
+ "ȗ":"u",
752
+ "ū":"u",
753
+ "ṻ":"u",
754
+ "ų":"u",
755
+ "ᶙ":"u",
756
+ "ů":"u",
757
+ "ũ":"u",
758
+ "ṹ":"u",
759
+ "ṵ":"u",
760
+ "ᵫ":"ue",
761
+ "ꝸ":"um",
762
+ "ⱴ":"v",
763
+ "ꝟ":"v",
764
+ "ṿ":"v",
765
+ "ʋ":"v",
766
+ "ᶌ":"v",
767
+ "ⱱ":"v",
768
+ "ṽ":"v",
769
+ "ꝡ":"vy",
770
+ "ẃ":"w",
771
+ "ŵ":"w",
772
+ "ẅ":"w",
773
+ "ẇ":"w",
774
+ "ẉ":"w",
775
+ "ẁ":"w",
776
+ "ⱳ":"w",
777
+ "ẘ":"w",
778
+ "ẍ":"x",
779
+ "ẋ":"x",
780
+ "ᶍ":"x",
781
+ "ý":"y",
782
+ "ŷ":"y",
783
+ "ÿ":"y",
784
+ "ẏ":"y",
785
+ "ỵ":"y",
786
+ "ỳ":"y",
787
+ "ƴ":"y",
788
+ "ỷ":"y",
789
+ "ỿ":"y",
790
+ "ȳ":"y",
791
+ "ẙ":"y",
792
+ "ɏ":"y",
793
+ "ỹ":"y",
794
+ "ź":"z",
795
+ "ž":"z",
796
+ "ẑ":"z",
797
+ "ʑ":"z",
798
+ "ⱬ":"z",
799
+ "ż":"z",
800
+ "ẓ":"z",
801
+ "ȥ":"z",
802
+ "ẕ":"z",
803
+ "ᵶ":"z",
804
+ "ᶎ":"z",
805
+ "ʐ":"z",
806
+ "ƶ":"z",
807
+ "ɀ":"z",
808
+ "ff":"ff",
809
+ "ffi":"ffi",
810
+ "ffl":"ffl",
811
+ "fi":"fi",
812
+ "fl":"fl",
813
+ "ij":"ij",
814
+ "œ":"oe",
815
+ "st":"st",
816
+ "ₐ":"a",
817
+ "ₑ":"e",
818
+ "ᵢ":"i",
819
+ "ⱼ":"j",
820
+ "ₒ":"o",
821
+ "ᵣ":"r",
822
+ "ᵤ":"u",
823
+ "ᵥ":"v",
824
+ "ₓ":"x"};
825
+ String.prototype.latinise=function(){return this.replace(/[^A-Za-z0-9\[\] ]/g,function(a){return Latinise.latin_map[a]||a})};
826
+ String.prototype.latinize=String.prototype.latinise;
827
+ String.prototype.isLatin=function(){return this==this.latinise()}
assets/js/frontend/latinise.min.js ADDED
@@ -0,0 +1 @@
 
1
+ "use strict";var Latinise={latin_map:{"Á":"A","Ă":"A","Ắ":"A","Ặ":"A","Ằ":"A","Ẳ":"A","Ẵ":"A","Ǎ":"A","Â":"A","Ấ":"A","Ậ":"A","Ầ":"A","Ẩ":"A","Ẫ":"A","Ä":"A","Ǟ":"A","Ȧ":"A","Ǡ":"A","Ạ":"A","Ȁ":"A","À":"A","Ả":"A","Ȃ":"A","Ā":"A","Ą":"A","Å":"A","Ǻ":"A","Ḁ":"A","Ⱥ":"A","Ã":"A","Ꜳ":"AA","Æ":"AE","Ǽ":"AE","Ǣ":"AE","Ꜵ":"AO","Ꜷ":"AU","Ꜹ":"AV","Ꜻ":"AV","Ꜽ":"AY","Ḃ":"B","Ḅ":"B","Ɓ":"B","Ḇ":"B","Ƀ":"B","Ƃ":"B","Ć":"C","Č":"C","Ç":"C","Ḉ":"C","Ĉ":"C","Ċ":"C","Ƈ":"C","Ȼ":"C","Ď":"D","Ḑ":"D","Ḓ":"D","Ḋ":"D","Ḍ":"D","Ɗ":"D","Ḏ":"D","Dz":"D","Dž":"D","Đ":"D","Ƌ":"D","DZ":"DZ","DŽ":"DZ","É":"E","Ĕ":"E","Ě":"E","Ȩ":"E","Ḝ":"E","Ê":"E","Ế":"E","Ệ":"E","Ề":"E","Ể":"E","Ễ":"E","Ḙ":"E","Ë":"E","Ė":"E","Ẹ":"E","Ȅ":"E","È":"E","Ẻ":"E","Ȇ":"E","Ē":"E","Ḗ":"E","Ḕ":"E","Ę":"E","Ɇ":"E","Ẽ":"E","Ḛ":"E","Ꝫ":"ET","Ḟ":"F","Ƒ":"F","Ǵ":"G","Ğ":"G","Ǧ":"G","Ģ":"G","Ĝ":"G","Ġ":"G","Ɠ":"G","Ḡ":"G","Ǥ":"G","Ḫ":"H","Ȟ":"H","Ḩ":"H","Ĥ":"H","Ⱨ":"H","Ḧ":"H","Ḣ":"H","Ḥ":"H","Ħ":"H","Í":"I","Ĭ":"I","Ǐ":"I","Î":"I","Ï":"I","Ḯ":"I","İ":"I","Ị":"I","Ȉ":"I","Ì":"I","Ỉ":"I","Ȋ":"I","Ī":"I","Į":"I","Ɨ":"I","Ĩ":"I","Ḭ":"I","Ꝺ":"D","Ꝼ":"F","Ᵹ":"G","Ꞃ":"R","Ꞅ":"S","Ꞇ":"T","Ꝭ":"IS","Ĵ":"J","Ɉ":"J","Ḱ":"K","Ǩ":"K","Ķ":"K","Ⱪ":"K","Ꝃ":"K","Ḳ":"K","Ƙ":"K","Ḵ":"K","Ꝁ":"K","Ꝅ":"K","Ĺ":"L","Ƚ":"L","Ľ":"L","Ļ":"L","Ḽ":"L","Ḷ":"L","Ḹ":"L","Ⱡ":"L","Ꝉ":"L","Ḻ":"L","Ŀ":"L","Ɫ":"L","Lj":"L","Ł":"L","LJ":"LJ","Ḿ":"M","Ṁ":"M","Ṃ":"M","Ɱ":"M","Ń":"N","Ň":"N","Ņ":"N","Ṋ":"N","Ṅ":"N","Ṇ":"N","Ǹ":"N","Ɲ":"N","Ṉ":"N","Ƞ":"N","Nj":"N","Ñ":"N","NJ":"NJ","Ó":"O","Ŏ":"O","Ǒ":"O","Ô":"O","Ố":"O","Ộ":"O","Ồ":"O","Ổ":"O","Ỗ":"O","Ö":"O","Ȫ":"O","Ȯ":"O","Ȱ":"O","Ọ":"O","Ő":"O","Ȍ":"O","Ò":"O","Ỏ":"O","Ơ":"O","Ớ":"O","Ợ":"O","Ờ":"O","Ở":"O","Ỡ":"O","Ȏ":"O","Ꝋ":"O","Ꝍ":"O","Ō":"O","Ṓ":"O","Ṑ":"O","Ɵ":"O","Ǫ":"O","Ǭ":"O","Ø":"O","Ǿ":"O","Õ":"O","Ṍ":"O","Ṏ":"O","Ȭ":"O","Ƣ":"OI","Ꝏ":"OO","Ɛ":"E","Ɔ":"O","Ȣ":"OU","Ṕ":"P","Ṗ":"P","Ꝓ":"P","Ƥ":"P","Ꝕ":"P","Ᵽ":"P","Ꝑ":"P","Ꝙ":"Q","Ꝗ":"Q","Ŕ":"R","Ř":"R","Ŗ":"R","Ṙ":"R","Ṛ":"R","Ṝ":"R","Ȑ":"R","Ȓ":"R","Ṟ":"R","Ɍ":"R","Ɽ":"R","Ꜿ":"C","Ǝ":"E","Ś":"S","Ṥ":"S","Š":"S","Ṧ":"S","Ş":"S","Ŝ":"S","Ș":"S","Ṡ":"S","Ṣ":"S","Ṩ":"S","Ť":"T","Ţ":"T","Ṱ":"T","Ț":"T","Ⱦ":"T","Ṫ":"T","Ṭ":"T","Ƭ":"T","Ṯ":"T","Ʈ":"T","Ŧ":"T","Ɐ":"A","Ꞁ":"L","Ɯ":"M","Ʌ":"V","Ꜩ":"TZ","Ú":"U","Ŭ":"U","Ǔ":"U","Û":"U","Ṷ":"U","Ü":"U","Ǘ":"U","Ǚ":"U","Ǜ":"U","Ǖ":"U","Ṳ":"U","Ụ":"U","Ű":"U","Ȕ":"U","Ù":"U","Ủ":"U","Ư":"U","Ứ":"U","Ự":"U","Ừ":"U","Ử":"U","Ữ":"U","Ȗ":"U","Ū":"U","Ṻ":"U","Ų":"U","Ů":"U","Ũ":"U","Ṹ":"U","Ṵ":"U","Ꝟ":"V","Ṿ":"V","Ʋ":"V","Ṽ":"V","Ꝡ":"VY","Ẃ":"W","Ŵ":"W","Ẅ":"W","Ẇ":"W","Ẉ":"W","Ẁ":"W","Ⱳ":"W","Ẍ":"X","Ẋ":"X","Ý":"Y","Ŷ":"Y","Ÿ":"Y","Ẏ":"Y","Ỵ":"Y","Ỳ":"Y","Ƴ":"Y","Ỷ":"Y","Ỿ":"Y","Ȳ":"Y","Ɏ":"Y","Ỹ":"Y","Ź":"Z","Ž":"Z","Ẑ":"Z","Ⱬ":"Z","Ż":"Z","Ẓ":"Z","Ȥ":"Z","Ẕ":"Z","Ƶ":"Z","IJ":"IJ","Œ":"OE","ᴀ":"A","ᴁ":"AE","ʙ":"B","ᴃ":"B","ᴄ":"C","ᴅ":"D","ᴇ":"E","ꜰ":"F","ɢ":"G","ʛ":"G","ʜ":"H","ɪ":"I","ʁ":"R","ᴊ":"J","ᴋ":"K","ʟ":"L","ᴌ":"L","ᴍ":"M","ɴ":"N","ᴏ":"O","ɶ":"OE","ᴐ":"O","ᴕ":"OU","ᴘ":"P","ʀ":"R","ᴎ":"N","ᴙ":"R","ꜱ":"S","ᴛ":"T","ⱻ":"E","ᴚ":"R","ᴜ":"U","ᴠ":"V","ᴡ":"W","ʏ":"Y","ᴢ":"Z","á":"a","ă":"a","ắ":"a","ặ":"a","ằ":"a","ẳ":"a","ẵ":"a","ǎ":"a","â":"a","ấ":"a","ậ":"a","ầ":"a","ẩ":"a","ẫ":"a","ä":"a","ǟ":"a","ȧ":"a","ǡ":"a","ạ":"a","ȁ":"a","à":"a","ả":"a","ȃ":"a","ā":"a","ą":"a","ᶏ":"a","ẚ":"a","å":"a","ǻ":"a","ḁ":"a","ⱥ":"a","ã":"a","ꜳ":"aa","æ":"ae","ǽ":"ae","ǣ":"ae","ꜵ":"ao","ꜷ":"au","ꜹ":"av","ꜻ":"av","ꜽ":"ay","ḃ":"b","ḅ":"b","ɓ":"b","ḇ":"b","ᵬ":"b","ᶀ":"b","ƀ":"b","ƃ":"b","ɵ":"o","ć":"c","č":"c","ç":"c","ḉ":"c","ĉ":"c","ɕ":"c","ċ":"c","ƈ":"c","ȼ":"c","ď":"d","ḑ":"d","ḓ":"d","ȡ":"d","ḋ":"d","ḍ":"d","ɗ":"d","ᶑ":"d","ḏ":"d","ᵭ":"d","ᶁ":"d","đ":"d","ɖ":"d","ƌ":"d","ı":"i","ȷ":"j","ɟ":"j","ʄ":"j","dz":"dz","dž":"dz","é":"e","ĕ":"e","ě":"e","ȩ":"e","ḝ":"e","ê":"e","ế":"e","ệ":"e","ề":"e","ể":"e","ễ":"e","ḙ":"e","ë":"e","ė":"e","ẹ":"e","ȅ":"e","è":"e","ẻ":"e","ȇ":"e","ē":"e","ḗ":"e","ḕ":"e","ⱸ":"e","ę":"e","ᶒ":"e","ɇ":"e","ẽ":"e","ḛ":"e","ꝫ":"et","ḟ":"f","ƒ":"f","ᵮ":"f","ᶂ":"f","ǵ":"g","ğ":"g","ǧ":"g","ģ":"g","ĝ":"g","ġ":"g","ɠ":"g","ḡ":"g","ᶃ":"g","ǥ":"g","ḫ":"h","ȟ":"h","ḩ":"h","ĥ":"h","ⱨ":"h","ḧ":"h","ḣ":"h","ḥ":"h","ɦ":"h","ẖ":"h","ħ":"h","ƕ":"hv","í":"i","ĭ":"i","ǐ":"i","î":"i","ï":"i","ḯ":"i","ị":"i","ȉ":"i","ì":"i","ỉ":"i","ȋ":"i","ī":"i","į":"i","ᶖ":"i","ɨ":"i","ĩ":"i","ḭ":"i","ꝺ":"d","ꝼ":"f","ᵹ":"g","ꞃ":"r","ꞅ":"s","ꞇ":"t","ꝭ":"is","ǰ":"j","ĵ":"j","ʝ":"j","ɉ":"j","ḱ":"k","ǩ":"k","ķ":"k","ⱪ":"k","ꝃ":"k","ḳ":"k","ƙ":"k","ḵ":"k","ᶄ":"k","ꝁ":"k","ꝅ":"k","ĺ":"l","ƚ":"l","ɬ":"l","ľ":"l","ļ":"l","ḽ":"l","ȴ":"l","ḷ":"l","ḹ":"l","ⱡ":"l","ꝉ":"l","ḻ":"l","ŀ":"l","ɫ":"l","ᶅ":"l","ɭ":"l","ł":"l","lj":"lj","ſ":"s","ẜ":"s","ẛ":"s","ẝ":"s","ḿ":"m","ṁ":"m","ṃ":"m","ɱ":"m","ᵯ":"m","ᶆ":"m","ń":"n","ň":"n","ņ":"n","ṋ":"n","ȵ":"n","ṅ":"n","ṇ":"n","ǹ":"n","ɲ":"n","ṉ":"n","ƞ":"n","ᵰ":"n","ᶇ":"n","ɳ":"n","ñ":"n","nj":"nj","ó":"o","ŏ":"o","ǒ":"o","ô":"o","ố":"o","ộ":"o","ồ":"o","ổ":"o","ỗ":"o","ö":"o","ȫ":"o","ȯ":"o","ȱ":"o","ọ":"o","ő":"o","ȍ":"o","ò":"o","ỏ":"o","ơ":"o","ớ":"o","ợ":"o","ờ":"o","ở":"o","ỡ":"o","ȏ":"o","ꝋ":"o","ꝍ":"o","ⱺ":"o","ō":"o","ṓ":"o","ṑ":"o","ǫ":"o","ǭ":"o","ø":"o","ǿ":"o","õ":"o","ṍ":"o","ṏ":"o","ȭ":"o","ƣ":"oi","ꝏ":"oo","ɛ":"e","ᶓ":"e","ɔ":"o","ᶗ":"o","ȣ":"ou","ṕ":"p","ṗ":"p","ꝓ":"p","ƥ":"p","ᵱ":"p","ᶈ":"p","ꝕ":"p","ᵽ":"p","ꝑ":"p","ꝙ":"q","ʠ":"q","ɋ":"q","ꝗ":"q","ŕ":"r","ř":"r","ŗ":"r","ṙ":"r","ṛ":"r","ṝ":"r","ȑ":"r","ɾ":"r","ᵳ":"r","ȓ":"r","ṟ":"r","ɼ":"r","ᵲ":"r","ᶉ":"r","ɍ":"r","ɽ":"r","ↄ":"c","ꜿ":"c","ɘ":"e","ɿ":"r","ś":"s","ṥ":"s","š":"s","ṧ":"s","ş":"s","ŝ":"s","ș":"s","ṡ":"s","ṣ":"s","ṩ":"s","ʂ":"s","ᵴ":"s","ᶊ":"s","ȿ":"s","ɡ":"g","ᴑ":"o","ᴓ":"o","ᴝ":"u","ť":"t","ţ":"t","ṱ":"t","ț":"t","ȶ":"t","ẗ":"t","ⱦ":"t","ṫ":"t","ṭ":"t","ƭ":"t","ṯ":"t","ᵵ":"t","ƫ":"t","ʈ":"t","ŧ":"t","ᵺ":"th","ɐ":"a","ᴂ":"ae","ǝ":"e","ᵷ":"g","ɥ":"h","ʮ":"h","ʯ":"h","ᴉ":"i","ʞ":"k","ꞁ":"l","ɯ":"m","ɰ":"m","ᴔ":"oe","ɹ":"r","ɻ":"r","ɺ":"r","ⱹ":"r","ʇ":"t","ʌ":"v","ʍ":"w","ʎ":"y","ꜩ":"tz","ú":"u","ŭ":"u","ǔ":"u","û":"u","ṷ":"u","ü":"u","ǘ":"u","ǚ":"u","ǜ":"u","ǖ":"u","ṳ":"u","ụ":"u","ű":"u","ȕ":"u","ù":"u","ủ":"u","ư":"u","ứ":"u","ự":"u","ừ":"u","ử":"u","ữ":"u","ȗ":"u","ū":"u","ṻ":"u","ų":"u","ᶙ":"u","ů":"u","ũ":"u","ṹ":"u","ṵ":"u","ᵫ":"ue","ꝸ":"um","ⱴ":"v","ꝟ":"v","ṿ":"v","ʋ":"v","ᶌ":"v","ⱱ":"v","ṽ":"v","ꝡ":"vy","ẃ":"w","ŵ":"w","ẅ":"w","ẇ":"w","ẉ":"w","ẁ":"w","ⱳ":"w","ẘ":"w","ẍ":"x","ẋ":"x","ᶍ":"x","ý":"y","ŷ":"y","ÿ":"y","ẏ":"y","ỵ":"y","ỳ":"y","ƴ":"y","ỷ":"y","ỿ":"y","ȳ":"y","ẙ":"y","ɏ":"y","ỹ":"y","ź":"z","ž":"z","ẑ":"z","ʑ":"z","ⱬ":"z","ż":"z","ẓ":"z","ȥ":"z","ẕ":"z","ᵶ":"z","ᶎ":"z","ʐ":"z","ƶ":"z","ɀ":"z","ff":"ff","ffi":"ffi","ffl":"ffl","fi":"fi","fl":"fl","ij":"ij","œ":"oe","st":"st","ₐ":"a","ₑ":"e","ᵢ":"i","ⱼ":"j","ₒ":"o","ᵣ":"r","ᵤ":"u","ᵥ":"v","ₓ":"x"}};String.prototype.latinise=function(){return this.replace(/[^A-Za-z0-9\[\] ]/g,function(o){return Latinise.latin_map[o]||o})},String.prototype.latinize=String.prototype.latinise,String.prototype.isLatin=function(){return this==this.latinise()};
assets/js/frontend/wc-braintree.min.js CHANGED
@@ -1 +1 @@
1
- "use strict";var _get=function e(t,n,r){null===t&&(t=Function.prototype);var i=Object.getOwnPropertyDescriptor(t,n);if(void 0===i){var a=Object.getPrototypeOf(t);return null===a?void 0:e(a,n,r)}if("value"in i)return i.value;var o=i.get;return void 0!==o?o.call(r):void 0},_createClass=function(){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}}();function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(function(){function _(e,t){if(!(e instanceof t))throw new Error("Bound instance method accessed before binding")}var c=[].indexOf;jQuery(document).ready(function(s){var r,i;function t(e){_classCallCheck(this,t),this.show_integration_ui=this.show_integration_ui.bind(this),this.hide_integration_ui=this.hide_integration_ui.bind(this),this.id=e.id,this.id_dasherized=e.id_dasherized,this.name=e.name,this.type=e.type,this.debug=e.debug,this.client_token_nonce=e.client_token_nonce,this.ajax_url=e.ajax_url,this.integration_error_message=e.integration_error_message,this.payment_error_message=e.payment_error_message,this.params=window.sv_wc_payment_gateway_payment_form_params}function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(this,(a.__proto__||Object.getPrototypeOf(a)).call(this,e));return t.add_3ds_ui=t.add_3ds_ui.bind(t),t.remove_3ds_ui=t.remove_3ds_ui.bind(t),t.show_integration_ui=t.show_integration_ui.bind(t),t.hide_integration_ui=t.hide_integration_ui.bind(t),t.csc_required=e.csc_required,t.hosted_fields_styles=e.hosted_fields_styles,t.threeds=e.threeds,t.enabled_card_types=e.enabled_card_types,t.init(),t}function n(e){_classCallCheck(this,n);var t=_possibleConstructorReturn(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,e));return t.do_integration_ready=t.do_integration_ready.bind(t),t.on_authorize=t.on_authorize.bind(t),t.get_linked_account_html=t.get_linked_account_html.bind(t),t.is_test_environment=e.is_test_environment,t.is_paypal_credit_enabled=e.is_paypal_credit_enabled,t.must_login_message=e.must_login_message,t.must_login_add_method_message=e.must_login_add_method_message,t.button_styles=e.button_styles,t.cart_payment_nonce=e.cart_payment_nonce,t.init(),t}return window.WC_Braintree_Payment_Form_Handler=(_createClass(t,[{key:"init",value:function(){return this.is_sdk_ready()?s("form.checkout").length?this.handle_checkout_page():s("form#order_review").length?this.handle_pay_page():s("form#add_payment_method").length?this.handle_add_payment_method_page():void 0:console.error("Braintree SDK is missing.")}},{key:"handle_checkout_page",value:function(){var e=this;return this.form=s("form.checkout"),this.form_ui_selector=".woocommerce-checkout-payment",s(document.body).on("updated_checkout",function(){if(!e.setting_up)return e.setup_braintree()}),s(document.body).on("updated_checkout",function(){return e.handle_saved_payment_methods()}),s(document.body).on("checkout_error",function(){return e.handle_checkout_error()}),this.form.on("checkout_place_order_"+this.id,function(){if(e.is_selected())return e.block_ui(),e.verify_form()})}},{key:"handle_checkout_error",value:function(){return this.unblock_ui()}},{key:"handle_pay_page",value:function(){var e=this;return this.form=s("form#order_review"),this.form_ui_selector="#payment",this.handle_saved_payment_methods(),this.setup_braintree(),this.form.submit(function(){if(e.is_selected())return e.block_ui(),e.verify_form()})}},{key:"handle_add_payment_method_page",value:function(){var e=this;return this.form=s("form#add_payment_method"),this.form_ui_selector="#payment",this.setup_braintree(),this.form.submit(function(){if(e.is_selected())return e.block_ui(),e.verify_form()})}},{key:"verify_form",value:function(){return!!this.using_payment_token()||!!this.has_payment_nonce()&&void 0}},{key:"submit_form",value:function(e){return s("input[name=wc_"+this.id+"_payment_nonce]").val(e),this.form.submit()}},{key:"handle_saved_payment_methods",value:function(){var e,n=this;if(e=s("div.js-wc-"+this.id_dasherized+"-new-payment-method-form"),s("input.js-wc-"+this.id_dasherized+"-payment-token").change(function(){return s("input.js-wc-"+n.id_dasherized+"-payment-token:checked").val()?e.slideUp(200):e.slideDown(200)}).change(),s("input#createaccount").change(function(e){var t;return t=s("input.js-wc-"+n.id_dasherized+"-tokenize-payment-method").closest("p.form-row"),s(e.target).is(":checked")?(t.slideDown(),t.next().show()):(t.hide(),t.next().hide())}),!s("input#createaccount").is(":checked"))return s("input#createaccount").change()}},{key:"setup_braintree",value:function(){return this.setting_up=!0,this.block_ui(),s("input[name=wc_"+this.id+"_payment_nonce]").val(""),this.create_client()}},{key:"create_client",value:function(){var r=this;return this.log("Creating client."),this.get_client_token().done(function(e){return e.success?braintree.client.create({authorization:e.data}).then(function(e){return r.client=e,r.log("Client ready."),r.setup_integration()}).catch(function(e){return r.handle_integration_error(e),r.unblock_ui()}):r.handle_integration_error(e.data)}).fail(function(e,t,n){return r.handle_integration_error({message:"Could not retrieve the client token via AJAX: "+n})}).always(function(){return r.unblock_ui()})}},{key:"get_client_token",value:function(){var e;return this.id,e={action:"wc_"+this.id+"_get_client_token",nonce:this.client_token_nonce},s.post(this.ajax_url,e)}},{key:"setup_integration",value:function(){var t=this;return this.log("Creating integration."),this.get_integration_class().create(this.get_integration_options()).then(function(e){return t.integration=e,t.show_integration_ui(),t.do_integration_ready(),s(document).trigger("wc_"+t.id+"_integration_ready",t.integration),t.log("Integration ready."),t.setting_up=!1}).catch(function(e){return t.handle_integration_error(e),t.unblock_ui(),t.setting_up=!1})}},{key:"refresh_braintree",value:function(){var e=this;if(null!=this.integration&&!this.refreshing&&!this.setting_up)return this.log("Refreshing integration."),this.refreshing=!0,this.block_ui(),this.integration.teardown(function(){return e.integration=null,e.refreshing=!1,e.setup_braintree()})}},{key:"teardown_braintree",value:function(){var e=this;if(null!=this.integration)return this.block_ui(),this.integration.teardown(function(){return e.integration=null,e.unblock_ui()})}},{key:"do_integration_ready",value:function(){}},{key:"get_integration_options",value:function(){return{client:this.client}}},{key:"get_integration_class",value:function(){}},{key:"handle_integration_error",value:function(e){return this.log("Integration error. "+e.message,e,"error"),this.hide_integration_ui(),this.unblock_ui()}},{key:"handle_payment_error",value:function(e){return this.log("Payment error. "+e.message,e,"error"),this.render_error(this.get_user_message(e)),this.unblock_ui()}},{key:"render_error",value:function(e){return s(".woocommerce-error, .woocommerce-message").remove(),this.form.prepend('<div class="woocommerce-error">'+e+"</div>").removeClass("processing").unblock(),s("html, body").animate({scrollTop:this.form.offset().top-100},1e3),s("input[name=wc_"+this.id+"_payment_nonce]").val(""),this.form.trigger("wc_"+this.id+"_rendered_error"),s(document.body).trigger("checkout_error"),this.unblock_ui()}},{key:"get_user_message",value:function(e){return this.payment_error_message}},{key:"show_integration_ui",value:function(){if(s("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").find(".woocommerce-error").remove(),s("input#createaccount").length&&s("input#createaccount").is(":checked"))return s("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").find(".form-row").show()}},{key:"hide_integration_ui",value:function(){return s("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").prepend('<div class="woocommerce-error">'+this.integration_error_message+"</div>"),s("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").find(".form-row").hide()}},{key:"block_ui",value:function(){return s(this.form_ui_selector).block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return s(this.form_ui_selector).unblock()}},{key:"is_selected",value:function(){return this.get_selected_gateway_id()===this.id}},{key:"is_sdk_ready",value:function(){return"undefined"!=typeof braintree&&null!==braintree&&null!=braintree.client&&null!=this.get_integration_class()}},{key:"has_payment_nonce",value:function(){return this.form.find("input[name=wc_"+this.id+"_payment_nonce]").val()}},{key:"using_payment_token",value:function(){return this.form.find("input.js-wc-"+this.id_dasherized+"-payment-token:checked").val()}},{key:"get_selected_gateway_id",value:function(){return this.form.find("input[name=payment_method]:checked").val()}},{key:"log",value:function(e,t,n){var r=1<arguments.length&&void 0!==t?t:null;if(this.debug)return console.log(this.name+": "+e),r?console.log(r):void 0}}]),t),r=window.WC_Braintree_Credit_Card_Payment_Form_Handler=(_inherits(a,WC_Braintree_Payment_Form_Handler),_createClass(a,[{key:"handle_checkout_error",value:function(){return _get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"handle_checkout_error",this).call(this),s("input[name=wc_"+this.id+"_payment_nonce]").val(""),s("input[name=wc-"+this.id_dasherized+"-card-type]").val(""),s("input[name=wc-"+this.id_dasherized+"-3d-secure-verified]").val(0)}},{key:"verify_form",value:function(){var e;return this.has_payment_nonce()||!this.csc_required&&this.using_payment_token()?(e=s("input.js-wc-braintree-credit-card-payment-token:checked"),this.should_verify_3d_secure_token(e)?(this.verify_3d_secure(e.data("nonce"),e),!1):_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"verify_form",this).call(this)):(this.tokenize_payment(),!1)}},{key:"tokenize_payment",value:function(){var t=this;return this.integration.tokenize().then(function(e){if(t.log("Payment method received.",e),null!=e.nonce)return t.should_verify_3d_secure(e)?t.verify_3d_secure(e.nonce):t.submit_form(e.nonce)}).catch(function(e){return t.handle_payment_error(e)})}},{key:"get_integration_options",value:function(){var e;return e={client:this.client,fields:{number:{selector:"#wc-braintree-credit-card-account-number-hosted",placeholder:s("#wc-braintree-credit-card-account-number-hosted").data("placeholder")},cvv:{selector:"#wc-braintree-credit-card-csc-hosted",placeholder:s("#wc-braintree-credit-card-csc-hosted").data("placeholder")},expirationDate:{selector:"#wc-braintree-credit-card-expiry-hosted",placeholder:s("#wc-braintree-credit-card-expiry-hosted").data("placeholder")}},styles:this.hosted_fields_styles},this.csc_required&&this.using_payment_token()&&(delete e.fields.number,delete e.fields.expirationDate),this.csc_required||delete e.fields.cvv,e}},{key:"get_integration_class",value:function(){return braintree.hostedFields}},{key:"do_integration_ready",value:function(){var t=this;return this.integration.on("cardTypeChange",function(e){return t.on_card_type_change(e)}),!this.csc_required&&s("input.js-wc-braintree-credit-card-payment-token:checked").val()&&this.teardown_braintree(),this.unblock_ui()}},{key:"handle_saved_payment_methods",value:function(){var e,t,n=this;return _get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"handle_saved_payment_methods",this).call(this),t=s("div.js-wc-braintree-credit-card-new-payment-method-form"),e=s("div.wc-braintree-hosted-field-card-csc-parent"),s("input.js-wc-braintree-credit-card-payment-token").change(function(){return s("input.js-wc-braintree-credit-card-payment-token:checked").val()?n.csc_required&&e.hasClass("form-row-last")?(e.removeClass("form-row-last").addClass("form-row-first"),t.after(e),n.refresh_braintree()):void 0:(n.csc_required&&e.hasClass("form-row-first")&&(e.removeClass("form-row-first").addClass("form-row-last"),t.find("div.wc-braintree-hosted-field-card-expiry-parent").after(e)),n.refresh_braintree())}).change()}},{key:"get_user_message",value:function(e){var t,n,r,i;if(r=[],"CUSTOMER"===e.type)switch(e.code){case"HOSTED_FIELDS_FIELDS_EMPTY":this.csc_required&&r.push(this.params.cvv_missing),this.using_payment_token()||(r.push(this.params.card_number_missing),r.push(this.params.card_exp_date_invalid));break;case"HOSTED_FIELDS_FIELDS_INVALID":if(null!=e.details)for(t=0,n=(i=e.details.invalidFieldKeys).length;t<n;t++)switch(i[t]){case"number":r.push(this.params.card_number_invalid);break;case"cvv":r.push(this.params.cvv_length_invalid);break;case"expirationDate":r.push(this.params.card_exp_date_invalid)}}return r.length?r.join("<br/>"):_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"get_user_message",this).call(this)}},{key:"on_card_type_change",value:function(e){var t,n,r;if(null!=e.cards)return(t=s("#wc-braintree-credit-card-account-number-hosted")).attr("class",function(e,t){return t.replace(/(^|\s)card-type-\S+/g,"")}),e.cards.length?1===e.cards.length?(n=e.cards[0],s("input[name=wc-"+this.id_dasherized+"-card-type]").val(n.type),null!=n.type&&(r=n.type,0<=c.call(this.enabled_card_types,r))?t.addClass("card-type-"+n.type):t.addClass("card-type-invalid")):void 0:t.addClass("card-type-invalid")}},{key:"is_3d_secure_enabled",value:function(){return this.threeds.enabled&&null!=braintree.threeDSecure}},{key:"setup_integration",value:function(){var t=this;return this.threeds.enabled&&(this.threeds.enabled=this.client.getConfiguration().gatewayConfiguration.threeDSecureEnabled),this.is_3d_secure_enabled()?(s("input[name=wc-"+this.id_dasherized+"-3d-secure-enabled]").val(1),braintree.threeDSecure.create({client:this.client}).then(function(e){return t.threeDSecure=e,s(document.body).on("click","#wc-braintree-credit-card-3dsecure-container",function(e){return s(e.currentTarget).fadeOut(200),t.threeDSecure.cancelVerifyCard(),t.unblock_ui()}),_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"setup_integration",t).call(t)}).catch(function(e){return t.handle_integration_error(e)})):_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"setup_integration",this).call(this)}},{key:"should_verify_3d_secure",value:function(e){var t;return t=e.details.cardType,this.is_3d_secure_enabled()&&"CreditCard"===e.type&&0<=c.call(this.threeds.card_types,t)}},{key:"should_verify_3d_secure_token",value:function(e){if(this.is_3d_secure_enabled()&&e.val()&&e.data("nonce")&&!e.data("verified"))return!0}},{key:"verify_3d_secure",value:function(e,t){var n,r,i,a=this,o=1<arguments.length&&void 0!==t?t:null;return i=s("#billing_state").val(),n=s("#billing_country").val(),r={billingAddress:{firstName:s("input[name=billing_first_name]").val(),lastName:s("input[name=billing_last_name]").val(),streetAddress:s("input[name=billing_address_1]").val(),extendedAddress:s("input[name=billing_address_2]").val(),locality:s("#billing_city").val(),region:"string"==typeof i&&i.length<=2?i:"",postalCode:s("input[name=billing_postcode]").val(),countryCodeAlpha2:"string"==typeof n&&n.length<=2?n:""}},this.threeDSecure.verifyCard({nonce:e,amount:s("input[name=wc-"+this.id_dasherized+"-3d-secure-order-total]").val(),customer:r,addFrame:function(e,t){return a.add_3ds_ui(e,t)},removeFrame:function(){return a.remove_3ds_ui()}}).then(function(e){return a.log("3D Secure response received.",e),a.threeds.liability_shift_always_required&&!e.liabilityShifted?a.render_error(a.threeds.failure_message):(null!=o&&o.data("verified",!0),s("input[name=wc-"+a.id_dasherized+"-3d-secure-verified]").val(1),a.submit_form(e.nonce))}).catch(function(e){return a.handle_payment_error(e)})}},{key:"add_3ds_ui",value:function(e,t){var n;return _(this,r),e?this.handle_payment_error(e):((n=s("<div>",{id:"wc-"+this.id_dasherized+"-3dsecure-container"})).html(t),s(document.body).append(n),n.fadeIn(400))}},{key:"remove_3ds_ui",value:function(){return _(this,r),s("#wc-"+this.id_dasherized+"-3dsecure-container").fadeOut(400,function(e){return s(this).remove()})}},{key:"show_integration_ui",value:function(){return _(this,r),_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"show_integration_ui",this).call(this),s(".wc-braintree-hosted-field-parent").show()}},{key:"hide_integration_ui",value:function(){return _(this,r),_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"hide_integration_ui",this).call(this),s(".wc-braintree-hosted-field-parent").hide()}}]),a),i=window.WC_Braintree_PayPal_Payment_Form_Handler=(_inherits(n,WC_Braintree_Payment_Form_Handler),_createClass(n,[{key:"init",value:function(){var t=this;return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"init",this).call(this),s("input[name=wc_"+this.id+"_payment_nonce]").val(this.cart_payment_nonce),s(document.body).on("click",'input[name="payment_method"], input.js-wc-braintree-paypal-payment-token',function(){return t.toggle_order_button()}),s(document.body).on("payment_method_selected",function(){return t.toggle_order_button()}),s(document.body).on("click",".wc-braintree-paypal-account .cancel",function(e){return e.preventDefault(),s(e.currentTarget).parent().remove(),t.setup_braintree()})}},{key:"toggle_order_button",value:function(){return!this.is_selected()||this.has_payment_nonce()||this.using_payment_token()?s("#place_order").show():s("#place_order").hide()}},{key:"verify_form",value:function(){var e;return e=_get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"verify_form",this).call(this),this.has_payment_nonce()||this.using_payment_token()||this.render_error(this.must_login_message),e}},{key:"handle_payment_error",value:function(e){return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"handle_payment_error",this).call(this,e),this.cart_payment_nonce=!1,this.setup_braintree()}},{key:"get_integration_class",value:function(){return braintree.paypalCheckout}},{key:"setup_braintree",value:function(){return this.cart_payment_nonce?this.unblock_ui():(_get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"setup_braintree",this).call(this),s("input.js-wc-braintree-paypal-tokenize-payment-method").prop("disabled",!1),this.toggle_order_button())}},{key:"do_integration_ready",value:function(){var e,t=this;return _(this,i),this.cart_payment_nonce?this.unblock_ui():(e=this.is_single_use()?"checkout":"vault",this.render_button(this.integration.createPayment({flow:e,amount:this.get_order_amount(),currency:this.get_store_currency(),locale:this.get_store_locale()}),this.get_button_styles(),"#wc_braintree_paypal_container").then(function(){return s("#wc_braintree_paypal_container").css({width:"100%"}),t.unblock_ui()}).catch(function(e){return t.log("Could not render the PayPal button. "+e.message,e),t.hide_integration_ui(),t.unblock_ui()}))}},{key:"render_button",value:function(e,t,n){var r,i,a=this;return s(n).html(""),r=this.is_paypal_credit_enabled&&"USD"===this.get_store_currency()?{allowed:[paypal.FUNDING.CREDIT]}:{disallowed:[paypal.FUNDING.CREDIT]},i={env:this.is_test_environment?"sandbox":"production",commit:this.button_is_pay_now(),style:t,funding:r,payment:function(){return e},onAuthorize:function(e,t){return a.on_authorize(e,t)},onError:function(e){return a.handle_integration_error(e)}},paypal.Button.render(i,n)}},{key:"button_is_pay_now",value:function(){return!s("form#add_payment_method").length}},{key:"get_button_styles",value:function(){return this.button_styles}},{key:"on_authorize",value:function(e,t){var n=this;return _(this,i),this.block_ui(),this.integration.tokenizePayment(e).then(function(e){return n.log("Payment method tokenized.",e),n.set_payment_method(e)}).catch(function(e){return n.handle_payment_error(e),n.unblock_ui()})}},{key:"set_payment_method",value:function(e){return s("input[name=wc_"+this.id+"_payment_nonce]").val(e.nonce),s("#wc_braintree_paypal_container").html(this.get_linked_account_html(e.details)),this.is_single_use()&&s("input.js-wc-braintree-paypal-tokenize-payment-method").prop("disabled",!0),s("#place_order").show(),this.form.submit()}},{key:"handle_saved_payment_methods",value:function(){var t=this;return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"handle_saved_payment_methods",this).call(this),s("input.js-wc-braintree-paypal-tokenize-payment-method").change(function(e){if(null!=t.integration&&s(e.target).is(":visible"))return t.block_ui(),t.do_integration_ready()}).change()}},{key:"get_linked_account_html",value:function(e){var t;return _(this,i),t=s("<div class='wc-"+this.id_dasherized+"-account'></div>"),null!=e.firstName&&null!=e.lastName&&t.append("<span class='name'>"+e.firstName+" "+e.lastName+"</span>"),t.append("<span class='email'>"+e.email+"</span>"),t.append("<a href='#' class='cancel'>Cancel</a>"),t}},{key:"is_single_use",value:function(){var e;return 0===(e=s("input[name=wc-braintree-paypal-tokenize-payment-method]")).length||("checkbox"===e.attr("type")?!e.is(":checked"):!e.val())}},{key:"get_order_amount",value:function(){return s("input[name=wc_braintree_paypal_amount]").val()}},{key:"get_store_currency",value:function(){return s("input[name=wc_braintree_paypal_currency]").val()}},{key:"get_store_locale",value:function(){return s("input[name=wc_braintree_paypal_locale]").val()}},{key:"is_sdk_ready",value:function(){return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"is_sdk_ready",this).call(this)&&"undefined"!=typeof paypal&&null!==paypal}}]),n),window.WC_Braintree_PayPal_Cart_Handler=(_inherits(o,WC_Braintree_PayPal_Payment_Form_Handler),_createClass(o,[{key:"button_is_pay_now",value:function(){return!1}},{key:"set_payment_method",value:function(e){var t=this;if(null!=e.nonce)return e.wp_nonce=this.set_payment_method_nonce,s.ajax({type:"POST",url:this.cart_handler_url,data:e,dataType:"json"}).done(function(e){if(t.log("Cart response received.",e),null!=e.redirect_url)return window.location=e.redirect_url}).fail(function(e){return t.log("Error setting the PayPal cart data.",e,"error")}).always(function(){return t.unblock_ui()})}},{key:"is_single_use",value:function(){return"1"===s("input[name=wc_braintree_paypal_single_use]").val()}},{key:"has_payment_nonce",value:function(){return!1}}]),o);function o(e){_classCallCheck(this,o);var t=_possibleConstructorReturn(this,(o.__proto__||Object.getPrototypeOf(o)).call(this,e));return t.set_payment_method_nonce=e.set_payment_method_nonce,t.cart_handler_url=e.cart_handler_url,t.form=s("form.woocommerce-cart-form"),t.form_ui_selector="",t.setup_braintree(),s(document.body).on("updated_cart_totals",function(){return t.setup_braintree()}),t}})}).call(void 0);
1
+ "use strict";var _get=function e(t,n,r){null===t&&(t=Function.prototype);var i=Object.getOwnPropertyDescriptor(t,n);if(void 0===i){var a=Object.getPrototypeOf(t);return null===a?void 0:e(a,n,r)}if("value"in i)return i.value;var o=i.get;return void 0!==o?o.call(r):void 0},_createClass=function(){function r(e,t){for(var n=0;n<t.length;n++){var r=t[n];r.enumerable=r.enumerable||!1,r.configurable=!0,"value"in r&&(r.writable=!0),Object.defineProperty(e,r.key,r)}}return function(e,t,n){return t&&r(e.prototype,t),n&&r(e,n),e}}();function _possibleConstructorReturn(e,t){if(!e)throw new ReferenceError("this hasn't been initialised - super() hasn't been called");return!t||"object"!=typeof t&&"function"!=typeof t?e:t}function _inherits(e,t){if("function"!=typeof t&&null!==t)throw new TypeError("Super expression must either be null or a function, not "+typeof t);e.prototype=Object.create(t&&t.prototype,{constructor:{value:e,enumerable:!1,writable:!0,configurable:!0}}),t&&(Object.setPrototypeOf?Object.setPrototypeOf(e,t):e.__proto__=t)}function _classCallCheck(e,t){if(!(e instanceof t))throw new TypeError("Cannot call a class as a function")}(function(){function o(e,t){if(!(e instanceof t))throw new Error("Bound instance method accessed before binding")}var s=[].indexOf;jQuery(document).ready(function(d){var e,r;function t(e){_classCallCheck(this,t),this.show_integration_ui=this.show_integration_ui.bind(this),this.hide_integration_ui=this.hide_integration_ui.bind(this),this.id=e.id,this.id_dasherized=e.id_dasherized,this.name=e.name,this.type=e.type,this.debug=e.debug,this.client_token_nonce=e.client_token_nonce,this.ajax_url=e.ajax_url,this.integration_error_message=e.integration_error_message,this.payment_error_message=e.payment_error_message,this.params=window.sv_wc_payment_gateway_payment_form_params}function a(e){_classCallCheck(this,a);var t=_possibleConstructorReturn(this,(a.__proto__||Object.getPrototypeOf(a)).call(this,e));return t.show_integration_ui=t.show_integration_ui.bind(t),t.hide_integration_ui=t.hide_integration_ui.bind(t),t.csc_required=e.csc_required,t.hosted_fields_styles=e.hosted_fields_styles,t.threeds=e.threeds,t.enabled_card_types=e.enabled_card_types,t.init(),t}function n(e){_classCallCheck(this,n);var t=_possibleConstructorReturn(this,(n.__proto__||Object.getPrototypeOf(n)).call(this,e));return t.do_integration_ready=t.do_integration_ready.bind(t),t.on_authorize=t.on_authorize.bind(t),t.get_linked_account_html=t.get_linked_account_html.bind(t),t.is_test_environment=e.is_test_environment,t.is_paypal_credit_enabled=e.is_paypal_credit_enabled,t.must_login_message=e.must_login_message,t.must_login_add_method_message=e.must_login_add_method_message,t.button_styles=e.button_styles,t.cart_payment_nonce=e.cart_payment_nonce,t.init(),t}return window.WC_Braintree_Payment_Form_Handler=(_createClass(t,[{key:"init",value:function(){return this.is_sdk_ready()?d("form.checkout").length?this.handle_checkout_page():d("form#order_review").length?this.handle_pay_page():d("form#add_payment_method").length?this.handle_add_payment_method_page():void 0:console.error("Braintree SDK is missing.")}},{key:"handle_checkout_page",value:function(){var e=this;return this.form=d("form.checkout"),this.form_ui_selector=".woocommerce-checkout-payment",d(document.body).on("updated_checkout",function(){if(!e.setting_up)return e.setup_braintree()}),d(document.body).on("updated_checkout",function(){return e.handle_saved_payment_methods()}),d(document.body).on("checkout_error",function(){return e.handle_checkout_error()}),this.form.on("checkout_place_order_"+this.id,function(){if(e.is_selected())return e.block_ui(),e.verify_form()})}},{key:"handle_checkout_error",value:function(){return this.unblock_ui()}},{key:"handle_pay_page",value:function(){var e=this;return this.form=d("form#order_review"),this.form_ui_selector="#payment",this.handle_saved_payment_methods(),this.setup_braintree(),this.form.submit(function(){if(e.is_selected())return e.block_ui(),e.verify_form()})}},{key:"handle_add_payment_method_page",value:function(){var e=this;return this.form=d("form#add_payment_method"),this.form_ui_selector="#payment",this.setup_braintree(),this.form.submit(function(){if(e.is_selected())return e.block_ui(),e.verify_form()})}},{key:"verify_form",value:function(){return!!this.using_payment_token()||!!this.has_payment_nonce()&&void 0}},{key:"submit_form",value:function(e){return d("input[name=wc_"+this.id+"_payment_nonce]").val(e),this.form.submit()}},{key:"handle_saved_payment_methods",value:function(){var e,n=this;if(e=d("div.js-wc-"+this.id_dasherized+"-new-payment-method-form"),d("input.js-wc-"+this.id_dasherized+"-payment-token").change(function(){return d("input.js-wc-"+n.id_dasherized+"-payment-token:checked").val()?e.slideUp(200):e.slideDown(200)}).change(),d("input#createaccount").change(function(e){var t;return t=d("input.js-wc-"+n.id_dasherized+"-tokenize-payment-method").closest("p.form-row"),d(e.target).is(":checked")?(t.slideDown(),t.next().show()):(t.hide(),t.next().hide())}),!d("input#createaccount").is(":checked"))return d("input#createaccount").change()}},{key:"setup_braintree",value:function(){return this.setting_up=!0,this.block_ui(),d("input[name=wc_"+this.id+"_payment_nonce]").val(""),this.create_client()}},{key:"create_client",value:function(){var r=this;return this.log("Creating client."),this.get_client_token().done(function(e){return e.success?braintree.client.create({authorization:e.data}).then(function(e){return r.client=e,r.log("Client ready."),r.setup_integration()}).catch(function(e){return r.handle_integration_error(e),r.unblock_ui()}):r.handle_integration_error(e.data)}).fail(function(e,t,n){return r.handle_integration_error({message:"Could not retrieve the client token via AJAX: "+n})}).always(function(){return r.unblock_ui()})}},{key:"get_client_token",value:function(){var e;return this.id,e={action:"wc_"+this.id+"_get_client_token",nonce:this.client_token_nonce},d.post(this.ajax_url,e)}},{key:"setup_integration",value:function(){var t=this;return this.log("Creating integration."),this.get_integration_class().create(this.get_integration_options()).then(function(e){return t.integration=e,t.show_integration_ui(),t.do_integration_ready(),d(document).trigger("wc_"+t.id+"_integration_ready",t.integration),t.log("Integration ready."),t.setting_up=!1}).catch(function(e){return t.handle_integration_error(e),t.unblock_ui(),t.setting_up=!1})}},{key:"refresh_braintree",value:function(){var e=this;if(null!=this.integration&&!this.refreshing&&!this.setting_up)return this.log("Refreshing integration."),this.refreshing=!0,this.block_ui(),this.integration.teardown(function(){return e.integration=null,e.refreshing=!1,e.setup_braintree()})}},{key:"teardown_braintree",value:function(){var e=this;if(null!=this.integration)return this.block_ui(),this.integration.teardown(function(){return e.integration=null,e.unblock_ui()})}},{key:"do_integration_ready",value:function(){}},{key:"get_integration_options",value:function(){return{client:this.client}}},{key:"get_integration_class",value:function(){}},{key:"handle_integration_error",value:function(e){return this.log("Integration error. "+e.message,e,"error"),this.hide_integration_ui(),this.unblock_ui()}},{key:"handle_payment_error",value:function(e){return this.log("Payment error. "+e.message,e,"error"),this.render_error(this.get_user_message(e)),this.unblock_ui()}},{key:"render_error",value:function(e){return d(".woocommerce-error, .woocommerce-message").remove(),this.form.prepend('<div class="woocommerce-error">'+e+"</div>").removeClass("processing").unblock(),d("html, body").animate({scrollTop:this.form.offset().top-100},1e3),d("input[name=wc_"+this.id+"_payment_nonce]").val(""),this.form.trigger("wc_"+this.id+"_rendered_error"),d(document.body).trigger("checkout_error"),this.unblock_ui()}},{key:"get_user_message",value:function(e){return this.payment_error_message}},{key:"show_integration_ui",value:function(){if(d("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").find(".woocommerce-error").remove(),d("input#createaccount").length&&d("input#createaccount").is(":checked"))return d("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").find(".form-row").show()}},{key:"hide_integration_ui",value:function(){return d("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").prepend('<div class="woocommerce-error">'+this.integration_error_message+"</div>"),d("div.js-wc-"+this.id_dasherized+"-new-payment-method-form").find(".form-row").hide()}},{key:"block_ui",value:function(){return d(this.form_ui_selector).block({message:null,overlayCSS:{background:"#fff",opacity:.6}})}},{key:"unblock_ui",value:function(){return d(this.form_ui_selector).unblock()}},{key:"is_selected",value:function(){return this.get_selected_gateway_id()===this.id}},{key:"is_sdk_ready",value:function(){return"undefined"!=typeof braintree&&null!==braintree&&null!=braintree.client&&null!=this.get_integration_class()}},{key:"has_payment_nonce",value:function(){return this.form.find("input[name=wc_"+this.id+"_payment_nonce]").val()}},{key:"using_payment_token",value:function(){return this.form.find("input.js-wc-"+this.id_dasherized+"-payment-token:checked").val()}},{key:"get_selected_gateway_id",value:function(){return this.form.find("input[name=payment_method]:checked").val()}},{key:"log",value:function(e,t,n){var r=1<arguments.length&&void 0!==t?t:null;if(this.debug)return console.log(this.name+": "+e),r?console.log(r):void 0}}]),t),e=window.WC_Braintree_Credit_Card_Payment_Form_Handler=(_inherits(a,WC_Braintree_Payment_Form_Handler),_createClass(a,[{key:"handle_checkout_error",value:function(){return _get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"handle_checkout_error",this).call(this),d("input[name=wc_"+this.id+"_payment_nonce]").val(""),d("input[name=wc-"+this.id_dasherized+"-card-type]").val(""),d("input[name=wc-"+this.id_dasherized+"-3d-secure-verified]").val(0)}},{key:"verify_form",value:function(){var e;return this.has_payment_nonce()||!this.csc_required&&this.using_payment_token()?(e=d("input.js-wc-braintree-credit-card-payment-token:checked"),this.should_verify_3d_secure_token(e)?(this.verify_3d_secure(e.data("nonce"),null,e),!1):_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"verify_form",this).call(this)):(this.tokenize_payment(),!1)}},{key:"tokenize_payment",value:function(){var t=this;return this.integration.tokenize().then(function(e){if(t.log("Payment method received.",e),null!=e.nonce&&null!=e.details&&null!=e.details.bin)return t.should_verify_3d_secure(e)?t.verify_3d_secure(e.nonce,e.details.bin):t.submit_form(e.nonce)}).catch(function(e){return t.handle_payment_error(e)})}},{key:"get_integration_options",value:function(){var e;return e={client:this.client,fields:{number:{selector:"#wc-braintree-credit-card-account-number-hosted",placeholder:d("#wc-braintree-credit-card-account-number-hosted").data("placeholder")},cvv:{selector:"#wc-braintree-credit-card-csc-hosted",placeholder:d("#wc-braintree-credit-card-csc-hosted").data("placeholder")},expirationDate:{selector:"#wc-braintree-credit-card-expiry-hosted",placeholder:d("#wc-braintree-credit-card-expiry-hosted").data("placeholder")}},styles:this.hosted_fields_styles},this.csc_required&&this.using_payment_token()&&(delete e.fields.number,delete e.fields.expirationDate),this.csc_required||delete e.fields.cvv,e}},{key:"get_integration_class",value:function(){return braintree.hostedFields}},{key:"do_integration_ready",value:function(){var t=this;return this.integration.on("cardTypeChange",function(e){return t.on_card_type_change(e)}),!this.csc_required&&d("input.js-wc-braintree-credit-card-payment-token:checked").val()&&this.teardown_braintree(),this.unblock_ui()}},{key:"handle_saved_payment_methods",value:function(){var e,t,n=this;return _get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"handle_saved_payment_methods",this).call(this),t=d("div.js-wc-braintree-credit-card-new-payment-method-form"),e=d("div.wc-braintree-hosted-field-card-csc-parent"),d("input.js-wc-braintree-credit-card-payment-token").change(function(){return d("input.js-wc-braintree-credit-card-payment-token:checked").val()?n.csc_required&&e.hasClass("form-row-last")?(e.removeClass("form-row-last").addClass("form-row-first"),t.after(e),n.refresh_braintree()):void 0:(n.csc_required&&e.hasClass("form-row-first")&&(e.removeClass("form-row-first").addClass("form-row-last"),t.find("div.wc-braintree-hosted-field-card-expiry-parent").after(e)),n.refresh_braintree())}).change()}},{key:"get_user_message",value:function(e){var t,n,r,i;if(r=[],"CUSTOMER"===e.type)switch(e.code){case"HOSTED_FIELDS_FIELDS_EMPTY":this.csc_required&&r.push(this.params.cvv_missing),this.using_payment_token()||(r.push(this.params.card_number_missing),r.push(this.params.card_exp_date_invalid));break;case"HOSTED_FIELDS_FIELDS_INVALID":if(null!=e.details)for(t=0,n=(i=e.details.invalidFieldKeys).length;t<n;t++)switch(i[t]){case"number":r.push(this.params.card_number_invalid);break;case"cvv":r.push(this.params.cvv_length_invalid);break;case"expirationDate":r.push(this.params.card_exp_date_invalid)}}return r.length?r.join("<br/>"):_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"get_user_message",this).call(this)}},{key:"on_card_type_change",value:function(e){var t,n,r;if(null!=e.cards)return(t=d("#wc-braintree-credit-card-account-number-hosted")).attr("class",function(e,t){return t.replace(/(^|\s)card-type-\S+/g,"")}),e.cards.length?1===e.cards.length?(n=e.cards[0],d("input[name=wc-"+this.id_dasherized+"-card-type]").val(n.type),null!=n.type&&(r=n.type,0<=s.call(this.enabled_card_types,r))?t.addClass("card-type-"+n.type):t.addClass("card-type-invalid")):void 0:t.addClass("card-type-invalid")}},{key:"is_3d_secure_enabled",value:function(){return this.threeds.enabled&&null!=braintree.threeDSecure}},{key:"setup_integration",value:function(){var t=this;return this.threeds.enabled&&(this.threeds.enabled=this.client.getConfiguration().gatewayConfiguration.threeDSecureEnabled),this.is_3d_secure_enabled()?(d("input[name=wc-"+this.id_dasherized+"-3d-secure-enabled]").val(1),this.threeDSecure&&this.threeDSecure.teardown(),braintree.threeDSecure.create({version:2,client:this.client}).then(function(e){return t.threeDSecure=e,d(document.body).on("click","#wc-braintree-credit-card-3dsecure-container",function(e){return d(e.currentTarget).fadeOut(200),t.threeDSecure.cancelVerifyCard(),t.unblock_ui()}),_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"setup_integration",t).call(t)}).catch(function(e){return t.handle_integration_error(e)})):_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"setup_integration",this).call(this)}},{key:"should_verify_3d_secure",value:function(e){var t;return t=e.details.cardType,this.is_3d_secure_enabled()&&"CreditCard"===e.type&&0<=s.call(this.threeds.card_types,t)}},{key:"should_verify_3d_secure_token",value:function(e){if(this.is_3d_secure_enabled()&&e.val()&&e.data("nonce")&&!e.data("verified"))return!0}},{key:"verify_3d_secure",value:function(e,t,n){var r,i,a,o,s,_,c,u=this,l=2<arguments.length&&void 0!==n?n:null;return o=d("#billing_state").val(),a=d("#billing_country").val(),_=d("#shipping_state").val(),s=d("#shipping_country").val(),i={givenName:d("input[name=billing_first_name]").val().latinise(),surname:d("input[name=billing_last_name]").val().latinise(),phoneNumber:d("input[name=billing_phone]").val(),streetAddress:d("input[name=billing_address_1]").val(),extendedAddress:d("input[name=billing_address_2]").val(),locality:d("#billing_city").val(),region:"string"==typeof o&&o.length<=2?o:"",postalCode:d("input[name=billing_postcode]").val(),countryCodeAlpha2:"string"==typeof a&&a.length<=2?a:""},r=d("input[name=shipping_first_name]").val()?{shippingGivenName:d("input[name=shipping_first_name]").val().latinise(),shippingSurname:d("input[name=shipping_last_name]").val().latinise(),shippingAddress:{streetAddress:d("input[name=shipping_address_1]").val(),extendedAddress:d("input[name=shipping_address_2]").val(),locality:d("input[name=shipping_city]").val(),region:"string"==typeof _&&_.length<=2?_:"",postalCode:d("input[name=shipping_postcode]").val(),countryCodeAlpha2:"string"==typeof s&&s.length<=2?s:""}}:{},c={nonce:e,amount:d("input[name=wc-"+this.id_dasherized+"-3d-secure-order-total]").val(),email:d("input[name=billing_email]").val(),billingAddress:i,additionalInformation:r,onLookupComplete:function(e,t){return u.log("3D Secure lookup complete.",e),t()}},"1"===d("input[name=wc-"+this.id_dasherized+"-cart-contains-subscription]").val()&&(c.challengeRequested=!0),this.log("Verifying 3D Secure.",c),this.threeDSecure.verifyCard(c).then(function(e){return u.log("3D Secure response received.",e),u.threeds.liability_shift_always_required&&!e.liabilityShifted?u.render_error(u.threeds.failure_message):(null!=l&&l.data("verified",!0),d("input[name=wc-"+u.id_dasherized+"-3d-secure-verified]").val(1),u.submit_form(e.nonce))}).catch(function(e){return u.handle_payment_error(e)})}},{key:"show_integration_ui",value:function(){return o(this,e),_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"show_integration_ui",this).call(this),d(".wc-braintree-hosted-field-parent").show()}},{key:"hide_integration_ui",value:function(){return o(this,e),_get(a.prototype.__proto__||Object.getPrototypeOf(a.prototype),"hide_integration_ui",this).call(this),d(".wc-braintree-hosted-field-parent").hide()}}]),a),r=window.WC_Braintree_PayPal_Payment_Form_Handler=(_inherits(n,WC_Braintree_Payment_Form_Handler),_createClass(n,[{key:"init",value:function(){var t=this;return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"init",this).call(this),d("input[name=wc_"+this.id+"_payment_nonce]").val(this.cart_payment_nonce),d(document.body).on("click",'input[name="payment_method"], input.js-wc-braintree-paypal-payment-token',function(){return t.toggle_order_button()}),d(document.body).on("payment_method_selected",function(){return t.toggle_order_button()}),d(document.body).on("click",".wc-braintree-paypal-account .cancel",function(e){return e.preventDefault(),d(e.currentTarget).parent().remove(),t.setup_braintree()})}},{key:"toggle_order_button",value:function(){return!this.is_selected()||this.has_payment_nonce()||this.using_payment_token()?d("#place_order").show():d("#place_order").hide()}},{key:"verify_form",value:function(){var e;return e=_get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"verify_form",this).call(this),this.has_payment_nonce()||this.using_payment_token()||this.render_error(this.must_login_message),e}},{key:"handle_payment_error",value:function(e){return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"handle_payment_error",this).call(this,e),this.cart_payment_nonce=!1,this.setup_braintree()}},{key:"get_integration_class",value:function(){return braintree.paypalCheckout}},{key:"setup_braintree",value:function(){return this.cart_payment_nonce?this.unblock_ui():(_get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"setup_braintree",this).call(this),d("input.js-wc-braintree-paypal-tokenize-payment-method").prop("disabled",!1),this.toggle_order_button())}},{key:"do_integration_ready",value:function(){var e,t=this;return o(this,r),this.cart_payment_nonce?this.unblock_ui():(e=this.is_single_use()?"checkout":"vault",this.render_button(this.integration.createPayment({flow:e,amount:this.get_order_amount(),currency:this.get_store_currency(),locale:this.get_store_locale()}),this.get_button_styles(),"#wc_braintree_paypal_container").then(function(){return d("#wc_braintree_paypal_container").css({width:"100%"}),t.unblock_ui()}).catch(function(e){return t.log("Could not render the PayPal button. "+e.message,e),t.hide_integration_ui(),t.unblock_ui()}))}},{key:"render_button",value:function(e,t,n){var r,i,a=this;return d(n).html(""),r=this.is_paypal_credit_enabled&&"USD"===this.get_store_currency()?{allowed:[paypal.FUNDING.CREDIT]}:{disallowed:[paypal.FUNDING.CREDIT]},i={env:this.is_test_environment?"sandbox":"production",commit:this.button_is_pay_now(),style:t,funding:r,payment:function(){return e},onAuthorize:function(e,t){return a.on_authorize(e,t)},onError:function(e){return a.handle_integration_error(e)}},paypal.Button.render(i,n)}},{key:"button_is_pay_now",value:function(){return!d("form#add_payment_method").length}},{key:"get_button_styles",value:function(){return this.button_styles}},{key:"on_authorize",value:function(e,t){var n=this;return o(this,r),this.block_ui(),this.integration.tokenizePayment(e).then(function(e){return n.log("Payment method tokenized.",e),n.set_payment_method(e)}).catch(function(e){return n.handle_payment_error(e),n.unblock_ui()})}},{key:"set_payment_method",value:function(e){return d("input[name=wc_"+this.id+"_payment_nonce]").val(e.nonce),d("#wc_braintree_paypal_container").html(this.get_linked_account_html(e.details)),this.is_single_use()&&d("input.js-wc-braintree-paypal-tokenize-payment-method").prop("disabled",!0),d("#place_order").show(),this.form.submit()}},{key:"handle_saved_payment_methods",value:function(){var t=this;return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"handle_saved_payment_methods",this).call(this),d("input.js-wc-braintree-paypal-tokenize-payment-method").change(function(e){if(null!=t.integration&&d(e.target).is(":visible"))return t.block_ui(),t.do_integration_ready()}).change()}},{key:"get_linked_account_html",value:function(e){var t;return o(this,r),t=d("<div class='wc-"+this.id_dasherized+"-account'></div>"),null!=e.firstName&&null!=e.lastName&&t.append("<span class='name'>"+e.firstName+" "+e.lastName+"</span>"),t.append("<span class='email'>"+e.email+"</span>"),t.append("<a href='#' class='cancel'>Cancel</a>"),t}},{key:"is_single_use",value:function(){var e;return 0===(e=d("input[name=wc-braintree-paypal-tokenize-payment-method]")).length||("checkbox"===e.attr("type")?!e.is(":checked"):!e.val())}},{key:"get_order_amount",value:function(){return d("input[name=wc_braintree_paypal_amount]").val()}},{key:"get_store_currency",value:function(){return d("input[name=wc_braintree_paypal_currency]").val()}},{key:"get_store_locale",value:function(){return d("input[name=wc_braintree_paypal_locale]").val()}},{key:"is_sdk_ready",value:function(){return _get(n.prototype.__proto__||Object.getPrototypeOf(n.prototype),"is_sdk_ready",this).call(this)&&"undefined"!=typeof paypal&&null!==paypal}}]),n),window.WC_Braintree_PayPal_Cart_Handler=(_inherits(i,WC_Braintree_PayPal_Payment_Form_Handler),_createClass(i,[{key:"button_is_pay_now",value:function(){return!1}},{key:"set_payment_method",value:function(e){var t=this;if(null!=e.nonce)return e.wp_nonce=this.set_payment_method_nonce,d.ajax({type:"POST",url:this.cart_handler_url,data:e,dataType:"json"}).done(function(e){if(t.log("Cart response received.",e),null!=e.redirect_url)return window.location=e.redirect_url}).fail(function(e){return t.log("Error setting the PayPal cart data.",e,"error")}).always(function(){return t.unblock_ui()})}},{key:"is_single_use",value:function(){return"1"===d("input[name=wc_braintree_paypal_single_use]").val()}},{key:"has_payment_nonce",value:function(){return!1}}]),i);function i(e){_classCallCheck(this,i);var t=_possibleConstructorReturn(this,(i.__proto__||Object.getPrototypeOf(i)).call(this,e));return t.set_payment_method_nonce=e.set_payment_method_nonce,t.cart_handler_url=e.cart_handler_url,t.form=d("form.woocommerce-cart-form"),t.form_ui_selector="",t.setup_braintree(),d(document.body).on("updated_cart_totals",function(){return t.setup_braintree()}),t}})}).call(void 0);
class-wc-braintree.php CHANGED
@@ -88,10 +88,10 @@ class WC_Braintree extends WC_Braintree_Framework\SV_WC_Payment_Gateway_Plugin {
88
 
89
 
90
  /** plugin version number */
91
- const VERSION = '2.2.5';
92
 
93
  /** Braintree JS SDK version */
94
- const BRAINTREE_JS_SDK_VERSION = '3.38.0';
95
 
96
  /** @var WC_Braintree single instance of this plugin */
97
  protected static $instance;
88
 
89
 
90
  /** plugin version number */
91
+ const VERSION = '2.2.6';
92
 
93
  /** Braintree JS SDK version */
94
+ const BRAINTREE_JS_SDK_VERSION = '3.48.0';
95
 
96
  /** @var WC_Braintree single instance of this plugin */
97
  protected static $instance;
i18n/languages/woocommerce-gateway-paypal-powered-by-braintree.pot CHANGED
@@ -2,10 +2,10 @@
2
  # This file is distributed under the same license as the WooCommerce PayPal Powered by Braintree Gateway package.
3
  msgid ""
4
  msgstr ""
5
- "Project-Id-Version: WooCommerce PayPal Powered by Braintree Gateway 2.2.5\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://woocommerce.com/my-account/marketplace-ticket-form/\n"
8
- "POT-Creation-Date: 2019-06-06 21:50:43+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
@@ -245,15 +245,15 @@ msgstr ""
245
  msgid "Display and Require the Card Security Code (CVV/CID) field on checkout"
246
  msgstr ""
247
 
248
- #: includes/class-wc-gateway-braintree-credit-card.php:926
249
  #: includes/payment-forms/class-wc-braintree-hosted-fields-payment-form.php:138
250
  msgid ""
251
  "We cannot process your order with the payment information that you "
252
  "provided. Please use an alternate payment method."
253
  msgstr ""
254
 
255
- #: includes/class-wc-gateway-braintree-credit-card.php:934
256
- #: includes/class-wc-gateway-braintree.php:155
257
  msgid ""
258
  "Oops, there was a temporary payment error. Please try another payment "
259
  "method or contact us to complete your transaction."
@@ -367,7 +367,7 @@ msgid "%1$s %2$s %3$s Approved"
367
  msgstr ""
368
 
369
  #: includes/class-wc-gateway-braintree-paypal.php:498
370
- #: includes/class-wc-gateway-braintree.php:1333
371
  msgid "Sandbox"
372
  msgstr ""
373
 
@@ -398,69 +398,69 @@ msgid ""
398
  "securely."
399
  msgstr ""
400
 
401
- #: includes/class-wc-gateway-braintree.php:324
402
  msgid "Merchant ID"
403
  msgstr ""
404
 
405
- #: includes/class-wc-gateway-braintree.php:327
406
  msgid "The Merchant ID for your Braintree account."
407
  msgstr ""
408
 
409
- #: includes/class-wc-gateway-braintree.php:331
410
  msgid "Public Key"
411
  msgstr ""
412
 
413
- #: includes/class-wc-gateway-braintree.php:334
414
  msgid "The Public Key for your Braintree account."
415
  msgstr ""
416
 
417
- #: includes/class-wc-gateway-braintree.php:338
418
  msgid "Private Key"
419
  msgstr ""
420
 
421
- #: includes/class-wc-gateway-braintree.php:341
422
  msgid "The Private Key for your Braintree account."
423
  msgstr ""
424
 
425
- #: includes/class-wc-gateway-braintree.php:346
426
  msgid "Sandbox Merchant ID"
427
  msgstr ""
428
 
429
- #: includes/class-wc-gateway-braintree.php:349
430
  msgid "The Merchant ID for your Braintree sandbox account."
431
  msgstr ""
432
 
433
- #: includes/class-wc-gateway-braintree.php:353
434
  msgid "Sandbox Public Key"
435
  msgstr ""
436
 
437
- #: includes/class-wc-gateway-braintree.php:356
438
  msgid "The Public Key for your Braintree sandbox account."
439
  msgstr ""
440
 
441
- #: includes/class-wc-gateway-braintree.php:360
442
  msgid "Sandbox Private Key"
443
  msgstr ""
444
 
445
- #: includes/class-wc-gateway-braintree.php:363
446
  msgid "The Private Key for your Braintree sandbox account."
447
  msgstr ""
448
 
449
- #: includes/class-wc-gateway-braintree.php:368
450
  msgid "Merchant Account IDs"
451
  msgstr ""
452
 
453
- #: includes/class-wc-gateway-braintree.php:371
454
  msgid ""
455
  "Enter additional merchant account IDs if you do not want to use your "
456
  "Braintree account default. %1$sLearn more about merchant account IDs%2$s"
457
  msgstr ""
458
 
459
- #: includes/class-wc-gateway-braintree.php:380
460
  msgid "Dynamic Descriptors"
461
  msgstr ""
462
 
463
- #: includes/class-wc-gateway-braintree.php:383
464
  #. translators: Placeholders: %1$s - <p> tag, %2$s - </p> tag, %3$s - <a> tag,
465
  #. %4$s - </a> tag
466
  msgid ""
@@ -470,11 +470,11 @@ msgid ""
470
  "dynamic descriptors%4$s and are using an accepted format.%2$s"
471
  msgstr ""
472
 
473
- #: includes/class-wc-gateway-braintree.php:387
474
  msgid "Name"
475
  msgstr ""
476
 
477
- #: includes/class-wc-gateway-braintree.php:390
478
  msgid ""
479
  "The value in the business name field of a customer's statement. Company "
480
  "name/DBA section must be either 3, 7 or 12 characters and the product "
@@ -482,77 +482,77 @@ msgid ""
482
  "between for a total descriptor name of 22 characters)."
483
  msgstr ""
484
 
485
- #: includes/class-wc-gateway-braintree.php:395
486
  msgid "Phone"
487
  msgstr ""
488
 
489
- #: includes/class-wc-gateway-braintree.php:398
490
  msgid ""
491
  "The value in the phone number field of a customer's statement. Phone must "
492
  "be exactly 10 characters and can only contain numbers, dashes, parentheses "
493
  "and periods."
494
  msgstr ""
495
 
496
- #: includes/class-wc-gateway-braintree.php:403
497
  msgid "URL"
498
  msgstr ""
499
 
500
- #: includes/class-wc-gateway-braintree.php:406
501
  msgid ""
502
  "The value in the URL/web address field of a customer's statement. The URL "
503
  "must be 13 characters or less."
504
  msgstr ""
505
 
506
- #: includes/class-wc-gateway-braintree.php:439
507
  msgid "Enter connection credentials manually"
508
  msgstr ""
509
 
510
- #: includes/class-wc-gateway-braintree.php:463
511
  msgid "Disabled because the other gateway is not connected manually."
512
  msgstr ""
513
 
514
- #: includes/class-wc-gateway-braintree.php:482
515
  msgid ""
516
  "You just connected your Braintree account to WooCommerce. You can start "
517
  "taking payments now."
518
  msgstr ""
519
 
520
- #: includes/class-wc-gateway-braintree.php:483
521
  msgid ""
522
  "Once you have processed a payment, PayPal will review your application for "
523
  "final approval. Before you ship any goods make sure you have received a "
524
  "final approval for your Braintree account."
525
  msgstr ""
526
 
527
- #: includes/class-wc-gateway-braintree.php:484
528
  msgid "Questions? We are a phone call away: 1-855-489-0345."
529
  msgstr ""
530
 
531
- #: includes/class-wc-gateway-braintree.php:489
532
  msgid "Click button to create an account with Braintree and start transacting."
533
  msgstr ""
534
 
535
- #: includes/class-wc-gateway-braintree.php:604
536
  msgid "Add merchant account ID for %s"
537
  msgstr ""
538
 
539
- #: includes/class-wc-gateway-braintree.php:709
540
  msgid "Add merchant account ID for "
541
  msgstr ""
542
 
543
- #: includes/class-wc-gateway-braintree.php:807
544
  msgid "Merchant Account ID (%s)"
545
  msgstr ""
546
 
547
- #: includes/class-wc-gateway-braintree.php:818
548
  msgid "Enter merchant account ID"
549
  msgstr ""
550
 
551
- #: includes/class-wc-gateway-braintree.php:819
552
  msgid "Remove this merchant account ID"
553
  msgstr ""
554
 
555
- #: includes/class-wc-gateway-braintree.php:1333
556
  msgid "Production"
557
  msgstr ""
558
 
2
  # This file is distributed under the same license as the WooCommerce PayPal Powered by Braintree Gateway package.
3
  msgid ""
4
  msgstr ""
5
+ "Project-Id-Version: WooCommerce PayPal Powered by Braintree Gateway 2.2.6\n"
6
  "Report-Msgid-Bugs-To: "
7
  "https://woocommerce.com/my-account/marketplace-ticket-form/\n"
8
+ "POT-Creation-Date: 2019-08-07 20:38:10+00:00\n"
9
  "MIME-Version: 1.0\n"
10
  "Content-Type: text/plain; charset=utf-8\n"
11
  "Content-Transfer-Encoding: 8bit\n"
245
  msgid "Display and Require the Card Security Code (CVV/CID) field on checkout"
246
  msgstr ""
247
 
248
+ #: includes/class-wc-gateway-braintree-credit-card.php:930
249
  #: includes/payment-forms/class-wc-braintree-hosted-fields-payment-form.php:138
250
  msgid ""
251
  "We cannot process your order with the payment information that you "
252
  "provided. Please use an alternate payment method."
253
  msgstr ""
254
 
255
+ #: includes/class-wc-gateway-braintree-credit-card.php:938
256
+ #: includes/class-wc-gateway-braintree.php:157
257
  msgid ""
258
  "Oops, there was a temporary payment error. Please try another payment "
259
  "method or contact us to complete your transaction."
367
  msgstr ""
368
 
369
  #: includes/class-wc-gateway-braintree-paypal.php:498
370
+ #: includes/class-wc-gateway-braintree.php:1336
371
  msgid "Sandbox"
372
  msgstr ""
373
 
398
  "securely."
399
  msgstr ""
400
 
401
+ #: includes/class-wc-gateway-braintree.php:327
402
  msgid "Merchant ID"
403
  msgstr ""
404
 
405
+ #: includes/class-wc-gateway-braintree.php:330
406
  msgid "The Merchant ID for your Braintree account."
407
  msgstr ""
408
 
409
+ #: includes/class-wc-gateway-braintree.php:334
410
  msgid "Public Key"
411
  msgstr ""
412
 
413
+ #: includes/class-wc-gateway-braintree.php:337
414
  msgid "The Public Key for your Braintree account."
415
  msgstr ""
416
 
417
+ #: includes/class-wc-gateway-braintree.php:341
418
  msgid "Private Key"
419
  msgstr ""
420
 
421
+ #: includes/class-wc-gateway-braintree.php:344
422
  msgid "The Private Key for your Braintree account."
423
  msgstr ""
424
 
425
+ #: includes/class-wc-gateway-braintree.php:349
426
  msgid "Sandbox Merchant ID"
427
  msgstr ""
428
 
429
+ #: includes/class-wc-gateway-braintree.php:352
430
  msgid "The Merchant ID for your Braintree sandbox account."
431
  msgstr ""
432
 
433
+ #: includes/class-wc-gateway-braintree.php:356
434
  msgid "Sandbox Public Key"
435
  msgstr ""
436
 
437
+ #: includes/class-wc-gateway-braintree.php:359
438
  msgid "The Public Key for your Braintree sandbox account."
439
  msgstr ""
440
 
441
+ #: includes/class-wc-gateway-braintree.php:363
442
  msgid "Sandbox Private Key"
443
  msgstr ""
444
 
445
+ #: includes/class-wc-gateway-braintree.php:366
446
  msgid "The Private Key for your Braintree sandbox account."
447
  msgstr ""
448
 
449
+ #: includes/class-wc-gateway-braintree.php:371
450
  msgid "Merchant Account IDs"
451
  msgstr ""
452
 
453
+ #: includes/class-wc-gateway-braintree.php:374
454
  msgid ""
455
  "Enter additional merchant account IDs if you do not want to use your "
456
  "Braintree account default. %1$sLearn more about merchant account IDs%2$s"
457
  msgstr ""
458
 
459
+ #: includes/class-wc-gateway-braintree.php:383
460
  msgid "Dynamic Descriptors"
461
  msgstr ""
462
 
463
+ #: includes/class-wc-gateway-braintree.php:386
464
  #. translators: Placeholders: %1$s - <p> tag, %2$s - </p> tag, %3$s - <a> tag,
465
  #. %4$s - </a> tag
466
  msgid ""
470
  "dynamic descriptors%4$s and are using an accepted format.%2$s"
471
  msgstr ""
472
 
473
+ #: includes/class-wc-gateway-braintree.php:390
474
  msgid "Name"
475
  msgstr ""
476
 
477
+ #: includes/class-wc-gateway-braintree.php:393
478
  msgid ""
479
  "The value in the business name field of a customer's statement. Company "
480
  "name/DBA section must be either 3, 7 or 12 characters and the product "
482
  "between for a total descriptor name of 22 characters)."
483
  msgstr ""
484
 
485
+ #: includes/class-wc-gateway-braintree.php:398
486
  msgid "Phone"
487
  msgstr ""
488
 
489
+ #: includes/class-wc-gateway-braintree.php:401
490
  msgid ""
491
  "The value in the phone number field of a customer's statement. Phone must "
492
  "be exactly 10 characters and can only contain numbers, dashes, parentheses "
493
  "and periods."
494
  msgstr ""
495
 
496
+ #: includes/class-wc-gateway-braintree.php:406
497
  msgid "URL"
498
  msgstr ""
499
 
500
+ #: includes/class-wc-gateway-braintree.php:409
501
  msgid ""
502
  "The value in the URL/web address field of a customer's statement. The URL "
503
  "must be 13 characters or less."
504
  msgstr ""
505
 
506
+ #: includes/class-wc-gateway-braintree.php:442
507
  msgid "Enter connection credentials manually"
508
  msgstr ""
509
 
510
+ #: includes/class-wc-gateway-braintree.php:466
511
  msgid "Disabled because the other gateway is not connected manually."
512
  msgstr ""
513
 
514
+ #: includes/class-wc-gateway-braintree.php:485
515
  msgid ""
516
  "You just connected your Braintree account to WooCommerce. You can start "
517
  "taking payments now."
518
  msgstr ""
519
 
520
+ #: includes/class-wc-gateway-braintree.php:486
521
  msgid ""
522
  "Once you have processed a payment, PayPal will review your application for "
523
  "final approval. Before you ship any goods make sure you have received a "
524
  "final approval for your Braintree account."
525
  msgstr ""
526
 
527
+ #: includes/class-wc-gateway-braintree.php:487
528
  msgid "Questions? We are a phone call away: 1-855-489-0345."
529
  msgstr ""
530
 
531
+ #: includes/class-wc-gateway-braintree.php:492
532
  msgid "Click button to create an account with Braintree and start transacting."
533
  msgstr ""
534
 
535
+ #: includes/class-wc-gateway-braintree.php:607
536
  msgid "Add merchant account ID for %s"
537
  msgstr ""
538
 
539
+ #: includes/class-wc-gateway-braintree.php:712
540
  msgid "Add merchant account ID for "
541
  msgstr ""
542
 
543
+ #: includes/class-wc-gateway-braintree.php:810
544
  msgid "Merchant Account ID (%s)"
545
  msgstr ""
546
 
547
+ #: includes/class-wc-gateway-braintree.php:821
548
  msgid "Enter merchant account ID"
549
  msgstr ""
550
 
551
+ #: includes/class-wc-gateway-braintree.php:822
552
  msgid "Remove this merchant account ID"
553
  msgstr ""
554
 
555
+ #: includes/class-wc-gateway-braintree.php:1336
556
  msgid "Production"
557
  msgstr ""
558
 
includes/api/requests/class-wc-braintree-api-transaction-request.php CHANGED
@@ -298,8 +298,8 @@ class WC_Braintree_API_Transaction_Request extends WC_Braintree_API_Request {
298
  }
299
 
300
  // add recurring flag to transactions that are subscription renewals
301
- if ( ! empty( $this->get_order()->payment->recurring ) ) {
302
- $this->request_data['transactionSource'] = 'recurring';
303
  }
304
  }
305
 
298
  }
299
 
300
  // add recurring flag to transactions that are subscription renewals
301
+ if ( ! empty( $this->get_order()->payment->subscription ) ) {
302
+ $this->request_data['transactionSource'] = $this->get_order()->payment->subscription->is_renewal ? 'recurring' : 'recurring_first';
303
  }
304
  }
305
 
includes/class-wc-gateway-braintree-credit-card.php CHANGED
@@ -920,6 +920,10 @@ class WC_Gateway_Braintree_Credit_Card extends WC_Gateway_Braintree {
920
  'authenticate_unable_to_authenticate',
921
  'authenticate_error',
922
  ] );
 
 
 
 
923
  }
924
 
925
  if ( in_array( $payment_method->get_3d_secure_status(), $decline_statuses, true ) ) {
920
  'authenticate_unable_to_authenticate',
921
  'authenticate_error',
922
  ] );
923
+
924
+ if ( $payment_method->get_3d_secure_liability_shift_possible() && ! $payment_method->get_3d_secure_liability_shifted() ) {
925
+ $decline_statuses[] = 'lookup_enrolled';
926
+ }
927
  }
928
 
929
  if ( in_array( $payment_method->get_3d_secure_status(), $decline_statuses, true ) ) {
includes/class-wc-gateway-braintree.php CHANGED
@@ -104,6 +104,8 @@ class WC_Gateway_Braintree extends WC_Braintree_Framework\SV_WC_Payment_Gateway_
104
 
105
  if ( $this->is_available() ) {
106
 
 
 
107
  // braintree.js library
108
  wp_enqueue_script( 'braintree-js-client', 'https://js.braintreegateway.com/web/' . WC_Braintree::BRAINTREE_JS_SDK_VERSION . '/js/client.min.js', array(), WC_Braintree::VERSION, true );
109
 
@@ -218,14 +220,15 @@ class WC_Gateway_Braintree extends WC_Braintree_Framework\SV_WC_Payment_Gateway_
218
  $order->payment->dynamic_descriptors->url = WC_Braintree_Framework\SV_WC_Helper::str_truncate( $this->get_url_dynamic_descriptor(), 13, '' );
219
 
220
  // add the recurring flag to Subscriptions renewal orders
221
- if ( $this->get_plugin()->is_subscriptions_active() ) {
222
 
223
- $order_id = WC_Braintree_Framework\SV_WC_Order_Compatibility::get_prop( $order, 'id' );
 
224
 
225
- $is_renewal = WC_Braintree_Framework\SV_WC_Plugin_Compatibility::is_wc_subscriptions_version_gte_2_0() ? wcs_order_contains_renewal( $order_id ) : \WC_Subscriptions_Order::order_contains_subscription( $order_id );
226
 
227
- if ( $is_renewal ) {
228
- $order->payment->recurring = true;
229
  }
230
  }
231
 
104
 
105
  if ( $this->is_available() ) {
106
 
107
+ wp_enqueue_script( 'braintree-js-latinise', $this->get_plugin()->get_plugin_url() . '/assets/js/frontend/latinise.min.js' );
108
+
109
  // braintree.js library
110
  wp_enqueue_script( 'braintree-js-client', 'https://js.braintreegateway.com/web/' . WC_Braintree::BRAINTREE_JS_SDK_VERSION . '/js/client.min.js', array(), WC_Braintree::VERSION, true );
111
 
220
  $order->payment->dynamic_descriptors->url = WC_Braintree_Framework\SV_WC_Helper::str_truncate( $this->get_url_dynamic_descriptor(), 13, '' );
221
 
222
  // add the recurring flag to Subscriptions renewal orders
223
+ if ( $this->get_plugin()->is_subscriptions_active() && wcs_order_contains_subscription( $order, 'any' ) ) {
224
 
225
+ $order->payment->subscription = new \stdClass();
226
+ $order->payment->subscription->is_renewal = false;
227
 
228
+ if ( wcs_order_contains_renewal( $order ) ) {
229
 
230
+ $order->payment->recurring = true;
231
+ $order->payment->subscription->is_renewal = true;
232
  }
233
  }
234
 
includes/payment-forms/class-wc-braintree-hosted-fields-payment-form.php CHANGED
@@ -224,6 +224,10 @@ class WC_Braintree_Hosted_Fields_Payment_Form extends WC_Braintree_Payment_Form
224
 
225
  echo '<input type="hidden" name="wc-' . $this->get_gateway()->get_id_dasherized() . '-3d-secure-order-total" value="' . esc_attr( WC_Braintree_Framework\SV_WC_Helper::number_format( $order_total ) ) . '" />';
226
 
 
 
 
 
227
  parent::render_payment_fields();
228
  }
229
 
224
 
225
  echo '<input type="hidden" name="wc-' . $this->get_gateway()->get_id_dasherized() . '-3d-secure-order-total" value="' . esc_attr( WC_Braintree_Framework\SV_WC_Helper::number_format( $order_total ) ) . '" />';
226
 
227
+ if ( wc_braintree()->is_subscriptions_active() && \WC_Subscriptions_Cart::cart_contains_subscription() ) {
228
+ echo '<input type="hidden" name="wc-' . $this->get_gateway()->get_id_dasherized() . '-cart-contains-subscription" value="1" />';
229
+ }
230
+
231
  parent::render_payment_fields();
232
  }
233
 
readme.txt CHANGED
@@ -2,9 +2,9 @@
2
  Contributors: automattic, akeda, allendav, royho, slash1andy, woosteve, spraveenitpro, mikedmoore, fernashes, shellbeezy, danieldudzic, dsmithweb, fullysupportedphil, corsonr, zandyring, skyverge
3
  Tags: ecommerce, e-commerce, commerce, woothemes, wordpress ecommerce, store, sales, sell, shop, shopping, cart, checkout, configurable, paypal, braintree
4
  Requires at least: 4.4
5
- Tested up to: 5.2.1
6
  Requires PHP: 5.4
7
- Stable tag: 2.2.5
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
@@ -124,6 +124,10 @@ New feature requests and bugs reports can be made in the plugin forum.
124
 
125
  == Changelog ==
126
 
 
 
 
 
127
  = 2019.06.06 - version 2.2.5 =
128
  * Fix - Regenerate client tokens on checkout refresh to use the customer's latest currency
129
  * Fix - Ensure saved PayPal accounts display their associated email address if no nickname is set
2
  Contributors: automattic, akeda, allendav, royho, slash1andy, woosteve, spraveenitpro, mikedmoore, fernashes, shellbeezy, danieldudzic, dsmithweb, fullysupportedphil, corsonr, zandyring, skyverge
3
  Tags: ecommerce, e-commerce, commerce, woothemes, wordpress ecommerce, store, sales, sell, shop, shopping, cart, checkout, configurable, paypal, braintree
4
  Requires at least: 4.4
5
+ Tested up to: 5.2.2
6
  Requires PHP: 5.4
7
+ Stable tag: 2.2.6
8
  License: GPLv3
9
  License URI: http://www.gnu.org/licenses/gpl-3.0.html
10
 
124
 
125
  == Changelog ==
126
 
127
+ = 2019.08.07 - version 2.2.6 =
128
+ * Tweak - Add support for 3D Secure 2.0
129
+ * Misc - Add support for WooCommerce 3.7
130
+
131
  = 2019.06.06 - version 2.2.5 =
132
  * Fix - Regenerate client tokens on checkout refresh to use the customer's latest currency
133
  * Fix - Ensure saved PayPal accounts display their associated email address if no nickname is set
woocommerce-gateway-paypal-powered-by-braintree.php CHANGED
@@ -5,12 +5,12 @@
5
  * Description: Receive credit card or PayPal payments using Paypal Powered by Braintree. A server with cURL, SSL support, and a valid SSL certificate is required (for security reasons) for this gateway to function. Requires PHP 5.4+
6
  * Author: WooCommerce
7
  * Author URI: http://woocommerce.com/
8
- * Version: 2.2.5
9
  * Text Domain: woocommerce-gateway-paypal-powered-by-braintree
10
  * Domain Path: /i18n/languages/
11
  *
12
  * WC requires at least: 2.6.14
13
- * WC tested up to: 3.6.4
14
  *
15
  * Copyright (c) 2016-2019, Automattic, Inc.
16
  *
5
  * Description: Receive credit card or PayPal payments using Paypal Powered by Braintree. A server with cURL, SSL support, and a valid SSL certificate is required (for security reasons) for this gateway to function. Requires PHP 5.4+
6
  * Author: WooCommerce
7
  * Author URI: http://woocommerce.com/
8
+ * Version: 2.2.6
9
  * Text Domain: woocommerce-gateway-paypal-powered-by-braintree
10
  * Domain Path: /i18n/languages/
11
  *
12
  * WC requires at least: 2.6.14
13
+ * WC tested up to: 3.7.0
14
  *
15
  * Copyright (c) 2016-2019, Automattic, Inc.
16
  *