summaryrefslogtreecommitdiff
path: root/src
diff options
context:
space:
mode:
authorFlorian Dold <florian.dold@gmail.com>2020-04-07 01:23:29 +0530
committerFlorian Dold <florian.dold@gmail.com>2020-04-07 01:23:29 +0530
commit1471aae8927c20d646cc2aa5ab0e20c1a7f2c0ca (patch)
tree32d32d7f33b2ca64cf101006442b1b17bfaf61aa /src
parent47787c0b0b846d5f4a057661efdd05d8786032f1 (diff)
downloadwallet-core-1471aae8927c20d646cc2aa5ab0e20c1a7f2c0ca.tar.gz
wallet-core-1471aae8927c20d646cc2aa5ab0e20c1a7f2c0ca.tar.bz2
wallet-core-1471aae8927c20d646cc2aa5ab0e20c1a7f2c0ca.zip
linter / simpler webextension pack
Diffstat (limited to 'src')
-rw-r--r--src/operations/exchanges.ts13
-rw-r--r--src/operations/history.ts8
-rw-r--r--src/util/query.ts4
-rw-r--r--src/util/timer.ts16
-rw-r--r--src/webex/pages/add-auditor.tsx8
-rw-r--r--src/webex/pages/popup.tsx11
-rw-r--r--src/webex/renderHtml.tsx4
-rw-r--r--src/webex/wxBackend.ts12
8 files changed, 35 insertions, 41 deletions
diff --git a/src/operations/exchanges.ts b/src/operations/exchanges.ts
index 53b250a8e..27fed0b6c 100644
--- a/src/operations/exchanges.ts
+++ b/src/operations/exchanges.ts
@@ -31,7 +31,6 @@ import {
WireFee,
ExchangeUpdateReason,
ExchangeUpdatedEventRecord,
- CoinStatus,
} from "../types/dbTypes";
import { canonicalizeBaseUrl } from "../util/helpers";
import * as Amounts from "../util/amounts";
@@ -81,7 +80,7 @@ async function setExchangeError(
err: OperationError,
): Promise<void> {
console.log(`last error for exchange ${baseUrl}:`, err);
- const mut = (exchange: ExchangeRecord) => {
+ const mut = (exchange: ExchangeRecord): ExchangeRecord => {
exchange.lastError = err;
return exchange;
};
@@ -284,7 +283,7 @@ async function updateExchangeWithKeys(
async function updateExchangeFinalize(
ws: InternalWalletState,
exchangeBaseUrl: string,
-) {
+): Promise<void> {
const exchange = await ws.db.get(Stores.exchanges, exchangeBaseUrl);
if (!exchange) {
return;
@@ -316,7 +315,7 @@ async function updateExchangeFinalize(
async function updateExchangeWithTermsOfService(
ws: InternalWalletState,
exchangeBaseUrl: string,
-) {
+): Promise<void> {
const exchange = await ws.db.get(Stores.exchanges, exchangeBaseUrl);
if (!exchange) {
return;
@@ -357,7 +356,7 @@ export async function acceptExchangeTermsOfService(
ws: InternalWalletState,
exchangeBaseUrl: string,
etag: string | undefined,
-) {
+): Promise<void> {
await ws.db.runWithWriteTransaction([Stores.exchanges], async (tx) => {
const r = await tx.get(Stores.exchanges, exchangeBaseUrl);
if (!r) {
@@ -377,7 +376,7 @@ export async function acceptExchangeTermsOfService(
async function updateExchangeWithWireInfo(
ws: InternalWalletState,
exchangeBaseUrl: string,
-) {
+): Promise<void> {
const exchange = await ws.db.get(Stores.exchanges, exchangeBaseUrl);
if (!exchange) {
return;
@@ -461,7 +460,7 @@ export async function updateExchangeFromUrl(
baseUrl: string,
forceNow = false,
): Promise<ExchangeRecord> {
- const onOpErr = (e: OperationError) => setExchangeError(ws, baseUrl, e);
+ const onOpErr = (e: OperationError): Promise<void> => setExchangeError(ws, baseUrl, e);
return await guardOperationException(
() => updateExchangeFromUrlImpl(ws, baseUrl, forceNow),
onOpErr,
diff --git a/src/operations/history.ts b/src/operations/history.ts
index b043e4a90..efbfbf377 100644
--- a/src/operations/history.ts
+++ b/src/operations/history.ts
@@ -20,11 +20,9 @@
import { InternalWalletState } from "./state";
import {
Stores,
- TipRecord,
ProposalStatus,
ProposalRecord,
PlanchetRecord,
- CoinRecord,
} from "../types/dbTypes";
import { Amounts } from "../util/amounts";
import { AmountJson } from "../util/amounts";
@@ -40,14 +38,14 @@ import {
VerboseRefreshDetails,
} from "../types/history";
import { assertUnreachable } from "../util/assertUnreachable";
-import { TransactionHandle, Store } from "../util/query";
+import { TransactionHandle } from "../util/query";
import { timestampCmp } from "../util/time";
import { summarizeReserveHistory } from "../util/reserveHistoryUtil";
/**
* Create an event ID from the type and the primary key for the event.
*/
-function makeEventId(type: HistoryEventType, ...args: string[]) {
+function makeEventId(type: HistoryEventType, ...args: string[]): string {
return type + ";" + args.map((x) => encodeURIComponent(x)).join(";");
}
@@ -72,7 +70,7 @@ async function collectProposalHistory(
tx: TransactionHandle,
history: HistoryEvent[],
historyQuery?: HistoryQuery,
-) {
+): Promise<void> {
tx.iter(Stores.proposals).forEachAsync(async (proposal) => {
const status = proposal.proposalStatus;
switch (status) {
diff --git a/src/util/query.ts b/src/util/query.ts
index d11b79a96..256395d42 100644
--- a/src/util/query.ts
+++ b/src/util/query.ts
@@ -292,7 +292,7 @@ export class TransactionHandle {
return requestToPromise(req);
}
- mutate<T>(store: Store<T>, key: any, f: (x: T) => T | undefined) {
+ mutate<T>(store: Store<T>, key: any, f: (x: T) => T | undefined): Promise<void> {
const req = this.tx.objectStore(store.name).openCursor(key);
return applyMutation(req, f);
}
@@ -438,7 +438,7 @@ export function openDatabase(
export class Database {
constructor(private db: IDBDatabase) {}
- static deleteDatabase(idbFactory: IDBFactory, dbName: string) {
+ static deleteDatabase(idbFactory: IDBFactory, dbName: string): void {
idbFactory.deleteDatabase(dbName);
}
diff --git a/src/util/timer.ts b/src/util/timer.ts
index a1712b03f..18132a812 100644
--- a/src/util/timer.ts
+++ b/src/util/timer.ts
@@ -1,5 +1,3 @@
-import { Duration } from "./time";
-
/*
This file is part of GNU Taler
(C) 2017-2019 Taler Systems S.A.
@@ -24,6 +22,12 @@ import { Duration } from "./time";
*/
/**
+ * Imports.
+ */
+import { Duration } from "./time";
+
+
+/**
* Cancelable timer.
*/
export interface TimerHandle {
@@ -33,7 +37,7 @@ export interface TimerHandle {
class IntervalHandle {
constructor(public h: any) {}
- clear() {
+ clear(): void {
clearInterval(this.h);
}
}
@@ -41,7 +45,7 @@ class IntervalHandle {
class TimeoutHandle {
constructor(public h: any) {}
- clear() {
+ clear(): void {
clearTimeout(this.h);
}
}
@@ -55,7 +59,7 @@ export const performanceNow: () => number = (() => {
const t = process.hrtime();
return t[0] * 1e9 + t[1];
};
- } else if (typeof "performance" !== "undefined") {
+ } else if (typeof performance !== "undefined") {
return () => performance.now();
} else {
return () => 0;
@@ -93,7 +97,7 @@ export class TimerGroup {
private idGen = 1;
- stopCurrentAndFutureTimers() {
+ stopCurrentAndFutureTimers(): void {
this.stopped = true;
for (const x in this.timerMap) {
if (!this.timerMap.hasOwnProperty(x)) {
diff --git a/src/webex/pages/add-auditor.tsx b/src/webex/pages/add-auditor.tsx
index 4e3f8615c..fc7de920f 100644
--- a/src/webex/pages/add-auditor.tsx
+++ b/src/webex/pages/add-auditor.tsx
@@ -78,7 +78,7 @@ function ConfirmAuditor(props: ConfirmAuditorProps): JSX.Element {
setAddDone(true);
};
- const back = () => {
+ const back = (): void => {
window.history.back();
};
@@ -86,12 +86,12 @@ function ConfirmAuditor(props: ConfirmAuditorProps): JSX.Element {
<div id="main">
<p>
Do you want to let <strong>{props.auditorPub}</strong> audit the
- currency "{props.currency}"?
+ currency &quot;{props.currency}&quot;?
</p>
{addDone ? (
<div>
Auditor was added! You can also{" "}
- <a href={chrome.extension.getURL("/src/webex/pages/auditors.html")}>
+ <a href={chrome.extension.getURL("/auditors.html")}>
view and edit
</a>{" "}
auditors.
@@ -113,7 +113,7 @@ function ConfirmAuditor(props: ConfirmAuditorProps): JSX.Element {
);
}
-export function makeAddAuditorPage() {
+export function makeAddAuditorPage(): JSX.Element {
const walletPageUrl = new URL(document.location.href);
const url = walletPageUrl.searchParams.get("url");
if (!url) {
diff --git a/src/webex/pages/popup.tsx b/src/webex/pages/popup.tsx
index c2f050e2a..f62f64b73 100644
--- a/src/webex/pages/popup.tsx
+++ b/src/webex/pages/popup.tsx
@@ -734,21 +734,18 @@ function WalletDebug(props: any): JSX.Element {
return (
<div>
<p>Debug tools:</p>
- <button onClick={openExtensionPage("/src/webex/pages/popup.html")}>
+ <button onClick={openExtensionPage("/popup.html")}>
wallet tab
</button>
- <button onClick={openExtensionPage("/src/webex/pages/benchmark.html")}>
+ <button onClick={openExtensionPage("/benchmark.html")}>
benchmark
</button>
- <button onClick={openExtensionPage("/src/webex/pages/show-db.html")}>
+ <button onClick={openExtensionPage("/show-db.html")}>
show db
</button>
- <button onClick={openExtensionPage("/src/webex/pages/tree.html")}>
+ <button onClick={openExtensionPage("/tree.html")}>
show tree
</button>
- <button onClick={openExtensionPage("/src/webex/pages/logs.html")}>
- show logs
- </button>
<br />
<button onClick={confirmReset}>reset</button>
<button onClick={reload}>reload chrome extension</button>
diff --git a/src/webex/renderHtml.tsx b/src/webex/renderHtml.tsx
index 8fc6a6a63..f5a6a7e4d 100644
--- a/src/webex/renderHtml.tsx
+++ b/src/webex/renderHtml.tsx
@@ -335,9 +335,9 @@ export function ProgressButton(
export function PageLink(
props: React.PropsWithChildren<{ pageName: string }>,
): JSX.Element {
- const url = chrome.extension.getURL(`/src/webex/pages/${props.pageName}`);
+ const url = chrome.extension.getURL(`/${props.pageName}`);
return (
- <a className="actionLink" href={url} target="_blank">
+ <a className="actionLink" href={url} target="_blank" rel="noopener noreferrer">
{props.children}
</a>
);
diff --git a/src/webex/wxBackend.ts b/src/webex/wxBackend.ts
index f26c14d37..8fbb1431f 100644
--- a/src/webex/wxBackend.ts
+++ b/src/webex/wxBackend.ts
@@ -358,7 +358,7 @@ function makeSyncWalletRedirect(
oldUrl: string,
params?: { [name: string]: string | undefined },
): object {
- const innerUrl = new URL(chrome.extension.getURL("/src/webex/pages/" + url));
+ const innerUrl = new URL(chrome.extension.getURL("/" + url));
if (params) {
for (const key in params) {
const p = params[key];
@@ -367,10 +367,6 @@ function makeSyncWalletRedirect(
}
}
}
- const outerUrl = new URL(
- chrome.extension.getURL("/src/webex/pages/redirect.html"),
- );
- outerUrl.searchParams.set("url", innerUrl.href);
if (isFirefox()) {
// Some platforms don't support the sync redirect (yet), so fall back to
// async redirect after a timeout.
@@ -378,12 +374,12 @@ function makeSyncWalletRedirect(
await waitMs(150);
const tab = await getTab(tabId);
if (tab.url === oldUrl) {
- chrome.tabs.update(tabId, { url: outerUrl.href });
+ chrome.tabs.update(tabId, { url: innerUrl.href });
}
};
doit();
}
- return { redirectUrl: outerUrl.href };
+ return { redirectUrl: innerUrl.href };
}
async function reinitWallet(): Promise<void> {
@@ -447,7 +443,7 @@ try {
chrome.runtime.onInstalled.addListener((details) => {
console.log("onInstalled with reason", details.reason);
if (details.reason === "install") {
- const url = chrome.extension.getURL("/src/webex/pages/welcome.html");
+ const url = chrome.extension.getURL("/welcome.html");
chrome.tabs.create({ active: true, url: url });
}
});