chore: formatting
This commit is contained in:
@ -65,10 +65,17 @@ function RelayCacheStats() {
|
||||
<div className="flex justify-between br p bg-superdark">
|
||||
<div className="flex flex-col g4 w-64">
|
||||
<FormattedMessage defaultMessage="Worker Relay" id="xSoIUU" />
|
||||
{myEvents && <p>
|
||||
<FormattedMessage defaultMessage="My events: {n}" id="lEnclp" values={{
|
||||
n: <FormattedNumber value={myEvents} />
|
||||
}} /></p>}
|
||||
{myEvents && (
|
||||
<p>
|
||||
<FormattedMessage
|
||||
defaultMessage="My events: {n}"
|
||||
id="lEnclp"
|
||||
values={{
|
||||
n: <FormattedNumber value={myEvents} />,
|
||||
}}
|
||||
/>
|
||||
</p>
|
||||
)}
|
||||
<table className="text-secondary">
|
||||
<thead>
|
||||
<tr>
|
||||
@ -99,7 +106,7 @@ function RelayCacheStats() {
|
||||
</table>
|
||||
</div>
|
||||
<div className="flex flex-col gap-2">
|
||||
<AsyncButton onClick={() => { }}>
|
||||
<AsyncButton onClick={() => {}}>
|
||||
<FormattedMessage defaultMessage="Clear" id="/GCoTA" />
|
||||
</AsyncButton>
|
||||
<AsyncButton
|
||||
|
@ -23,21 +23,20 @@ const ToolMenuItems = [
|
||||
iconBg: "bg-green-800",
|
||||
message: <FormattedMessage defaultMessage="Follows Relay Health" id="XQiFEl" />,
|
||||
path: "follows-relay-health",
|
||||
}
|
||||
},
|
||||
],
|
||||
},
|
||||
{
|
||||
|
||||
title: <FormattedMessage defaultMessage="Account Data" id="IIOul1" />,
|
||||
items: [
|
||||
{
|
||||
icon: "repost",
|
||||
iconBg: "bg-blue-800",
|
||||
message: <FormattedMessage defaultMessage="Sync Account" id="hMQmIw" />,
|
||||
path: "sync-account"
|
||||
}
|
||||
]
|
||||
}
|
||||
path: "sync-account",
|
||||
},
|
||||
],
|
||||
},
|
||||
] as SettingsMenuItems;
|
||||
|
||||
export const ToolsPages = [
|
||||
@ -62,8 +61,8 @@ export const ToolsPages = [
|
||||
},
|
||||
{
|
||||
path: "sync-account",
|
||||
element: <SyncAccountTool />
|
||||
}
|
||||
element: <SyncAccountTool />,
|
||||
},
|
||||
] as Array<RouteObject>;
|
||||
|
||||
export function ToolsPage() {
|
||||
|
@ -1,5 +1,5 @@
|
||||
import { unwrap } from "@snort/shared";
|
||||
import { RangeSync, TaggedNostrEvent } from "@snort/system"
|
||||
import { RangeSync, TaggedNostrEvent } from "@snort/system";
|
||||
import { SnortContext } from "@snort/system-react";
|
||||
import { useContext, useState } from "react";
|
||||
import { FormattedMessage, FormattedNumber } from "react-intl";
|
||||
@ -9,40 +9,56 @@ import useLogin from "@/Hooks/useLogin";
|
||||
import { SearchRelays } from "@/Utils/Const";
|
||||
|
||||
export default function SyncAccountTool() {
|
||||
const system = useContext(SnortContext);
|
||||
const login = useLogin();
|
||||
const [scan, setScan] = useState<number>();
|
||||
const [results, setResults] = useState<Array<TaggedNostrEvent>>([]);
|
||||
const system = useContext(SnortContext);
|
||||
const login = useLogin();
|
||||
const [scan, setScan] = useState<number>();
|
||||
const [results, setResults] = useState<Array<TaggedNostrEvent>>([]);
|
||||
|
||||
async function start() {
|
||||
const relays = Object.entries(login.relays.item).filter(([, v]) => v.write).map(([k,]) => k);
|
||||
const sync = new RangeSync(system);
|
||||
sync.on("event", evs => {
|
||||
setResults(r => [...r, ...evs]);
|
||||
});
|
||||
sync.on("scan", t => setScan(t));
|
||||
await sync.sync({
|
||||
authors: [unwrap(login.publicKey)],
|
||||
relays: [...relays, ...Object.keys(CONFIG.defaultRelays), ...SearchRelays]
|
||||
})
|
||||
}
|
||||
return <>
|
||||
<p>
|
||||
<FormattedMessage defaultMessage="Sync all events for your profile into local cache" id="+QM0PJ" />
|
||||
</p>
|
||||
async function start() {
|
||||
const relays = Object.entries(login.relays.item)
|
||||
.filter(([, v]) => v.write)
|
||||
.map(([k]) => k);
|
||||
const sync = new RangeSync(system);
|
||||
sync.on("event", evs => {
|
||||
setResults(r => [...r, ...evs]);
|
||||
});
|
||||
sync.on("scan", t => setScan(t));
|
||||
await sync.sync({
|
||||
authors: [unwrap(login.publicKey)],
|
||||
relays: [...relays, ...Object.keys(CONFIG.defaultRelays), ...SearchRelays],
|
||||
});
|
||||
}
|
||||
return (
|
||||
<>
|
||||
<p>
|
||||
<FormattedMessage defaultMessage="Sync all events for your profile into local cache" id="+QM0PJ" />
|
||||
</p>
|
||||
|
||||
{results.length > 0 && <h3>
|
||||
<FormattedMessage defaultMessage="Found {n} events" id="ufvXH1" values={{
|
||||
n: <FormattedNumber value={results.length} />
|
||||
}} />
|
||||
</h3>}
|
||||
{scan !== undefined && <h4>
|
||||
<FormattedMessage defaultMessage="Scanning {date}" id="OxPdQ0" values={{
|
||||
date: new Date(scan * 1000).toLocaleDateString()
|
||||
}} />
|
||||
</h4>}
|
||||
<AsyncButton onClick={start}>
|
||||
<FormattedMessage defaultMessage="Start" id="mOFG3K" />
|
||||
</AsyncButton>
|
||||
{results.length > 0 && (
|
||||
<h3>
|
||||
<FormattedMessage
|
||||
defaultMessage="Found {n} events"
|
||||
id="ufvXH1"
|
||||
values={{
|
||||
n: <FormattedNumber value={results.length} />,
|
||||
}}
|
||||
/>
|
||||
</h3>
|
||||
)}
|
||||
{scan !== undefined && (
|
||||
<h4>
|
||||
<FormattedMessage
|
||||
defaultMessage="Scanning {date}"
|
||||
id="OxPdQ0"
|
||||
values={{
|
||||
date: new Date(scan * 1000).toLocaleDateString(),
|
||||
}}
|
||||
/>
|
||||
</h4>
|
||||
)}
|
||||
<AsyncButton onClick={start}>
|
||||
<FormattedMessage defaultMessage="Start" id="mOFG3K" />
|
||||
</AsyncButton>
|
||||
</>
|
||||
}
|
||||
);
|
||||
}
|
||||
|
@ -31,11 +31,7 @@ export const SnortPubKey = "npub1sn0rtcjcf543gj4wsg7fa59s700d5ztys5ctj0g69g2x680
|
||||
/**
|
||||
* Default search relays
|
||||
*/
|
||||
export const SearchRelays = [
|
||||
"wss://relay.nostr.band/",
|
||||
"wss://search.nos.today/",
|
||||
"wss://relay.noswhere.com/",
|
||||
];
|
||||
export const SearchRelays = ["wss://relay.nostr.band/", "wss://search.nos.today/", "wss://relay.noswhere.com/"];
|
||||
|
||||
export const DeveloperAccounts = [
|
||||
"63fe6318dc58583cfe16810f86dd09e18bfd76aabc24a0081ce2856f330504ed", // kieran
|
||||
|
Reference in New Issue
Block a user