mirror of
https://github.com/aljazceru/mutiny-web.git
synced 2025-12-18 23:04:25 +01:00
feat: fix frontend based lint errors
This commit is contained in:
@@ -1,7 +1,7 @@
|
||||
import { NiceP } from "./layout";
|
||||
import { For, Match, Show, Switch, createEffect, createSignal } from "solid-js";
|
||||
import { useMegaStore } from "~/state/megaStore";
|
||||
import { ActivityItem as MutinyActivity } from "@mutinywallet/mutiny-wasm";
|
||||
import { Contact } from "@mutinywallet/mutiny-wasm";
|
||||
import { ActivityItem, HackActivityType } from "./ActivityItem";
|
||||
import { DetailsIdModal } from "./DetailsModal";
|
||||
|
||||
@@ -39,8 +39,18 @@ export type UtxoItem = {
|
||||
redshifted?: boolean;
|
||||
};
|
||||
|
||||
export type ActivityItem = {
|
||||
kind: HackActivityType
|
||||
id: string;
|
||||
amount_sats: number;
|
||||
inbound: boolean;
|
||||
labels: string[];
|
||||
contacts: Contact[];
|
||||
last_updated: number;
|
||||
};
|
||||
|
||||
function UnifiedActivityItem(props: {
|
||||
item: MutinyActivity;
|
||||
item: ActivityItem;
|
||||
onClick: (id: string, kind: HackActivityType) => void;
|
||||
}) {
|
||||
const click = () => {
|
||||
|
||||
@@ -12,7 +12,6 @@ import {
|
||||
} from "solid-js";
|
||||
import { Hr, ModalCloseButton, TinyButton, VStack } from "~/components/layout";
|
||||
import {
|
||||
ChannelClosure,
|
||||
MutinyChannel,
|
||||
MutinyInvoice
|
||||
} from "@mutinywallet/mutiny-wasm";
|
||||
@@ -35,6 +34,13 @@ import { AmountSmall } from "./Amount";
|
||||
import { ExternalLink } from "./layout/ExternalLink";
|
||||
import { InfoBox } from "./InfoBox";
|
||||
|
||||
type ChannelClosure = {
|
||||
channel_id: string;
|
||||
node_id: string;
|
||||
reason: string;
|
||||
timestamp: number;
|
||||
};
|
||||
|
||||
export const OVERLAY = "fixed inset-0 z-50 bg-black/50 backdrop-blur-sm";
|
||||
export const DIALOG_POSITIONER =
|
||||
"fixed inset-0 z-50 flex items-center justify-center";
|
||||
|
||||
@@ -1,12 +1,13 @@
|
||||
import { Component, For, createEffect, createSignal } from "solid-js";
|
||||
|
||||
import { Event, nip19 } from "nostr-tools";
|
||||
import { nip19 } from "nostr-tools";
|
||||
import { Linkify } from "~/components/layout";
|
||||
|
||||
type NostrEvent = {
|
||||
content: string;
|
||||
created_at: number;
|
||||
id?: string;
|
||||
tags: string;
|
||||
};
|
||||
|
||||
const Note: Component<{ e: NostrEvent }> = (props) => {
|
||||
@@ -46,7 +47,7 @@ const Note: Component<{ e: NostrEvent }> = (props) => {
|
||||
);
|
||||
};
|
||||
|
||||
function filterReplies(event: Event) {
|
||||
function filterReplies(event: NostrEvent) {
|
||||
// If there's a "p" tag or an "e" tag we want to return false, otherwise true
|
||||
for (const tag of event.tags) {
|
||||
if (tag[0] === "p" || tag[0] === "e") {
|
||||
@@ -56,7 +57,7 @@ function filterReplies(event: Event) {
|
||||
return true;
|
||||
}
|
||||
|
||||
const Notes: Component<{ notes: Event[] }> = (props) => {
|
||||
const Notes: Component<{ notes: NostrEvent[] }> = (props) => {
|
||||
return (
|
||||
<ul class="flex flex-col">
|
||||
<For
|
||||
|
||||
@@ -14,16 +14,13 @@ import {
|
||||
MutinyWalletSettingStrings,
|
||||
setupMutinyWallet
|
||||
} from "~/logic/mutinyWalletSetup";
|
||||
import {
|
||||
MutinyBalance,
|
||||
MutinyWallet,
|
||||
ActivityItem as MutinyActivity
|
||||
} from "@mutinywallet/mutiny-wasm";
|
||||
import { MutinyBalance, MutinyWallet } from "@mutinywallet/mutiny-wasm";
|
||||
import { ParsedParams } from "~/routes/Scanner";
|
||||
import { MutinyTagItem } from "~/utils/tags";
|
||||
import { checkBrowserCompatibility } from "~/logic/browserCompatibility";
|
||||
import eify from "~/utils/eify";
|
||||
import { timeout } from "~/utils/timeout";
|
||||
import { ActivityItem } from "~/components/Activity";
|
||||
|
||||
const MegaStoreContext = createContext<MegaStore>();
|
||||
|
||||
@@ -45,7 +42,7 @@ export type MegaStore = [
|
||||
dismissed_restore_prompt: boolean;
|
||||
wallet_loading: boolean;
|
||||
nwc_enabled: boolean;
|
||||
activity: MutinyActivity[];
|
||||
activity: ActivityItem[];
|
||||
setup_error?: Error;
|
||||
is_pwa: boolean;
|
||||
existing_tab_detected: boolean;
|
||||
@@ -85,7 +82,7 @@ export const Provider: ParentComponent = (props) => {
|
||||
localStorage.getItem("dismissed_restore_prompt") === "true",
|
||||
wallet_loading: true,
|
||||
nwc_enabled: localStorage.getItem("nwc_enabled") === "true",
|
||||
activity: [] as MutinyActivity[],
|
||||
activity: [] as ActivityItem[],
|
||||
setup_error: undefined as Error | undefined,
|
||||
is_pwa: window.matchMedia("(display-mode: standalone)").matches,
|
||||
existing_tab_detected: false
|
||||
@@ -248,18 +245,7 @@ export const Provider: ParentComponent = (props) => {
|
||||
actions.fetchUserStatus().then((status) => {
|
||||
setState({ user_status: status });
|
||||
|
||||
// Only load node manager when status is approved
|
||||
if (
|
||||
state.user_status === "approved" &&
|
||||
!state.mutiny_wallet &&
|
||||
!state.deleting
|
||||
) {
|
||||
console.log("checking for browser compatibility...");
|
||||
actions.checkBrowserCompat().then((browserIsGood) => {
|
||||
if (browserIsGood) {
|
||||
console.log("checking if any other tabs are open");
|
||||
// 500ms should hopefully be enough time for any tabs to reply
|
||||
timeout(500).then(() => {
|
||||
function handleExisting() {
|
||||
if (state.existing_tab_detected) {
|
||||
setState({
|
||||
setup_error: new Error(
|
||||
@@ -270,9 +256,7 @@ export const Provider: ParentComponent = (props) => {
|
||||
console.log("running setup node manager...");
|
||||
actions
|
||||
.setupMutinyWallet()
|
||||
.then(() =>
|
||||
console.log("node manager setup done")
|
||||
)
|
||||
.then(() => console.log("node manager setup done"))
|
||||
.catch((e) => {
|
||||
console.error(e);
|
||||
setState({ setup_error: eify(e) });
|
||||
@@ -285,9 +269,22 @@ export const Provider: ParentComponent = (props) => {
|
||||
console.log("mutiny_wallet stopped");
|
||||
};
|
||||
}
|
||||
});
|
||||
}
|
||||
});
|
||||
|
||||
function handleGoodBrowser() {
|
||||
console.log("checking if any other tabs are open");
|
||||
// 500ms should hopefully be enough time for any tabs to reply
|
||||
timeout(500).then(handleExisting);
|
||||
}
|
||||
|
||||
// Only load node manager when status is approved
|
||||
if (
|
||||
state.user_status === "approved" &&
|
||||
!state.mutiny_wallet &&
|
||||
!state.deleting
|
||||
) {
|
||||
console.log("checking for browser compatibility...");
|
||||
actions.checkBrowserCompat().then(handleGoodBrowser);
|
||||
}
|
||||
});
|
||||
});
|
||||
|
||||
Reference in New Issue
Block a user