mirror of
https://git.kescher.at/CatCatNya/catstodon.git
synced 2024-11-29 14:19:03 +01:00
Convert entrypoints/sign_up
to Typescript (#30106)
This commit is contained in:
parent
9be7efedf0
commit
4527e012da
2 changed files with 48 additions and 42 deletions
|
@ -1,42 +0,0 @@
|
||||||
import './public-path';
|
|
||||||
import axios from 'axios';
|
|
||||||
|
|
||||||
import ready from '../mastodon/ready';
|
|
||||||
|
|
||||||
ready(() => {
|
|
||||||
setInterval(() => {
|
|
||||||
axios.get('/api/v1/emails/check_confirmation').then((response) => {
|
|
||||||
if (response.data) {
|
|
||||||
window.location = '/start';
|
|
||||||
}
|
|
||||||
}).catch(error => {
|
|
||||||
console.error(error);
|
|
||||||
});
|
|
||||||
}, 5000);
|
|
||||||
|
|
||||||
document.querySelectorAll('.timer-button').forEach(button => {
|
|
||||||
let counter = 30;
|
|
||||||
|
|
||||||
const container = document.createElement('span');
|
|
||||||
|
|
||||||
const updateCounter = () => {
|
|
||||||
container.innerText = ` (${counter})`;
|
|
||||||
};
|
|
||||||
|
|
||||||
updateCounter();
|
|
||||||
|
|
||||||
const countdown = setInterval(() => {
|
|
||||||
counter--;
|
|
||||||
|
|
||||||
if (counter === 0) {
|
|
||||||
button.disabled = false;
|
|
||||||
button.removeChild(container);
|
|
||||||
clearInterval(countdown);
|
|
||||||
} else {
|
|
||||||
updateCounter();
|
|
||||||
}
|
|
||||||
}, 1000);
|
|
||||||
|
|
||||||
button.appendChild(container);
|
|
||||||
});
|
|
||||||
});
|
|
48
app/javascript/entrypoints/sign_up.ts
Normal file
48
app/javascript/entrypoints/sign_up.ts
Normal file
|
@ -0,0 +1,48 @@
|
||||||
|
import './public-path';
|
||||||
|
import axios from 'axios';
|
||||||
|
|
||||||
|
import ready from '../mastodon/ready';
|
||||||
|
|
||||||
|
async function checkConfirmation() {
|
||||||
|
const response = await axios.get('/api/v1/emails/check_confirmation');
|
||||||
|
|
||||||
|
if (response.data) {
|
||||||
|
window.location.href = '/start';
|
||||||
|
}
|
||||||
|
}
|
||||||
|
|
||||||
|
ready(() => {
|
||||||
|
setInterval(() => {
|
||||||
|
void checkConfirmation();
|
||||||
|
}, 5000);
|
||||||
|
|
||||||
|
document
|
||||||
|
.querySelectorAll<HTMLButtonElement>('button.timer-button')
|
||||||
|
.forEach((button) => {
|
||||||
|
let counter = 30;
|
||||||
|
|
||||||
|
const container = document.createElement('span');
|
||||||
|
|
||||||
|
const updateCounter = () => {
|
||||||
|
container.innerText = ` (${counter})`;
|
||||||
|
};
|
||||||
|
|
||||||
|
updateCounter();
|
||||||
|
|
||||||
|
const countdown = setInterval(() => {
|
||||||
|
counter--;
|
||||||
|
|
||||||
|
if (counter === 0) {
|
||||||
|
button.disabled = false;
|
||||||
|
button.removeChild(container);
|
||||||
|
clearInterval(countdown);
|
||||||
|
} else {
|
||||||
|
updateCounter();
|
||||||
|
}
|
||||||
|
}, 1000);
|
||||||
|
|
||||||
|
button.appendChild(container);
|
||||||
|
});
|
||||||
|
}).catch((e: unknown) => {
|
||||||
|
throw e;
|
||||||
|
});
|
Loading…
Reference in a new issue