Revert "fix: sanitize backup file names for windows"

This reverts commit 9d017b5745.
This commit is contained in:
Baptiste Grob
2021-03-12 14:58:41 +01:00
parent 22da9ea942
commit 6c1622f3d3

View File

@@ -7,25 +7,21 @@ import {
PayloadContent,
} from '@standardnotes/snjs';
function sanitizeFileName(name: string) {
return name
.replace(/\//g, '')
.replace(/\\+/g, '')
.replace(/:/g, ' ')
.replace(/\|/g, ' ')
.replace(/\./g, ' ');
}
function zippableTxtName(name: string, suffix = ''): string {
const sanitizedName = sanitizeFileName(name);
const nameEnd = suffix + '.txt';
function zippableTxtName(name: string, suffix = ""): string {
const sanitizedName = name
.replace(/\//g, '')
.replace(/\\+/g, '')
.replace(/:/g, ' ')
.replace(/\./g, ' ');
const nameEnd = suffix + ".txt";
const maxFileNameLength = 255;
return sanitizedName.slice(0, maxFileNameLength - nameEnd.length) + nameEnd;
}
export class ArchiveManager {
private readonly application: WebApplication;
private textFile?: string;
private readonly application: WebApplication
private textFile?: string
constructor(application: WebApplication) {
this.application = application;
@@ -40,9 +36,10 @@ export class ArchiveManager {
if (!data) {
return;
}
const blobData = new Blob([JSON.stringify(data, null, 2)], {
type: 'text/json',
});
const blobData = new Blob(
[JSON.stringify(data, null, 2)],
{ type: 'text/json' }
);
if (encrypted) {
this.downloadData(
blobData,
@@ -88,18 +85,21 @@ export class ArchiveManager {
});
}
private async downloadZippedDecryptedItems(data: BackupFile) {
private async downloadZippedDecryptedItems(
data: BackupFile
) {
await this.loadZip();
const items = data.items;
this.zip.createWriter(
new this.zip.BlobWriter('application/zip'),
async (zipWriter: any) => {
await new Promise((resolve) => {
const blob = new Blob([JSON.stringify(data, null, 2)], {
type: 'text/plain',
});
const blob = new Blob(
[JSON.stringify(data, null, 2)],
{ type: 'text/plain' }
);
const fileName = zippableTxtName(
'Standard Notes Backup and Import File'
'Standard Notes Backup and Import File.txt'
);
zipWriter.add(fileName, new this.zip.BlobReader(blob), resolve);
});
@@ -120,8 +120,7 @@ export class ArchiveManager {
name = '';
}
const blob = new Blob([contents], { type: 'text/plain' });
const fileName =
`Items/${sanitizeFileName(item.content_type)}/` +
const fileName = `Items/${item.content_type}/` +
zippableTxtName(name, `-${item.uuid.split('-')[0]}`);
zipWriter.add(fileName, new this.zip.BlobReader(blob), () => {
index++;
@@ -139,9 +138,7 @@ export class ArchiveManager {
});
};
nextFile();
},
onerror
);
}, onerror);
}
private hrefForData(data: Blob) {