Merge pull request #2 from enxoco/feature/totp-generator

Added totp-generator dependency
This commit is contained in:
enxoco
2023-08-25 21:58:18 -04:00
committed by GitHub
4 changed files with 35 additions and 15 deletions

View File

@ -96,6 +96,7 @@ fieldset {
flex: 1; flex: 1;
font-weight: bold; font-weight: bold;
border: none; border: none;
min-width: 200px;
} }
label { label {

View File

@ -1,3 +1,10 @@
export function tokenList(){ import { displayTokenListItem } from "./TokenListItem";
return `<form id="tokens"></form>` import { tokens } from "./tokens";
export function tokenList() {
const element = document.createElement("div");
element.classList.add("test");
return `<form id="tokens">${tokens.map((token) =>
displayTokenListItem(token.account, token.secret, element)
)}</form>`;
} }

View File

@ -1,12 +1,24 @@
// @vitest-environment jsdom // @vitest-environment jsdom
import { expect, test } from 'vitest' import { expect, test } from "vitest";
import { tokenListitem } from './tokenListItem' import { displayTokenListItem } from "./tokenListItem";
test("displays correct account name", () => {
const div: HTMLDivElement = document.createElement("div");
displayTokenListItem("Github", "ABCDEFGHIJKLMNOP", div);
expect(div.innerHTML).toContain("Github");
});
test('displays correct account name', () => { test("displays multiple list items", () => {
const div: HTMLDivElement = document.createElement('div') const div: HTMLDivElement = document.createElement("div");
tokenListitem('Github', 'ABCDEFGHIJKLMNOP', div); displayTokenListItem("Github", "ABCDEFGHIJKLMNOP", div);
expect(div.innerHTML).toContain('Github') displayTokenListItem("Gmail", "ABCDEFGHIJKLMNOP", div);
}) const tokens = [
{ account: "Github", secret: "blahblahblah" },
{ account: "Gmail", secret: "blahblahblah" },
];
tokens.map((token) => displayTokenListItem(token.account, token.secret, div));
console.log("dv", div.innerHTML);
expect(div.innerHTML).toContain("Github");
expect(div.innerHTML).toContain("Gmail");
});

View File

@ -1,14 +1,14 @@
import {displayToken} from './token'
export function displayTokenListItem(account: string, secret: string, element: HTMLDivElement){
export function tokenListitem(account: string, secret: string, element: HTMLDivElement){ return element.innerHTML = `<div class="fieldset-wrapper">
element.innerHTML += `<div class="fieldset-wrapper">
<fieldset> <fieldset>
<label>Account</label> <label>Account</label>
<p data-test-id="account">${account}</p> <p data-test-id="account">${account}</p>
</fieldset> </fieldset>
<fieldset> <fieldset>
<label>Code</label> <label>Code</label>
<p data-test-id="secret">${token}</p> <p data-test-id="secret">${displayToken(secret)}</p>
</fieldset> </fieldset>
</div>`; </div>`;
} }