@libraz/libcantus 0.9.3 → 0.9.4

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (198) hide show
  1. package/README.md +2 -2
  2. package/dist/analyze/index.cjs +39 -1947
  3. package/dist/analyze/index.cjs.map +1 -1
  4. package/dist/analyze/index.d.cts +197 -37
  5. package/dist/analyze/index.d.ts +197 -37
  6. package/dist/analyze/index.js +19 -8
  7. package/dist/chunk-36N73KZ3.cjs +246 -0
  8. package/dist/chunk-36N73KZ3.cjs.map +1 -0
  9. package/dist/chunk-4HLLZPXT.cjs +3077 -0
  10. package/dist/chunk-4HLLZPXT.cjs.map +1 -0
  11. package/dist/chunk-7MGZ7D62.cjs +498 -0
  12. package/dist/chunk-7MGZ7D62.cjs.map +1 -0
  13. package/dist/{chunk-4MHA432G.js → chunk-7NKDPF74.js} +403 -180
  14. package/dist/chunk-7NKDPF74.js.map +1 -0
  15. package/dist/chunk-CAN76NCU.cjs +679 -0
  16. package/dist/chunk-CAN76NCU.cjs.map +1 -0
  17. package/dist/{chunk-MIWO425M.js → chunk-D2FAJBYL.js} +101 -34
  18. package/dist/chunk-D2FAJBYL.js.map +1 -0
  19. package/dist/{chunk-SGU7SPLK.js → chunk-EHVEBWM5.js} +1056 -531
  20. package/dist/chunk-EHVEBWM5.js.map +1 -0
  21. package/dist/chunk-FCANXBAT.cjs +30 -0
  22. package/dist/chunk-FCANXBAT.cjs.map +1 -0
  23. package/dist/chunk-FNDWXRRI.cjs +479 -0
  24. package/dist/chunk-FNDWXRRI.cjs.map +1 -0
  25. package/dist/{chunk-IT2O4XFE.js → chunk-GQSGS2N4.js} +43 -24
  26. package/dist/chunk-GQSGS2N4.js.map +1 -0
  27. package/dist/{chunk-62QZKCJQ.js → chunk-HKGYCQ34.js} +10 -6
  28. package/dist/chunk-HKGYCQ34.js.map +1 -0
  29. package/dist/{chunk-AKLYPWIN.js → chunk-I24MV65U.js} +29 -6
  30. package/dist/chunk-I24MV65U.js.map +1 -0
  31. package/dist/{chunk-CHMXELDS.js → chunk-KMHOICIY.js} +311 -181
  32. package/dist/chunk-KMHOICIY.js.map +1 -0
  33. package/dist/chunk-LW53AHQU.cjs +1117 -0
  34. package/dist/chunk-LW53AHQU.cjs.map +1 -0
  35. package/dist/{chunk-2ZWMSJH6.js → chunk-NKIBQ6PT.js} +2 -2
  36. package/dist/chunk-NKIBQ6PT.js.map +1 -0
  37. package/dist/chunk-NP4NA2FB.cjs +106 -0
  38. package/dist/chunk-NP4NA2FB.cjs.map +1 -0
  39. package/dist/chunk-NVE34YGZ.cjs +1449 -0
  40. package/dist/chunk-NVE34YGZ.cjs.map +1 -0
  41. package/dist/{chunk-EH6EM37U.js → chunk-NYYWMV2C.js} +61 -49
  42. package/dist/chunk-NYYWMV2C.js.map +1 -0
  43. package/dist/{chunk-GOAW4VYL.js → chunk-Q2XUP227.js} +243 -117
  44. package/dist/chunk-Q2XUP227.js.map +1 -0
  45. package/dist/chunk-Q6OP4U43.cjs +327 -0
  46. package/dist/chunk-Q6OP4U43.cjs.map +1 -0
  47. package/dist/chunk-RC6GBMCD.cjs +845 -0
  48. package/dist/chunk-RC6GBMCD.cjs.map +1 -0
  49. package/dist/{chunk-C5XYKUVG.js → chunk-RK35RIN7.js} +370 -157
  50. package/dist/chunk-RK35RIN7.js.map +1 -0
  51. package/dist/chunk-RUMU3UA6.cjs +53 -0
  52. package/dist/chunk-RUMU3UA6.cjs.map +1 -0
  53. package/dist/chunk-T64C7ZD7.cjs +1 -0
  54. package/dist/chunk-T64C7ZD7.cjs.map +1 -0
  55. package/dist/chunk-XEBG3G53.js +498 -0
  56. package/dist/chunk-XEBG3G53.js.map +1 -0
  57. package/dist/{chunk-I5R7ZBJS.js → chunk-YLEMGEFH.js} +103 -59
  58. package/dist/chunk-YLEMGEFH.js.map +1 -0
  59. package/dist/chunk-ZEJR4TKL.cjs +173 -0
  60. package/dist/chunk-ZEJR4TKL.cjs.map +1 -0
  61. package/dist/core/index.cjs +130 -647
  62. package/dist/core/index.cjs.map +1 -1
  63. package/dist/core/index.d.cts +301 -39
  64. package/dist/core/index.d.ts +301 -39
  65. package/dist/core/index.js +54 -16
  66. package/dist/{function-DYt4iKsn.d.cts → function-BtiZb9i9.d.ts} +28 -7
  67. package/dist/{function-DVH4Eusr.d.ts → function-DNugAOrt.d.cts} +28 -7
  68. package/dist/generate/index.cjs +28 -4085
  69. package/dist/generate/index.cjs.map +1 -1
  70. package/dist/generate/index.d.cts +370 -62
  71. package/dist/generate/index.d.ts +370 -62
  72. package/dist/generate/index.js +23 -9
  73. package/dist/{index-CxqBQtH1.d.cts → index-6VR8-kit.d.ts} +19 -4
  74. package/dist/index-70p168VM.d.ts +192 -0
  75. package/dist/{index-CpOsP1y9.d.cts → index-Be74mcon.d.cts} +18 -17
  76. package/dist/index-BtXT6UQ0.d.cts +192 -0
  77. package/dist/{index-DxvARIP2.d.ts → index-C5UBbQ4G.d.ts} +18 -17
  78. package/dist/{index-Bt4tOUD9.d.ts → index-C83mZI1P.d.ts} +93 -8
  79. package/dist/{index-Bg5dYMmZ.d.ts → index-D6b6na69.d.cts} +14 -11
  80. package/dist/{index-Cl7mhOFM.d.cts → index-DXd9JikN.d.cts} +92 -10
  81. package/dist/{index-Cl7mhOFM.d.ts → index-DXd9JikN.d.ts} +92 -10
  82. package/dist/index-OG65ocOr.d.cts +272 -0
  83. package/dist/index-OG65ocOr.d.ts +272 -0
  84. package/dist/{index-Jc0Ryi79.d.ts → index-tJhkmQgE.d.cts} +19 -4
  85. package/dist/{index-Dikst44v.d.cts → index-tSQh-xwY.d.ts} +14 -11
  86. package/dist/{index-BNlGP86A.d.cts → index-y_ak9_Hi.d.cts} +93 -8
  87. package/dist/index.cjs +419 -7383
  88. package/dist/index.cjs.map +1 -1
  89. package/dist/index.d.cts +14 -14
  90. package/dist/index.d.ts +14 -14
  91. package/dist/index.js +111 -27
  92. package/dist/model/index.cjs +8 -2562
  93. package/dist/model/index.cjs.map +1 -1
  94. package/dist/model/index.d.cts +433 -75
  95. package/dist/model/index.d.ts +433 -75
  96. package/dist/model/index.js +6 -7
  97. package/dist/styled-DIRkk9Uz.d.ts +506 -0
  98. package/dist/styled-DJbkJQfj.d.cts +506 -0
  99. package/dist/theory/index.cjs +172 -1822
  100. package/dist/theory/index.cjs.map +1 -1
  101. package/dist/theory/index.d.cts +151 -233
  102. package/dist/theory/index.d.ts +151 -233
  103. package/dist/theory/index.js +30 -7
  104. package/dist/{types-MGP29r3t.d.cts → types-BN6_Q9Kl.d.cts} +11 -2
  105. package/dist/{types-MGP29r3t.d.ts → types-BN6_Q9Kl.d.ts} +11 -2
  106. package/package.json +24 -6
  107. package/dist/chunk-2ZWMSJH6.js.map +0 -1
  108. package/dist/chunk-4MHA432G.js.map +0 -1
  109. package/dist/chunk-62QZKCJQ.js.map +0 -1
  110. package/dist/chunk-AKLYPWIN.js.map +0 -1
  111. package/dist/chunk-C5XYKUVG.js.map +0 -1
  112. package/dist/chunk-CHMXELDS.js.map +0 -1
  113. package/dist/chunk-DYWFNC4A.js +0 -152
  114. package/dist/chunk-DYWFNC4A.js.map +0 -1
  115. package/dist/chunk-EH6EM37U.js.map +0 -1
  116. package/dist/chunk-FBQK3ZQN.js +0 -131
  117. package/dist/chunk-FBQK3ZQN.js.map +0 -1
  118. package/dist/chunk-GOAW4VYL.js.map +0 -1
  119. package/dist/chunk-I5R7ZBJS.js.map +0 -1
  120. package/dist/chunk-IT2O4XFE.js.map +0 -1
  121. package/dist/chunk-MIWO425M.js.map +0 -1
  122. package/dist/chunk-SGU7SPLK.js.map +0 -1
  123. package/dist/index-CGMZNCx6.d.cts +0 -140
  124. package/dist/index-CGMZNCx6.d.ts +0 -140
  125. package/dist/index-CnZCo29u.d.cts +0 -108
  126. package/dist/index-JnF4v9bx.d.ts +0 -108
  127. package/dist/styled-DZ7GjShb.d.ts +0 -282
  128. package/dist/styled-ZTbdaVFM.d.cts +0 -282
  129. package/src/analyze/arrange/index.ts +0 -21
  130. package/src/analyze/arrange/internal.ts +0 -127
  131. package/src/analyze/arrange/tension.ts +0 -199
  132. package/src/analyze/arrange/tracks.ts +0 -312
  133. package/src/analyze/detect/index.ts +0 -272
  134. package/src/analyze/functional/borrowed.ts +0 -84
  135. package/src/analyze/functional/cadence.ts +0 -66
  136. package/src/analyze/functional/function.ts +0 -184
  137. package/src/analyze/functional/index.ts +0 -23
  138. package/src/analyze/functional/internal.ts +0 -29
  139. package/src/analyze/functional/roman.ts +0 -402
  140. package/src/analyze/index.ts +0 -49
  141. package/src/analyze/timeline/index.ts +0 -451
  142. package/src/analyze/voice/index.ts +0 -339
  143. package/src/core/event-index/index.ts +0 -104
  144. package/src/core/index.ts +0 -61
  145. package/src/core/interval/index.ts +0 -81
  146. package/src/core/meter/index.ts +0 -302
  147. package/src/core/pitch/index.ts +0 -311
  148. package/src/core/random/index.ts +0 -76
  149. package/src/core/tuning/index.ts +0 -186
  150. package/src/core/types.ts +0 -29
  151. package/src/core/validation/index.ts +0 -119
  152. package/src/generate/bass/index.ts +0 -373
  153. package/src/generate/countermelody/index.ts +0 -470
  154. package/src/generate/drums/beat.ts +0 -266
  155. package/src/generate/drums/euclid.ts +0 -65
  156. package/src/generate/drums/fills.ts +0 -356
  157. package/src/generate/drums/ghost.ts +0 -119
  158. package/src/generate/drums/hihat.ts +0 -285
  159. package/src/generate/drums/hit.ts +0 -31
  160. package/src/generate/drums/index.ts +0 -361
  161. package/src/generate/drums/internal.ts +0 -257
  162. package/src/generate/drums/kick.ts +0 -160
  163. package/src/generate/drums/percussion.ts +0 -121
  164. package/src/generate/drums/rng.ts +0 -7
  165. package/src/generate/drums/swing.ts +0 -71
  166. package/src/generate/groove/index.ts +0 -351
  167. package/src/generate/harmonize/index.ts +0 -451
  168. package/src/generate/index.ts +0 -58
  169. package/src/generate/motif/index.ts +0 -422
  170. package/src/generate/progression/index.ts +0 -362
  171. package/src/generate/reharmony/index.ts +0 -323
  172. package/src/generate/rhythm/index.ts +0 -175
  173. package/src/index.ts +0 -13
  174. package/src/model/chord.ts +0 -442
  175. package/src/model/index.ts +0 -15
  176. package/src/model/interval.ts +0 -82
  177. package/src/model/key.ts +0 -266
  178. package/src/model/note.ts +0 -176
  179. package/src/model/progression.ts +0 -161
  180. package/src/model/shared.ts +0 -12
  181. package/src/theory/chord/index.ts +0 -375
  182. package/src/theory/chordscale/index.ts +0 -374
  183. package/src/theory/counterpoint/index.ts +0 -230
  184. package/src/theory/harmony/index.ts +0 -77
  185. package/src/theory/index.ts +0 -112
  186. package/src/theory/safety/index.ts +0 -488
  187. package/src/theory/scale/degrees.ts +0 -123
  188. package/src/theory/scale/index.ts +0 -28
  189. package/src/theory/scale/key.ts +0 -56
  190. package/src/theory/scale/masks.ts +0 -153
  191. package/src/theory/spelling/index.ts +0 -249
  192. package/src/theory/symbol/index.ts +0 -268
  193. package/src/theory/voicing/index.ts +0 -5
  194. package/src/theory/voicing/internal.ts +0 -168
  195. package/src/theory/voicing/leading.ts +0 -112
  196. package/src/theory/voicing/satb.ts +0 -216
  197. package/src/theory/voicing/styled.ts +0 -199
  198. package/tsconfig.json +0 -23
package/dist/index.d.cts CHANGED
@@ -1,15 +1,15 @@
1
- export { AnalyzedNote, ArrangementAnalysis, ArrangementOptions, ArrangementTrack, Conflict, TensionPoint, TheoryLabel, TrackAnalysis, TrackRole, VoiceNote, analyzeArrangement, analyzeVoice, chordToRoman, romanToChord, tensionCurve } from './analyze/index.cjs';
2
- export { C as ChordMatch, D as DetectChordOptions, K as KeyMatch, d as detectChord, a as detectChordBest, b as detectKey } from './index-CnZCo29u.cjs';
3
- export { B as BorrowedSource, C as Cadence, a as ChordAnalysis, H as HarmonicFunction, b as analyzeChord, c as borrowedSource, d as detectCadence, f as functionOf, i as isBorrowedChord, e as isDiatonic, g as isMinorKey, p as parallelKey, s as secondaryDominant } from './function-DYt4iKsn.cjs';
4
- export { C as CadenceHit, a as ChordSegment, b as ChordTimeline, c as ChordTimelineOptions, d as ChordTimelineResult, e as chordTimelineFromChords, f as chordTimelineFromNotes, g as detectCadences } from './index-CpOsP1y9.cjs';
5
- export { DEFAULT_GENERATION_BUDGET, IndexedNoteEvent, IntervalQuality, JUST_RATIOS, NoteEventIndex, Rng, TWELVE_TET, Tuning, assertFiniteNumber, assertGenerationBudget, assertInteger, assertNoteEvent, assertNoteEvents, assertPositiveInt, assertRange, assertTimeSignature, centsBetweenFreq, centsOfSteps, classifyInterval, createNoteEventIndex, createRng, edo, frequencyOf, isConsonantInterval, isPerfectInterval, justDeviationCents, nearestStep, ratioToCents } from './core/index.cjs';
6
- export { B as BarPosition, T as TimeSignature, b as barPositionToBeat, a as beatToBarPosition, c as beatsPerBar, f as formatTimeSignature, i as isCompound, d as isStrongBeat, m as metricWeight, p as parseTimeSignature, e as pulsesPerBar, t as tuplet } from './index-Cl7mhOFM.cjs';
7
- export { N as NoteData, S as SpelledInterval, f as formatNote, m as midiToNote, n as noteToMidi, a as noteToPitchClass, p as parseNote, s as spelledInterval } from './index-CGMZNCx6.cjs';
8
- export { K as KeyScale, N as NoteEvent } from './types-MGP29r3t.cjs';
9
- export { BassLineOptions, BassSegment, BassStyle, BorrowedChord, CounterMelodyOptions, DrumHit, DrumRole, DrumsOptions, EuclideanKick, GrooveFeel, GrooveSlot, GrooveStyle, GrooveTemplate, HarmonizeOptions, HarmonizeResult, HumanizeOptions, MelodyNote, MotifCell, MotifContour, MotifNote, MotifOptions, MotifTransform, ProgFunction, ProgStyle, ProgressionOptions, ProgressionPreset, RhythmEvent, RhythmOptions, Section, SubstituteOptions, Substitution, SubstitutionType, applyGrooveTemplate, developMotif, extractGrooveTemplate, generateBassLine, generateCounterMelody, generateDrums, generateMotif, generateProgression, generateRhythm, harmonizeMelody, humanize, modalInterchangePalette, negativeHarmonyMirror, onsetWeightCurve, progressions, progressionsByStyle, rhythmDensity, substituteChord, transformMotif } from './generate/index.cjs';
1
+ export { B as BarPosition, T as TimeSignature, b as barPositionToBeat, a as barPositionToPulse, c as beatToBarPosition, d as beatsPerBar, f as formatBarPosition, e as formatTimeSignature, i as isCompound, g as isStrongBeat, m as metricWeight, p as parseTimeSignature, h as pulseBeats, j as pulsesPerBar, t as tuplet } from './index-DXd9JikN.cjs';
2
+ export { K as KeyScale, N as NoteEvent } from './types-BN6_Q9Kl.cjs';
3
+ export { C as ChordData, a as ChordQuality, b as ChordSegment, c as ChordSpan, d as ChordToneRole, P as PitchSpelling, e as chordFromDegree, f as chordPitchClasses, g as chordQualities, h as chordToneRole, i as diatonicSeventh, j as diatonicTriad, k as intervalAboveRoot, l as isChordMember, m as makeChord, t as transposeChord } from './index-y_ak9_Hi.cjs';
4
+ export { E as EvaluateSafetyOptions, N as NoteSafety, R as ReasonFlag, S as SafetyProfile, a as SafetyQuery, b as SafetyResult, V as VoiceSnapshot, e as enumerateSafePitches, c as evaluateSafety } from './index-tJhkmQgE.cjs';
5
+ export { AnalyzedNote, ArrangementAnalysis, ArrangementOptions, ArrangementTrack, ChordToRomanOptions, Conflict, IdentifiedVoiceNote, SuspensionFigure, TensionPoint, TheoryLabel, TrackAnalysis, TrackRole, VoiceNote, analyzeArrangement, analyzeVoice, chordToRoman, romanToChord, tensionCurve, tensionCurveFrom, toVoiceNotes } from './analyze/index.cjs';
6
+ export { C as ChordMatch, D as DetectChordOptions, a as DetectKeyOptions, K as KeyMatch, b as KeyVariant, d as detectChord, c as detectChordBest, e as detectKey, f as detectKeyBest, g as detectKeyFromNotes } from './index-BtXT6UQ0.cjs';
7
+ export { B as BorrowedSource, C as Cadence, a as ChordAnalysis, H as HarmonicFunction, b as analyzeChord, c as borrowedSource, d as detectCadence, f as functionOf, i as isBorrowedChord, e as isDiatonic, g as isMinorKey, p as parallelKey, s as secondaryDominant } from './function-DNugAOrt.cjs';
8
+ export { C as CadenceHit, a as ChordTimeline, b as ChordTimelineOptions, c as ChordTimelineResult, d as chordTimelineFromChords, e as chordTimelineFromNotes, f as detectCadences } from './index-Be74mcon.cjs';
9
+ export { BudgetExceededError, ConsonanceClass, DEFAULT_GENERATION_BUDGET, IndexedNoteEvent, InvalidInputError, JUST_RATIOS, LibcantusErrorCode, NoSolutionError, NoteEventAssertOptions, NoteEventIndex, OnsetTieBreak, Rng, TWELVE_TET, Tuning, assertFiniteNumber, assertGenerationBudget, assertInteger, assertNoteEvent, assertNoteEvents, assertOneOf, assertPositiveInt, assertRange, assertTimeSignature, centsBetweenFreq, centsFromNearestStep, centsOfSteps, centsToRatio, classifyInterval, createNoteEventIndex, createRng, dropSilentNotes, edo, frequencyOf, isConsonantInterval, isLibcantusError, isPerfectInterval, justDeviationCents, nearestStep, ratioToCents, stepOf, stepsOfCents } from './core/index.cjs';
10
+ export { I as IntervalQualityLabel, N as NoteData, S as SpelledInterval, d as diatonicLetterOf, f as formatNote, i as intervalSemitones, m as midiToNote, n as naturalPitchClassOf, a as noteToMidi, b as noteToPitchClass, p as parseInterval, c as parseNote, e as pitchClassOf, s as spelledInterval, t as transposeByInterval, g as transposeNote } from './index-OG65ocOr.cjs';
11
+ export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-D6b6na69.cjs';
12
+ export { BASS_STYLES, BORROWED_DEGREES, BassLineOptions, BassSegment, BassStyle, BorrowedChord, CounterMelodyOptions, DRUM_NOTES, DrumHit, DrumRole, DrumVoice, DrumsOptions, EuclideanKick, GrooveFeel, GrooveSlot, GrooveStyle, GrooveTemplate, HarmonizeOptions, HarmonizePlacement, HarmonizeResult, HumanizeOptions, MelodyNote, MotifCell, MotifContour, MotifNote, MotifOptions, MotifTransform, ProgFunction, ProgStyle, ProgressionDegree, ProgressionOptions, ProgressionPreset, RhythmEvent, RhythmOptions, Section, SubstituteOptions, Substitution, SubstitutionType, applyGrooveTemplate, developMotif, drumVoiceOf, extractGrooveTemplate, generateBassLine, generateCounterMelody, generateDrums, generateMotif, generateProgression, generateRhythm, harmonizeMelody, humanize, modalInterchangePalette, motifToNoteEvents, negativeHarmonyMirror, onsetWeightCurve, pickProgressionPreset, progressions, progressionsByStyle, rhythmDensity, rhythmToNoteEvents, substituteChord, transformMotif } from './generate/index.cjs';
13
+ export { A as ALTERED_MASK, B as BLUES_MASK, C as CHROMATIC_MASK, a as ChordScaleMatch, b as ChordScaleReportEntry, D as DORIAN_MASK, H as HARMONIC_MINOR_MASK, L as LOCRIAN_MASK, c as LOCRIAN_NATURAL2_MASK, d as LYDIAN_DOMINANT_MASK, e as LYDIAN_MASK, M as MAJOR_MASK, f as MAJOR_PENTATONIC_MASK, g as MELODIC_MINOR_MASK, h as MINOR_PENTATONIC_MASK, i as MIXOLYDIAN_B13_MASK, j as MIXOLYDIAN_MASK, N as NAMED_SCALES, k as NATURAL_MINOR_MASK, O as OCTATONIC_HALF_WHOLE_MASK, l as OCTATONIC_WHOLE_HALF_MASK, P as PHRYGIAN_DOMINANT_MASK, m as PHRYGIAN_MASK, S as SATB_RANGES, n as ScaleChoice, o as ScaleName, p as ScaleNameInput, q as StyledVoicingOptions, V as VoiceRange, r as VoicingOptions, s as VoicingStyle, W as WHOLE_TONE_MASK, t as availableTensions, u as avoidNotes, v as chordScaleReport, w as chordScales, x as maskFromOffsets, y as namedScaleMask, z as requireScaleMask, E as scaleMatchesChord, F as scalesForChanges, G as voiceChord, I as voiceChordStyled, J as voiceProgression } from './styled-DJbkJQfj.cjs';
14
+ export { createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, formatChordSymbol, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, minorKey, nearestScaleTone, nextVoicing, noteNames, parseChordSymbol, pitchToScaleDegree, scaleByName, scaleTonesInDegreeOrder, spellChord, spellChordFromRoot, spellPitch, spellPitchClass, spellPitchClasses, spellScale, transposeChordSymbol, voiceLeadingCost } from './theory/index.cjs';
10
15
  export { Chord, Interval, Key, Note, Progression } from './model/index.cjs';
11
- export { C as ChordData, a as ChordQuality, b as ChordSpan, P as PitchSpelling, c as chordFromDegree, d as chordPitchClasses, e as chordQualities, f as chordToneRole, g as diatonicSeventh, h as diatonicTriad, m as makeChord } from './index-BNlGP86A.cjs';
12
- export { C as ChordScaleMatch, a as ChordScaleReportEntry, S as SATB_RANGES, b as ScaleChoice, c as StyledVoicingOptions, V as VoiceRange, d as VoicingOptions, e as VoicingStyle, f as availableTensions, g as avoidNotes, h as chordScaleReport, i as chordScales, s as scaleMatchesChord, j as scalesForChanges, v as voiceChord, k as voiceChordStyled, l as voiceProgression } from './styled-ZTbdaVFM.cjs';
13
- export { BLUES_MASK, CHROMATIC_MASK, DORIAN_MASK, HARMONIC_MINOR_MASK, LOCRIAN_MASK, LYDIAN_MASK, MAJOR_MASK, MAJOR_PENTATONIC_MASK, MELODIC_MINOR_MASK, MINOR_PENTATONIC_MASK, MIXOLYDIAN_MASK, NAMED_SCALES, NATURAL_MINOR_MASK, OCTATONIC_HALF_WHOLE_MASK, OCTATONIC_WHOLE_HALF_MASK, PHRYGIAN_MASK, WHOLE_TONE_MASK, createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, formatChordSymbol, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, maskFromOffsets, minorKey, nearestScaleTone, nextVoicing, noteNames, parseChordSymbol, pitchToScaleDegree, scaleByName, scaleTonesInDegreeOrder, spellChord, spellPitchClass, spellPitchClasses, spellScale, transposeChordSymbol, voiceLeadingCost } from './theory/index.cjs';
14
- export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-Dikst44v.cjs';
15
- export { N as NoteSafety, R as ReasonFlag, S as SafetyProfile, a as SafetyQuery, b as SafetyResult, V as VoiceSnapshot, e as enumerateSafePitches, c as evaluateSafety } from './index-CxqBQtH1.cjs';
package/dist/index.d.ts CHANGED
@@ -1,15 +1,15 @@
1
- export { AnalyzedNote, ArrangementAnalysis, ArrangementOptions, ArrangementTrack, Conflict, TensionPoint, TheoryLabel, TrackAnalysis, TrackRole, VoiceNote, analyzeArrangement, analyzeVoice, chordToRoman, romanToChord, tensionCurve } from './analyze/index.js';
2
- export { C as ChordMatch, D as DetectChordOptions, K as KeyMatch, d as detectChord, a as detectChordBest, b as detectKey } from './index-JnF4v9bx.js';
3
- export { B as BorrowedSource, C as Cadence, a as ChordAnalysis, H as HarmonicFunction, b as analyzeChord, c as borrowedSource, d as detectCadence, f as functionOf, i as isBorrowedChord, e as isDiatonic, g as isMinorKey, p as parallelKey, s as secondaryDominant } from './function-DVH4Eusr.js';
4
- export { C as CadenceHit, a as ChordSegment, b as ChordTimeline, c as ChordTimelineOptions, d as ChordTimelineResult, e as chordTimelineFromChords, f as chordTimelineFromNotes, g as detectCadences } from './index-DxvARIP2.js';
5
- export { DEFAULT_GENERATION_BUDGET, IndexedNoteEvent, IntervalQuality, JUST_RATIOS, NoteEventIndex, Rng, TWELVE_TET, Tuning, assertFiniteNumber, assertGenerationBudget, assertInteger, assertNoteEvent, assertNoteEvents, assertPositiveInt, assertRange, assertTimeSignature, centsBetweenFreq, centsOfSteps, classifyInterval, createNoteEventIndex, createRng, edo, frequencyOf, isConsonantInterval, isPerfectInterval, justDeviationCents, nearestStep, ratioToCents } from './core/index.js';
6
- export { B as BarPosition, T as TimeSignature, b as barPositionToBeat, a as beatToBarPosition, c as beatsPerBar, f as formatTimeSignature, i as isCompound, d as isStrongBeat, m as metricWeight, p as parseTimeSignature, e as pulsesPerBar, t as tuplet } from './index-Cl7mhOFM.js';
7
- export { N as NoteData, S as SpelledInterval, f as formatNote, m as midiToNote, n as noteToMidi, a as noteToPitchClass, p as parseNote, s as spelledInterval } from './index-CGMZNCx6.js';
8
- export { K as KeyScale, N as NoteEvent } from './types-MGP29r3t.js';
9
- export { BassLineOptions, BassSegment, BassStyle, BorrowedChord, CounterMelodyOptions, DrumHit, DrumRole, DrumsOptions, EuclideanKick, GrooveFeel, GrooveSlot, GrooveStyle, GrooveTemplate, HarmonizeOptions, HarmonizeResult, HumanizeOptions, MelodyNote, MotifCell, MotifContour, MotifNote, MotifOptions, MotifTransform, ProgFunction, ProgStyle, ProgressionOptions, ProgressionPreset, RhythmEvent, RhythmOptions, Section, SubstituteOptions, Substitution, SubstitutionType, applyGrooveTemplate, developMotif, extractGrooveTemplate, generateBassLine, generateCounterMelody, generateDrums, generateMotif, generateProgression, generateRhythm, harmonizeMelody, humanize, modalInterchangePalette, negativeHarmonyMirror, onsetWeightCurve, progressions, progressionsByStyle, rhythmDensity, substituteChord, transformMotif } from './generate/index.js';
1
+ export { B as BarPosition, T as TimeSignature, b as barPositionToBeat, a as barPositionToPulse, c as beatToBarPosition, d as beatsPerBar, f as formatBarPosition, e as formatTimeSignature, i as isCompound, g as isStrongBeat, m as metricWeight, p as parseTimeSignature, h as pulseBeats, j as pulsesPerBar, t as tuplet } from './index-DXd9JikN.js';
2
+ export { K as KeyScale, N as NoteEvent } from './types-BN6_Q9Kl.js';
3
+ export { C as ChordData, a as ChordQuality, b as ChordSegment, c as ChordSpan, d as ChordToneRole, P as PitchSpelling, e as chordFromDegree, f as chordPitchClasses, g as chordQualities, h as chordToneRole, i as diatonicSeventh, j as diatonicTriad, k as intervalAboveRoot, l as isChordMember, m as makeChord, t as transposeChord } from './index-C83mZI1P.js';
4
+ export { E as EvaluateSafetyOptions, N as NoteSafety, R as ReasonFlag, S as SafetyProfile, a as SafetyQuery, b as SafetyResult, V as VoiceSnapshot, e as enumerateSafePitches, c as evaluateSafety } from './index-6VR8-kit.js';
5
+ export { AnalyzedNote, ArrangementAnalysis, ArrangementOptions, ArrangementTrack, ChordToRomanOptions, Conflict, IdentifiedVoiceNote, SuspensionFigure, TensionPoint, TheoryLabel, TrackAnalysis, TrackRole, VoiceNote, analyzeArrangement, analyzeVoice, chordToRoman, romanToChord, tensionCurve, tensionCurveFrom, toVoiceNotes } from './analyze/index.js';
6
+ export { C as ChordMatch, D as DetectChordOptions, a as DetectKeyOptions, K as KeyMatch, b as KeyVariant, d as detectChord, c as detectChordBest, e as detectKey, f as detectKeyBest, g as detectKeyFromNotes } from './index-70p168VM.js';
7
+ export { B as BorrowedSource, C as Cadence, a as ChordAnalysis, H as HarmonicFunction, b as analyzeChord, c as borrowedSource, d as detectCadence, f as functionOf, i as isBorrowedChord, e as isDiatonic, g as isMinorKey, p as parallelKey, s as secondaryDominant } from './function-BtiZb9i9.js';
8
+ export { C as CadenceHit, a as ChordTimeline, b as ChordTimelineOptions, c as ChordTimelineResult, d as chordTimelineFromChords, e as chordTimelineFromNotes, f as detectCadences } from './index-C5UBbQ4G.js';
9
+ export { BudgetExceededError, ConsonanceClass, DEFAULT_GENERATION_BUDGET, IndexedNoteEvent, InvalidInputError, JUST_RATIOS, LibcantusErrorCode, NoSolutionError, NoteEventAssertOptions, NoteEventIndex, OnsetTieBreak, Rng, TWELVE_TET, Tuning, assertFiniteNumber, assertGenerationBudget, assertInteger, assertNoteEvent, assertNoteEvents, assertOneOf, assertPositiveInt, assertRange, assertTimeSignature, centsBetweenFreq, centsFromNearestStep, centsOfSteps, centsToRatio, classifyInterval, createNoteEventIndex, createRng, dropSilentNotes, edo, frequencyOf, isConsonantInterval, isLibcantusError, isPerfectInterval, justDeviationCents, nearestStep, ratioToCents, stepOf, stepsOfCents } from './core/index.js';
10
+ export { I as IntervalQualityLabel, N as NoteData, S as SpelledInterval, d as diatonicLetterOf, f as formatNote, i as intervalSemitones, m as midiToNote, n as naturalPitchClassOf, a as noteToMidi, b as noteToPitchClass, p as parseInterval, c as parseNote, e as pitchClassOf, s as spelledInterval, t as transposeByInterval, g as transposeNote } from './index-OG65ocOr.js';
11
+ export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-tSQh-xwY.js';
12
+ export { BASS_STYLES, BORROWED_DEGREES, BassLineOptions, BassSegment, BassStyle, BorrowedChord, CounterMelodyOptions, DRUM_NOTES, DrumHit, DrumRole, DrumVoice, DrumsOptions, EuclideanKick, GrooveFeel, GrooveSlot, GrooveStyle, GrooveTemplate, HarmonizeOptions, HarmonizePlacement, HarmonizeResult, HumanizeOptions, MelodyNote, MotifCell, MotifContour, MotifNote, MotifOptions, MotifTransform, ProgFunction, ProgStyle, ProgressionDegree, ProgressionOptions, ProgressionPreset, RhythmEvent, RhythmOptions, Section, SubstituteOptions, Substitution, SubstitutionType, applyGrooveTemplate, developMotif, drumVoiceOf, extractGrooveTemplate, generateBassLine, generateCounterMelody, generateDrums, generateMotif, generateProgression, generateRhythm, harmonizeMelody, humanize, modalInterchangePalette, motifToNoteEvents, negativeHarmonyMirror, onsetWeightCurve, pickProgressionPreset, progressions, progressionsByStyle, rhythmDensity, rhythmToNoteEvents, substituteChord, transformMotif } from './generate/index.js';
13
+ export { A as ALTERED_MASK, B as BLUES_MASK, C as CHROMATIC_MASK, a as ChordScaleMatch, b as ChordScaleReportEntry, D as DORIAN_MASK, H as HARMONIC_MINOR_MASK, L as LOCRIAN_MASK, c as LOCRIAN_NATURAL2_MASK, d as LYDIAN_DOMINANT_MASK, e as LYDIAN_MASK, M as MAJOR_MASK, f as MAJOR_PENTATONIC_MASK, g as MELODIC_MINOR_MASK, h as MINOR_PENTATONIC_MASK, i as MIXOLYDIAN_B13_MASK, j as MIXOLYDIAN_MASK, N as NAMED_SCALES, k as NATURAL_MINOR_MASK, O as OCTATONIC_HALF_WHOLE_MASK, l as OCTATONIC_WHOLE_HALF_MASK, P as PHRYGIAN_DOMINANT_MASK, m as PHRYGIAN_MASK, S as SATB_RANGES, n as ScaleChoice, o as ScaleName, p as ScaleNameInput, q as StyledVoicingOptions, V as VoiceRange, r as VoicingOptions, s as VoicingStyle, W as WHOLE_TONE_MASK, t as availableTensions, u as avoidNotes, v as chordScaleReport, w as chordScales, x as maskFromOffsets, y as namedScaleMask, z as requireScaleMask, E as scaleMatchesChord, F as scalesForChanges, G as voiceChord, I as voiceChordStyled, J as voiceProgression } from './styled-DIRkk9Uz.js';
14
+ export { createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, formatChordSymbol, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, minorKey, nearestScaleTone, nextVoicing, noteNames, parseChordSymbol, pitchToScaleDegree, scaleByName, scaleTonesInDegreeOrder, spellChord, spellChordFromRoot, spellPitch, spellPitchClass, spellPitchClasses, spellScale, transposeChordSymbol, voiceLeadingCost } from './theory/index.js';
10
15
  export { Chord, Interval, Key, Note, Progression } from './model/index.js';
11
- export { C as ChordData, a as ChordQuality, b as ChordSpan, P as PitchSpelling, c as chordFromDegree, d as chordPitchClasses, e as chordQualities, f as chordToneRole, g as diatonicSeventh, h as diatonicTriad, m as makeChord } from './index-Bt4tOUD9.js';
12
- export { C as ChordScaleMatch, a as ChordScaleReportEntry, S as SATB_RANGES, b as ScaleChoice, c as StyledVoicingOptions, V as VoiceRange, d as VoicingOptions, e as VoicingStyle, f as availableTensions, g as avoidNotes, h as chordScaleReport, i as chordScales, s as scaleMatchesChord, j as scalesForChanges, v as voiceChord, k as voiceChordStyled, l as voiceProgression } from './styled-DZ7GjShb.js';
13
- export { BLUES_MASK, CHROMATIC_MASK, DORIAN_MASK, HARMONIC_MINOR_MASK, LOCRIAN_MASK, LYDIAN_MASK, MAJOR_MASK, MAJOR_PENTATONIC_MASK, MELODIC_MINOR_MASK, MINOR_PENTATONIC_MASK, MIXOLYDIAN_MASK, NAMED_SCALES, NATURAL_MINOR_MASK, OCTATONIC_HALF_WHOLE_MASK, OCTATONIC_WHOLE_HALF_MASK, PHRYGIAN_MASK, WHOLE_TONE_MASK, createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, formatChordSymbol, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, maskFromOffsets, minorKey, nearestScaleTone, nextVoicing, noteNames, parseChordSymbol, pitchToScaleDegree, scaleByName, scaleTonesInDegreeOrder, spellChord, spellPitchClass, spellPitchClasses, spellScale, transposeChordSymbol, voiceLeadingCost } from './theory/index.js';
14
- export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-Bg5dYMmZ.js';
15
- export { N as NoteSafety, R as ReasonFlag, S as SafetyProfile, a as SafetyQuery, b as SafetyResult, V as VoiceSnapshot, e as enumerateSafePitches, c as evaluateSafety } from './index-Jc0Ryi79.js';
package/dist/index.js CHANGED
@@ -4,22 +4,32 @@ import {
4
4
  chordTimelineFromChords,
5
5
  chordTimelineFromNotes,
6
6
  detectCadences,
7
- tensionCurve
8
- } from "./chunk-GOAW4VYL.js";
7
+ tensionCurve,
8
+ tensionCurveFrom,
9
+ toVoiceNotes
10
+ } from "./chunk-Q2XUP227.js";
9
11
  import {
10
12
  JUST_RATIOS,
11
13
  TWELVE_TET,
12
14
  centsBetweenFreq,
15
+ centsFromNearestStep,
13
16
  centsOfSteps,
17
+ centsToRatio,
14
18
  edo,
15
19
  frequencyOf,
16
20
  justDeviationCents,
17
21
  nearestStep,
18
- ratioToCents
19
- } from "./chunk-AKLYPWIN.js";
22
+ ratioToCents,
23
+ stepOf,
24
+ stepsOfCents
25
+ } from "./chunk-I24MV65U.js";
20
26
  import {
27
+ BASS_STYLES,
28
+ BORROWED_DEGREES,
29
+ DRUM_NOTES,
21
30
  applyGrooveTemplate,
22
31
  developMotif,
32
+ drumVoiceOf,
23
33
  extractGrooveTemplate,
24
34
  generateBassLine,
25
35
  generateCounterMelody,
@@ -29,40 +39,46 @@ import {
29
39
  generateRhythm,
30
40
  harmonizeMelody,
31
41
  humanize,
42
+ motifToNoteEvents,
32
43
  onsetWeightCurve,
44
+ pickProgressionPreset,
33
45
  progressions,
34
46
  progressionsByStyle,
35
47
  rhythmDensity,
48
+ rhythmToNoteEvents,
36
49
  transformMotif
37
- } from "./chunk-4MHA432G.js";
50
+ } from "./chunk-7NKDPF74.js";
38
51
  import {
39
52
  createRng
40
- } from "./chunk-62QZKCJQ.js";
53
+ } from "./chunk-HKGYCQ34.js";
41
54
  import {
42
55
  barPositionToBeat,
56
+ barPositionToPulse,
43
57
  beatToBarPosition,
44
58
  beatsPerBar,
45
59
  createNoteEventIndex,
60
+ formatBarPosition,
46
61
  formatTimeSignature,
47
62
  isCompound,
48
63
  isStrongBeat,
49
64
  metricWeight,
50
65
  parseTimeSignature,
66
+ pulseBeats,
51
67
  pulsesPerBar,
52
68
  tuplet
53
- } from "./chunk-I5R7ZBJS.js";
69
+ } from "./chunk-YLEMGEFH.js";
54
70
  import {
55
71
  Chord,
56
72
  Interval,
57
73
  Key,
58
74
  Note,
59
75
  Progression
60
- } from "./chunk-SGU7SPLK.js";
76
+ } from "./chunk-EHVEBWM5.js";
61
77
  import {
62
78
  modalInterchangePalette,
63
79
  negativeHarmonyMirror,
64
80
  substituteChord
65
- } from "./chunk-IT2O4XFE.js";
81
+ } from "./chunk-GQSGS2N4.js";
66
82
  import {
67
83
  analyzeChord,
68
84
  borrowedSource,
@@ -71,6 +87,8 @@ import {
71
87
  detectChord,
72
88
  detectChordBest,
73
89
  detectKey,
90
+ detectKeyBest,
91
+ detectKeyFromNotes,
74
92
  functionOf,
75
93
  isBorrowedChord,
76
94
  isDiatonic,
@@ -78,17 +96,17 @@ import {
78
96
  parallelKey,
79
97
  romanToChord,
80
98
  secondaryDominant
81
- } from "./chunk-CHMXELDS.js";
99
+ } from "./chunk-KMHOICIY.js";
82
100
  import "./chunk-N6IHQUOX.js";
83
101
  import {
84
102
  roleOf
85
- } from "./chunk-2ZWMSJH6.js";
103
+ } from "./chunk-NKIBQ6PT.js";
86
104
  import {
87
105
  NoteSafety,
88
106
  ReasonFlag,
89
107
  enumerateSafePitches,
90
108
  evaluateSafety
91
- } from "./chunk-EH6EM37U.js";
109
+ } from "./chunk-NYYWMV2C.js";
92
110
  import {
93
111
  SATB_RANGES,
94
112
  availableTensions,
@@ -102,6 +120,8 @@ import {
102
120
  scaleMatchesChord,
103
121
  scalesForChanges,
104
122
  spellChord,
123
+ spellChordFromRoot,
124
+ spellPitch,
105
125
  spellPitchClass,
106
126
  spellPitchClasses,
107
127
  spellScale,
@@ -110,31 +130,28 @@ import {
110
130
  voiceChordStyled,
111
131
  voiceLeadingCost,
112
132
  voiceProgression
113
- } from "./chunk-C5XYKUVG.js";
114
- import {
115
- formatNote,
116
- midiToNote,
117
- noteToMidi,
118
- noteToPitchClass,
119
- parseNote,
120
- spelledInterval
121
- } from "./chunk-DYWFNC4A.js";
133
+ } from "./chunk-RK35RIN7.js";
122
134
  import {
135
+ ALTERED_MASK,
123
136
  BLUES_MASK,
124
137
  CHROMATIC_MASK,
125
138
  DORIAN_MASK,
126
139
  HARMONIC_MINOR_MASK,
127
140
  LOCRIAN_MASK,
141
+ LOCRIAN_NATURAL2_MASK,
142
+ LYDIAN_DOMINANT_MASK,
128
143
  LYDIAN_MASK,
129
144
  MAJOR_MASK,
130
145
  MAJOR_PENTATONIC_MASK,
131
146
  MELODIC_MINOR_MASK,
132
147
  MINOR_PENTATONIC_MASK,
148
+ MIXOLYDIAN_B13_MASK,
133
149
  MIXOLYDIAN_MASK,
134
150
  NAMED_SCALES,
135
151
  NATURAL_MINOR_MASK,
136
152
  OCTATONIC_HALF_WHOLE_MASK,
137
153
  OCTATONIC_WHOLE_HALF_MASK,
154
+ PHRYGIAN_DOMINANT_MASK,
138
155
  PHRYGIAN_MASK,
139
156
  WHOLE_TONE_MASK,
140
157
  chordFromDegree,
@@ -152,6 +169,8 @@ import {
152
169
  diatonicSeventh,
153
170
  diatonicTriad,
154
171
  exceedsSpacing,
172
+ intervalAboveRoot,
173
+ isChordMember,
155
174
  isForbiddenMelodicLeap,
156
175
  isLeadingToneResolution,
157
176
  isScaleTone,
@@ -159,50 +178,83 @@ import {
159
178
  makeChord,
160
179
  maskFromOffsets,
161
180
  minorKey,
181
+ namedScaleMask,
162
182
  nearestScaleTone,
163
183
  pitchToScaleDegree,
184
+ requireScaleMask,
164
185
  scaleByName,
165
- scaleTonesInDegreeOrder
166
- } from "./chunk-MIWO425M.js";
186
+ scaleTonesInDegreeOrder,
187
+ transposeChord
188
+ } from "./chunk-D2FAJBYL.js";
167
189
  import {
190
+ BudgetExceededError,
191
+ ConsonanceClass,
168
192
  DEFAULT_GENERATION_BUDGET,
169
- IntervalQuality,
193
+ InvalidInputError,
194
+ NoSolutionError,
170
195
  assertFiniteNumber,
171
196
  assertGenerationBudget,
172
197
  assertInteger,
173
198
  assertNoteEvent,
174
199
  assertNoteEvents,
200
+ assertOneOf,
175
201
  assertPositiveInt,
176
202
  assertRange,
177
203
  assertTimeSignature,
178
204
  classifyInterval,
205
+ diatonicLetterOf,
206
+ dropSilentNotes,
207
+ formatNote,
208
+ intervalSemitones,
179
209
  isConsonantInterval,
180
- isPerfectInterval
181
- } from "./chunk-FBQK3ZQN.js";
210
+ isLibcantusError,
211
+ isPerfectInterval,
212
+ midiToNote,
213
+ naturalPitchClassOf,
214
+ noteToMidi,
215
+ noteToPitchClass,
216
+ parseInterval,
217
+ parseNote,
218
+ pitchClassOf,
219
+ spelledInterval,
220
+ transposeByInterval,
221
+ transposeNote
222
+ } from "./chunk-XEBG3G53.js";
182
223
  export {
224
+ ALTERED_MASK,
225
+ BASS_STYLES,
183
226
  BLUES_MASK,
227
+ BORROWED_DEGREES,
228
+ BudgetExceededError,
184
229
  CHROMATIC_MASK,
185
230
  Chord,
231
+ ConsonanceClass,
186
232
  DEFAULT_GENERATION_BUDGET,
187
233
  DORIAN_MASK,
234
+ DRUM_NOTES,
188
235
  HARMONIC_MINOR_MASK,
189
236
  Interval,
190
- IntervalQuality,
237
+ InvalidInputError,
191
238
  JUST_RATIOS,
192
239
  Key,
193
240
  LOCRIAN_MASK,
241
+ LOCRIAN_NATURAL2_MASK,
242
+ LYDIAN_DOMINANT_MASK,
194
243
  LYDIAN_MASK,
195
244
  MAJOR_MASK,
196
245
  MAJOR_PENTATONIC_MASK,
197
246
  MELODIC_MINOR_MASK,
198
247
  MINOR_PENTATONIC_MASK,
248
+ MIXOLYDIAN_B13_MASK,
199
249
  MIXOLYDIAN_MASK,
200
250
  NAMED_SCALES,
201
251
  NATURAL_MINOR_MASK,
252
+ NoSolutionError,
202
253
  Note,
203
254
  NoteSafety,
204
255
  OCTATONIC_HALF_WHOLE_MASK,
205
256
  OCTATONIC_WHOLE_HALF_MASK,
257
+ PHRYGIAN_DOMINANT_MASK,
206
258
  PHRYGIAN_MASK,
207
259
  Progression,
208
260
  ReasonFlag,
@@ -218,17 +270,21 @@ export {
218
270
  assertInteger,
219
271
  assertNoteEvent,
220
272
  assertNoteEvents,
273
+ assertOneOf,
221
274
  assertPositiveInt,
222
275
  assertRange,
223
276
  assertTimeSignature,
224
277
  availableTensions,
225
278
  avoidNotes,
226
279
  barPositionToBeat,
280
+ barPositionToPulse,
227
281
  beatToBarPosition,
228
282
  beatsPerBar,
229
283
  borrowedSource,
230
284
  centsBetweenFreq,
285
+ centsFromNearestStep,
231
286
  centsOfSteps,
287
+ centsToRatio,
232
288
  chordFromDegree,
233
289
  chordPitchClasses,
234
290
  chordQualities,
@@ -253,15 +309,21 @@ export {
253
309
  detectChord,
254
310
  detectChordBest,
255
311
  detectKey,
312
+ detectKeyBest,
313
+ detectKeyFromNotes,
256
314
  developMotif,
315
+ diatonicLetterOf,
257
316
  diatonicPitchClasses,
258
317
  diatonicSeventh,
259
318
  diatonicTriad,
319
+ dropSilentNotes,
320
+ drumVoiceOf,
260
321
  edo,
261
322
  enumerateSafePitches,
262
323
  evaluateSafety,
263
324
  exceedsSpacing,
264
325
  extractGrooveTemplate,
326
+ formatBarPosition,
265
327
  formatChordSymbol,
266
328
  formatNote,
267
329
  formatTimeSignature,
@@ -275,12 +337,16 @@ export {
275
337
  generateRhythm,
276
338
  harmonizeMelody,
277
339
  humanize,
340
+ intervalAboveRoot,
341
+ intervalSemitones,
278
342
  isBorrowedChord,
343
+ isChordMember,
279
344
  isCompound,
280
345
  isConsonantInterval,
281
346
  isDiatonic,
282
347
  isForbiddenMelodicLeap,
283
348
  isLeadingToneResolution,
349
+ isLibcantusError,
284
350
  isMinorKey,
285
351
  isPerfectInterval,
286
352
  isScaleTone,
@@ -293,6 +359,9 @@ export {
293
359
  midiToNote,
294
360
  minorKey,
295
361
  modalInterchangePalette,
362
+ motifToNoteEvents,
363
+ namedScaleMask,
364
+ naturalPitchClassOf,
296
365
  nearestScaleTone,
297
366
  nearestStep,
298
367
  negativeHarmonyMirror,
@@ -303,14 +372,20 @@ export {
303
372
  onsetWeightCurve,
304
373
  parallelKey,
305
374
  parseChordSymbol,
375
+ parseInterval,
306
376
  parseNote,
307
377
  parseTimeSignature,
378
+ pickProgressionPreset,
379
+ pitchClassOf,
308
380
  pitchToScaleDegree,
309
381
  progressions,
310
382
  progressionsByStyle,
383
+ pulseBeats,
311
384
  pulsesPerBar,
312
385
  ratioToCents,
386
+ requireScaleMask,
313
387
  rhythmDensity,
388
+ rhythmToNoteEvents,
314
389
  roleOf,
315
390
  romanToChord,
316
391
  scaleByName,
@@ -319,14 +394,23 @@ export {
319
394
  scalesForChanges,
320
395
  secondaryDominant,
321
396
  spellChord,
397
+ spellChordFromRoot,
398
+ spellPitch,
322
399
  spellPitchClass,
323
400
  spellPitchClasses,
324
401
  spellScale,
325
402
  spelledInterval,
403
+ stepOf,
404
+ stepsOfCents,
326
405
  substituteChord,
327
406
  tensionCurve,
407
+ tensionCurveFrom,
408
+ toVoiceNotes,
328
409
  transformMotif,
410
+ transposeByInterval,
411
+ transposeChord,
329
412
  transposeChordSymbol,
413
+ transposeNote,
330
414
  tuplet,
331
415
  voiceChord,
332
416
  voiceChordStyled,