import { Card, CardHeader, CardBody, CardTitle, Button } from 'reactstrap' import Swal from 'sweetalert2' import withReactContent from 'sweetalert2-react-content' import alertImg from '@src/assets/images/slider/04.jpg' const MySwal = withReactContent(Swal) const SweetAlertOptions = () => { const handleImageAlert = () => { return MySwal.fire({ title: 'Sweet!', text: 'Modal with a custom image.', imageUrl: alertImg, imageWidth: 400, imageHeight: 200, imageAlt: 'Custom image', customClass: { confirmButton: 'btn btn-primary' }, buttonsStyling: false }) } const handleTimeoutAlert = () => { let timerInterval Swal.fire({ title: 'Auto close alert!', html: 'I will close in seconds.', timer: 2000, onBeforeOpen() { Swal.showLoading() timerInterval = setInterval(function () { Swal.getContent().querySelector('strong').textContent = Swal.getTimerLeft() }, 100) }, onClose() { clearInterval(timerInterval) } }).then(function (result) { if (result.dismiss === Swal.DismissReason.timer) { console.log('I was closed by the timer') } }) } const handleClickOutside = () => { return MySwal.fire({ title: 'Click outside to close!', text: 'This is a cool message!', allowOutsideClick: true, customClass: { confirmButton: 'btn btn-primary' }, buttonsStyling: false }) } const handleQuestions = () => { return MySwal.mixin({ input: 'text', confirmButtonText: 'Next →', showCancelButton: true, progressSteps: ['1', '2', '3'], buttonsStyling: false, customClass: { confirmButton: 'btn btn-primary', cancelButton: 'btn btn-danger ml-1' } }) .queue(['Question 1', 'Question 2', 'Question 3']) .then(function (result) { if (result.value) { MySwal.fire({ title: 'All done!', html: `Your answers:
${JSON.stringify(result.value)}
`,
confirmButtonText: 'Lovely!',
customClass: { confirmButton: 'btn btn-primary' }
})
}
})
}
const handleAjax = () => {
MySwal.fire({
title: 'Search for a user',
input: 'text',
customClass: {
confirmButton: 'btn btn-primary',
cancelButton: 'btn btn-danger ml-1'
},
buttonsStyling: false,
inputAttributes: {
autocapitalize: 'off'
},
showCancelButton: true,
confirmButtonText: 'Look up',
showLoaderOnConfirm: true,
preConfirm(login) {
return fetch(`//api.github.com/users/${login}`)
.then(function (response) {
if (!response.ok) {
throw new Error(response.statusText)
}
return response.json()
})
.catch(function (error) {
MySwal.showValidationMessage(`Request failed: ${error}`)
})
}
}).then(function (result) {
if (result.value) {
MySwal.fire({
title: `${result.value.login}'s avatar`,
imageUrl: result.value.avatar_url,
customClass: {
confirmButton: 'btn btn-primary'
}
})
}
})
}
return (