sweetalert2
Version:
A beautiful, responsive, customizable and accessible (WAI-ARIA) replacement for JavaScript's popup boxes, supported fork of sweetalert
39 lines (37 loc) • 1.53 kB
JavaScript
import { swalClasses } from '../../classes.js'
import { warn } from '../../utils.js'
import * as dom from '../../dom/index'
import sweetAlert from '../../../sweetalert2'
export const renderProgressSteps = (params) => {
let progressStepsContainer = dom.getProgressSteps()
let currentProgressStep = parseInt(params.currentProgressStep === null ? sweetAlert.getQueueStep() : params.currentProgressStep, 10)
if (params.progressSteps && params.progressSteps.length) {
dom.show(progressStepsContainer)
progressStepsContainer.innerHTML = ''
if (currentProgressStep >= params.progressSteps.length) {
warn(
'Invalid currentProgressStep parameter, it should be less than progressSteps.length ' +
'(currentProgressStep like JS arrays starts from 0)'
)
}
params.progressSteps.forEach((step, index) => {
let circle = document.createElement('li')
dom.addClass(circle, swalClasses.progresscircle)
circle.innerHTML = step
if (index === currentProgressStep) {
dom.addClass(circle, swalClasses.activeprogressstep)
}
progressStepsContainer.appendChild(circle)
if (index !== params.progressSteps.length - 1) {
let line = document.createElement('li')
dom.addClass(line, swalClasses.progressline)
if (params.progressStepsDistance) {
line.style.width = params.progressStepsDistance
}
progressStepsContainer.appendChild(line)
}
})
} else {
dom.hide(progressStepsContainer)
}
}