

function promptInstall() {
    if (deferredPrompt == null) {
        console.log('beforeinstallprompt has not been triggerred yet');
        return;
    }
    // never show it if the app was launched standalone
    if (navigator.standalone) {
        return;
    }
    // Show the prompt
    deferredPrompt.prompt();
    // Wait for the user to respond to the prompt
    deferredPrompt.userChoice
        .then((choiceResult) => {
            if (choiceResult.outcome === 'accepted') {
                console.log('User accepted the A2HS prompt');
            } else {
                console.log('User dismissed the A2HS prompt');
            }
            deferredPrompt = null;
        });
}


var deferredPrompt;

/// cf https://developers.google.com/web/fundamentals/app-install-banners/
/// 
window.addEventListener('beforeinstallprompt', (e) => {
    console.log('beforeinstallprompt triggered');
    // Prevent Chrome 67 and earlier from automatically showing the prompt
    e.preventDefault();
    // Stash the event so it can be triggered later.
    deferredPrompt = e;
});

window.addEventListener('appinstalled', (evt) => {
    console.log('a2hs installed');
});

const isInStandaloneMode = () =>
    (window.matchMedia('(display-mode: standalone)').matches) || (window.navigator.standalone);

console.log('EdeclicLib loaded');



// window.addEventListener('error', function (e) {
//     var errorText = [
//         e.message,
//         'URL: ' + e.filename,
//         'Line: ' + e.lineno + ', Column: ' + e.colno,
//         'Stack: ' + (e.error && e.error.stack || '(no stack trace)')
//     ].join('');
// console.log(errorText);
//     // Example: log errors as visual output into the host page.
//     // Note: you probably don’t want to show such errors to users, or
//     //       have the errors get indexed by Googlebot; however, it may
//     //       be a useful feature while actively debugging the page.
//     var DOM_ID = 'rendering-debug-pre';
//     if (!document.getElementById(DOM_ID)) {
//         var log = document.createElement('pre');
//         log.id = DOM_ID;
//         log.style.whiteSpace = 'pre-wrap';
//         log.textContent = errorText;
//         if (!document.body) document.body = document.createElement('body');
//         document.body.insertBefore(log, document.body.firstChild);
//     } else {
//         document.getElementById(DOM_ID).textContent += ' ' + errorText;
//     }
// });