Skip to content

Instantly share code, notes, and snippets.

@asfktz
Created October 17, 2019 14:07
Show Gist options
  • Star 0 You must be signed in to star a gist
  • Fork 0 You must be signed in to fork a gist
  • Save asfktz/03972c2c12b0fd089ea99f92d1541f6b to your computer and use it in GitHub Desktop.
Save asfktz/03972c2c12b0fd089ea99f92d1541f6b to your computer and use it in GitHub Desktop.
import './style.css';
import React, { useState } from 'react';
import Spinner from 'react-md-spinner';
import useInterval from '../../utils/useInterval';
import { random } from 'lodash';
const labels = [
'מכוונים את הגיטרות',
'פורשים מחצלות',
'מסדרים כיסאות',
'עושים מתיחות',
'מדליקים את האש',
'מחממים את הקול',
'מבריקים את הפרקט',
'מרכיבים את הבמות',
'פותחים חצרות ',
'מארגנים זולות',
'עורכים סרטים',
'בחזרות גנרליות',
'מודדים תלבושות',
'משננים טקסטים',
];
function useRoulette (values, ms) {
const [i, set] = useState(random(0, labels.length - 1));
useInterval(() => {
set((i) => i + 1);
}, ms);
return labels[i % labels.length];
}
export default function Loader () {
const label = useRoulette(labels, 3000);
return (
<div className="Loader">
<Spinner className="Loader-spinner" size={70} singleColor="#5C2E82" borderSize={2} />
<div className="Loader-label">{label}</div>
</div>
);
}
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment