diff --git a/src/app/app.component.html b/src/app/app.component.html
index 1b012e9..f8a40e6 100644
--- a/src/app/app.component.html
+++ b/src/app/app.component.html
@@ -6,5 +6,8 @@
Clear
+
+ Save
+
diff --git a/src/app/app.component.ts b/src/app/app.component.ts
index 2476aa3..a296e85 100644
--- a/src/app/app.component.ts
+++ b/src/app/app.component.ts
@@ -62,4 +62,27 @@ export class AppComponent implements OnInit {
this.elements = [];
localStorage.removeItem(LocalStorageKeys.TRANSLATIONS);
}
+
+ onSaveClicked() {
+ const original_file: NpsFile = JSON.parse(
+ localStorage.getItem(LocalStorageKeys.ORIGINAL_FILE) ?? '{"file_name":"", "original_text":""}',
+ );
+ if (original_file.file_name && original_file.original_text) {
+ const data: TranslateData[] = JSON.parse(localStorage.getItem(LocalStorageKeys.TRANSLATIONS) ?? '[]');
+ if (!data.length) {
+ alert('No data');
+ return;
+ }
+ original_file.translated_text = original_file.original_text;
+ data.forEach((el) => {
+ original_file.translated_text = original_file.translated_text?.replace(el.english_text, el.translated_text);
+ });
+
+ const element = document.createElement('a');
+ const file = new Blob([original_file.translated_text], { type: 'text/plain' });
+ element.href = URL.createObjectURL(file);
+ element.download = original_file.file_name;
+ element.click();
+ }
+ }
}