diff --git a/src/style.css b/src/style.css index 039a379..edb7663 100644 --- a/src/style.css +++ b/src/style.css @@ -101,15 +101,4 @@ fieldset { label { font-weight: 300; -} -.timer { - position: absolute; - width: 24px; - height: 24px; - border-radius: 24px; - padding: 8px 10px; - display: flex; - justify-content: center; - align-items: center; - -} +} \ No newline at end of file diff --git a/src/token.ts b/src/token.ts index e364ba6..a2ad1eb 100644 --- a/src/token.ts +++ b/src/token.ts @@ -1,22 +1,8 @@ import totp from 'totp-generator' const period = 30 const digits = 6 -let token = '' -export function displayToken(secret) { - async function generateTOTP() { - const token = totp(secret.replaceAll(' ', '').trim(), { - digits, - period, - }) - const secondsSinceEpoch = Math.ceil(Date.now() / 1000) - 1 - const secondsSinceStart = 0 + (secondsSinceEpoch % period) - const secondsRemaining = period - (secondsSinceEpoch % period) - console.log('this is broken') - setResult(token) - setRunningTime(secondsSinceStart) - setSecondsTillExpiration(secondsRemaining) - } +export function displayToken(secret) { const token = totp(secret.replace(/ /g, '').trim(), { digits, period, diff --git a/src/tokenList.ts b/src/tokenList.ts index 98e949f..9136b65 100644 --- a/src/tokenList.ts +++ b/src/tokenList.ts @@ -4,12 +4,7 @@ import { tokens } from "./tokens"; export function tokenList() { const element = document.createElement("div"); element.classList.add("test"); - const div = document.createElement('div') - div.append('
') - document.querySelector("#app")!.innerHTML += '' - tokens.map(async (token) => { - const el = await displayTokenListItem(token.account, token.secret, element) - document.querySelector("#app")!.innerHTML += el - }) - + return `${tokens.map((token) => + displayTokenListItem(token.account, token.secret, element) + )}`; } diff --git a/src/tokenListItem.ts b/src/tokenListItem.ts index f9dd4b1..1526524 100644 --- a/src/tokenListItem.ts +++ b/src/tokenListItem.ts @@ -1,28 +1,6 @@ import {displayToken} from './token' -import Timer from './tokenTimer'; -import totp from 'totp-generator' -const period = 30 -const digits = 6 -let token = '' -async function generateTOTP(secret: string): Promise<{secondsSinceStart: number, secondsRemaining: number}>{ - const token = totp(secret.replace(/ /, '').trim(), { - digits, - period, - }) +export function displayTokenListItem(account: string, secret: string, element: HTMLDivElement){ - const secondsSinceEpoch = Math.ceil(Date.now() / 1000) - 1 - const secondsSinceStart = 0 + (secondsSinceEpoch % period) - const secondsRemaining = period - (secondsSinceEpoch % period) - return { - secondsSinceStart, - secondsRemaining - } -} -export async function displayTokenListItem(account: string, secret: string, element: HTMLDivElement){ - const period = 30 - const digits = 6 - const {secondsRemaining, secondsSinceStart} = await generateTOTP(secret) - const token = await displayToken(secret) return element.innerHTML = `
@@ -30,10 +8,7 @@ export async function displayTokenListItem(account: string, secret: string, elem
-

${await displayToken(secret)}

+

${displayToken(secret)}

-
- -

${await Timer(secondsSinceStart, secondsRemaining)}

`; } \ No newline at end of file diff --git a/src/tokenTimer.ts b/src/tokenTimer.ts deleted file mode 100644 index 1513128..0000000 --- a/src/tokenTimer.ts +++ /dev/null @@ -1,12 +0,0 @@ - -function Timer(runningTime: number, secondsTillExpiration: number) { - -const color = 'cream' - return ( - `
- ${secondsTillExpiration} -
` - ) -} - -export default Timer