Alerta pop-up pop-up antes de fazer o download da imagem em tela HTML para PNG

no meu aplicativo de desenho do Canvas, tenho um botão de download para png. Quero que a imagem da tela seja baixada apenas quando o usuário clicar em "sim, salve-o" no meu prompt pop-up de alerta. No momento, ele ainda está sendo baixado automaticamente. Obrigado pela ajuda. (também se alguém tiver uma maneira melhor de fazer o download via Javascript, isso também ajudará, é baixar o png, mas está corrompido e não consigo abri-lo)

$('#download').click(function(){
    swal({
        title: "Are you finished your creation?",  
        text: "click yes to save",   
        type: "warning",  
        showCancelButton: true,   
        confirmButtonColor: "#f8c1D9",   
        confirmButtonText: "Yes, save it!",  
        closeOnConfirm: true 
    }, function (isConfirm) {      
        if (isConfirm) {
            swal("Saving!");

            var base64 = document.getElementById("canvas")
              .toDataURL("image/png")
              .replace(/^data:image\/[^;]/, 'data:application/octet-stream');

            document.getElementById("download-png").href = base64
        } else {

        }

        return false; 
    });
});

html

<div id="download">
    <a href="#" id="download-png" download="image.png"><img src="./assets/imgs/tools/save.png" /></a>
</div>

questionAnswers(1)

yourAnswerToTheQuestion