File: apple-pay-availability-existing-object.html

package info (click to toggle)
webkit2gtk 2.34.6-1~deb10u1
  • links: PTS, VCS
  • area: main
  • in suites: buster
  • size: 262,936 kB
  • sloc: cpp: 2,410,633; javascript: 191,866; ansic: 97,227; xml: 65,800; python: 30,274; ruby: 17,137; perl: 15,396; asm: 9,345; yacc: 2,309; sh: 1,660; lex: 1,293; java: 726; makefile: 106; pascal: 60
file content (36 lines) | stat: -rw-r--r-- 1,162 bytes parent folder | download
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
<!DOCTYPE html>
<body>
<script src="apple-pay.js"></script>
<script>
    const eventListener = async () => {
        internals.mockPaymentCoordinator.supportsUnrestrictedApplePay = false;

        const applePaySessionAvailable = !!window.ApplePaySession;
        const paymentRequestAvailable = !!window.PaymentRequest;
        const supportsVersion = ApplePaySession.supportsVersion(1);

        if (!window.wkPaymentRequest) {
            wkPaymentRequest = new PaymentRequest([applePayMethod()], applePayDetails);

            window.webkit.messageHandlers.testApplePay.postMessage({
                applePaySessionAvailable,
                paymentRequestAvailable,
                supportsVersion,
            });

            return;
        }

        const canMakePayment = await wkPaymentRequest.canMakePayment();

        window.webkit.messageHandlers.testApplePay.postMessage({
            applePaySessionAvailable,
            paymentRequestAvailable,
            supportsVersion,
            canMakePayment,
        });
    };

    window.addEventListener('hashchange', eventListener);
    window.addEventListener('load', eventListener);
</script>