diff --git a/public/i18n/en.json b/public/i18n/en.json
index 0c825e2a..6056bd8f 100644
--- a/public/i18n/en.json
+++ b/public/i18n/en.json
@@ -682,7 +682,9 @@
},
"resync": {
"incorrect_balance": "On-chain balance seems incorrect? Try re-syncing the on-chain wallet.",
- "resync_wallet": "Resync wallet"
+ "resync_wallet": "Resync on-chain",
+ "resync_ln": "Resync address",
+ "lightning_address": "Missing payments to your lightning address? Try resyncing. This could take a while, so be patient!"
},
"on_boot": {
"existing_tab": {
diff --git a/src/components/KitchenSink.tsx b/src/components/KitchenSink.tsx
index 88833d65..691c493b 100644
--- a/src/components/KitchenSink.tsx
+++ b/src/components/KitchenSink.tsx
@@ -20,6 +20,7 @@ import {
InnerCard,
MiniStringShower,
Restart,
+ ResyncLnAddress,
ResyncOnchain,
showToast,
SimpleErrorDisplay,
@@ -570,6 +571,8 @@ export function KitchenSink() {
+
+
>
diff --git a/src/components/ResyncLnAddress.tsx b/src/components/ResyncLnAddress.tsx
new file mode 100644
index 00000000..886966ce
--- /dev/null
+++ b/src/components/ResyncLnAddress.tsx
@@ -0,0 +1,32 @@
+import { createSignal } from "solid-js";
+
+import { Button, InnerCard, NiceP, VStack } from "~/components";
+import { useI18n } from "~/i18n/context";
+import { useMegaStore } from "~/state/megaStore";
+
+export function ResyncLnAddress() {
+ const i18n = useI18n();
+ const [_state, _actions, sw] = useMegaStore();
+ const [loading, setLoading] = createSignal(false);
+
+ async function resync() {
+ try {
+ setLoading(true);
+ await sw.resync_lightning_address();
+ } catch (e) {
+ console.error(e);
+ }
+ setLoading(false);
+ }
+
+ return (
+
+
+ {i18n.t("error.resync.lightning_address")}
+
+
+
+ );
+}
diff --git a/src/components/index.ts b/src/components/index.ts
index 5706dba8..7f039e6f 100644
--- a/src/components/index.ts
+++ b/src/components/index.ts
@@ -57,3 +57,4 @@ export * from "./ImportNsecForm";
export * from "./LightningAddressShower";
export * from "./FederationInviteShower";
export * from "./FederationPopup";
+export * from "./ResyncLnAddress";
diff --git a/src/workers/walletWorker.ts b/src/workers/walletWorker.ts
index 8a7242a3..197be961 100644
--- a/src/workers/walletWorker.ts
+++ b/src/workers/walletWorker.ts
@@ -1560,6 +1560,10 @@ export async function estimate_sweep_federation_fee(
return await wallet!.estimate_sweep_federation_fee(amount);
}
+export async function resync_lightning_address(): Promise {
+ await wallet!.resync_lightning_address();
+}
+
export async function parse_params(params: string): Promise {
const paramsResult = await new PaymentParams(params);
// PAIN just another object rebuild