diff --git a/m2d/converters/event-to-message.js b/m2d/converters/event-to-message.js index e7d41df..ef913bb 100644 --- a/m2d/converters/event-to-message.js +++ b/m2d/converters/event-to-message.js @@ -122,7 +122,7 @@ turndownService.addRule("listItem", { if (parent.nodeName === "OL") { var start = parent.getAttribute("start") var index = Array.prototype.indexOf.call(parent.children, node) - prefix = (start ? Number(start) + index : index + 1) + ". " + prefix = (start ? Number(start) + index : index + 1) + ". " } return prefix + content + (node.nextSibling && !/\n$/.test(content) ? "\n" : "") } diff --git a/m2d/converters/event-to-message.test.js b/m2d/converters/event-to-message.test.js index 7581e6b..8bd4223 100644 --- a/m2d/converters/event-to-message.test.js +++ b/m2d/converters/event-to-message.test.js @@ -561,6 +561,48 @@ test("event2message: lists have appropriate line breaks", async t => { ) }) +test("event2message: ordered list start attribute works", async t => { + t.deepEqual( + await eventToMessage({ + content: { + body: 'i am not certain what you mean by "already exists with as discord". my goals are\n' + + '1. bridgeing specific channels with existing matrix rooms\n' + + ' 2. optionally maybe entire "servers"\n' + + '3. offering the bridge as a public service ', + format: 'org.matrix.custom.html', + formatted_body: '

i am not certain what you mean by "already exists with as discord". my goals are

\n' + + '
    \n' + + '
  1. bridgeing specific channels with existing matrix rooms\n' + + '
      \n' + + '
    1. optionally maybe entire "servers"
    2. \n' + + '
    \n' + + '
  2. \n' + + '
  3. offering the bridge as a public service
  4. \n' + + '
\n', + 'm.mentions': {}, + msgtype: 'm.text' + }, + room_id: '!cBxtVRxDlZvSVhJXVK:cadence.moe', + sender: '@Milan:tchncs.de', + type: 'm.room.message', + }, {}, { + api: { + getStateEvent: async () => ({displayname: "Milan"}) + } + }), + { + ensureJoined: [], + messagesToDelete: [], + messagesToEdit: [], + messagesToSend: [{ + username: "Milan", + content: `i am not certain what you mean by "already exists with as discord". my goals are\n\n1. bridgeing specific channels with existing matrix rooms\n 2. optionally maybe entire "servers"\n2. offering the bridge as a public service`, + avatar_url: undefined + }] + } + ) +}) + test("event2message: m.emote plaintext works", async t => { t.deepEqual( await eventToMessage({