diff options
author | Sebastian <sebasjm@gmail.com> | 2022-06-24 14:28:45 -0300 |
---|---|---|
committer | Sebastian <sebasjm@gmail.com> | 2022-06-24 14:28:45 -0300 |
commit | 73551c83c45b591464e8588a9f6a94ba3e9238f6 (patch) | |
tree | 7f0c2369f24cf779af91303ff3627adc83eb70f4 /packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx | |
parent | 2f8fd783b60af610353119689bb8df05ca7b35ac (diff) | |
download | wallet-core-73551c83c45b591464e8588a9f6a94ba3e9238f6.tar.xz |
fix #7077 file support
Diffstat (limited to 'packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx')
-rw-r--r-- | packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx | 45 |
1 files changed, 29 insertions, 16 deletions
diff --git a/packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx b/packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx index fae53d8dc..c8615da14 100644 --- a/packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx +++ b/packages/anastasis-webui/src/pages/home/RecoveryFinishedScreen.tsx @@ -56,9 +56,11 @@ export function RecoveryFinishedScreen(): VNode { ); } const secret = bytesToString(decodeCrock(encodedSecret.value)); - const contentURI = `data:${encodedSecret.mime},${secret}`; - // const fileName = encodedSecret['filename'] - // data:plain/text;base64,asdasd + const plainText = + encodedSecret.value.length < 1000 && encodedSecret.mime === "text/plain"; + const contentURI = !plainText + ? secret + : `data:${encodedSecret.mime},${secret}`; return ( <AnastasisClientFrame title="Recovery Success" hideNav> <h2 class="subtitle">Your secret was recovered</h2> @@ -68,25 +70,36 @@ export function RecoveryFinishedScreen(): VNode { </p> )} <div class="block buttons" disabled={copied}> - <button - class="button" - onClick={() => { - navigator.clipboard.writeText(secret); - setCopied(true); - }} + {plainText ? ( + <button + class="button" + onClick={() => { + navigator.clipboard.writeText(secret); + setCopied(true); + }} + > + {!copied ? "Copy" : "Copied"} + </button> + ) : undefined} + + <a + class="button is-info" + download={ + encodedSecret.filename ? encodedSecret.filename : "secret.file" + } + href={contentURI} > - {!copied ? "Copy" : "Copied"} - </button> - <a class="button is-info" download="secret.txt" href={contentURI}> <div class="icon is-small "> <i class="mdi mdi-download" /> </div> - <span>Save as</span> + <span>Download content</span> </a> </div> - <div class="block"> - <QR text={secret} /> - </div> + {plainText ? ( + <div class="block"> + <QR text={secret} /> + </div> + ) : undefined} </AnastasisClientFrame> ); } |