@dintero/checkout-web-sdk 0.0.16 → 0.3.1

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.
Files changed (33) hide show
  1. package/.github/dependabot.yml +10 -0
  2. package/.github/workflows/{blank.yml → build.yml} +6 -5
  3. package/.github/workflows/release.yml +33 -0
  4. package/.releaserc.json +11 -0
  5. package/CHANGELOG.md +7 -0
  6. package/README.md +85 -17
  7. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/base.css +0 -0
  8. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/block-navigation.js +0 -0
  9. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/checkout.ts.html +75 -6
  10. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/createIframeAsync.ts.html +15 -15
  11. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/favicon.png +0 -0
  12. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/index.html +40 -40
  13. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7)/html/checkout-web-sdk.ts.html → Chrome Headless 99.0.4844.0 (Linux x86_64)/html/index.ts.html } +227 -32
  14. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/prettify.css +0 -0
  15. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/prettify.js +0 -0
  16. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/sort-arrow-sprite.png +0 -0
  17. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/sorter.js +0 -0
  18. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/subscribe.ts.html +92 -26
  19. package/coverage/{Chrome Headless 80.0.3987.0 (Mac OS 10.15.7) → Chrome Headless 99.0.4844.0 (Linux x86_64)}/html/url.ts.html +23 -17
  20. package/dist/declarations/src/checkout.d.ts +75 -57
  21. package/dist/declarations/src/createIframeAsync.d.ts +10 -10
  22. package/dist/declarations/src/index.d.ts +43 -39
  23. package/dist/declarations/src/subscribe.d.ts +41 -33
  24. package/dist/declarations/src/url.d.ts +16 -15
  25. package/dist/dintero-checkout-web-sdk.cjs.dev.js +84 -16
  26. package/dist/dintero-checkout-web-sdk.cjs.prod.js +84 -16
  27. package/dist/dintero-checkout-web-sdk.esm.js +84 -16
  28. package/dist/dintero-checkout-web-sdk.umd.min.js +1 -1
  29. package/dist/dintero-checkout-web-sdk.umd.min.js.map +1 -1
  30. package/package.json +49 -46
  31. package/coverage/Chrome Headless 80.0.3987.0 (Mac OS 10.15.7)/html/dintero-checkout-web-sdk.ts.html +0 -908
  32. package/coverage/Chrome Headless 80.0.3987.0 (Mac OS 10.15.7)/html/index.ts.html +0 -908
  33. package/dist/declarations/package.d.ts +0 -49
@@ -3,7 +3,7 @@
3
3
  <html lang="en">
4
4
 
5
5
  <head>
6
- <title>Code coverage report for checkout-web-sdk.ts</title>
6
+ <title>Code coverage report for index.ts</title>
7
7
  <meta charset="utf-8" />
8
8
  <link rel="stylesheet" href="prettify.css" />
9
9
  <link rel="stylesheet" href="base.css" />
@@ -19,34 +19,34 @@
19
19
  <body>
20
20
  <div class='wrapper'>
21
21
  <div class='pad1'>
22
- <h1><a href="index.html">All files</a> checkout-web-sdk.ts</h1>
22
+ <h1><a href="index.html">All files</a> index.ts</h1>
23
23
  <div class='clearfix'>
24
24
 
25
25
  <div class='fl pad1y space-right2'>
26
- <span class="strong">96.83% </span>
26
+ <span class="strong">94.44% </span>
27
27
  <span class="quiet">Statements</span>
28
- <span class='fraction'>61/63</span>
28
+ <span class='fraction'>68/72</span>
29
29
  </div>
30
30
 
31
31
 
32
32
  <div class='fl pad1y space-right2'>
33
- <span class="strong">82.35% </span>
33
+ <span class="strong">81.58% </span>
34
34
  <span class="quiet">Branches</span>
35
- <span class='fraction'>28/34</span>
35
+ <span class='fraction'>31/38</span>
36
36
  </div>
37
37
 
38
38
 
39
39
  <div class='fl pad1y space-right2'>
40
- <span class="strong">87.5% </span>
40
+ <span class="strong">80% </span>
41
41
  <span class="quiet">Functions</span>
42
- <span class='fraction'>14/16</span>
42
+ <span class='fraction'>16/20</span>
43
43
  </div>
44
44
 
45
45
 
46
46
  <div class='fl pad1y space-right2'>
47
- <span class="strong">96.23% </span>
47
+ <span class="strong">93.65% </span>
48
48
  <span class="quiet">Lines</span>
49
- <span class='fraction'>51/53</span>
49
+ <span class='fraction'>59/63</span>
50
50
  </div>
51
51
 
52
52
 
@@ -343,7 +343,72 @@
343
343
  <a name='L284'></a><a href='#L284'>284</a>
344
344
  <a name='L285'></a><a href='#L285'>285</a>
345
345
  <a name='L286'></a><a href='#L286'>286</a>
346
- <a name='L287'></a><a href='#L287'>287</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
346
+ <a name='L287'></a><a href='#L287'>287</a>
347
+ <a name='L288'></a><a href='#L288'>288</a>
348
+ <a name='L289'></a><a href='#L289'>289</a>
349
+ <a name='L290'></a><a href='#L290'>290</a>
350
+ <a name='L291'></a><a href='#L291'>291</a>
351
+ <a name='L292'></a><a href='#L292'>292</a>
352
+ <a name='L293'></a><a href='#L293'>293</a>
353
+ <a name='L294'></a><a href='#L294'>294</a>
354
+ <a name='L295'></a><a href='#L295'>295</a>
355
+ <a name='L296'></a><a href='#L296'>296</a>
356
+ <a name='L297'></a><a href='#L297'>297</a>
357
+ <a name='L298'></a><a href='#L298'>298</a>
358
+ <a name='L299'></a><a href='#L299'>299</a>
359
+ <a name='L300'></a><a href='#L300'>300</a>
360
+ <a name='L301'></a><a href='#L301'>301</a>
361
+ <a name='L302'></a><a href='#L302'>302</a>
362
+ <a name='L303'></a><a href='#L303'>303</a>
363
+ <a name='L304'></a><a href='#L304'>304</a>
364
+ <a name='L305'></a><a href='#L305'>305</a>
365
+ <a name='L306'></a><a href='#L306'>306</a>
366
+ <a name='L307'></a><a href='#L307'>307</a>
367
+ <a name='L308'></a><a href='#L308'>308</a>
368
+ <a name='L309'></a><a href='#L309'>309</a>
369
+ <a name='L310'></a><a href='#L310'>310</a>
370
+ <a name='L311'></a><a href='#L311'>311</a>
371
+ <a name='L312'></a><a href='#L312'>312</a>
372
+ <a name='L313'></a><a href='#L313'>313</a>
373
+ <a name='L314'></a><a href='#L314'>314</a>
374
+ <a name='L315'></a><a href='#L315'>315</a>
375
+ <a name='L316'></a><a href='#L316'>316</a>
376
+ <a name='L317'></a><a href='#L317'>317</a>
377
+ <a name='L318'></a><a href='#L318'>318</a>
378
+ <a name='L319'></a><a href='#L319'>319</a>
379
+ <a name='L320'></a><a href='#L320'>320</a>
380
+ <a name='L321'></a><a href='#L321'>321</a>
381
+ <a name='L322'></a><a href='#L322'>322</a>
382
+ <a name='L323'></a><a href='#L323'>323</a>
383
+ <a name='L324'></a><a href='#L324'>324</a>
384
+ <a name='L325'></a><a href='#L325'>325</a>
385
+ <a name='L326'></a><a href='#L326'>326</a>
386
+ <a name='L327'></a><a href='#L327'>327</a>
387
+ <a name='L328'></a><a href='#L328'>328</a>
388
+ <a name='L329'></a><a href='#L329'>329</a>
389
+ <a name='L330'></a><a href='#L330'>330</a>
390
+ <a name='L331'></a><a href='#L331'>331</a>
391
+ <a name='L332'></a><a href='#L332'>332</a>
392
+ <a name='L333'></a><a href='#L333'>333</a>
393
+ <a name='L334'></a><a href='#L334'>334</a>
394
+ <a name='L335'></a><a href='#L335'>335</a>
395
+ <a name='L336'></a><a href='#L336'>336</a>
396
+ <a name='L337'></a><a href='#L337'>337</a>
397
+ <a name='L338'></a><a href='#L338'>338</a>
398
+ <a name='L339'></a><a href='#L339'>339</a>
399
+ <a name='L340'></a><a href='#L340'>340</a>
400
+ <a name='L341'></a><a href='#L341'>341</a>
401
+ <a name='L342'></a><a href='#L342'>342</a>
402
+ <a name='L343'></a><a href='#L343'>343</a>
403
+ <a name='L344'></a><a href='#L344'>344</a>
404
+ <a name='L345'></a><a href='#L345'>345</a>
405
+ <a name='L346'></a><a href='#L346'>346</a>
406
+ <a name='L347'></a><a href='#L347'>347</a>
407
+ <a name='L348'></a><a href='#L348'>348</a>
408
+ <a name='L349'></a><a href='#L349'>349</a>
409
+ <a name='L350'></a><a href='#L350'>350</a>
410
+ <a name='L351'></a><a href='#L351'>351</a>
411
+ <a name='L352'></a><a href='#L352'>352</a></td><td class="line-coverage quiet"><span class="cline-any cline-yes">1x</span>
347
412
  <span class="cline-any cline-neutral">&nbsp;</span>
348
413
  <span class="cline-any cline-yes">1x</span>
349
414
  <span class="cline-any cline-yes">1x</span>
@@ -359,6 +424,9 @@
359
424
  <span class="cline-any cline-neutral">&nbsp;</span>
360
425
  <span class="cline-any cline-neutral">&nbsp;</span>
361
426
  <span class="cline-any cline-neutral">&nbsp;</span>
427
+ <span class="cline-any cline-neutral">&nbsp;</span>
428
+ <span class="cline-any cline-neutral">&nbsp;</span>
429
+ <span class="cline-any cline-neutral">&nbsp;</span>
362
430
  <span class="cline-any cline-yes">1x</span>
363
431
  <span class="cline-any cline-yes">1x</span>
364
432
  <span class="cline-any cline-yes">1x</span>
@@ -428,6 +496,20 @@
428
496
  <span class="cline-any cline-neutral">&nbsp;</span>
429
497
  <span class="cline-any cline-neutral">&nbsp;</span>
430
498
  <span class="cline-any cline-neutral">&nbsp;</span>
499
+ <span class="cline-any cline-neutral">&nbsp;</span>
500
+ <span class="cline-any cline-neutral">&nbsp;</span>
501
+ <span class="cline-any cline-neutral">&nbsp;</span>
502
+ <span class="cline-any cline-neutral">&nbsp;</span>
503
+ <span class="cline-any cline-neutral">&nbsp;</span>
504
+ <span class="cline-any cline-neutral">&nbsp;</span>
505
+ <span class="cline-any cline-neutral">&nbsp;</span>
506
+ <span class="cline-any cline-neutral">&nbsp;</span>
507
+ <span class="cline-any cline-neutral">&nbsp;</span>
508
+ <span class="cline-any cline-neutral">&nbsp;</span>
509
+ <span class="cline-any cline-neutral">&nbsp;</span>
510
+ <span class="cline-any cline-neutral">&nbsp;</span>
511
+ <span class="cline-any cline-neutral">&nbsp;</span>
512
+ <span class="cline-any cline-neutral">&nbsp;</span>
431
513
  <span class="cline-any cline-yes">1x</span>
432
514
  <span class="cline-any cline-yes">3x</span>
433
515
  <span class="cline-any cline-yes">3x</span>
@@ -485,10 +567,14 @@
485
567
  <span class="cline-any cline-neutral">&nbsp;</span>
486
568
  <span class="cline-any cline-neutral">&nbsp;</span>
487
569
  <span class="cline-any cline-yes">1x</span>
488
- <span class="cline-any cline-yes">23x</span>
570
+ <span class="cline-any cline-yes">26x</span>
571
+ <span class="cline-any cline-neutral">&nbsp;</span>
572
+ <span class="cline-any cline-neutral">&nbsp;</span>
573
+ <span class="cline-any cline-yes">26x</span>
574
+ <span class="cline-any cline-neutral">&nbsp;</span>
575
+ <span class="cline-any cline-neutral">&nbsp;</span>
489
576
  <span class="cline-any cline-neutral">&nbsp;</span>
490
577
  <span class="cline-any cline-neutral">&nbsp;</span>
491
- <span class="cline-any cline-yes">23x</span>
492
578
  <span class="cline-any cline-neutral">&nbsp;</span>
493
579
  <span class="cline-any cline-neutral">&nbsp;</span>
494
580
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -499,12 +585,12 @@
499
585
  <span class="cline-any cline-neutral">&nbsp;</span>
500
586
  <span class="cline-any cline-neutral">&nbsp;</span>
501
587
  <span class="cline-any cline-neutral">&nbsp;</span>
588
+ <span class="cline-any cline-yes">26x</span>
502
589
  <span class="cline-any cline-neutral">&nbsp;</span>
503
590
  <span class="cline-any cline-neutral">&nbsp;</span>
504
- <span class="cline-any cline-yes">23x</span>
591
+ <span class="cline-any cline-yes">26x</span>
505
592
  <span class="cline-any cline-neutral">&nbsp;</span>
506
593
  <span class="cline-any cline-neutral">&nbsp;</span>
507
- <span class="cline-any cline-yes">23x</span>
508
594
  <span class="cline-any cline-neutral">&nbsp;</span>
509
595
  <span class="cline-any cline-neutral">&nbsp;</span>
510
596
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -513,34 +599,69 @@
513
599
  <span class="cline-any cline-neutral">&nbsp;</span>
514
600
  <span class="cline-any cline-neutral">&nbsp;</span>
515
601
  <span class="cline-any cline-neutral">&nbsp;</span>
516
- <span class="cline-any cline-yes">23x</span>
602
+ <span class="cline-any cline-neutral">&nbsp;</span>
603
+ <span class="cline-any cline-neutral">&nbsp;</span>
604
+ <span class="cline-any cline-neutral">&nbsp;</span>
605
+ <span class="cline-any cline-neutral">&nbsp;</span>
606
+ <span class="cline-any cline-yes">26x</span>
517
607
  <span class="cline-any cline-yes">3x</span>
518
- <span class="cline-any cline-yes">18x</span>
608
+ <span class="cline-any cline-yes">24x</span>
519
609
  <span class="cline-any cline-yes">3x</span>
520
610
  <span class="cline-any cline-yes">2x</span>
521
611
  <span class="cline-any cline-neutral">&nbsp;</span>
522
612
  <span class="cline-any cline-neutral">&nbsp;</span>
523
613
  <span class="cline-any cline-neutral">&nbsp;</span>
524
614
  <span class="cline-any cline-neutral">&nbsp;</span>
525
- <span class="cline-any cline-yes">23x</span>
615
+ <span class="cline-any cline-yes">26x</span>
616
+ <span class="cline-any cline-no">&nbsp;</span>
617
+ <span class="cline-any cline-neutral">&nbsp;</span>
618
+ <span class="cline-any cline-neutral">&nbsp;</span>
619
+ <span class="cline-any cline-yes">26x</span>
620
+ <span class="cline-any cline-no">&nbsp;</span>
621
+ <span class="cline-any cline-neutral">&nbsp;</span>
622
+ <span class="cline-any cline-neutral">&nbsp;</span>
623
+ <span class="cline-any cline-yes">26x</span>
526
624
  <span class="cline-any cline-no">&nbsp;</span>
527
625
  <span class="cline-any cline-neutral">&nbsp;</span>
528
626
  <span class="cline-any cline-neutral">&nbsp;</span>
529
- <span class="cline-any cline-yes">23x</span>
627
+ <span class="cline-any cline-yes">26x</span>
530
628
  <span class="cline-any cline-no">&nbsp;</span>
531
629
  <span class="cline-any cline-neutral">&nbsp;</span>
532
630
  <span class="cline-any cline-neutral">&nbsp;</span>
631
+ <span class="cline-any cline-yes">26x</span>
632
+ <span class="cline-any cline-neutral">&nbsp;</span>
633
+ <span class="cline-any cline-neutral">&nbsp;</span>
634
+ <span class="cline-any cline-neutral">&nbsp;</span>
635
+ <span class="cline-any cline-yes">2x</span>
636
+ <span class="cline-any cline-yes">1x</span>
637
+ <span class="cline-any cline-neutral">&nbsp;</span>
638
+ <span class="cline-any cline-neutral">&nbsp;</span>
639
+ <span class="cline-any cline-neutral">&nbsp;</span>
640
+ <span class="cline-any cline-yes">26x</span>
641
+ <span class="cline-any cline-neutral">&nbsp;</span>
642
+ <span class="cline-any cline-neutral">&nbsp;</span>
643
+ <span class="cline-any cline-neutral">&nbsp;</span>
644
+ <span class="cline-any cline-yes">1x</span>
645
+ <span class="cline-any cline-yes">1x</span>
646
+ <span class="cline-any cline-neutral">&nbsp;</span>
647
+ <span class="cline-any cline-neutral">&nbsp;</span>
648
+ <span class="cline-any cline-neutral">&nbsp;</span>
649
+ <span class="cline-any cline-neutral">&nbsp;</span>
650
+ <span class="cline-any cline-yes">26x</span>
651
+ <span class="cline-any cline-neutral">&nbsp;</span>
652
+ <span class="cline-any cline-neutral">&nbsp;</span>
653
+ <span class="cline-any cline-neutral">&nbsp;</span>
654
+ <span class="cline-any cline-neutral">&nbsp;</span>
533
655
  <span class="cline-any cline-neutral">&nbsp;</span>
534
- <span class="cline-any cline-yes">23x</span>
535
656
  <span class="cline-any cline-neutral">&nbsp;</span>
536
657
  <span class="cline-any cline-neutral">&nbsp;</span>
537
658
  <span class="cline-any cline-neutral">&nbsp;</span>
538
659
  <span class="cline-any cline-neutral">&nbsp;</span>
539
660
  <span class="cline-any cline-neutral">&nbsp;</span>
661
+ <span class="cline-any cline-yes">26x</span>
540
662
  <span class="cline-any cline-neutral">&nbsp;</span>
541
663
  <span class="cline-any cline-neutral">&nbsp;</span>
542
664
  <span class="cline-any cline-neutral">&nbsp;</span>
543
- <span class="cline-any cline-yes">23x</span>
544
665
  <span class="cline-any cline-neutral">&nbsp;</span>
545
666
  <span class="cline-any cline-neutral">&nbsp;</span>
546
667
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -597,9 +718,6 @@
597
718
  <span class="cline-any cline-neutral">&nbsp;</span>
598
719
  <span class="cline-any cline-neutral">&nbsp;</span>
599
720
  <span class="cline-any cline-neutral">&nbsp;</span>
600
- <span class="cline-any cline-yes">230x</span>
601
- <span class="cline-any cline-yes">230x</span>
602
- <span class="cline-any cline-yes">148x</span>
603
721
  <span class="cline-any cline-neutral">&nbsp;</span>
604
722
  <span class="cline-any cline-neutral">&nbsp;</span>
605
723
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -609,12 +727,24 @@
609
727
  <span class="cline-any cline-neutral">&nbsp;</span>
610
728
  <span class="cline-any cline-neutral">&nbsp;</span>
611
729
  <span class="cline-any cline-neutral">&nbsp;</span>
730
+ <span class="cline-any cline-yes">338x</span>
731
+ <span class="cline-any cline-yes">338x</span>
732
+ <span class="cline-any cline-yes">219x</span>
612
733
  <span class="cline-any cline-neutral">&nbsp;</span>
613
734
  <span class="cline-any cline-neutral">&nbsp;</span>
614
735
  <span class="cline-any cline-neutral">&nbsp;</span>
615
- <span class="cline-any cline-yes">46x</span>
616
736
  <span class="cline-any cline-neutral">&nbsp;</span>
617
- <span class="cline-any cline-yes">23x</span>
737
+ <span class="cline-any cline-neutral">&nbsp;</span>
738
+ <span class="cline-any cline-neutral">&nbsp;</span>
739
+ <span class="cline-any cline-neutral">&nbsp;</span>
740
+ <span class="cline-any cline-neutral">&nbsp;</span>
741
+ <span class="cline-any cline-neutral">&nbsp;</span>
742
+ <span class="cline-any cline-neutral">&nbsp;</span>
743
+ <span class="cline-any cline-neutral">&nbsp;</span>
744
+ <span class="cline-any cline-neutral">&nbsp;</span>
745
+ <span class="cline-any cline-yes">52x</span>
746
+ <span class="cline-any cline-neutral">&nbsp;</span>
747
+ <span class="cline-any cline-yes">26x</span>
618
748
  <span class="cline-any cline-neutral">&nbsp;</span>
619
749
  <span class="cline-any cline-neutral">&nbsp;</span>
620
750
  <span class="cline-any cline-neutral">&nbsp;</span>
@@ -644,6 +774,9 @@ import {
644
774
  SessionPaymentError,
645
775
  SessionLocked,
646
776
  SessionLockFailed,
777
+ ActivePaymentProductType,
778
+ ValidateSession,
779
+ SessionValidationCallback,
647
780
  } from "./checkout";
648
781
  import { getSessionUrl, windowLocationAssign } from "./url";
649
782
  import { createIframeAsync } from "./createIframeAsync";
@@ -653,6 +786,8 @@ import {
653
786
  Subscription,
654
787
  postSessionLock,
655
788
  postSessionRefresh,
789
+ postActivePaymentProductType,
790
+ postValidationResult,
656
791
  } from "./subscribe";
657
792
  &nbsp;
658
793
  export interface DinteroCheckoutInstance {
@@ -664,6 +799,8 @@ export interface DinteroCheckoutInstance {
664
799
  language: string;
665
800
  lockSession: () =&gt; void;
666
801
  refreshSession: () =&gt; void;
802
+ setActivePaymentProductType: (paymentProductType: string) =&gt; void;
803
+ submitValidationResult: (result: SessionValidationCallback) =&gt; void;
667
804
  }
668
805
  &nbsp;
669
806
  export interface DinteroCheckoutOptions {
@@ -703,12 +840,22 @@ export interface DinteroEmbedCheckoutOptions extends DinteroCheckoutOptions {
703
840
  ) =&gt; void;
704
841
  onSessionLocked?: (
705
842
  event: SessionLocked,
706
- checkout: DinteroCheckoutInstance
843
+ checkout: DinteroCheckoutInstance,
844
+ callback: () =&gt; void,
707
845
  ) =&gt; void;
708
846
  onSessionLockFailed?: (
709
847
  event: SessionLockFailed,
710
848
  checkout: DinteroCheckoutInstance
711
849
  ) =&gt; void;
850
+ onActivePaymentType?: (
851
+ event: ActivePaymentProductType,
852
+ checkout: DinteroCheckoutInstance
853
+ ) =&gt; void;
854
+ onValidateSession?: (
855
+ event: ValidateSession,
856
+ checkout: DinteroCheckoutInstance,
857
+ callback: (result: SessionValidationCallback) =&gt; void,
858
+ ) =&gt; void;
712
859
  }
713
860
  &nbsp;
714
861
  /**
@@ -786,14 +933,22 @@ export const embed = async (
786
933
  onSessionNotFound,
787
934
  onSessionLocked,
788
935
  onSessionLockFailed,
936
+ onActivePaymentType,
937
+ onValidateSession,
789
938
  } = options;
790
939
  const subscriptions: Subscription[] = [];
791
940
  &nbsp;
792
941
  // Create iframe
793
- const { iframe, initiate } = await createIframeAsync(
942
+ const { iframe, initiate } = createIframeAsync(
794
943
  container,
795
944
  endpoint,
796
- getSessionUrl({ sid, endpoint, language, ui: "inline" })
945
+ getSessionUrl({
946
+ sid,
947
+ endpoint,
948
+ language,
949
+ ui: "inline",
950
+ shouldCallValidateSession: onValidateSession !== undefined
951
+ }),
797
952
  );
798
953
  &nbsp;
799
954
  /**
@@ -815,6 +970,32 @@ export const embed = async (
815
970
  const refreshSession = <span class="fstat-no" title="function not covered" >() =&gt; {</span>
816
971
  <span class="cstat-no" title="statement not covered" > postSessionRefresh(iframe, sid);</span>
817
972
  };
973
+ &nbsp;
974
+ const setActivePaymentProductType = <span class="fstat-no" title="function not covered" >(p</span>aymentProductType?:string) =&gt; {
975
+ <span class="cstat-no" title="statement not covered" > postActivePaymentProductType(iframe, sid, paymentProductType);</span>
976
+ };
977
+ &nbsp;
978
+ const submitValidationResult = <span class="fstat-no" title="function not covered" >(r</span>esult: SessionValidationCallback) =&gt; {
979
+ <span class="cstat-no" title="statement not covered" > postValidationResult(iframe, sid, result);</span>
980
+ }
981
+ &nbsp;
982
+ const wrappedOnValidateSession = (
983
+ event: ValidateSession,
984
+ checkout: DinteroCheckoutInstance,
985
+ ) =&gt; {
986
+ if (onValidateSession) {
987
+ onValidateSession(event, checkout, submitValidationResult);
988
+ }
989
+ }
990
+ &nbsp;
991
+ const wrappedOnSessionLocked = (
992
+ event: SessionLocked,
993
+ checkout: DinteroCheckoutInstance,
994
+ ) =&gt; {
995
+ <span class="missing-if-branch" title="else path not taken" >E</span>if (onSessionLocked) {
996
+ onSessionLocked(event, checkout, refreshSession);
997
+ }
998
+ }
818
999
  &nbsp;
819
1000
  // Create checkout object that wraps the destroy function.
820
1001
  const checkout: DinteroCheckoutInstance = {
@@ -823,6 +1004,8 @@ export const embed = async (
823
1004
  language,
824
1005
  lockSession,
825
1006
  refreshSession,
1007
+ setActivePaymentProductType,
1008
+ submitValidationResult,
826
1009
  };
827
1010
  &nbsp;
828
1011
  // Add event handlers (or in some cases add a fallback href handler).
@@ -876,13 +1059,25 @@ export const embed = async (
876
1059
  eventTypes: [CheckoutEvents.SessionNotFound],
877
1060
  },
878
1061
  {
879
- handler: onSessionLocked as SubscriptionHandler | undefined,
1062
+ handler: wrappedOnSessionLocked as SubscriptionHandler | undefined,
880
1063
  eventTypes: [CheckoutEvents.SessionLocked],
881
1064
  },
882
1065
  {
883
1066
  handler: onSessionLockFailed as SubscriptionHandler | undefined,
884
1067
  eventTypes: [CheckoutEvents.SessionLockFailed],
885
1068
  },
1069
+ {
1070
+ handler: onActivePaymentType as SubscriptionHandler | undefined,
1071
+ eventTypes: [CheckoutEvents.ActivePaymentProductType],
1072
+ },
1073
+ {
1074
+ handler: onActivePaymentType as SubscriptionHandler | undefined,
1075
+ eventTypes: [CheckoutEvents.ActivePaymentProductType],
1076
+ },
1077
+ {
1078
+ handler: wrappedOnValidateSession as SubscriptionHandler | undefined,
1079
+ eventTypes: [CheckoutEvents.ValidateSession],
1080
+ },
886
1081
  ].forEach(({ handler, eventTypes }) =&gt; {
887
1082
  if (handler) {
888
1083
  subscriptions.push(
@@ -913,7 +1108,7 @@ export const redirect = (options: DinteroCheckoutOptions) =&gt; {
913
1108
  endpoint = "https://checkout.dintero.com"<span class="branch-1 cbranch-no" title="branch not covered" >,</span>
914
1109
  } = options;
915
1110
  // Redirect the current browser window to the checkout session url.
916
- windowLocationAssign(getSessionUrl({ sid, endpoint, language }));
1111
+ windowLocationAssign(getSessionUrl({ sid, endpoint, language, shouldCallValidateSession: false }));
917
1112
  };
918
1113
  &nbsp;</pre></td></tr></table></pre>
919
1114
 
@@ -922,7 +1117,7 @@ export const redirect = (options: DinteroCheckoutOptions) =&gt; {
922
1117
  <div class='footer quiet pad2 space-top1 center small'>
923
1118
  Code coverage generated by
924
1119
  <a href="https://istanbul.js.org/" target="_blank">istanbul</a>
925
- at Tue May 11 2021 11:50:42 GMT+0200 (Central European Summer Time)
1120
+ at Wed Feb 16 2022 09:14:07 GMT+0000 (Coordinated Universal Time)
926
1121
  </div>
927
1122
  </div>
928
1123
  <script src="prettify.js"></script>