Skip to content

Commit

Permalink
Remove fs module from LN page
Browse files Browse the repository at this point in the history
  • Loading branch information
matheusd committed May 13, 2021
1 parent 0b1b911 commit 2bb4946
Show file tree
Hide file tree
Showing 3 changed files with 15 additions and 55 deletions.
28 changes: 1 addition & 27 deletions app/components/views/LNPage/WalletTab/WalletTab.jsx
Original file line number Diff line number Diff line change
Expand Up @@ -3,7 +3,6 @@ import { FormattedMessage as T } from "react-intl";
import { DescriptionHeader } from "layout";
import { Subtitle } from "shared";
import { InfoDocModalButton } from "buttons";
import { ConfirmModal } from "modals";
import BalanceHeader from "./BalanceHeader/BalanceHeader";
import BackupInfoHeader from "./BackupInfoHeader/BackupInfoHeader";
import BackupInfoDetails from "./BackupInfoDetails/BackupInfoDetails";
Expand All @@ -27,11 +26,8 @@ const WalletTab = () => {
info,
scbPath,
scbUpdatedTime,
confirmFileOverwrite,
onBackup,
onVerifyBackup,
onCancelFileOverwrite,
onConfirmFileOverwrite
onVerifyBackup
} = useWalletTab();

const { confirmedBalance, unconfirmedBalance, totalBalance } = walletBalances;
Expand Down Expand Up @@ -71,28 +67,6 @@ const WalletTab = () => {
onVerifyBackup={onVerifyBackup}
/>
</div>
<ConfirmModal
show={!!confirmFileOverwrite}
onCancelModal={onCancelFileOverwrite}
onSubmit={onConfirmFileOverwrite}
modalTitle={
<T
id="ln.confirmBackupOverwrite.title"
m="Confirm Backup Overwrite"
/>
}
modalContent={
<>
<T
id="ln.confirmBackupOverwrite.content"
m="Really overwrite the backup file {file}? The existing backup data will be LOST."
values={{
file: <span>{confirmFileOverwrite}</span>
}}
/>
</>
}
/>
</>
);
};
Expand Down
30 changes: 2 additions & 28 deletions app/components/views/LNPage/WalletTab/hooks.js
Original file line number Diff line number Diff line change
@@ -1,6 +1,5 @@
import { ipcRenderer } from "electron";
import fs from "fs";
import { useEffect, useState } from "react";
import { useEffect } from "react";
import { useLNPage } from "../hooks";

export function useWalletTab() {
Expand All @@ -14,38 +13,16 @@ export function useWalletTab() {
scbUpdatedTime
} = useLNPage();

const [confirmFileOverwrite, setConfirmFileOverwrite] = useState(null);

useEffect(() => {
setTimeout(() => updateWalletBalances(), 1000);
}, [updateWalletBalances]);

const onConfirmFileOverwrite = async () => {
const filePath = confirmFileOverwrite;
if (!filePath) {
return;
}
setConfirmFileOverwrite(null);
await exportBackup(filePath);
};

const onCancelFileOverwrite = () => {
setConfirmFileOverwrite(null);
};

const onBackup = async () => {
setConfirmFileOverwrite(null);
const { filePath } = await ipcRenderer.invoke("show-save-dialog");
if (!filePath) {
return;
}

// If this file already exists, show the confirmation modal.
if (fs.existsSync(filePath)) {
setConfirmFileOverwrite(filePath);
return;
}

await exportBackup(filePath);
};

Expand All @@ -64,10 +41,7 @@ export function useWalletTab() {
info,
scbPath,
scbUpdatedTime,
confirmFileOverwrite,
onBackup,
onVerifyBackup,
onCancelFileOverwrite,
onConfirmFileOverwrite
onVerifyBackup
};
}
12 changes: 12 additions & 0 deletions app/wallet/ln/index.js
Original file line number Diff line number Diff line change
Expand Up @@ -324,6 +324,18 @@ export const exportBackup = (client, destPath) =>
return;
}

// If this file already exists, show the confirmation modal.
if (fs.existsSync(destPath)) {
const confirmOverwrite = ipcRenderer.sendSync(
"confirm-file-overwrite",
destPath
);
if (!confirmOverwrite) {
reject("User canceled file overwrite");
return;
}
}

const data = resp.getMultiChanBackup().getMultiChanBackup();
try {
fs.writeFileSync(destPath, data);
Expand Down

0 comments on commit 2bb4946

Please sign in to comment.