Switch case
Hey everyone, I have this code
/* eslint-disable import/extensions */
import wait from '../utils/wait.js';
const monitor = document.querySelector('.monitor');
const monitorBody = document.querySelector('.monitor-body');
const monitorLeg = document.querySelector('.monitor-leg');
const languageIcon = document.querySelector('.language-icon');
const languageIcons = [
'html icon.svg',
'css icon.svg',
'javascript icon.svg',
'python icon.svg',
'svelte icon.svg',
];
async function rotateIcons(icons) {
for (let icon = 0; languageIcons.length > 0; icon += 1) {
if (icon === languageIcons.length) {
icon = 0;
}
languageIcon.href.baseVal = `/images/${languageIcons[icon]}`;
switch (languageIcons[icon]) {
case 'html icon.svg':
monitor.classList.remove('svelte-svg-monitor-fill');
monitor.classList.add('html-svg-monitor-fill');
break;
case 'css icon.svg':
monitor.classList.remove('html-svg-monitor-fill');
monitor.classList.add('css-svg-monitor-fill');
break;
case 'javascript icon.svg':
monitor.classList.remove('css-svg-monitor-fill');
monitor.classList.add('javascript-svg-monitor-fill');
break;
case 'python icon.svg':
monitor.classList.remove('javascript-svg-monitor-fill');
monitor.classList.add('python-svg-monitor-fill');
monitorLeg.classList.add('python-svg-leg-fill');
break;
case 'svelte icon.svg':
monitor.classList.remove('python-svg-monitor-fill');
monitorLeg.classList.remove('python-svg-leg-fill');
monitor.classList.add('svelte-svg-monitor-fill');
break;
default:
break;
}
// eslint-disable-next-line no-await-in-loop
await wait(2000);
}
}
if (languageIcon) rotateIcons(languageIcons);/* eslint-disable import/extensions */
import wait from '../utils/wait.js';
const monitor = document.querySelector('.monitor');
const monitorBody = document.querySelector('.monitor-body');
const monitorLeg = document.querySelector('.monitor-leg');
const languageIcon = document.querySelector('.language-icon');
const languageIcons = [
'html icon.svg',
'css icon.svg',
'javascript icon.svg',
'python icon.svg',
'svelte icon.svg',
];
async function rotateIcons(icons) {
for (let icon = 0; languageIcons.length > 0; icon += 1) {
if (icon === languageIcons.length) {
icon = 0;
}
languageIcon.href.baseVal = `/images/${languageIcons[icon]}`;
switch (languageIcons[icon]) {
case 'html icon.svg':
monitor.classList.remove('svelte-svg-monitor-fill');
monitor.classList.add('html-svg-monitor-fill');
break;
case 'css icon.svg':
monitor.classList.remove('html-svg-monitor-fill');
monitor.classList.add('css-svg-monitor-fill');
break;
case 'javascript icon.svg':
monitor.classList.remove('css-svg-monitor-fill');
monitor.classList.add('javascript-svg-monitor-fill');
break;
case 'python icon.svg':
monitor.classList.remove('javascript-svg-monitor-fill');
monitor.classList.add('python-svg-monitor-fill');
monitorLeg.classList.add('python-svg-leg-fill');
break;
case 'svelte icon.svg':
monitor.classList.remove('python-svg-monitor-fill');
monitorLeg.classList.remove('python-svg-leg-fill');
monitor.classList.add('svelte-svg-monitor-fill');
break;
default:
break;
}
// eslint-disable-next-line no-await-in-loop
await wait(2000);
}
}
if (languageIcon) rotateIcons(languageIcons);