cuthbertLab / music21j

Javascript port of music21 -- Toolkit for Computational Musicology
Other
142 stars 41 forks source link

Proper typing for getElementsByClass #238

Closed mscuthbert closed 4 months ago

mscuthbert commented 4 months ago

not yet implemented for recurse()...

When getElementsByClass is passed a single Music21 class, like m21p, now the elements of the StreamIterator will be properly typed.

Note that it does not yet work on recurse() -- I want to make sure that even this change doesn't break my projects first.

.pitches is moved from NotRest to GeneralNote to match recent changes in m21p.

Mixing strings and M21Object classes in lists to getElements calls is no longer allowed. Choose one or the other.

turn off eslint checking for dup methods. Typescript checks this for us, and eslint does not know about overload methods.

rewrite clef.bestClef with modern looping techniques, and taking advantage of the automatic typing. Add test, including recurse test.