From 434eb3b2569be318d16a4bb2029d2072e451af47 Mon Sep 17 00:00:00 2001 From: Felix Roos Date: Wed, 24 Jan 2024 16:40:26 +0100 Subject: [PATCH] fix: pianoroll sorting --- packages/core/pianoroll.mjs | 9 +++++++-- 1 file changed, 7 insertions(+), 2 deletions(-) diff --git a/packages/core/pianoroll.mjs b/packages/core/pianoroll.mjs index 4a8fd8db..de6fc72b 100644 --- a/packages/core/pianoroll.mjs +++ b/packages/core/pianoroll.mjs @@ -160,8 +160,13 @@ export function pianoroll({ maxMidi = max; valueExtent = maxMidi - minMidi + 1; } - // foldValues = values.sort((a, b) => a - b); - foldValues = values.sort((a, b) => String(a).localeCompare(String(b))); + foldValues = values.sort((a, b) => + typeof a === 'number' && typeof b === 'number' + ? a - b + : typeof a === 'number' + ? 1 + : String(a).localeCompare(String(b)), + ); barThickness = fold ? valueAxis / foldValues.length : valueAxis / valueExtent; ctx.fillStyle = background; ctx.globalAlpha = 1; // reset!