@@ -2471,28 +2471,35 @@ class Block {
24712471 c2 = this . blocks . blockList [ c ] . connections [ 2 ] ;
24722472 if ( this . blocks . blockList [ c2 ] . name === "number" ) {
24732473 if ( this . blocks . blockList [ c1 ] . name === "solfege" ) {
2474- const solfnotes_ = _ ( "ti la sol fa mi re do" ) . split ( " " ) ;
2474+ // English reference for logic
2475+ const solfnotesRef = [ "ti" , "la" , "sol" , "fa" , "mi" , "re" , "do" ] ;
2476+ // Localized notes for display
2477+ const solfnotesLocalized = _ ( "ti la sol fa mi re do" ) . split ( " " ) ;
2478+
24752479 const stripped = this . blocks . blockList [ c1 ] . value
24762480 . replace ( SHARP , "" )
24772481 . replace ( FLAT , "" )
24782482 . replace ( DOUBLESHARP , "" )
24792483 . replace ( DOUBLEFLAT , "" ) ;
2480- const i = [ "ti" , "la" , "sol" , "fa" , "mi" , "re" , "do" ] . indexOf ( stripped ) ;
2484+
2485+ const i = solfnotesRef . indexOf ( stripped ) ;
2486+ if ( i === - 1 ) {
2487+ // fallback if note not found
2488+ return stripped + " " + this . blocks . blockList [ c2 ] . value ;
2489+ }
2490+
24812491 if ( this . blocks . blockList [ c1 ] . value . includes ( SHARP ) ) {
2482- return solfnotes_ [ i ] + SHARP + " " + this . blocks . blockList [ c2 ] . value ;
2492+ return solfnotesLocalized [ i ] + SHARP + " " + this . blocks . blockList [ c2 ] . value ;
24832493 } else if ( this . blocks . blockList [ c1 ] . value . includes ( FLAT ) ) {
2484- return solfnotes_ [ i ] + FLAT + " " + this . blocks . blockList [ c2 ] . value ;
2494+ return solfnotesLocalized [ i ] + FLAT + " " + this . blocks . blockList [ c2 ] . value ;
24852495 } else if ( this . blocks . blockList [ c1 ] . value . includes ( DOUBLESHARP ) ) {
2486- return (
2487- solfnotes_ [ i ] + DOUBLESHARP + " " + this . blocks . blockList [ c2 ] . value
2488- ) ;
2496+ return solfnotesLocalized [ i ] + DOUBLESHARP + " " + this . blocks . blockList [ c2 ] . value ;
24892497 } else if ( this . blocks . blockList [ c1 ] . value . includes ( DOUBLEFLAT ) ) {
2490- return (
2491- solfnotes_ [ i ] + DOUBLEFLAT + " " + this . blocks . blockList [ c2 ] . value
2492- ) ;
2498+ return solfnotesLocalized [ i ] + DOUBLEFLAT + " " + this . blocks . blockList [ c2 ] . value ;
24932499 } else {
2494- return solfnotes_ [ i ] + " " + this . blocks . blockList [ c2 ] . value ;
2500+ return solfnotesLocalized [ i ] + " " + this . blocks . blockList [ c2 ] . value ;
24952501 }
2502+
24962503 } else if ( this . blocks . blockList [ c1 ] . name === "notename" ) {
24972504 return (
24982505 this . blocks . blockList [ c1 ] . value + " " + this . blocks . blockList [ c2 ] . value
0 commit comments