Skip to content

Commit f9f069f

Browse files
authored
Merge pull request #2909 from standardnotes/fix/fix-simplenote-converter
fix: fix simplenote converter
2 parents c2bdff0 + f776cb3 commit f9f069f

File tree

1 file changed

+16
-7
lines changed

1 file changed

+16
-7
lines changed

packages/ui-services/src/Import/SimplenoteConverter/SimplenoteConverter.ts

Lines changed: 16 additions & 7 deletions
Original file line numberDiff line numberDiff line change
@@ -50,10 +50,10 @@ export class SimplenoteConverter implements Converter {
5050
return false
5151
}
5252

53-
convert: Converter['convert'] = async (file, { insertNote: createNote, readFileAsText }) => {
53+
convert: Converter['convert'] = async (file, { insertNote: createNote, convertMarkdownToSuper, readFileAsText }) => {
5454
const content = await readFileAsText(file)
5555

56-
const notes = await this.parse(content, createNote)
56+
const notes = await this.parse(content, createNote, convertMarkdownToSuper)
5757

5858
if (!notes) {
5959
throw new Error('Could not parse notes')
@@ -65,13 +65,18 @@ export class SimplenoteConverter implements Converter {
6565
}
6666
}
6767

68-
createNoteFromItem(item: SimplenoteItem, trashed: boolean, createNote: InsertNoteFn): ReturnType<InsertNoteFn> {
68+
createNoteFromItem(
69+
item: SimplenoteItem,
70+
trashed: boolean,
71+
createNote: InsertNoteFn,
72+
convertMarkdownToSuper: (markdown: string) => string,
73+
): ReturnType<InsertNoteFn> {
6974
const createdAtDate = new Date(item.creationDate)
7075
const updatedAtDate = new Date(item.lastModified)
7176

7277
const splitContent = splitAtFirst(item.content, '\r\n')
7378
const title = splitContent[0] ?? createdAtDate.toLocaleString()
74-
const text = splitContent[1] ?? item.content
79+
const text = convertMarkdownToSuper(splitContent[1] ?? item.content)
7580

7681
return createNote({
7782
createdAt: createdAtDate,
@@ -83,14 +88,18 @@ export class SimplenoteConverter implements Converter {
8388
})
8489
}
8590

86-
async parse(data: string, createNote: InsertNoteFn) {
91+
async parse(data: string, createNote: InsertNoteFn, convertMarkdownToSuper: (markdown: string) => string) {
8792
try {
8893
const parsed = JSON.parse(data) as SimplenoteData
8994
const activeNotes = await Promise.all(
90-
parsed.activeNotes.reverse().map((item) => this.createNoteFromItem(item, false, createNote)),
95+
parsed.activeNotes
96+
.reverse()
97+
.map((item) => this.createNoteFromItem(item, false, createNote, convertMarkdownToSuper)),
9198
)
9299
const trashedNotes = await Promise.all(
93-
parsed.trashedNotes.reverse().map((item) => this.createNoteFromItem(item, true, createNote)),
100+
parsed.trashedNotes
101+
.reverse()
102+
.map((item) => this.createNoteFromItem(item, true, createNote, convertMarkdownToSuper)),
94103
)
95104

96105
return [...activeNotes, ...trashedNotes]

0 commit comments

Comments
 (0)