@libraz/libcantus 1.0.0 → 1.1.0

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 (142) hide show
  1. package/README.md +27 -65
  2. package/README_ja.md +28 -66
  3. package/dist/analyze/index.cjs +11 -7
  4. package/dist/analyze/index.cjs.map +1 -1
  5. package/dist/analyze/index.d.cts +79 -144
  6. package/dist/analyze/index.d.ts +79 -144
  7. package/dist/analyze/index.js +20 -16
  8. package/dist/{chunk-TTCLJX6D.js → chunk-57WB2EDF.js} +10 -8
  9. package/dist/chunk-57WB2EDF.js.map +1 -0
  10. package/dist/chunk-5JJ6EHEZ.cjs +457 -0
  11. package/dist/chunk-5JJ6EHEZ.cjs.map +1 -0
  12. package/dist/{chunk-AFM2ULJH.cjs → chunk-5KW7DNCJ.cjs} +1567 -1067
  13. package/dist/chunk-5KW7DNCJ.cjs.map +1 -0
  14. package/dist/chunk-7GOKQJTQ.js +145 -0
  15. package/dist/chunk-7GOKQJTQ.js.map +1 -0
  16. package/dist/{chunk-H3VORETI.js → chunk-AWEMD747.js} +487 -592
  17. package/dist/chunk-AWEMD747.js.map +1 -0
  18. package/dist/{chunk-4A2RMUCC.js → chunk-DKICR7AN.js} +1216 -611
  19. package/dist/chunk-DKICR7AN.js.map +1 -0
  20. package/dist/{chunk-INHVXP6Z.js → chunk-FPBZFNCD.js} +1159 -415
  21. package/dist/chunk-FPBZFNCD.js.map +1 -0
  22. package/dist/{chunk-M4CWTJWJ.cjs → chunk-GDKE6RQW.cjs} +1453 -848
  23. package/dist/chunk-GDKE6RQW.cjs.map +1 -0
  24. package/dist/chunk-H66ARFU5.js +363 -0
  25. package/dist/chunk-H66ARFU5.js.map +1 -0
  26. package/dist/{chunk-YH3BIKHH.js → chunk-HOHFYGKW.js} +146 -49
  27. package/dist/chunk-HOHFYGKW.js.map +1 -0
  28. package/dist/chunk-HSY2VQXZ.js +2272 -0
  29. package/dist/chunk-HSY2VQXZ.js.map +1 -0
  30. package/dist/{chunk-E3F4AHAH.cjs → chunk-J772DL3B.cjs} +221 -134
  31. package/dist/chunk-J772DL3B.cjs.map +1 -0
  32. package/dist/chunk-K6OZXIR6.js +1 -0
  33. package/dist/{chunk-VTI6FOLB.js → chunk-PQL7E5F6.js} +709 -133
  34. package/dist/chunk-PQL7E5F6.js.map +1 -0
  35. package/dist/chunk-Q6R3QAZD.cjs +3329 -0
  36. package/dist/chunk-Q6R3QAZD.cjs.map +1 -0
  37. package/dist/{chunk-MXO72PLY.cjs → chunk-QCXYKSZS.cjs} +21 -19
  38. package/dist/chunk-QCXYKSZS.cjs.map +1 -0
  39. package/dist/{chunk-VOHZB45S.js → chunk-R5VUXQMP.js} +1321 -821
  40. package/dist/chunk-R5VUXQMP.js.map +1 -0
  41. package/dist/chunk-R7B5N2JK.cjs +363 -0
  42. package/dist/chunk-R7B5N2JK.cjs.map +1 -0
  43. package/dist/{chunk-WWURE4XT.cjs → chunk-RVS4G4MR.cjs} +624 -729
  44. package/dist/chunk-RVS4G4MR.cjs.map +1 -0
  45. package/dist/chunk-TT6PKMPR.cjs +145 -0
  46. package/dist/chunk-TT6PKMPR.cjs.map +1 -0
  47. package/dist/chunk-UGLFDG7L.cjs +1 -0
  48. package/dist/chunk-UGLFDG7L.cjs.map +1 -0
  49. package/dist/chunk-VLE5R7PF.js +3329 -0
  50. package/dist/chunk-VLE5R7PF.js.map +1 -0
  51. package/dist/{chunk-FVSI36UV.js → chunk-X6RJAHII.js} +197 -110
  52. package/dist/chunk-X6RJAHII.js.map +1 -0
  53. package/dist/{chunk-Q2WGKJNN.cjs → chunk-XKSO2V5I.cjs} +699 -123
  54. package/dist/chunk-XKSO2V5I.cjs.map +1 -0
  55. package/dist/chunk-XVMJO3QF.cjs +2272 -0
  56. package/dist/chunk-XVMJO3QF.cjs.map +1 -0
  57. package/dist/{chunk-UADYAYAT.cjs → chunk-YPB3A3EY.cjs} +1309 -565
  58. package/dist/chunk-YPB3A3EY.cjs.map +1 -0
  59. package/dist/{index-C_8o--VE.d.cts → coerce-CJlgULrQ.d.cts} +210 -199
  60. package/dist/{index-szBv3496.d.ts → coerce-wwdELNYS.d.ts} +210 -199
  61. package/dist/core/index.cjs +9 -5
  62. package/dist/core/index.cjs.map +1 -1
  63. package/dist/core/index.d.cts +122 -108
  64. package/dist/core/index.d.ts +122 -108
  65. package/dist/core/index.js +32 -28
  66. package/dist/generate/index.cjs +8 -8
  67. package/dist/generate/index.d.cts +168 -84
  68. package/dist/generate/index.d.ts +168 -84
  69. package/dist/generate/index.js +7 -7
  70. package/dist/{index-CGpRv5sl.d.cts → index-9eoQs2C1.d.ts} +34 -19
  71. package/dist/{index-Dzr13q3d.d.cts → index-B3WCj_Hm.d.cts} +135 -58
  72. package/dist/{index-BO6xE9YU.d.cts → index-BUtIf2go.d.ts} +460 -254
  73. package/dist/{index-CCNJRG-P.d.cts → index-BaoKVVhE.d.cts} +293 -56
  74. package/dist/{index-Chbst3Jx.d.ts → index-BpWOhkkE.d.ts} +135 -58
  75. package/dist/{index-BGFW-8P2.d.cts → index-BzLNkmA7.d.cts} +196 -114
  76. package/dist/{index-CunYKLiu.d.ts → index-CBCP84rv.d.cts} +1 -1
  77. package/dist/{index-BkGmlyI3.d.cts → index-Ci3xyows.d.ts} +60 -23
  78. package/dist/{index-9wcMhG73.d.ts → index-CnHQgqNh.d.ts} +293 -56
  79. package/dist/{index-B4o55NDr.d.cts → index-CnIdP4EZ.d.ts} +1 -1
  80. package/dist/{index-B9MNZboQ.d.ts → index-Cy15oTvh.d.cts} +52 -22
  81. package/dist/{index-B9MNZboQ.d.cts → index-Cy15oTvh.d.ts} +52 -22
  82. package/dist/{index-D57QRbVn.d.ts → index-DTsKaPaC.d.cts} +460 -254
  83. package/dist/{index-Cj49F892.d.ts → index-D_hzxD8w.d.cts} +60 -23
  84. package/dist/{index-CgHqxdps.d.ts → index-DpC-mDlV.d.ts} +196 -114
  85. package/dist/{index-G1uwGGWQ.d.ts → index-cHvbYgJI.d.cts} +34 -19
  86. package/dist/index.cjs +42 -14
  87. package/dist/index.cjs.map +1 -1
  88. package/dist/index.d.cts +14 -14
  89. package/dist/index.d.ts +14 -14
  90. package/dist/index.js +82 -54
  91. package/dist/{masks-DYbE485J.d.ts → masks-C8TWLFIi.d.cts} +49 -2
  92. package/dist/{masks-DYbE485J.d.cts → masks-O73Rhj5d.d.ts} +49 -2
  93. package/dist/model/index.cjs +19 -12
  94. package/dist/model/index.cjs.map +1 -1
  95. package/dist/model/index.d.cts +502 -181
  96. package/dist/model/index.d.ts +502 -181
  97. package/dist/model/index.js +18 -11
  98. package/dist/{positional-Cptlj-xs.d.ts → positional-DJgs6ltD.d.ts} +85 -8
  99. package/dist/{positional-DvH_sd8u.d.cts → positional-DMZer-FM.d.cts} +85 -8
  100. package/dist/theory/index.cjs +35 -6
  101. package/dist/theory/index.cjs.map +1 -1
  102. package/dist/theory/index.d.cts +257 -62
  103. package/dist/theory/index.d.ts +257 -62
  104. package/dist/theory/index.js +41 -12
  105. package/package.json +6 -5
  106. package/dist/chunk-3JXCW6DX.cjs +0 -3220
  107. package/dist/chunk-3JXCW6DX.cjs.map +0 -1
  108. package/dist/chunk-4A2RMUCC.js.map +0 -1
  109. package/dist/chunk-6XPTBE7Y.cjs +0 -49
  110. package/dist/chunk-6XPTBE7Y.cjs.map +0 -1
  111. package/dist/chunk-AFM2ULJH.cjs.map +0 -1
  112. package/dist/chunk-E3F4AHAH.cjs.map +0 -1
  113. package/dist/chunk-ELCTZUJJ.js +0 -379
  114. package/dist/chunk-ELCTZUJJ.js.map +0 -1
  115. package/dist/chunk-FVSI36UV.js.map +0 -1
  116. package/dist/chunk-GOZG57ER.js +0 -3220
  117. package/dist/chunk-GOZG57ER.js.map +0 -1
  118. package/dist/chunk-H3VORETI.js.map +0 -1
  119. package/dist/chunk-H42UHPYW.js +0 -1577
  120. package/dist/chunk-H42UHPYW.js.map +0 -1
  121. package/dist/chunk-HFPS7JFD.js +0 -1
  122. package/dist/chunk-INHVXP6Z.js.map +0 -1
  123. package/dist/chunk-K4ZJUGF4.cjs +0 -379
  124. package/dist/chunk-K4ZJUGF4.cjs.map +0 -1
  125. package/dist/chunk-KNJEKLKV.js +0 -49
  126. package/dist/chunk-KNJEKLKV.js.map +0 -1
  127. package/dist/chunk-M4CWTJWJ.cjs.map +0 -1
  128. package/dist/chunk-MXO72PLY.cjs.map +0 -1
  129. package/dist/chunk-NLEU4QSE.cjs +0 -360
  130. package/dist/chunk-NLEU4QSE.cjs.map +0 -1
  131. package/dist/chunk-OE6WK2Y2.cjs +0 -1577
  132. package/dist/chunk-OE6WK2Y2.cjs.map +0 -1
  133. package/dist/chunk-Q2WGKJNN.cjs.map +0 -1
  134. package/dist/chunk-RHIJ3S4I.cjs +0 -1
  135. package/dist/chunk-RHIJ3S4I.cjs.map +0 -1
  136. package/dist/chunk-TTCLJX6D.js.map +0 -1
  137. package/dist/chunk-UADYAYAT.cjs.map +0 -1
  138. package/dist/chunk-VOHZB45S.js.map +0 -1
  139. package/dist/chunk-VTI6FOLB.js.map +0 -1
  140. package/dist/chunk-WWURE4XT.cjs.map +0 -1
  141. package/dist/chunk-YH3BIKHH.js.map +0 -1
  142. /package/dist/{chunk-HFPS7JFD.js.map → chunk-K6OZXIR6.js.map} +0 -0
@@ -1,5 +1,5 @@
1
- import { g as NoteEvent } from './index-B9MNZboQ.js';
2
- import { e as StringFingering, c as Limb, I as InstrumentProfile } from './positional-Cptlj-xs.js';
1
+ import { h as NoteEvent } from './index-Cy15oTvh.cjs';
2
+ import { e as StringFingering, c as Limb, b as InstrumentProfileLike } from './positional-DMZer-FM.cjs';
3
3
 
4
4
  /**
5
5
  * What makes a passage hard or impossible on an instrument.
@@ -89,6 +89,9 @@ type PlayabilityReport = {
89
89
  * @param profile The instrument to play it on.
90
90
  * @param bpm Tempo in quarter-note beats per minute; enables the third layer.
91
91
  * @returns Difficulty, the issues found, and each note's string/fret or limb.
92
+ * @throws If the notes are not note events, the tempo is not a finite positive
93
+ * number of beats per minute, or the profile describes no instrument — a neck
94
+ * with no strings or a kit no limb reaches, whatever the passage holds.
92
95
  *
93
96
  * @example
94
97
  * ```ts
@@ -98,7 +101,7 @@ type PlayabilityReport = {
98
101
  * ```
99
102
  * @category Core
100
103
  */
101
- declare function playability(notes: readonly NoteEvent[], profile: InstrumentProfile, bpm?: number): PlayabilityReport;
104
+ declare function playability(notes: readonly NoteEvent[], profile: InstrumentProfileLike, bpm?: number): PlayabilityReport;
102
105
 
103
106
  /**
104
107
  * Note values: the written durations a score shows — a base value, its
@@ -176,7 +179,8 @@ type SpelledDuration = {
176
179
  * import { durationToBeats } from '@libraz/libcantus';
177
180
  * durationToBeats('quarter'); // 1
178
181
  * durationToBeats({ base: 'quarter', dots: 1 }); // 1.5
179
- * durationToBeats({ base: 'eighth', tuplet: { actual: 3, normal: 2 } }); // 1/3
182
+ * durationToBeats({ base: 'eighth', tuplet: { actual: 3, normal: 2 } }) * 3; // 1 — three
183
+ * // eighth-note triplets fill the beat two eighths would
180
184
  * ```
181
185
  * @category Rhythm & Meter
182
186
  */
@@ -192,8 +196,10 @@ declare function durationToBeats(duration: NoteValue | DurationData, options?: {
192
196
  * values are preferred to dotted ones and both to tuplets, and within the
193
197
  * tuplets triplets come before quintuplets and septuplets.
194
198
  *
195
- * Lengths are matched within 1e-6 beats, so a rounded decimal such as 0.3333333
196
- * still reads as a triplet.
199
+ * Lengths are matched within 1e-6 quarter notes, so a rounded decimal such as
200
+ * 0.3333333 still reads as a triplet. The tolerance is measured in quarter
201
+ * notes whatever `beatUnit` names, so a longer beat unit narrows it in
202
+ * proportion: under `{ beatUnit: 'whole' }` it is 2.5e-7 of a beat.
197
203
  *
198
204
  * @param beats The length in beats.
199
205
  * @param options `beatUnit` sets what one beat is; a quarter note by default.
@@ -219,9 +225,12 @@ declare function beatsToDuration(beats: number, options?: {
219
225
  * else is broken into undotted values, longest first, and a value immediately
220
226
  * followed by its own half is then written as a dot instead: 5 beats reads as a
221
227
  * whole note tied to a quarter, and 1.9375 beats as a double-dotted quarter tied
222
- * to a dotted thirty-second. The chain knows nothing of barlines or beat
223
- * grouping — an engraver splits further at those — and it uses no tuplets, so a
224
- * length off the plain grid and with no single spelling has no chain either.
228
+ * to a dotted thirty-second. The dot is only written where it leaves the chain
229
+ * in longest-first order, so 10 beats reads as two whole notes tied to a half
230
+ * rather than as a whole note tied to a longer dotted whole. The chain knows
231
+ * nothing of barlines or beat grouping — an engraver splits further at those —
232
+ * and it uses no tuplets, so a length off the plain grid and with no single
233
+ * spelling has no chain either.
225
234
  *
226
235
  * @param beats The length in beats.
227
236
  * @param options `beatUnit` sets what one beat is; a quarter note by default.
@@ -246,16 +255,18 @@ declare function beatsToTiedDurations(beats: number, options?: {
246
255
  * @category Core
247
256
  */
248
257
  type IndexedNoteEvent = {
249
- note: Readonly<NoteEvent>;
250
- originalIndex: number;
251
- endBeat: number;
258
+ readonly note: Readonly<NoteEvent>;
259
+ readonly originalIndex: number;
260
+ readonly endBeat: number;
252
261
  };
253
262
  /**
254
263
  * Which note wins when several sound from the same onset.
255
264
  *
256
265
  * `'highest'` and `'lowest'` name a voice, so the answer does not depend on the
257
266
  * order the caller happened to store the chord in; `'last'` takes the one
258
- * latest in the input array.
267
+ * latest in the input array. Two notes of the same pitch name no voice apart,
268
+ * so both voice tie-breaks settle a unison on the lower `originalIndex` and
269
+ * name the same note.
259
270
  *
260
271
  * @category Core
261
272
  */
@@ -300,9 +311,10 @@ type NoteEventIndexOptions = {
300
311
  name?: string;
301
312
  };
302
313
  /**
303
- * Validate and stable-sort note events once, then expose logarithmic onset and
304
- * active-note lookups. Non-positive-duration notes may be retained for callers
305
- * that intentionally filter them later, but never count as sounding.
314
+ * Validate and stable-sort note events once, then expose onset and active-note
315
+ * lookups that cost `O(log n + k)`, where `k` is how many notes share the onset
316
+ * the answer comes from. Non-positive-duration notes may be retained for
317
+ * callers that intentionally filter them later, but never count as sounding.
306
318
  *
307
319
  * @category Core
308
320
  */
@@ -356,7 +368,8 @@ type TempoMap = readonly TempoEvent[];
356
368
  * @param beat Position in quarter-note beats.
357
369
  * @param map The tempo map; its first event is the time origin.
358
370
  * @returns Elapsed seconds, 0 at the map's first event and negative before it.
359
- * @throws If the map is empty, unsorted, or carries a non-positive tempo.
371
+ * @throws If the map is empty, unsorted, or carries a tempo outside 0.1..1000
372
+ * quarter-note beats per minute.
360
373
  * @example
361
374
  * ```ts
362
375
  * import { beatsToSeconds } from '@libraz/libcantus';
@@ -433,7 +446,9 @@ declare function tempoAt(beat: number, map: TempoMap): number;
433
446
  * back quantized.
434
447
  *
435
448
  * A position before the first downbeat is a negative tick count, which is how a
436
- * pickup crosses the MIDI boundary and comes back.
449
+ * pickup crosses the MIDI boundary and comes back. A position that rounds to
450
+ * the downbeat from below comes back as positive zero: `-0` and `0` are the
451
+ * same tick, and only one of them keys as it under `Object.is`.
437
452
  *
438
453
  * @param beat Position or length in quarter-note beats.
439
454
  * @param ppq Pulses (ticks) per quarter note, e.g. 96, 480, or 960.
@@ -628,7 +643,7 @@ declare function ratioToCents(numerator: number, denominator: number): number;
628
643
  *
629
644
  * @category Pitch & Intervals
630
645
  */
631
- declare const JUST_RATIOS: Readonly<Record<number, readonly [number, number]>>;
646
+ declare const JUST_RATIOS: Readonly<Record<0 | 1 | 2 | 3 | 4 | 5 | 6 | 7 | 8 | 9 | 10 | 11 | 12, readonly [number, number]>>;
632
647
  /**
633
648
  * Cents by which a five-limit just interval departs from its 12-TET tempering
634
649
  * (positive means the just interval is wider).
package/dist/index.cjs CHANGED
@@ -1,6 +1,6 @@
1
1
  "use strict";Object.defineProperty(exports, "__esModule", {value: true});
2
2
 
3
- var _chunkMXO72PLYcjs = require('./chunk-MXO72PLY.cjs');
3
+ var _chunkQCXYKSZScjs = require('./chunk-QCXYKSZS.cjs');
4
4
  require('./chunk-GEDTJHAC.cjs');
5
5
 
6
6
 
@@ -20,7 +20,7 @@ require('./chunk-GEDTJHAC.cjs');
20
20
 
21
21
 
22
22
 
23
- var _chunkM4CWTJWJcjs = require('./chunk-M4CWTJWJ.cjs');
23
+ var _chunkGDKE6RQWcjs = require('./chunk-GDKE6RQW.cjs');
24
24
 
25
25
 
26
26
 
@@ -38,6 +38,7 @@ var _chunkM4CWTJWJcjs = require('./chunk-M4CWTJWJ.cjs');
38
38
 
39
39
 
40
40
 
41
+ var _chunkXVMJO3QFcjs = require('./chunk-XVMJO3QF.cjs');
41
42
 
42
43
 
43
44
 
@@ -45,7 +46,6 @@ var _chunkM4CWTJWJcjs = require('./chunk-M4CWTJWJ.cjs');
45
46
 
46
47
 
47
48
 
48
- var _chunk3JXCW6DXcjs = require('./chunk-3JXCW6DX.cjs');
49
49
 
50
50
 
51
51
 
@@ -63,6 +63,7 @@ var _chunk3JXCW6DXcjs = require('./chunk-3JXCW6DX.cjs');
63
63
 
64
64
 
65
65
 
66
+ var _chunk5JJ6EHEZcjs = require('./chunk-5JJ6EHEZ.cjs');
66
67
 
67
68
 
68
69
 
@@ -70,7 +71,6 @@ var _chunk3JXCW6DXcjs = require('./chunk-3JXCW6DX.cjs');
70
71
 
71
72
 
72
73
 
73
- var _chunkNLEU4QSEcjs = require('./chunk-NLEU4QSE.cjs');
74
74
 
75
75
 
76
76
 
@@ -132,6 +132,7 @@ var _chunkNLEU4QSEcjs = require('./chunk-NLEU4QSE.cjs');
132
132
 
133
133
 
134
134
 
135
+ var _chunk5KW7DNCJcjs = require('./chunk-5KW7DNCJ.cjs');
135
136
 
136
137
 
137
138
 
@@ -139,7 +140,6 @@ var _chunkNLEU4QSEcjs = require('./chunk-NLEU4QSE.cjs');
139
140
 
140
141
 
141
142
 
142
- var _chunkAFM2ULJHcjs = require('./chunk-AFM2ULJH.cjs');
143
143
 
144
144
 
145
145
 
@@ -164,9 +164,9 @@ var _chunkAFM2ULJHcjs = require('./chunk-AFM2ULJH.cjs');
164
164
 
165
165
 
166
166
 
167
- var _chunkOE6WK2Y2cjs = require('./chunk-OE6WK2Y2.cjs');
168
167
 
169
168
 
169
+ var _chunkQ6R3QAZDcjs = require('./chunk-Q6R3QAZD.cjs');
170
170
 
171
171
 
172
172
 
@@ -184,12 +184,14 @@ var _chunkOE6WK2Y2cjs = require('./chunk-OE6WK2Y2.cjs');
184
184
 
185
185
 
186
186
 
187
- var _chunkE3F4AHAHcjs = require('./chunk-E3F4AHAH.cjs');
188
187
 
189
188
 
190
189
 
190
+ var _chunkJ772DL3Bcjs = require('./chunk-J772DL3B.cjs');
191
191
 
192
192
 
193
+ var _chunkTT6PKMPRcjs = require('./chunk-TT6PKMPR.cjs');
194
+ require('./chunk-UGLFDG7L.cjs');
193
195
 
194
196
 
195
197
 
@@ -207,8 +209,7 @@ var _chunkE3F4AHAHcjs = require('./chunk-E3F4AHAH.cjs');
207
209
 
208
210
 
209
211
 
210
- var _chunkK4ZJUGF4cjs = require('./chunk-K4ZJUGF4.cjs');
211
- require('./chunk-RHIJ3S4I.cjs');
212
+ var _chunkRVS4G4MRcjs = require('./chunk-RVS4G4MR.cjs');
212
213
 
213
214
 
214
215
 
@@ -217,6 +218,7 @@ require('./chunk-RHIJ3S4I.cjs');
217
218
 
218
219
 
219
220
 
221
+ var _chunkR7B5N2JKcjs = require('./chunk-R7B5N2JK.cjs');
220
222
 
221
223
 
222
224
 
@@ -232,10 +234,8 @@ require('./chunk-RHIJ3S4I.cjs');
232
234
 
233
235
 
234
236
 
235
- var _chunkWWURE4XTcjs = require('./chunk-WWURE4XT.cjs');
236
237
 
237
238
 
238
- var _chunk6XPTBE7Ycjs = require('./chunk-6XPTBE7Y.cjs');
239
239
 
240
240
 
241
241
 
@@ -335,6 +335,7 @@ var _chunk6XPTBE7Ycjs = require('./chunk-6XPTBE7Y.cjs');
335
335
 
336
336
 
337
337
 
338
+ var _chunkYPB3A3EYcjs = require('./chunk-YPB3A3EY.cjs');
338
339
 
339
340
 
340
341
 
@@ -342,7 +343,6 @@ var _chunk6XPTBE7Ycjs = require('./chunk-6XPTBE7Y.cjs');
342
343
 
343
344
 
344
345
 
345
- var _chunkUADYAYATcjs = require('./chunk-UADYAYAT.cjs');
346
346
 
347
347
 
348
348
 
@@ -390,7 +390,6 @@ var _chunkUADYAYATcjs = require('./chunk-UADYAYAT.cjs');
390
390
 
391
391
 
392
392
 
393
- var _chunkQ2WGKJNNcjs = require('./chunk-Q2WGKJNN.cjs');
394
393
 
395
394
 
396
395
 
@@ -405,6 +404,7 @@ var _chunkQ2WGKJNNcjs = require('./chunk-Q2WGKJNN.cjs');
405
404
 
406
405
 
407
406
 
407
+ var _chunkXKSO2V5Icjs = require('./chunk-XKSO2V5I.cjs');
408
408
 
409
409
 
410
410
 
@@ -759,5 +759,33 @@ var _chunkQ2WGKJNNcjs = require('./chunk-Q2WGKJNN.cjs');
759
759
 
760
760
 
761
761
 
762
- exports.ALGORITHM_VERSION = _chunkE3F4AHAHcjs.ALGORITHM_VERSION; exports.ALTERED_MASK = _chunkUADYAYATcjs.ALTERED_MASK; exports.ARTICULATIONS = _chunkE3F4AHAHcjs.ARTICULATIONS; exports.Arrangement = _chunkM4CWTJWJcjs.Arrangement; exports.BAR_STEPS = _chunkAFM2ULJHcjs.BAR_STEPS; exports.BASS_4_STRING = _chunkE3F4AHAHcjs.BASS_4_STRING; exports.BASS_5_STRING = _chunkE3F4AHAHcjs.BASS_5_STRING; exports.BASS_LICKS = _chunkAFM2ULJHcjs.BASS_LICKS; exports.BASS_STYLES = _chunkAFM2ULJHcjs.BASS_STYLES; exports.BEAT_STEPS = _chunkAFM2ULJHcjs.BEAT_STEPS; exports.BLUES_MASK = _chunkUADYAYATcjs.BLUES_MASK; exports.BORROWED_DEGREES = _chunkAFM2ULJHcjs.BORROWED_DEGREES; exports.BudgetExceededError = _chunkQ2WGKJNNcjs.BudgetExceededError; exports.CHROMATIC_MASK = _chunkUADYAYATcjs.CHROMATIC_MASK; exports.Chord = _chunkM4CWTJWJcjs.Chord; exports.Composer = _chunkM4CWTJWJcjs.Composer; exports.ConsonanceClass = _chunkQ2WGKJNNcjs.ConsonanceClass; exports.DEFAULT_GENERATION_BUDGET = _chunkQ2WGKJNNcjs.DEFAULT_GENERATION_BUDGET; exports.DORIAN_MASK = _chunkUADYAYATcjs.DORIAN_MASK; exports.DOUBLE_HARMONIC_MASK = _chunkUADYAYATcjs.DOUBLE_HARMONIC_MASK; exports.DRUM_KIT = _chunkAFM2ULJHcjs.DRUM_KIT; exports.DRUM_NOTES = _chunkAFM2ULJHcjs.DRUM_NOTES; exports.DRUM_PATTERNS = _chunkAFM2ULJHcjs.DRUM_PATTERNS; exports.Duration = _chunkM4CWTJWJcjs.Duration; exports.FILL_ARCHETYPES = _chunkAFM2ULJHcjs.FILL_ARCHETYPES; exports.FILL_TYPES = _chunkAFM2ULJHcjs.FILL_TYPES; exports.GENRES = _chunkAFM2ULJHcjs.GENRES; exports.GUITAR_DROP_D = _chunkE3F4AHAHcjs.GUITAR_DROP_D; exports.GUITAR_STANDARD = _chunkE3F4AHAHcjs.GUITAR_STANDARD; exports.HARMONIC_MINOR_MASK = _chunkUADYAYATcjs.HARMONIC_MINOR_MASK; exports.Instrument = _chunkM4CWTJWJcjs.Instrument; exports.Interval = _chunkM4CWTJWJcjs.Interval; exports.InvalidInputError = _chunkQ2WGKJNNcjs.InvalidInputError; exports.JUST_RATIOS = _chunkNLEU4QSEcjs.JUST_RATIOS; exports.KICK_FIGURES = _chunkAFM2ULJHcjs.KICK_FIGURES; exports.KICK_STEPS = _chunkAFM2ULJHcjs.KICK_STEPS; exports.Key = _chunkM4CWTJWJcjs.Key; exports.LIMBS = _chunkE3F4AHAHcjs.LIMBS; exports.LOCRIAN_MASK = _chunkUADYAYATcjs.LOCRIAN_MASK; exports.LOCRIAN_NATURAL2_MASK = _chunkUADYAYATcjs.LOCRIAN_NATURAL2_MASK; exports.LYDIAN_DOMINANT_MASK = _chunkUADYAYATcjs.LYDIAN_DOMINANT_MASK; exports.LYDIAN_MASK = _chunkUADYAYATcjs.LYDIAN_MASK; exports.MAJOR_MASK = _chunkUADYAYATcjs.MAJOR_MASK; exports.MAJOR_PENTATONIC_MASK = _chunkUADYAYATcjs.MAJOR_PENTATONIC_MASK; exports.MARWA_MASK = _chunkUADYAYATcjs.MARWA_MASK; exports.MAX_DIFFICULTY = _chunkAFM2ULJHcjs.MAX_DIFFICULTY; exports.MELODIC_MINOR_MASK = _chunkUADYAYATcjs.MELODIC_MINOR_MASK; exports.MINOR_PENTATONIC_MASK = _chunkUADYAYATcjs.MINOR_PENTATONIC_MASK; exports.MIN_ALGORITHM_VERSION = _chunkE3F4AHAHcjs.MIN_ALGORITHM_VERSION; exports.MIN_DIFFICULTY = _chunkAFM2ULJHcjs.MIN_DIFFICULTY; exports.MIXOLYDIAN_B13_MASK = _chunkUADYAYATcjs.MIXOLYDIAN_B13_MASK; exports.MIXOLYDIAN_MASK = _chunkUADYAYATcjs.MIXOLYDIAN_MASK; exports.MIYAKO_BUSHI_MASK = _chunkUADYAYATcjs.MIYAKO_BUSHI_MASK; exports.MODAL_SCALE_NAMES = _chunkOE6WK2Y2cjs.MODAL_SCALE_NAMES; exports.Meter = _chunkM4CWTJWJcjs.Meter; exports.Motif = _chunkM4CWTJWJcjs.Motif; exports.NAMED_SCALES = _chunkUADYAYATcjs.NAMED_SCALES; exports.NATURAL_MINOR_MASK = _chunkUADYAYATcjs.NATURAL_MINOR_MASK; exports.NOTE_VALUES = _chunkNLEU4QSEcjs.NOTE_VALUES; exports.NoSolutionError = _chunkQ2WGKJNNcjs.NoSolutionError; exports.Note = _chunkM4CWTJWJcjs.Note; exports.NoteSafety = _chunkUADYAYATcjs.NoteSafety; exports.OCTATONIC_HALF_WHOLE_MASK = _chunkUADYAYATcjs.OCTATONIC_HALF_WHOLE_MASK; exports.OCTATONIC_WHOLE_HALF_MASK = _chunkUADYAYATcjs.OCTATONIC_WHOLE_HALF_MASK; exports.ORNAMENT_STYLES = _chunkAFM2ULJHcjs.ORNAMENT_STYLES; exports.PHRYGIAN_DOMINANT_MASK = _chunkUADYAYATcjs.PHRYGIAN_DOMINANT_MASK; exports.PHRYGIAN_MASK = _chunkUADYAYATcjs.PHRYGIAN_MASK; exports.PROFILE_WEIGHTS = _chunkUADYAYATcjs.PROFILE_WEIGHTS; exports.PROVENANCE_BASES = _chunkAFM2ULJHcjs.PROVENANCE_BASES; exports.PURVI_MASK = _chunkUADYAYATcjs.PURVI_MASK; exports.Progression = _chunkM4CWTJWJcjs.Progression; exports.RITSU_MASK = _chunkUADYAYATcjs.RITSU_MASK; exports.RYUKYU_MASK = _chunkUADYAYATcjs.RYUKYU_MASK; exports.ReasonFlag = _chunkUADYAYATcjs.ReasonFlag; exports.Rhythm = _chunkM4CWTJWJcjs.Rhythm; exports.SATB_RANGES = _chunkWWURE4XTcjs.SATB_RANGES; exports.SCALE_ALIASES = _chunkUADYAYATcjs.SCALE_ALIASES; exports.SCALE_SYSTEMS = _chunkUADYAYATcjs.SCALE_SYSTEMS; exports.STEP_BEATS = _chunkAFM2ULJHcjs.STEP_BEATS; exports.Score = _chunkM4CWTJWJcjs.Score; exports.TODI_MASK = _chunkUADYAYATcjs.TODI_MASK; exports.TRANSPOSING_INSTRUMENTS = _chunkWWURE4XTcjs.TRANSPOSING_INSTRUMENTS; exports.TWELVE_TET = _chunkNLEU4QSEcjs.TWELVE_TET; exports.Tempo = _chunkM4CWTJWJcjs.Tempo; exports.Timeline = _chunkM4CWTJWJcjs.Timeline; exports.Tuning = _chunkM4CWTJWJcjs.Tuning; exports.Voicing = _chunkM4CWTJWJcjs.Voicing; exports.WHOLE_TONE_MASK = _chunkUADYAYATcjs.WHOLE_TONE_MASK; exports.WORLD_SCALES = _chunkUADYAYATcjs.WORLD_SCALES; exports.analyzeArrangement = _chunk3JXCW6DXcjs.analyzeArrangement; exports.analyzeChord = _chunkOE6WK2Y2cjs.analyzeChord; exports.analyzeVoice = _chunk3JXCW6DXcjs.analyzeVoice; exports.applyGrooveTemplate = _chunkAFM2ULJHcjs.applyGrooveTemplate; exports.assertDegree = _chunkQ2WGKJNNcjs.assertDegree; exports.assertFiniteNumber = _chunkQ2WGKJNNcjs.assertFiniteNumber; exports.assertFiniteSemitones = _chunkQ2WGKJNNcjs.assertFiniteSemitones; exports.assertGenerationBudget = _chunkQ2WGKJNNcjs.assertGenerationBudget; exports.assertInteger = _chunkQ2WGKJNNcjs.assertInteger; exports.assertMeterMap = _chunkQ2WGKJNNcjs.assertMeterMap; exports.assertMidiPitch = _chunkQ2WGKJNNcjs.assertMidiPitch; exports.assertNoteEvent = _chunkQ2WGKJNNcjs.assertNoteEvent; exports.assertNoteEvents = _chunkQ2WGKJNNcjs.assertNoteEvents; exports.assertOneOf = _chunkQ2WGKJNNcjs.assertOneOf; exports.assertPositiveInt = _chunkQ2WGKJNNcjs.assertPositiveInt; exports.assertRange = _chunkQ2WGKJNNcjs.assertRange; exports.assertTimeSignature = _chunkQ2WGKJNNcjs.assertTimeSignature; exports.assertVocabulary = _chunkAFM2ULJHcjs.assertVocabulary; exports.augmentedSixthChord = _chunkOE6WK2Y2cjs.augmentedSixthChord; exports.augmentedSixthFromPitchClasses = _chunkOE6WK2Y2cjs.augmentedSixthFromPitchClasses; exports.augmentedSixthKind = _chunkOE6WK2Y2cjs.augmentedSixthKind; exports.availableTensions = _chunkWWURE4XTcjs.availableTensions; exports.avoidNotes = _chunkWWURE4XTcjs.avoidNotes; exports.barIndexAt = _chunkK4ZJUGF4cjs.barIndexAt; exports.barPositionToBeat = _chunkK4ZJUGF4cjs.barPositionToBeat; exports.barPositionToPulse = _chunkK4ZJUGF4cjs.barPositionToPulse; exports.barStartBeat = _chunkK4ZJUGF4cjs.barStartBeat; exports.beatToBarPosition = _chunkK4ZJUGF4cjs.beatToBarPosition; exports.beatsPerBar = _chunkK4ZJUGF4cjs.beatsPerBar; exports.beatsPerBarAt = _chunkK4ZJUGF4cjs.beatsPerBarAt; exports.beatsToDuration = _chunkNLEU4QSEcjs.beatsToDuration; exports.beatsToSeconds = _chunkNLEU4QSEcjs.beatsToSeconds; exports.beatsToTicks = _chunkNLEU4QSEcjs.beatsToTicks; exports.beatsToTiedDurations = _chunkNLEU4QSEcjs.beatsToTiedDurations; exports.borrowedSource = _chunkOE6WK2Y2cjs.borrowedSource; exports.canSound = _chunkE3F4AHAHcjs.canSound; exports.centsBetweenFreq = _chunkNLEU4QSEcjs.centsBetweenFreq; exports.centsFromNearestStep = _chunkNLEU4QSEcjs.centsFromNearestStep; exports.centsOfSteps = _chunkNLEU4QSEcjs.centsOfSteps; exports.centsToRatio = _chunkNLEU4QSEcjs.centsToRatio; exports.checkPartWriting = _chunkWWURE4XTcjs.checkPartWriting; exports.checkSpecies = _chunkWWURE4XTcjs.checkSpecies; exports.chordFromDegree = _chunkUADYAYATcjs.chordFromDegree; exports.chordFromSpan = _chunkUADYAYATcjs.chordFromSpan; exports.chordFromSpec = _chunkUADYAYATcjs.chordFromSpec; exports.chordPitchClasses = _chunkUADYAYATcjs.chordPitchClasses; exports.chordQualities = _chunkUADYAYATcjs.chordQualities; exports.chordScaleReport = _chunkWWURE4XTcjs.chordScaleReport; exports.chordScales = _chunkWWURE4XTcjs.chordScales; exports.chordSpecIntervals = _chunkUADYAYATcjs.chordSpecIntervals; exports.chordSpecOf = _chunkUADYAYATcjs.chordSpecOf; exports.chordSpecQuality = _chunkUADYAYATcjs.chordSpecQuality; exports.chordTimelineFromChords = _chunk3JXCW6DXcjs.chordTimelineFromChords; exports.chordTimelineFromNotes = _chunk3JXCW6DXcjs.chordTimelineFromNotes; exports.chordToRoman = _chunkOE6WK2Y2cjs.chordToRoman; exports.chordToneRole = _chunkUADYAYATcjs.chordToneRole; exports.clampToMidi = _chunkQ2WGKJNNcjs.clampToMidi; exports.classifyInterval = _chunkQ2WGKJNNcjs.classifyInterval; exports.classifyMelodyTones = _chunkAFM2ULJHcjs.classifyMelodyTones; exports.classifySpelledInterval = _chunkUADYAYATcjs.classifySpelledInterval; exports.compareMelodies = _chunk3JXCW6DXcjs.compareMelodies; exports.createArrangementSession = _chunk3JXCW6DXcjs.createArrangementSession; exports.createNoteEventIndex = _chunkK4ZJUGF4cjs.createNoteEventIndex; exports.createPositionalRng = _chunkE3F4AHAHcjs.createPositionalRng; exports.createRng = _chunkE3F4AHAHcjs.createRng; exports.createsBattuta = _chunkUADYAYATcjs.createsBattuta; exports.createsHiddenParallelPerfect = _chunkUADYAYATcjs.createsHiddenParallelPerfect; exports.createsParallelOctave = _chunkUADYAYATcjs.createsParallelOctave; exports.createsParallelPerfect = _chunkUADYAYATcjs.createsParallelPerfect; exports.createsParallelUnison = _chunkUADYAYATcjs.createsParallelUnison; exports.createsVerticalDissonance = _chunkUADYAYATcjs.createsVerticalDissonance; exports.createsVoiceCrossing = _chunkUADYAYATcjs.createsVoiceCrossing; exports.createsVoiceOverlap = _chunkUADYAYATcjs.createsVoiceOverlap; exports.deform = _chunkAFM2ULJHcjs.deform; exports.deriveSeed = _chunkE3F4AHAHcjs.deriveSeed; exports.detectCadence = _chunkOE6WK2Y2cjs.detectCadence; exports.detectCadences = _chunk3JXCW6DXcjs.detectCadences; exports.detectChord = _chunkOE6WK2Y2cjs.detectChord; exports.detectChordBest = _chunkOE6WK2Y2cjs.detectChordBest; exports.detectKey = _chunkOE6WK2Y2cjs.detectKey; exports.detectKeyBest = _chunkOE6WK2Y2cjs.detectKeyBest; exports.detectKeyFromNotes = _chunkOE6WK2Y2cjs.detectKeyFromNotes; exports.detectModulations = _chunk3JXCW6DXcjs.detectModulations; exports.detectNoteNameSystem = _chunkQ2WGKJNNcjs.detectNoteNameSystem; exports.developMotif = _chunkAFM2ULJHcjs.developMotif; exports.diatonicLetterOf = _chunkQ2WGKJNNcjs.diatonicLetterOf; exports.diatonicPitchClasses = _chunkUADYAYATcjs.diatonicPitchClasses; exports.diatonicSeventh = _chunkUADYAYATcjs.diatonicSeventh; exports.diatonicTriad = _chunkUADYAYATcjs.diatonicTriad; exports.dominantKeyOf = _chunkUADYAYATcjs.dominantKeyOf; exports.double = _chunkAFM2ULJHcjs.double; exports.doubleTime = _chunkAFM2ULJHcjs.doubleTime; exports.dropSilentNotes = _chunkQ2WGKJNNcjs.dropSilentNotes; exports.drumVoiceOf = _chunkAFM2ULJHcjs.drumVoiceOf; exports.durationToBeats = _chunkNLEU4QSEcjs.durationToBeats; exports.durationToSeconds = _chunkNLEU4QSEcjs.durationToSeconds; exports.edo = _chunkNLEU4QSEcjs.edo; exports.enharmonicKeyOf = _chunkUADYAYATcjs.enharmonicKeyOf; exports.enumerateSafePitches = _chunkUADYAYATcjs.enumerateSafePitches; exports.evaluateSafety = _chunkUADYAYATcjs.evaluateSafety; exports.exceedsSpacing = _chunkUADYAYATcjs.exceedsSpacing; exports.explainRoman = _chunkOE6WK2Y2cjs.explainRoman; exports.extractGrooveTemplate = _chunkAFM2ULJHcjs.extractGrooveTemplate; exports.extractMotifs = _chunk3JXCW6DXcjs.extractMotifs; exports.figuredBassOf = _chunkWWURE4XTcjs.figuredBassOf; exports.figuredBassRealization = _chunkWWURE4XTcjs.figuredBassRealization; exports.fingeringsFor = _chunkE3F4AHAHcjs.fingeringsFor; exports.fitsQuery = _chunkAFM2ULJHcjs.fitsQuery; exports.foldIntoRange = _chunkE3F4AHAHcjs.foldIntoRange; exports.formatBarPosition = _chunkK4ZJUGF4cjs.formatBarPosition; exports.formatChordSymbol = _chunkUADYAYATcjs.formatChordSymbol; exports.formatKeyName = _chunkQ2WGKJNNcjs.formatKeyName; exports.formatNote = _chunkQ2WGKJNNcjs.formatNote; exports.formatTimeSignature = _chunkK4ZJUGF4cjs.formatTimeSignature; exports.frequencyOf = _chunkNLEU4QSEcjs.frequencyOf; exports.functionOf = _chunkOE6WK2Y2cjs.functionOf; exports.generateBassLine = _chunkAFM2ULJHcjs.generateBassLine; exports.generateCounterMelody = _chunkAFM2ULJHcjs.generateCounterMelody; exports.generateDrums = _chunkAFM2ULJHcjs.generateDrums; exports.generateMotif = _chunkAFM2ULJHcjs.generateMotif; exports.generateProgression = _chunkAFM2ULJHcjs.generateProgression; exports.generateRhythm = _chunkAFM2ULJHcjs.generateRhythm; exports.gridMetricWeight = _chunkAFM2ULJHcjs.gridMetricWeight; exports.halfTime = _chunkAFM2ULJHcjs.halfTime; exports.harmonizeMelody = _chunkAFM2ULJHcjs.harmonizeMelody; exports.humanize = _chunkAFM2ULJHcjs.humanize; exports.hypermeter = _chunk3JXCW6DXcjs.hypermeter; exports.imitate = _chunkAFM2ULJHcjs.imitate; exports.includeAt = _chunkE3F4AHAHcjs.includeAt; exports.instrumentRange = _chunkE3F4AHAHcjs.instrumentRange; exports.instrumentTransposition = _chunkWWURE4XTcjs.instrumentTransposition; exports.intervalAboveRoot = _chunkUADYAYATcjs.intervalAboveRoot; exports.intervalSemitones = _chunkQ2WGKJNNcjs.intervalSemitones; exports.isAugmentedMelodicInterval = _chunkUADYAYATcjs.isAugmentedMelodicInterval; exports.isBorrowedChord = _chunkOE6WK2Y2cjs.isBorrowedChord; exports.isChordMember = _chunkUADYAYATcjs.isChordMember; exports.isCompound = _chunkK4ZJUGF4cjs.isCompound; exports.isConsonantInterval = _chunkQ2WGKJNNcjs.isConsonantInterval; exports.isDiatonic = _chunkOE6WK2Y2cjs.isDiatonic; exports.isDrumPattern = _chunkAFM2ULJHcjs.isDrumPattern; exports.isFillArchetype = _chunkAFM2ULJHcjs.isFillArchetype; exports.isForbiddenMelodicLeap = _chunkUADYAYATcjs.isForbiddenMelodicLeap; exports.isLeadingToneResolution = _chunkUADYAYATcjs.isLeadingToneResolution; exports.isLibcantusError = _chunkQ2WGKJNNcjs.isLibcantusError; exports.isLickMaterial = _chunkAFM2ULJHcjs.isLickMaterial; exports.isMinorKey = _chunkOE6WK2Y2cjs.isMinorKey; exports.isPerfectInterval = _chunkQ2WGKJNNcjs.isPerfectInterval; exports.isScaleTone = _chunkUADYAYATcjs.isScaleTone; exports.isStrongBeat = _chunkK4ZJUGF4cjs.isStrongBeat; exports.justDeviationCents = _chunkNLEU4QSEcjs.justDeviationCents; exports.keyFromFifths = _chunkUADYAYATcjs.keyFromFifths; exports.keyRelationBetween = _chunkUADYAYATcjs.keyRelationBetween; exports.keySignatureFifths = _chunkUADYAYATcjs.keySignatureFifths; exports.keyTimelineFromNotes = _chunk3JXCW6DXcjs.keyTimelineFromNotes; exports.majorKey = _chunkUADYAYATcjs.majorKey; exports.makeChord = _chunkUADYAYATcjs.makeChord; exports.maskFromOffsets = _chunkUADYAYATcjs.maskFromOffsets; exports.melodicContour = _chunk3JXCW6DXcjs.melodicContour; exports.melodicSimilarity = _chunk3JXCW6DXcjs.melodicSimilarity; exports.mergeVocabulary = _chunkAFM2ULJHcjs.mergeVocabulary; exports.meterAt = _chunkK4ZJUGF4cjs.meterAt; exports.metricWeight = _chunkK4ZJUGF4cjs.metricWeight; exports.midiToNote = _chunkQ2WGKJNNcjs.midiToNote; exports.minorKey = _chunkUADYAYATcjs.minorKey; exports.modalInterchangePalette = _chunkAFM2ULJHcjs.modalInterchangePalette; exports.motifFromNotes = _chunk3JXCW6DXcjs.motifFromNotes; exports.motifToNoteEvents = _chunkAFM2ULJHcjs.motifToNoteEvents; exports.namedScaleMask = _chunkUADYAYATcjs.namedScaleMask; exports.naturalPitchClassOf = _chunkQ2WGKJNNcjs.naturalPitchClassOf; exports.nearestScaleTone = _chunkUADYAYATcjs.nearestScaleTone; exports.nearestStep = _chunkNLEU4QSEcjs.nearestStep; exports.negativeHarmonyMirror = _chunkAFM2ULJHcjs.negativeHarmonyMirror; exports.nextVoicing = _chunkWWURE4XTcjs.nextVoicing; exports.noteNames = _chunkUADYAYATcjs.noteNames; exports.noteToMidi = _chunkQ2WGKJNNcjs.noteToMidi; exports.noteToPitchClass = _chunkQ2WGKJNNcjs.noteToPitchClass; exports.onsetWeightCurve = _chunkAFM2ULJHcjs.onsetWeightCurve; exports.ornament = _chunkAFM2ULJHcjs.ornament; exports.ornamentBy = _chunkAFM2ULJHcjs.ornamentBy; exports.parallelKeyOf = _chunkUADYAYATcjs.parallelKeyOf; exports.parseChordSymbol = _chunkUADYAYATcjs.parseChordSymbol; exports.parseInterval = _chunkQ2WGKJNNcjs.parseInterval; exports.parseKeyName = _chunkQ2WGKJNNcjs.parseKeyName; exports.parseNote = _chunkQ2WGKJNNcjs.parseNote; exports.parseTimeSignature = _chunkK4ZJUGF4cjs.parseTimeSignature; exports.phrasesFromTimeline = _chunk3JXCW6DXcjs.phrasesFromTimeline; exports.pickProgressionPreset = _chunkAFM2ULJHcjs.pickProgressionPreset; exports.pickVocabulary = _chunkAFM2ULJHcjs.pickVocabulary; exports.pitchClassOf = _chunkQ2WGKJNNcjs.pitchClassOf; exports.pitchToScaleDegree = _chunkUADYAYATcjs.pitchToScaleDegree; exports.pivotChords = _chunkOE6WK2Y2cjs.pivotChords; exports.placeDrumPattern = _chunkAFM2ULJHcjs.placeDrumPattern; exports.placeLicks = _chunkAFM2ULJHcjs.placeLicks; exports.playability = _chunkE3F4AHAHcjs.playability; exports.prevailingKeyOf = _chunk3JXCW6DXcjs.prevailingKeyOf; exports.profileWeights = _chunkUADYAYATcjs.profileWeights; exports.progressions = _chunkAFM2ULJHcjs.progressions; exports.progressionsByStyle = _chunkAFM2ULJHcjs.progressionsByStyle; exports.pulseBeats = _chunkK4ZJUGF4cjs.pulseBeats; exports.pulsesPerBar = _chunkK4ZJUGF4cjs.pulsesPerBar; exports.ratioToCents = _chunkNLEU4QSEcjs.ratioToCents; exports.realizeFiguredBass = _chunkWWURE4XTcjs.realizeFiguredBass; exports.reduceProgression = _chunk3JXCW6DXcjs.reduceProgression; exports.relateMotifs = _chunk3JXCW6DXcjs.relateMotifs; exports.relatedKeysOf = _chunkUADYAYATcjs.relatedKeysOf; exports.relativeKeyOf = _chunkUADYAYATcjs.relativeKeyOf; exports.requireScaleMask = _chunkUADYAYATcjs.requireScaleMask; exports.resolveAlgorithmVersion = _chunkE3F4AHAHcjs.resolveAlgorithmVersion; exports.resolveContext = _chunkAFM2ULJHcjs.resolveContext; exports.resolveMeters = _chunkK4ZJUGF4cjs.resolveMeters; exports.resolveScaleName = _chunkUADYAYATcjs.resolveScaleName; exports.rhythmDensity = _chunkAFM2ULJHcjs.rhythmDensity; exports.rhythmToNoteEvents = _chunkAFM2ULJHcjs.rhythmToNoteEvents; exports.roleOf = _chunk6XPTBE7Ycjs.roleOf; exports.romanToChord = _chunkOE6WK2Y2cjs.romanToChord; exports.scaleByName = _chunkUADYAYATcjs.scaleByName; exports.scaleMatchesChord = _chunkWWURE4XTcjs.scaleMatchesChord; exports.scaleSystemOf = _chunkUADYAYATcjs.scaleSystemOf; exports.scaleTonesInDegreeOrder = _chunkUADYAYATcjs.scaleTonesInDegreeOrder; exports.scalesForChanges = _chunkWWURE4XTcjs.scalesForChanges; exports.secondaryDominant = _chunkOE6WK2Y2cjs.secondaryDominant; exports.secondaryDominantOf = _chunkOE6WK2Y2cjs.secondaryDominantOf; exports.secondsToBeats = _chunkNLEU4QSEcjs.secondsToBeats; exports.sectionsFromNotes = _chunk3JXCW6DXcjs.sectionsFromNotes; exports.selectVocabulary = _chunkAFM2ULJHcjs.selectVocabulary; exports.soundingNotesOnly = _chunkQ2WGKJNNcjs.soundingNotesOnly; exports.spanFromChord = _chunkUADYAYATcjs.spanFromChord; exports.spellAugmentedSixth = _chunkOE6WK2Y2cjs.spellAugmentedSixth; exports.spellChord = _chunkUADYAYATcjs.spellChord; exports.spellChordFromRoot = _chunkUADYAYATcjs.spellChordFromRoot; exports.spellLine = _chunkMXO72PLYcjs.spellLine; exports.spellPitch = _chunkUADYAYATcjs.spellPitch; exports.spellPitchClass = _chunkUADYAYATcjs.spellPitchClass; exports.spellPitchClasses = _chunkUADYAYATcjs.spellPitchClasses; exports.spellScale = _chunkUADYAYATcjs.spellScale; exports.spellVoicing = _chunkWWURE4XTcjs.spellVoicing; exports.spelledInterval = _chunkQ2WGKJNNcjs.spelledInterval; exports.spelledKeyOf = _chunkUADYAYATcjs.spelledKeyOf; exports.stepOf = _chunkNLEU4QSEcjs.stepOf; exports.stepsOfCents = _chunkNLEU4QSEcjs.stepsOfCents; exports.structuralCadences = _chunk3JXCW6DXcjs.structuralCadences; exports.subdominantKeyOf = _chunkUADYAYATcjs.subdominantKeyOf; exports.substituteChord = _chunkAFM2ULJHcjs.substituteChord; exports.supportsFunctionalHarmony = _chunkUADYAYATcjs.supportsFunctionalHarmony; exports.sustainsShift = _chunkAFM2ULJHcjs.sustainsShift; exports.sustainsStrokes = _chunkAFM2ULJHcjs.sustainsStrokes; exports.syncopate = _chunkAFM2ULJHcjs.syncopate; exports.tempoAt = _chunkNLEU4QSEcjs.tempoAt; exports.tensionCurve = _chunk3JXCW6DXcjs.tensionCurve; exports.tensionCurveFrom = _chunk3JXCW6DXcjs.tensionCurveFrom; exports.thin = _chunkAFM2ULJHcjs.thin; exports.ticksToBeats = _chunkNLEU4QSEcjs.ticksToBeats; exports.toChordData = _chunkUADYAYATcjs.toChordData; exports.toKeyScale = _chunkUADYAYATcjs.toKeyScale; exports.toMeterData = _chunkK4ZJUGF4cjs.toMeterData; exports.toNoteData = _chunkQ2WGKJNNcjs.toNoteData; exports.toSoundingPitch = _chunkWWURE4XTcjs.toSoundingPitch; exports.toSpelledInterval = _chunkQ2WGKJNNcjs.toSpelledInterval; exports.toVoiceNotes = _chunk3JXCW6DXcjs.toVoiceNotes; exports.toWrittenPitch = _chunkWWURE4XTcjs.toWrittenPitch; exports.transformMotif = _chunkAFM2ULJHcjs.transformMotif; exports.transposeByInterval = _chunkQ2WGKJNNcjs.transposeByInterval; exports.transposeChord = _chunkUADYAYATcjs.transposeChord; exports.transposeChordSymbol = _chunkUADYAYATcjs.transposeChordSymbol; exports.transposeNote = _chunkQ2WGKJNNcjs.transposeNote; exports.tryParseChordSymbol = _chunkUADYAYATcjs.tryParseChordSymbol; exports.tryParseInterval = _chunkQ2WGKJNNcjs.tryParseInterval; exports.tryParseKeyName = _chunkQ2WGKJNNcjs.tryParseKeyName; exports.tryParseNote = _chunkQ2WGKJNNcjs.tryParseNote; exports.tryParseTimeSignature = _chunkK4ZJUGF4cjs.tryParseTimeSignature; exports.tuplet = _chunkK4ZJUGF4cjs.tuplet; exports.vocabularyOfKind = _chunkAFM2ULJHcjs.vocabularyOfKind; exports.voiceChord = _chunkWWURE4XTcjs.voiceChord; exports.voiceChordStyled = _chunkWWURE4XTcjs.voiceChordStyled; exports.voiceIndependence = _chunkUADYAYATcjs.voiceIndependence; exports.voiceLeadingCost = _chunkWWURE4XTcjs.voiceLeadingCost; exports.voiceProgression = _chunkWWURE4XTcjs.voiceProgression; exports.withinCeiling = _chunkAFM2ULJHcjs.withinCeiling;
762
+
763
+
764
+
765
+
766
+
767
+
768
+
769
+
770
+
771
+
772
+
773
+
774
+
775
+
776
+
777
+
778
+
779
+
780
+
781
+
782
+
783
+
784
+
785
+
786
+
787
+
788
+
789
+
790
+ exports.ALGORITHM_VERSION = _chunkJ772DL3Bcjs.ALGORITHM_VERSION; exports.ALTERED_MASK = _chunkYPB3A3EYcjs.ALTERED_MASK; exports.ARTICULATIONS = _chunkXKSO2V5Icjs.ARTICULATIONS; exports.Arrangement = _chunkGDKE6RQWcjs.Arrangement; exports.BAR_STEPS = _chunk5KW7DNCJcjs.BAR_STEPS; exports.BASS_4_STRING = _chunkJ772DL3Bcjs.BASS_4_STRING; exports.BASS_5_STRING = _chunkJ772DL3Bcjs.BASS_5_STRING; exports.BASS_LICKS = _chunk5KW7DNCJcjs.BASS_LICKS; exports.BASS_STYLES = _chunk5KW7DNCJcjs.BASS_STYLES; exports.BEAT_STEPS = _chunk5KW7DNCJcjs.BEAT_STEPS; exports.BLUES_MASK = _chunkYPB3A3EYcjs.BLUES_MASK; exports.BORROWED_DEGREES = _chunk5KW7DNCJcjs.BORROWED_DEGREES; exports.BudgetExceededError = _chunkXKSO2V5Icjs.BudgetExceededError; exports.CHROMATIC_MASK = _chunkYPB3A3EYcjs.CHROMATIC_MASK; exports.Chord = _chunkGDKE6RQWcjs.Chord; exports.Composer = _chunkGDKE6RQWcjs.Composer; exports.ConsonanceClass = _chunkXKSO2V5Icjs.ConsonanceClass; exports.DEFAULT_GENERATION_BUDGET = _chunkXKSO2V5Icjs.DEFAULT_GENERATION_BUDGET; exports.DORIAN_MASK = _chunkYPB3A3EYcjs.DORIAN_MASK; exports.DOUBLE_HARMONIC_MASK = _chunkYPB3A3EYcjs.DOUBLE_HARMONIC_MASK; exports.DRUM_KIT = _chunk5KW7DNCJcjs.DRUM_KIT; exports.DRUM_NOTES = _chunk5KW7DNCJcjs.DRUM_NOTES; exports.DRUM_PATTERNS = _chunk5KW7DNCJcjs.DRUM_PATTERNS; exports.Duration = _chunkGDKE6RQWcjs.Duration; exports.FILL_ARCHETYPES = _chunk5KW7DNCJcjs.FILL_ARCHETYPES; exports.FILL_TYPES = _chunk5KW7DNCJcjs.FILL_TYPES; exports.GENRES = _chunk5KW7DNCJcjs.GENRES; exports.GUITAR_DROP_D = _chunkJ772DL3Bcjs.GUITAR_DROP_D; exports.GUITAR_STANDARD = _chunkJ772DL3Bcjs.GUITAR_STANDARD; exports.HARMONIC_MINOR_MASK = _chunkYPB3A3EYcjs.HARMONIC_MINOR_MASK; exports.Instrument = _chunkGDKE6RQWcjs.Instrument; exports.Interval = _chunkGDKE6RQWcjs.Interval; exports.InvalidInputError = _chunkXKSO2V5Icjs.InvalidInputError; exports.JUST_RATIOS = _chunk5JJ6EHEZcjs.JUST_RATIOS; exports.KICK_FIGURES = _chunk5KW7DNCJcjs.KICK_FIGURES; exports.KICK_STEPS = _chunk5KW7DNCJcjs.KICK_STEPS; exports.Key = _chunkGDKE6RQWcjs.Key; exports.LIMBS = _chunkJ772DL3Bcjs.LIMBS; exports.LOCRIAN_MASK = _chunkYPB3A3EYcjs.LOCRIAN_MASK; exports.LOCRIAN_NATURAL2_MASK = _chunkYPB3A3EYcjs.LOCRIAN_NATURAL2_MASK; exports.LYDIAN_DOMINANT_MASK = _chunkYPB3A3EYcjs.LYDIAN_DOMINANT_MASK; exports.LYDIAN_MASK = _chunkYPB3A3EYcjs.LYDIAN_MASK; exports.MAJOR_MASK = _chunkYPB3A3EYcjs.MAJOR_MASK; exports.MAJOR_PENTATONIC_MASK = _chunkYPB3A3EYcjs.MAJOR_PENTATONIC_MASK; exports.MARWA_MASK = _chunkYPB3A3EYcjs.MARWA_MASK; exports.MAX_DIFFICULTY = _chunk5KW7DNCJcjs.MAX_DIFFICULTY; exports.MELODIC_MINOR_MASK = _chunkYPB3A3EYcjs.MELODIC_MINOR_MASK; exports.MINOR_PENTATONIC_MASK = _chunkYPB3A3EYcjs.MINOR_PENTATONIC_MASK; exports.MIN_ALGORITHM_VERSION = _chunkJ772DL3Bcjs.MIN_ALGORITHM_VERSION; exports.MIN_DIFFICULTY = _chunk5KW7DNCJcjs.MIN_DIFFICULTY; exports.MIXOLYDIAN_B13_MASK = _chunkYPB3A3EYcjs.MIXOLYDIAN_B13_MASK; exports.MIXOLYDIAN_MASK = _chunkYPB3A3EYcjs.MIXOLYDIAN_MASK; exports.MIYAKO_BUSHI_MASK = _chunkYPB3A3EYcjs.MIYAKO_BUSHI_MASK; exports.MODAL_SCALE_NAMES = _chunkQ6R3QAZDcjs.MODAL_SCALE_NAMES; exports.Meter = _chunkGDKE6RQWcjs.Meter; exports.Motif = _chunkGDKE6RQWcjs.Motif; exports.NAMED_SCALES = _chunkYPB3A3EYcjs.NAMED_SCALES; exports.NATURAL_MINOR_MASK = _chunkYPB3A3EYcjs.NATURAL_MINOR_MASK; exports.NOTE_VALUES = _chunk5JJ6EHEZcjs.NOTE_VALUES; exports.NoSolutionError = _chunkXKSO2V5Icjs.NoSolutionError; exports.Note = _chunkGDKE6RQWcjs.Note; exports.NoteSafety = _chunkYPB3A3EYcjs.NoteSafety; exports.OCTATONIC_HALF_WHOLE_MASK = _chunkYPB3A3EYcjs.OCTATONIC_HALF_WHOLE_MASK; exports.OCTATONIC_WHOLE_HALF_MASK = _chunkYPB3A3EYcjs.OCTATONIC_WHOLE_HALF_MASK; exports.ORNAMENT_STYLES = _chunk5KW7DNCJcjs.ORNAMENT_STYLES; exports.PHRYGIAN_DOMINANT_MASK = _chunkYPB3A3EYcjs.PHRYGIAN_DOMINANT_MASK; exports.PHRYGIAN_MASK = _chunkYPB3A3EYcjs.PHRYGIAN_MASK; exports.PROFILE_WEIGHTS = _chunkYPB3A3EYcjs.PROFILE_WEIGHTS; exports.PROVENANCE_BASES = _chunk5KW7DNCJcjs.PROVENANCE_BASES; exports.PURVI_MASK = _chunkYPB3A3EYcjs.PURVI_MASK; exports.Progression = _chunkGDKE6RQWcjs.Progression; exports.RITSU_MASK = _chunkYPB3A3EYcjs.RITSU_MASK; exports.RYUKYU_MASK = _chunkYPB3A3EYcjs.RYUKYU_MASK; exports.ReasonFlag = _chunkYPB3A3EYcjs.ReasonFlag; exports.Rhythm = _chunkGDKE6RQWcjs.Rhythm; exports.SATB_RANGES = _chunkRVS4G4MRcjs.SATB_RANGES; exports.SCALE_ALIASES = _chunkYPB3A3EYcjs.SCALE_ALIASES; exports.SCALE_SYSTEMS = _chunkYPB3A3EYcjs.SCALE_SYSTEMS; exports.STEP_BEATS = _chunk5KW7DNCJcjs.STEP_BEATS; exports.Score = _chunkGDKE6RQWcjs.Score; exports.TODI_MASK = _chunkYPB3A3EYcjs.TODI_MASK; exports.TRANSPOSING_INSTRUMENTS = _chunkRVS4G4MRcjs.TRANSPOSING_INSTRUMENTS; exports.TWELVE_TET = _chunk5JJ6EHEZcjs.TWELVE_TET; exports.Tempo = _chunkGDKE6RQWcjs.Tempo; exports.Timeline = _chunkGDKE6RQWcjs.Timeline; exports.Tuning = _chunkGDKE6RQWcjs.Tuning; exports.Voicing = _chunkGDKE6RQWcjs.Voicing; exports.WHOLE_TONE_MASK = _chunkYPB3A3EYcjs.WHOLE_TONE_MASK; exports.WORLD_SCALES = _chunkYPB3A3EYcjs.WORLD_SCALES; exports.analyzeArrangement = _chunkXVMJO3QFcjs.analyzeArrangement; exports.analyzeChord = _chunkQ6R3QAZDcjs.analyzeChord; exports.analyzePolyphony = _chunkXVMJO3QFcjs.analyzePolyphony; exports.analyzeVoice = _chunkQ6R3QAZDcjs.analyzeVoice; exports.applyGrooveTemplate = _chunk5KW7DNCJcjs.applyGrooveTemplate; exports.assertChordTimeline = _chunkQ6R3QAZDcjs.assertChordTimeline; exports.assertDegree = _chunkXKSO2V5Icjs.assertDegree; exports.assertFiniteNumber = _chunkXKSO2V5Icjs.assertFiniteNumber; exports.assertFiniteSemitones = _chunkXKSO2V5Icjs.assertFiniteSemitones; exports.assertGenerationBudget = _chunkXKSO2V5Icjs.assertGenerationBudget; exports.assertInteger = _chunkXKSO2V5Icjs.assertInteger; exports.assertKeyVariant = _chunkYPB3A3EYcjs.assertKeyVariant; exports.assertMeterMap = _chunkXKSO2V5Icjs.assertMeterMap; exports.assertMidiPitch = _chunkXKSO2V5Icjs.assertMidiPitch; exports.assertModeMask = _chunkYPB3A3EYcjs.assertModeMask; exports.assertNoteEvent = _chunkXKSO2V5Icjs.assertNoteEvent; exports.assertNoteEvents = _chunkXKSO2V5Icjs.assertNoteEvents; exports.assertOneOf = _chunkXKSO2V5Icjs.assertOneOf; exports.assertPositiveInt = _chunkXKSO2V5Icjs.assertPositiveInt; exports.assertRange = _chunkXKSO2V5Icjs.assertRange; exports.assertTimeSignature = _chunkXKSO2V5Icjs.assertTimeSignature; exports.assertVocabulary = _chunk5KW7DNCJcjs.assertVocabulary; exports.augmentedSixthChord = _chunkQ6R3QAZDcjs.augmentedSixthChord; exports.augmentedSixthFromPitchClasses = _chunkQ6R3QAZDcjs.augmentedSixthFromPitchClasses; exports.augmentedSixthKind = _chunkQ6R3QAZDcjs.augmentedSixthKind; exports.availableTensions = _chunkR7B5N2JKcjs.availableTensions; exports.avoidNotes = _chunkR7B5N2JKcjs.avoidNotes; exports.barIndexAt = _chunkXKSO2V5Icjs.barIndexAt; exports.barPositionToBeat = _chunkXKSO2V5Icjs.barPositionToBeat; exports.barPositionToPulse = _chunkXKSO2V5Icjs.barPositionToPulse; exports.barStartBeat = _chunkXKSO2V5Icjs.barStartBeat; exports.beatToBarPosition = _chunkXKSO2V5Icjs.beatToBarPosition; exports.beatsPerBar = _chunkXKSO2V5Icjs.beatsPerBar; exports.beatsPerBarAt = _chunkXKSO2V5Icjs.beatsPerBarAt; exports.beatsToDuration = _chunk5JJ6EHEZcjs.beatsToDuration; exports.beatsToSeconds = _chunk5JJ6EHEZcjs.beatsToSeconds; exports.beatsToTicks = _chunk5JJ6EHEZcjs.beatsToTicks; exports.beatsToTiedDurations = _chunk5JJ6EHEZcjs.beatsToTiedDurations; exports.borrowedSource = _chunkQ6R3QAZDcjs.borrowedSource; exports.canSound = _chunkJ772DL3Bcjs.canSound; exports.centsBetweenFreq = _chunk5JJ6EHEZcjs.centsBetweenFreq; exports.centsFromNearestStep = _chunk5JJ6EHEZcjs.centsFromNearestStep; exports.centsOfSteps = _chunk5JJ6EHEZcjs.centsOfSteps; exports.centsToRatio = _chunk5JJ6EHEZcjs.centsToRatio; exports.checkPartWriting = _chunkRVS4G4MRcjs.checkPartWriting; exports.checkSpecies = _chunkRVS4G4MRcjs.checkSpecies; exports.chordFromDegree = _chunkYPB3A3EYcjs.chordFromDegree; exports.chordFromSpan = _chunkYPB3A3EYcjs.chordFromSpan; exports.chordFromSpec = _chunkYPB3A3EYcjs.chordFromSpec; exports.chordPitchClasses = _chunkYPB3A3EYcjs.chordPitchClasses; exports.chordQualities = _chunkYPB3A3EYcjs.chordQualities; exports.chordScaleReport = _chunkR7B5N2JKcjs.chordScaleReport; exports.chordScales = _chunkR7B5N2JKcjs.chordScales; exports.chordSpecIntervals = _chunkYPB3A3EYcjs.chordSpecIntervals; exports.chordSpecOf = _chunkYPB3A3EYcjs.chordSpecOf; exports.chordSpecQuality = _chunkYPB3A3EYcjs.chordSpecQuality; exports.chordTimelineFromChords = _chunkQ6R3QAZDcjs.chordTimelineFromChords; exports.chordTimelineFromNotes = _chunkQ6R3QAZDcjs.chordTimelineFromNotes; exports.chordToRoman = _chunkQ6R3QAZDcjs.chordToRoman; exports.chordToneRole = _chunkYPB3A3EYcjs.chordToneRole; exports.clampToMidi = _chunkXKSO2V5Icjs.clampToMidi; exports.classifyInterval = _chunkXKSO2V5Icjs.classifyInterval; exports.classifyMelodyTones = _chunk5KW7DNCJcjs.classifyMelodyTones; exports.classifySpelledInterval = _chunkYPB3A3EYcjs.classifySpelledInterval; exports.compareMelodies = _chunkXVMJO3QFcjs.compareMelodies; exports.createArrangementSession = _chunkXVMJO3QFcjs.createArrangementSession; exports.createNoteEventIndex = _chunkTT6PKMPRcjs.createNoteEventIndex; exports.createPositionalRng = _chunkJ772DL3Bcjs.createPositionalRng; exports.createRng = _chunkJ772DL3Bcjs.createRng; exports.createsBattuta = _chunkYPB3A3EYcjs.createsBattuta; exports.createsHiddenParallelPerfect = _chunkYPB3A3EYcjs.createsHiddenParallelPerfect; exports.createsParallelOctave = _chunkYPB3A3EYcjs.createsParallelOctave; exports.createsParallelPerfect = _chunkYPB3A3EYcjs.createsParallelPerfect; exports.createsParallelUnison = _chunkYPB3A3EYcjs.createsParallelUnison; exports.createsVerticalDissonance = _chunkYPB3A3EYcjs.createsVerticalDissonance; exports.createsVoiceCrossing = _chunkYPB3A3EYcjs.createsVoiceCrossing; exports.createsVoiceOverlap = _chunkYPB3A3EYcjs.createsVoiceOverlap; exports.deform = _chunk5KW7DNCJcjs.deform; exports.deriveSeed = _chunkJ772DL3Bcjs.deriveSeed; exports.detectCadence = _chunkQ6R3QAZDcjs.detectCadence; exports.detectCadences = _chunkQ6R3QAZDcjs.detectCadences; exports.detectChord = _chunkQ6R3QAZDcjs.detectChord; exports.detectChordBest = _chunkQ6R3QAZDcjs.detectChordBest; exports.detectKey = _chunkQ6R3QAZDcjs.detectKey; exports.detectKeyBest = _chunkQ6R3QAZDcjs.detectKeyBest; exports.detectKeyFromNotes = _chunkQ6R3QAZDcjs.detectKeyFromNotes; exports.detectModulations = _chunkQ6R3QAZDcjs.detectModulations; exports.detectNoteNameSystem = _chunkXKSO2V5Icjs.detectNoteNameSystem; exports.developMotif = _chunk5KW7DNCJcjs.developMotif; exports.diatonicLetterOf = _chunkXKSO2V5Icjs.diatonicLetterOf; exports.diatonicPitchClasses = _chunkYPB3A3EYcjs.diatonicPitchClasses; exports.diatonicSeventh = _chunkYPB3A3EYcjs.diatonicSeventh; exports.diatonicTriad = _chunkYPB3A3EYcjs.diatonicTriad; exports.dominantKeyOf = _chunkYPB3A3EYcjs.dominantKeyOf; exports.double = _chunk5KW7DNCJcjs.double; exports.doubleTime = _chunk5KW7DNCJcjs.doubleTime; exports.dropSilentNotes = _chunkXKSO2V5Icjs.dropSilentNotes; exports.drumVoiceOf = _chunk5KW7DNCJcjs.drumVoiceOf; exports.durationToBeats = _chunk5JJ6EHEZcjs.durationToBeats; exports.durationToSeconds = _chunk5JJ6EHEZcjs.durationToSeconds; exports.edo = _chunk5JJ6EHEZcjs.edo; exports.enharmonicKeyOf = _chunkYPB3A3EYcjs.enharmonicKeyOf; exports.enumerateSafePitches = _chunkYPB3A3EYcjs.enumerateSafePitches; exports.evaluateSafety = _chunkYPB3A3EYcjs.evaluateSafety; exports.exceedsSpacing = _chunkYPB3A3EYcjs.exceedsSpacing; exports.explainRoman = _chunkQ6R3QAZDcjs.explainRoman; exports.extractGrooveTemplate = _chunk5KW7DNCJcjs.extractGrooveTemplate; exports.extractMotifs = _chunkXVMJO3QFcjs.extractMotifs; exports.figuredBassOf = _chunkRVS4G4MRcjs.figuredBassOf; exports.figuredBassRealization = _chunkRVS4G4MRcjs.figuredBassRealization; exports.fingeringsFor = _chunkJ772DL3Bcjs.fingeringsFor; exports.fitsQuery = _chunk5KW7DNCJcjs.fitsQuery; exports.foldIntoRange = _chunkJ772DL3Bcjs.foldIntoRange; exports.formatBarPosition = _chunkXKSO2V5Icjs.formatBarPosition; exports.formatChordSymbol = _chunkYPB3A3EYcjs.formatChordSymbol; exports.formatKeyName = _chunkXKSO2V5Icjs.formatKeyName; exports.formatNote = _chunkXKSO2V5Icjs.formatNote; exports.formatTimeSignature = _chunkXKSO2V5Icjs.formatTimeSignature; exports.frequencyOf = _chunk5JJ6EHEZcjs.frequencyOf; exports.functionOf = _chunkQ6R3QAZDcjs.functionOf; exports.generateBassLine = _chunk5KW7DNCJcjs.generateBassLine; exports.generateCounterMelody = _chunk5KW7DNCJcjs.generateCounterMelody; exports.generateDrums = _chunk5KW7DNCJcjs.generateDrums; exports.generateMotif = _chunk5KW7DNCJcjs.generateMotif; exports.generateProgression = _chunk5KW7DNCJcjs.generateProgression; exports.generateRhythm = _chunk5KW7DNCJcjs.generateRhythm; exports.gridMetricWeight = _chunk5KW7DNCJcjs.gridMetricWeight; exports.halfTime = _chunk5KW7DNCJcjs.halfTime; exports.harmonizeMelody = _chunk5KW7DNCJcjs.harmonizeMelody; exports.humanize = _chunk5KW7DNCJcjs.humanize; exports.hypermeter = _chunkXVMJO3QFcjs.hypermeter; exports.imitate = _chunk5KW7DNCJcjs.imitate; exports.includeAt = _chunkJ772DL3Bcjs.includeAt; exports.instrumentRange = _chunkJ772DL3Bcjs.instrumentRange; exports.instrumentTransposition = _chunkRVS4G4MRcjs.instrumentTransposition; exports.intervalAboveRoot = _chunkYPB3A3EYcjs.intervalAboveRoot; exports.intervalSemitones = _chunkXKSO2V5Icjs.intervalSemitones; exports.isAugmentedMelodicInterval = _chunkYPB3A3EYcjs.isAugmentedMelodicInterval; exports.isBorrowedChord = _chunkQ6R3QAZDcjs.isBorrowedChord; exports.isChordMember = _chunkYPB3A3EYcjs.isChordMember; exports.isCompound = _chunkXKSO2V5Icjs.isCompound; exports.isConsonantInterval = _chunkXKSO2V5Icjs.isConsonantInterval; exports.isDiatonic = _chunkQ6R3QAZDcjs.isDiatonic; exports.isDrumPattern = _chunk5KW7DNCJcjs.isDrumPattern; exports.isFillArchetype = _chunk5KW7DNCJcjs.isFillArchetype; exports.isForbiddenMelodicLeap = _chunkYPB3A3EYcjs.isForbiddenMelodicLeap; exports.isLeadingToneResolution = _chunkYPB3A3EYcjs.isLeadingToneResolution; exports.isLibcantusError = _chunkXKSO2V5Icjs.isLibcantusError; exports.isLickMaterial = _chunk5KW7DNCJcjs.isLickMaterial; exports.isMinorKey = _chunkQ6R3QAZDcjs.isMinorKey; exports.isPerfectInterval = _chunkXKSO2V5Icjs.isPerfectInterval; exports.isScaleTone = _chunkYPB3A3EYcjs.isScaleTone; exports.isSignatureKey = _chunkYPB3A3EYcjs.isSignatureKey; exports.isStrongBeat = _chunkXKSO2V5Icjs.isStrongBeat; exports.justDeviationCents = _chunk5JJ6EHEZcjs.justDeviationCents; exports.keyFromFifths = _chunkYPB3A3EYcjs.keyFromFifths; exports.keyRelationBetween = _chunkYPB3A3EYcjs.keyRelationBetween; exports.keySignatureFifths = _chunkYPB3A3EYcjs.keySignatureFifths; exports.keyTimelineFromNotes = _chunkQ6R3QAZDcjs.keyTimelineFromNotes; exports.majorKey = _chunkYPB3A3EYcjs.majorKey; exports.makeChord = _chunkYPB3A3EYcjs.makeChord; exports.maskFromOffsets = _chunkYPB3A3EYcjs.maskFromOffsets; exports.melodicContour = _chunkXVMJO3QFcjs.melodicContour; exports.melodicSimilarity = _chunkXVMJO3QFcjs.melodicSimilarity; exports.mergeVocabulary = _chunk5KW7DNCJcjs.mergeVocabulary; exports.meterAt = _chunkXKSO2V5Icjs.meterAt; exports.metricWeight = _chunkXKSO2V5Icjs.metricWeight; exports.midiToNote = _chunkXKSO2V5Icjs.midiToNote; exports.minorKey = _chunkYPB3A3EYcjs.minorKey; exports.modalInterchangePalette = _chunk5KW7DNCJcjs.modalInterchangePalette; exports.motifFromNotes = _chunkXVMJO3QFcjs.motifFromNotes; exports.motifToNoteEvents = _chunk5KW7DNCJcjs.motifToNoteEvents; exports.namedScaleMask = _chunkYPB3A3EYcjs.namedScaleMask; exports.naturalPitchClassOf = _chunkXKSO2V5Icjs.naturalPitchClassOf; exports.nearestScaleTone = _chunkYPB3A3EYcjs.nearestScaleTone; exports.nearestStep = _chunk5JJ6EHEZcjs.nearestStep; exports.negativeHarmonyMirror = _chunk5KW7DNCJcjs.negativeHarmonyMirror; exports.nextVoicing = _chunkRVS4G4MRcjs.nextVoicing; exports.noteNames = _chunkYPB3A3EYcjs.noteNames; exports.noteToMidi = _chunkXKSO2V5Icjs.noteToMidi; exports.noteToPitchClass = _chunkXKSO2V5Icjs.noteToPitchClass; exports.onsetWeightCurve = _chunk5KW7DNCJcjs.onsetWeightCurve; exports.ornament = _chunk5KW7DNCJcjs.ornament; exports.ornamentBy = _chunk5KW7DNCJcjs.ornamentBy; exports.parallelKeyOf = _chunkYPB3A3EYcjs.parallelKeyOf; exports.parseChordSymbol = _chunkYPB3A3EYcjs.parseChordSymbol; exports.parseInterval = _chunkXKSO2V5Icjs.parseInterval; exports.parseKeyName = _chunkXKSO2V5Icjs.parseKeyName; exports.parseNote = _chunkXKSO2V5Icjs.parseNote; exports.parseTimeSignature = _chunkXKSO2V5Icjs.parseTimeSignature; exports.phrasesFromTimeline = _chunkXVMJO3QFcjs.phrasesFromTimeline; exports.pickProgressionPreset = _chunk5KW7DNCJcjs.pickProgressionPreset; exports.pickVocabulary = _chunk5KW7DNCJcjs.pickVocabulary; exports.pitchClassOf = _chunkXKSO2V5Icjs.pitchClassOf; exports.pitchToScaleDegree = _chunkYPB3A3EYcjs.pitchToScaleDegree; exports.pivotChords = _chunkQ6R3QAZDcjs.pivotChords; exports.placeDrumPattern = _chunk5KW7DNCJcjs.placeDrumPattern; exports.placeLicks = _chunk5KW7DNCJcjs.placeLicks; exports.playability = _chunkJ772DL3Bcjs.playability; exports.prevailingKeyOf = _chunkQ6R3QAZDcjs.prevailingKeyOf; exports.profileWeights = _chunkYPB3A3EYcjs.profileWeights; exports.progressions = _chunk5KW7DNCJcjs.progressions; exports.progressionsByStyle = _chunk5KW7DNCJcjs.progressionsByStyle; exports.pulseBeats = _chunkXKSO2V5Icjs.pulseBeats; exports.pulsesPerBar = _chunkXKSO2V5Icjs.pulsesPerBar; exports.ratioToCents = _chunk5JJ6EHEZcjs.ratioToCents; exports.realizeFiguredBass = _chunkRVS4G4MRcjs.realizeFiguredBass; exports.reduceProgression = _chunkXVMJO3QFcjs.reduceProgression; exports.relateMotifs = _chunkXVMJO3QFcjs.relateMotifs; exports.relatedKeysOf = _chunkYPB3A3EYcjs.relatedKeysOf; exports.relativeKeyOf = _chunkYPB3A3EYcjs.relativeKeyOf; exports.requireScaleMask = _chunkYPB3A3EYcjs.requireScaleMask; exports.resolveAlgorithmVersion = _chunkJ772DL3Bcjs.resolveAlgorithmVersion; exports.resolveContext = _chunk5KW7DNCJcjs.resolveContext; exports.resolveKey = _chunkYPB3A3EYcjs.resolveKey; exports.resolveMeters = _chunkXKSO2V5Icjs.resolveMeters; exports.resolveScaleName = _chunkYPB3A3EYcjs.resolveScaleName; exports.rhythmDensity = _chunk5KW7DNCJcjs.rhythmDensity; exports.rhythmToNoteEvents = _chunk5KW7DNCJcjs.rhythmToNoteEvents; exports.roleOf = _chunkR7B5N2JKcjs.roleOf; exports.romanToChord = _chunkQ6R3QAZDcjs.romanToChord; exports.scaleByName = _chunkYPB3A3EYcjs.scaleByName; exports.scaleLadderPitch = _chunkYPB3A3EYcjs.scaleLadderPitch; exports.scaleLadderPosition = _chunkYPB3A3EYcjs.scaleLadderPosition; exports.scaleMatchesChord = _chunkR7B5N2JKcjs.scaleMatchesChord; exports.scaleOf = _chunkYPB3A3EYcjs.scaleOf; exports.scaleSystemOf = _chunkYPB3A3EYcjs.scaleSystemOf; exports.scaleTonesInDegreeOrder = _chunkYPB3A3EYcjs.scaleTonesInDegreeOrder; exports.scalesForChanges = _chunkR7B5N2JKcjs.scalesForChanges; exports.secondaryDominant = _chunkQ6R3QAZDcjs.secondaryDominant; exports.secondaryDominantOf = _chunkQ6R3QAZDcjs.secondaryDominantOf; exports.secondsToBeats = _chunk5JJ6EHEZcjs.secondsToBeats; exports.sectionsFromNotes = _chunkXVMJO3QFcjs.sectionsFromNotes; exports.selectVocabulary = _chunk5KW7DNCJcjs.selectVocabulary; exports.shiftByScaleDegrees = _chunkYPB3A3EYcjs.shiftByScaleDegrees; exports.soundingNotesOnly = _chunkXKSO2V5Icjs.soundingNotesOnly; exports.spanFromChord = _chunkYPB3A3EYcjs.spanFromChord; exports.spellAugmentedSixth = _chunkQ6R3QAZDcjs.spellAugmentedSixth; exports.spellChord = _chunkYPB3A3EYcjs.spellChord; exports.spellChordFromRoot = _chunkYPB3A3EYcjs.spellChordFromRoot; exports.spellLine = _chunkQCXYKSZScjs.spellLine; exports.spellPitch = _chunkYPB3A3EYcjs.spellPitch; exports.spellPitchClass = _chunkYPB3A3EYcjs.spellPitchClass; exports.spellPitchClasses = _chunkYPB3A3EYcjs.spellPitchClasses; exports.spellScale = _chunkYPB3A3EYcjs.spellScale; exports.spellVoicing = _chunkRVS4G4MRcjs.spellVoicing; exports.spelledInterval = _chunkXKSO2V5Icjs.spelledInterval; exports.spelledKeyOf = _chunkYPB3A3EYcjs.spelledKeyOf; exports.stepOf = _chunk5JJ6EHEZcjs.stepOf; exports.stepsOfCents = _chunk5JJ6EHEZcjs.stepsOfCents; exports.structuralCadences = _chunkXVMJO3QFcjs.structuralCadences; exports.subdominantKeyOf = _chunkYPB3A3EYcjs.subdominantKeyOf; exports.substituteChord = _chunk5KW7DNCJcjs.substituteChord; exports.supportsFunctionalHarmony = _chunkYPB3A3EYcjs.supportsFunctionalHarmony; exports.sustainsShift = _chunk5KW7DNCJcjs.sustainsShift; exports.sustainsStrokes = _chunk5KW7DNCJcjs.sustainsStrokes; exports.syncopate = _chunk5KW7DNCJcjs.syncopate; exports.tempoAt = _chunk5JJ6EHEZcjs.tempoAt; exports.tensionCurve = _chunkXVMJO3QFcjs.tensionCurve; exports.tensionCurveFrom = _chunkXVMJO3QFcjs.tensionCurveFrom; exports.thin = _chunk5KW7DNCJcjs.thin; exports.ticksToBeats = _chunk5JJ6EHEZcjs.ticksToBeats; exports.toChordData = _chunkYPB3A3EYcjs.toChordData; exports.toInstrumentProfile = _chunkJ772DL3Bcjs.toInstrumentProfile; exports.toKeyScale = _chunkYPB3A3EYcjs.toKeyScale; exports.toMeterData = _chunkXKSO2V5Icjs.toMeterData; exports.toNoteData = _chunkXKSO2V5Icjs.toNoteData; exports.toSoundingPitch = _chunkRVS4G4MRcjs.toSoundingPitch; exports.toSpelledInterval = _chunkXKSO2V5Icjs.toSpelledInterval; exports.toStringedProfile = _chunkJ772DL3Bcjs.toStringedProfile; exports.toVoiceNotes = _chunkQ6R3QAZDcjs.toVoiceNotes; exports.toWrittenPitch = _chunkRVS4G4MRcjs.toWrittenPitch; exports.transformMotif = _chunk5KW7DNCJcjs.transformMotif; exports.transposeByInterval = _chunkXKSO2V5Icjs.transposeByInterval; exports.transposeChord = _chunkYPB3A3EYcjs.transposeChord; exports.transposeChordSymbol = _chunkYPB3A3EYcjs.transposeChordSymbol; exports.transposeNote = _chunkXKSO2V5Icjs.transposeNote; exports.tryParseChordSymbol = _chunkYPB3A3EYcjs.tryParseChordSymbol; exports.tryParseInterval = _chunkXKSO2V5Icjs.tryParseInterval; exports.tryParseKeyName = _chunkXKSO2V5Icjs.tryParseKeyName; exports.tryParseNote = _chunkXKSO2V5Icjs.tryParseNote; exports.tryParseTimeSignature = _chunkXKSO2V5Icjs.tryParseTimeSignature; exports.tryResolveKeyName = _chunkYPB3A3EYcjs.tryResolveKeyName; exports.tuplet = _chunkXKSO2V5Icjs.tuplet; exports.variantOfMask = _chunkYPB3A3EYcjs.variantOfMask; exports.vocabularyOfKind = _chunk5KW7DNCJcjs.vocabularyOfKind; exports.voiceChord = _chunkRVS4G4MRcjs.voiceChord; exports.voiceChordStyled = _chunkRVS4G4MRcjs.voiceChordStyled; exports.voiceIndependence = _chunkYPB3A3EYcjs.voiceIndependence; exports.voiceLeadingCost = _chunkRVS4G4MRcjs.voiceLeadingCost; exports.voiceProgression = _chunkRVS4G4MRcjs.voiceProgression; exports.withinCeiling = _chunk5KW7DNCJcjs.withinCeiling;
763
791
  //# sourceMappingURL=index.cjs.map
@@ -1 +1 @@
1
- {"version":3,"sources":["/home/runner/work/libcantus/libcantus/dist/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wyqBAAC","file":"/home/runner/work/libcantus/libcantus/dist/index.cjs"}
1
+ {"version":3,"sources":["/home/runner/work/libcantus/libcantus/dist/index.cjs"],"names":[],"mappings":"AAAA;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACF,wDAA6B;AAC7B,gCAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,wDAA6B;AAC7B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,0osBAAC","file":"/home/runner/work/libcantus/libcantus/dist/index.cjs"}
package/dist/index.d.cts CHANGED
@@ -1,17 +1,17 @@
1
- export { A as ARTICULATIONS, a as Articulation, B as BudgetExceededError, I as IntervalLike, b as IntervalQualityLabel, c as InvalidInputError, K as KeyName, d as KeyScale, L as LibcantusError, e as LibcantusErrorCode, N as NoSolutionError, f as NoteData, g as NoteEvent, h as NoteLike, i as NoteNameOptions, j as NoteNameSystem, P as ParseResult, S as SpelledInterval, k as detectNoteNameSystem, l as diatonicLetterOf, m as formatKeyName, n as formatNote, o as intervalSemitones, p as isLibcantusError, q as midiToNote, r as naturalPitchClassOf, s as noteToMidi, t as noteToPitchClass, u as parseInterval, v as parseKeyName, w as parseNote, x as pitchClassOf, y as spelledInterval, z as toNoteData, C as toSpelledInterval, D as transposeByInterval, E as transposeNote, F as tryParseInterval, G as tryParseKeyName, H as tryParseNote } from './index-B9MNZboQ.cjs';
2
- export { D as DurationData, I as IndexedNoteEvent, J as JUST_RATIOS, N as NOTE_VALUES, a as NoteEventIndex, b as NoteEventIndexOptions, c as NotePlacement, d as NoteValue, O as OnsetTieBreak, P as PlayabilityIssue, e as PlayabilityIssueType, f as PlayabilityLayer, g as PlayabilityReport, S as SpelledDuration, T as TWELVE_TET, h as TempoEvent, i as TempoMap, j as TuningTable, k as Tuplet, l as beatsToDuration, m as beatsToSeconds, n as beatsToTicks, o as beatsToTiedDurations, p as centsBetweenFreq, q as centsFromNearestStep, r as centsOfSteps, s as centsToRatio, t as createNoteEventIndex, u as durationToBeats, v as durationToSeconds, w as edo, x as frequencyOf, y as justDeviationCents, z as nearestStep, A as playability, B as ratioToCents, C as secondsToBeats, E as stepOf, F as stepsOfCents, G as tempoAt, H as ticksToBeats } from './index-CGpRv5sl.cjs';
3
- export { I as InstrumentProfile, a as InstrumentProfileCommon, b as InstrumentProfileLike, L as LIMBS, c as Limb, P as PercussionProfile, d as PositionalRng, S as SeedPath, e as StringFingering, f as StringedProfile, g as canSound, h as createPositionalRng, i as deriveSeed, j as fingeringsFor, k as foldIntoRange, l as includeAt, m as instrumentRange } from './positional-DvH_sd8u.cjs';
1
+ export { A as ARTICULATIONS, a as Articulation, B as BudgetExceededError, I as IntervalData, b as IntervalLike, c as IntervalQualityLabel, d as InvalidInputError, K as KeyName, e as KeyScale, L as LibcantusError, f as LibcantusErrorCode, N as NoSolutionError, g as NoteData, h as NoteEvent, i as NoteLike, j as NoteNameOptions, k as NoteNameSystem, P as ParseResult, S as SpelledInterval, l as detectNoteNameSystem, m as diatonicLetterOf, n as formatKeyName, o as formatNote, p as intervalSemitones, q as isLibcantusError, r as midiToNote, s as naturalPitchClassOf, t as noteToMidi, u as noteToPitchClass, v as parseInterval, w as parseKeyName, x as parseNote, y as pitchClassOf, z as spelledInterval, C as toNoteData, D as toSpelledInterval, E as transposeByInterval, F as transposeNote, G as tryParseInterval, H as tryParseKeyName, J as tryParseNote } from './index-Cy15oTvh.cjs';
2
+ export { D as DurationData, I as IndexedNoteEvent, J as JUST_RATIOS, N as NOTE_VALUES, a as NoteEventIndex, b as NoteEventIndexOptions, c as NotePlacement, d as NoteValue, O as OnsetTieBreak, P as PlayabilityIssue, e as PlayabilityIssueType, f as PlayabilityLayer, g as PlayabilityReport, S as SpelledDuration, T as TWELVE_TET, h as TempoEvent, i as TempoMap, j as TuningTable, k as Tuplet, l as beatsToDuration, m as beatsToSeconds, n as beatsToTicks, o as beatsToTiedDurations, p as centsBetweenFreq, q as centsFromNearestStep, r as centsOfSteps, s as centsToRatio, t as createNoteEventIndex, u as durationToBeats, v as durationToSeconds, w as edo, x as frequencyOf, y as justDeviationCents, z as nearestStep, A as playability, B as ratioToCents, C as secondsToBeats, E as stepOf, F as stepsOfCents, G as tempoAt, H as ticksToBeats } from './index-cHvbYgJI.cjs';
3
+ export { I as InstrumentProfile, a as InstrumentProfileCommon, b as InstrumentProfileLike, L as LIMBS, c as Limb, P as PercussionProfile, d as PositionalRng, S as SeedPath, e as StringFingering, f as StringedProfile, V as ValidatedPercussionProfile, g as ValidatedProfile, h as ValidatedStringedProfile, i as canSound, j as createPositionalRng, k as deriveSeed, l as fingeringsFor, m as foldIntoRange, n as includeAt, o as instrumentRange, t as toInstrumentProfile, p as toStringedProfile } from './positional-DMZer-FM.cjs';
4
4
  export { ALGORITHM_VERSION, BASS_4_STRING, BASS_5_STRING, DEFAULT_GENERATION_BUDGET, GUITAR_DROP_D, GUITAR_STANDARD, MIN_ALGORITHM_VERSION, NoteEventAssertOptions, Rng, assertDegree, assertFiniteNumber, assertFiniteSemitones, assertGenerationBudget, assertInteger, assertMeterMap, assertMidiPitch, assertNoteEvent, assertNoteEvents, assertOneOf, assertPositiveInt, assertRange, assertTimeSignature, clampToMidi, createRng, dropSilentNotes, resolveAlgorithmVersion, soundingNotesOnly } from './core/index.cjs';
5
- export { B as BarPosition, M as MeterChange, a as MeterData, b as MeterLike, c as MeterMap, T as TimeSignature, d as barIndexAt, e as barPositionToBeat, f as barPositionToPulse, g as barStartBeat, h as beatToBarPosition, i as beatsPerBar, j as beatsPerBarAt, k as formatBarPosition, l as formatTimeSignature, m as isCompound, n as isStrongBeat, o as meterAt, p as metricWeight, q as parseTimeSignature, r as pulseBeats, s as pulsesPerBar, t as resolveMeters, u as toMeterData, v as tryParseTimeSignature, w as tuplet } from './index-BkGmlyI3.cjs';
6
- export { A as Alteration, a as AlteredDegree, C as ChordBase, b as ChordData, c as ChordLike, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordSymbolOptions, j as ChordToneRole, E as EvaluateSafetyOptions, K as KeyLike, k as KeyRelation, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, S as SafetyProfile, n as SafetyQuery, o as SafetyResult, p as SpelledKey, V as VoiceSnapshot, q as chordFromDegree, r as chordFromSpan, s as chordFromSpec, t as chordPitchClasses, u as chordQualities, v as chordSpecIntervals, w as chordSpecOf, x as chordSpecQuality, y as chordToneRole, z as diatonicSeventh, B as diatonicTriad, D as dominantKeyOf, F as enharmonicKeyOf, G as enumerateSafePitches, H as evaluateSafety, I as formatChordSymbol, J as intervalAboveRoot, L as isChordMember, M as keyRelationBetween, O as makeChord, Q as parallelKeyOf, T as parseChordSymbol, U as profileWeights, W as relatedKeysOf, X as relativeKeyOf, Y as spanFromChord, Z as spelledKeyOf, _ as subdominantKeyOf, $ as toChordData, a0 as toKeyScale, a1 as transposeChord, a2 as transposeChordSymbol, a3 as tryParseChordSymbol } from './index-C_8o--VE.cjs';
7
- export { FiguredBassRealization, FiguredBassSuspension, SpellingContext, classifySpelledInterval, createsBattuta, createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, figuredBassOf, figuredBassRealization, isAugmentedMelodicInterval, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, minorKey, nearestScaleTone, nextVoicing, noteNames, pitchToScaleDegree, realizeFiguredBass, scaleByName, scaleTonesInDegreeOrder, spellChord, spellChordFromRoot, spellPitch, spellPitchClass, spellPitchClasses, spellScale, voiceLeadingCost } from './theory/index.cjs';
8
- export { A as ALTERED_MASK, B as BLUES_MASK, C as CHROMATIC_MASK, D as DORIAN_MASK, a as DOUBLE_HARMONIC_MASK, H as HARMONIC_MINOR_MASK, L as LOCRIAN_MASK, b as LOCRIAN_NATURAL2_MASK, c as LYDIAN_DOMINANT_MASK, d as LYDIAN_MASK, M as MAJOR_MASK, e as MAJOR_PENTATONIC_MASK, f as MARWA_MASK, g as MELODIC_MINOR_MASK, h as MINOR_PENTATONIC_MASK, i as MIXOLYDIAN_B13_MASK, j as MIXOLYDIAN_MASK, k as MIYAKO_BUSHI_MASK, N as NAMED_SCALES, l as NATURAL_MINOR_MASK, O as OCTATONIC_HALF_WHOLE_MASK, m as OCTATONIC_WHOLE_HALF_MASK, P as PHRYGIAN_DOMINANT_MASK, n as PHRYGIAN_MASK, o as PURVI_MASK, R as RITSU_MASK, p as RYUKYU_MASK, S as SCALE_ALIASES, q as ScaleAliasName, r as ScaleName, s as ScaleNameInput, T as TODI_MASK, W as WHOLE_TONE_MASK, t as WORLD_SCALES, u as WorldScaleName, v as maskFromOffsets, w as namedScaleMask, x as requireScaleMask, y as resolveScaleName } from './masks-DYbE485J.cjs';
9
- export { A as AvailableTensionsOptions, a as AvoidNoteUse, b as AvoidNotesOptions, C as ChordScaleMatch, c as ChordScaleReportEntry, K as KeyMode, P as PartWritingOptions, d as PartWritingViolation, e as PartWritingViolationKind, S as SATB_RANGES, f as SCALE_SYSTEMS, g as ScaleChoice, h as ScaleSystem, i as Species, j as SpeciesOptions, k as SpelledVoicing, l as StyledVoicingOptions, T as TRANSPOSING_INSTRUMENTS, m as TransposingInstrument, n as TransposingInstrumentName, V as VoiceIndependenceOptions, o as VoiceIndependenceReport, p as VoiceRange, q as VoicingOptions, r as VoicingStyle, s as availableTensions, t as avoidNotes, u as checkPartWriting, v as checkSpecies, w as chordScaleReport, x as chordScales, y as instrumentTransposition, z as keyFromFifths, B as keySignatureFifths, D as scaleMatchesChord, E as scaleSystemOf, F as scalesForChanges, G as spellVoicing, H as supportsFunctionalHarmony, I as toSoundingPitch, J as toWrittenPitch, L as voiceChord, M as voiceChordStyled, N as voiceIndependence, O as voiceProgression } from './index-CCNJRG-P.cjs';
10
- export { A as ArrangementAnalysis, a as ArrangementOptions, b as ArrangementSession, c as ArrangementTrack, C as ChordMatch, d as Conflict, e as ContourDirection, D as DetectChordOptions, f as DetectKeyOptions, E as ExtractMotifsOptions, F as FormSection, g as FormSectionOptions, H as Hypermeter, h as HypermeterOptions, K as KeyMatch, i as KeyVariant, M as MODAL_SCALE_NAMES, j as MelodicComparison, k as MelodicContour, l as MelodicContourShape, m as MelodicPhrase, n as ModalCandidate, o as ModalScaleName, p as MotifData, q as MotifOccurrence, r as MotifRelation, s as MotifRelationKind, P as Phrase, t as PhraseOptions, u as PhraseSignal, R as ReduceProgressionOptions, v as ReducedChord, w as ReductionBasis, x as ReductionLevel, S as StructuralCadence, T as TensionPoint, y as TrackAnalysis, z as TrackEdit, B as TrackRole, G as analyzeArrangement, I as compareMelodies, J as createArrangementSession, L as detectChord, N as detectChordBest, O as detectKey, Q as detectKeyBest, U as detectKeyFromNotes, V as extractMotifs, W as hypermeter, X as melodicContour, Y as melodicSimilarity, Z as motifFromNotes, _ as phrasesFromTimeline, $ as reduceProgression, a0 as relateMotifs, a1 as sectionsFromNotes, a2 as structuralCadences, a3 as tensionCurve, a4 as tensionCurveFrom } from './index-BO6xE9YU.cjs';
11
- export { AugmentedSixthKind, SpellLineOptions, augmentedSixthChord, augmentedSixthFromPitchClasses, augmentedSixthKind, spellAugmentedSixth, spellLine } from './analyze/index.cjs';
12
- export { A as AnalyzeChordOptions, a as AnalyzedNote, B as BorrowedSource, C as CadenceHit, b as CadenceResult, c as ChordAnalysis, d as ChordSegmentation, e as ChordTimeline, f as ChordTimelineOptions, g as ChordTimelineResult, h as ChordToRomanOptions, D as DetectCadenceOptions, E as ExplainRomanOptions, H as HarmonicFunction, I as IdentifiedVoiceNote, K as KeyContext, i as KeyProfileName, j as KeyProfilePair, k as KeyRegion, l as KeyTimelineOptions, P as PivotChord, R as RejectedCandidate, m as RomanExplanation, S as SuspensionFigure, T as TheoryLabel, V as VoiceNote, n as analyzeChord, o as analyzeVoice, p as borrowedSource, q as chordTimelineFromChords, r as chordTimelineFromNotes, s as chordToRoman, t as detectCadence, u as detectCadences, v as detectModulations, w as explainRoman, x as functionOf, y as isBorrowedChord, z as isDiatonic, F as isMinorKey, G as keyTimelineFromNotes, J as pivotChords, L as prevailingKeyOf, M as romanToChord, N as secondaryDominant, O as secondaryDominantOf, Q as toVoiceNotes } from './index-Dzr13q3d.cjs';
5
+ export { B as BarPosition, M as MeterChange, a as MeterData, b as MeterLike, c as MeterMap, T as TimeSignature, d as barIndexAt, e as barPositionToBeat, f as barPositionToPulse, g as barStartBeat, h as beatToBarPosition, i as beatsPerBar, j as beatsPerBarAt, k as formatBarPosition, l as formatTimeSignature, m as isCompound, n as isStrongBeat, o as meterAt, p as metricWeight, q as parseTimeSignature, r as pulseBeats, s as pulsesPerBar, t as resolveMeters, u as toMeterData, v as tryParseTimeSignature, w as tuplet } from './index-D_hzxD8w.cjs';
6
+ export { A as Alteration, a as AlteredDegree, C as ChordBase, b as ChordData, c as ChordLike, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordToneRole, E as EvaluateSafetyOptions, K as KeyLike, j as KeyRelation, k as KeyVariant, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, n as ResolvedKey, S as SafetyProfile, o as SafetyQuery, p as SafetyResult, q as SpelledKeyLike, r as SpelledKeyScale, V as VoiceSnapshot, s as chordFromDegree, t as chordFromSpan, u as chordFromSpec, v as chordPitchClasses, w as chordQualities, x as chordSpecIntervals, y as chordSpecOf, z as chordSpecQuality, B as chordToneRole, D as diatonicSeventh, F as diatonicTriad, G as dominantKeyOf, H as enharmonicKeyOf, I as enumerateSafePitches, J as evaluateSafety, L as intervalAboveRoot, M as isChordMember, O as keyRelationBetween, Q as makeChord, T as parallelKeyOf, U as profileWeights, W as relatedKeysOf, X as relativeKeyOf, Y as spanFromChord, Z as spelledKeyOf, _ as subdominantKeyOf, $ as toChordData, a0 as toKeyScale, a1 as transposeChord } from './coerce-CJlgULrQ.cjs';
7
+ export { FiguredBassRealization, FiguredBassSuspension, HiddenParallelReading, ScaleLadderPosition, SpellingContext, classifySpelledInterval, createsBattuta, createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, figuredBassOf, figuredBassRealization, isAugmentedMelodicInterval, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, minorKey, nearestScaleTone, nextVoicing, noteNames, pitchToScaleDegree, realizeFiguredBass, resolveKey, scaleByName, scaleLadderPitch, scaleLadderPosition, scaleOf, scaleTonesInDegreeOrder, shiftByScaleDegrees, spellChord, spellChordFromRoot, spellPitch, spellPitchClass, spellPitchClasses, spellScale, tryResolveKeyName, voiceLeadingCost } from './theory/index.cjs';
8
+ export { A as ALTERED_MASK, B as BLUES_MASK, C as CHROMATIC_MASK, D as DORIAN_MASK, a as DOUBLE_HARMONIC_MASK, H as HARMONIC_MINOR_MASK, L as LOCRIAN_MASK, b as LOCRIAN_NATURAL2_MASK, c as LYDIAN_DOMINANT_MASK, d as LYDIAN_MASK, M as MAJOR_MASK, e as MAJOR_PENTATONIC_MASK, f as MARWA_MASK, g as MELODIC_MINOR_MASK, h as MINOR_PENTATONIC_MASK, i as MIXOLYDIAN_B13_MASK, j as MIXOLYDIAN_MASK, k as MIYAKO_BUSHI_MASK, N as NAMED_SCALES, l as NATURAL_MINOR_MASK, O as OCTATONIC_HALF_WHOLE_MASK, m as OCTATONIC_WHOLE_HALF_MASK, P as PHRYGIAN_DOMINANT_MASK, n as PHRYGIAN_MASK, o as PURVI_MASK, R as RITSU_MASK, p as RYUKYU_MASK, S as SCALE_ALIASES, q as ScaleAliasName, r as ScaleName, s as ScaleNameInput, T as TODI_MASK, W as WHOLE_TONE_MASK, t as WORLD_SCALES, u as WorldScaleName, v as assertKeyVariant, w as assertModeMask, x as maskFromOffsets, y as namedScaleMask, z as requireScaleMask, E as resolveScaleName, F as variantOfMask } from './masks-C8TWLFIi.cjs';
9
+ export { A as AvailableTensionsOptions, a as AvoidNoteUse, b as AvoidNotesOptions, C as ChordScaleMatch, c as ChordScaleReportEntry, d as ChordSymbolOptions, K as KeyMode, P as PartWritingOptions, e as PartWritingViolation, f as PartWritingViolationKind, S as SATB_RANGES, g as SCALE_SYSTEMS, h as ScaleChoice, i as ScaleSystem, j as Species, k as SpeciesOptions, l as SpelledVoicing, m as StyledVoicingOptions, T as TRANSPOSING_INSTRUMENTS, n as TransposingInstrument, o as TransposingInstrumentName, V as VoiceIndependenceOptions, p as VoiceIndependenceReport, q as VoiceRange, r as VoicingOptions, s as VoicingStyle, t as availableTensions, u as avoidNotes, v as checkPartWriting, w as checkSpecies, x as chordScaleReport, y as chordScales, z as formatChordSymbol, B as instrumentTransposition, D as isSignatureKey, E as keyFromFifths, F as keySignatureFifths, G as parseChordSymbol, H as scaleMatchesChord, I as scaleSystemOf, J as scalesForChanges, L as spellVoicing, M as supportsFunctionalHarmony, N as toSoundingPitch, O as toWrittenPitch, Q as transposeChordSymbol, R as tryParseChordSymbol, U as voiceChord, W as voiceChordStyled, X as voiceIndependence, Y as voiceProgression } from './index-BaoKVVhE.cjs';
10
+ export { A as AnalyzeChordOptions, a as AnalyzedNote, B as BorrowedSource, C as CadenceHit, b as CadenceResult, c as ChordAnalysis, d as ChordSegmentation, e as ChordTimeline, f as ChordTimelineOptions, g as ChordTimelineResult, h as ChordToRomanOptions, D as DetectCadenceOptions, E as ExplainRomanOptions, H as HarmonicFunction, I as IdentifiedVoiceNote, K as KeyContext, i as KeyProfileName, j as KeyProfilePair, k as KeyRegion, l as KeyTimelineOptions, P as PivotChord, R as RejectedCandidate, m as RomanExplanation, S as SuspensionFigure, T as TheoryLabel, V as VoiceNote, n as analyzeChord, o as analyzeVoice, p as assertChordTimeline, q as borrowedSource, r as chordTimelineFromChords, s as chordTimelineFromNotes, t as chordToRoman, u as detectCadence, v as detectCadences, w as detectModulations, x as explainRoman, y as functionOf, z as isBorrowedChord, F as isDiatonic, G as isMinorKey, J as keyTimelineFromNotes, L as pivotChords, M as prevailingKeyOf, N as romanToChord, O as secondaryDominant, Q as secondaryDominantOf, U as toVoiceNotes } from './index-B3WCj_Hm.cjs';
11
+ export { A as ArrangementAnalysis, a as ArrangementOptions, b as ArrangementSession, c as ArrangementTrack, d as AugmentedSixthKind, C as ChordMatch, e as Conflict, f as ContourDirection, D as DetectChordOptions, g as DetectKeyOptions, E as ExtractMotifsOptions, F as FormSection, h as FormSectionOptions, H as Hypermeter, i as HypermeterOptions, K as KeyMatch, M as MODAL_SCALE_NAMES, j as MelodicContour, k as MelodicContourShape, l as MelodicPhrase, m as ModalCandidate, n as ModalScaleName, o as MotifData, p as MotifOccurrence, q as MotifRelation, r as MotifRelationKind, P as Phrase, s as PhraseOptions, t as PhraseSignal, R as ReduceProgressionOptions, u as ReducedChord, v as ReductionBasis, w as ReductionLevel, S as StructuralCadence, T as TensionPoint, x as TrackAnalysis, y as TrackEdit, z as TrackRole, B as analyzeArrangement, G as analyzePolyphony, I as augmentedSixthChord, J as augmentedSixthFromPitchClasses, L as augmentedSixthKind, N as createArrangementSession, O as detectChord, Q as detectChordBest, U as detectKey, V as detectKeyBest, W as detectKeyFromNotes, X as extractMotifs, Y as hypermeter, Z as melodicContour, _ as motifFromNotes, $ as phrasesFromTimeline, a0 as reduceProgression, a1 as relateMotifs, a2 as sectionsFromNotes, a3 as spellAugmentedSixth, a4 as structuralCadences, a5 as tensionCurve, a6 as tensionCurveFrom } from './index-DTsKaPaC.cjs';
12
+ export { MelodicComparison, SpellLineOptions, compareMelodies, melodicSimilarity, spellLine } from './analyze/index.cjs';
13
13
  export { C as ConsonanceClass, c as classifyInterval, i as isConsonantInterval, a as isPerfectInterval } from './index-DInQqT8Q.cjs';
14
- export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-B4o55NDr.cjs';
15
- export { B as BAR_STEPS, a as BASS_STYLES, b as BEAT_STEPS, c as BORROWED_DEGREES, d as BassLineOptions, e as BassSegment, f as BassStyle, g as BorrowedChord, C as Complexity, h as CounterMelodyOptions, D as DRUM_NOTES, i as DeformOptions, j as Draw, k as DrumHit, l as DrumRole, m as DrumStyle, n as DrumVoice, o as DrumsOptions, E as EuclideanKick, G as GENRES, p as GenerationContext, q as GenerationContextInput, r as Genre, s as GridEvent, t as GrooveFeel, u as GrooveSlot, v as GrooveStyle, w as GrooveTemplate, H as HarmonizeOptions, x as HarmonizePlacement, y as HarmonizeResult, z as HumanizeOptions, M as MelodyNote, A as MotifCell, F as MotifContour, I as MotifNote, J as MotifOptions, K as MotifTransform, O as ORNAMENT_STYLES, L as OrnamentOptions, N as OrnamentStyle, P as PROVENANCE_BASES, Q as ProgFunction, R as ProgStyle, S as ProgressionDegree, T as ProgressionOptions, U as ProgressionPreset, V as Provenance, W as ProvenanceBasis, X as ResolvedContext, Y as RhythmEvent, Z as RhythmOptions, _ as STEP_BEATS, $ as Section, a0 as SubstituteOptions, a1 as Substitution, a2 as SubstitutionType, a3 as Vocabulary, a4 as VocabularyQuery, a5 as applyGrooveTemplate, a6 as assertVocabulary, a7 as deform, a8 as developMotif, a9 as double, aa as doubleTime, ab as drumVoiceOf, ac as extractGrooveTemplate, ad as fitsQuery, ae as generateBassLine, af as generateCounterMelody, ag as generateDrums, ah as generateMotif, ai as generateProgression, aj as generateRhythm, ak as gridMetricWeight, al as halfTime, am as harmonizeMelody, an as humanize, ao as mergeVocabulary, ap as modalInterchangePalette, aq as motifToNoteEvents, ar as negativeHarmonyMirror, as as onsetWeightCurve, at as ornament, au as ornamentBy, av as pickProgressionPreset, aw as pickVocabulary, ax as progressions, ay as progressionsByStyle, az as resolveContext, aA as rhythmDensity, aB as rhythmToNoteEvents, aC as selectVocabulary, aD as substituteChord, aE as syncopate, aF as thin, aG as transformMotif, aH as vocabularyOfKind, aI as withinCeiling } from './index-BGFW-8P2.cjs';
14
+ export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-CBCP84rv.cjs';
15
+ export { B as BAR_STEPS, a as BASS_STYLES, b as BEAT_STEPS, c as BORROWED_DEGREES, d as BassLineOptions, e as BassSegment, f as BassStyle, g as BorrowedChord, C as Complexity, h as CounterMelodyOptions, D as DRUM_NOTES, i as DeformOptions, j as Draw, k as DrumHit, l as DrumRole, m as DrumStyle, n as DrumVoice, o as DrumsOptions, E as EuclideanKick, G as GENRES, p as GenerationContext, q as GenerationContextInput, r as Genre, s as GridEvent, t as GrooveFeel, u as GrooveSlot, v as GrooveStyle, w as GrooveTemplate, H as HarmonizeOptions, x as HarmonizePlacement, y as HarmonizeResult, z as HumanizeOptions, M as MelodyNote, A as MotifCell, F as MotifContour, I as MotifNote, J as MotifOptions, K as MotifTransform, O as ORNAMENT_STYLES, L as OrnamentOptions, N as OrnamentStyle, P as PROVENANCE_BASES, Q as ProgFunction, R as ProgStyle, S as ProgressionDegree, T as ProgressionOptions, U as ProgressionPreset, V as Provenance, W as ProvenanceBasis, X as ResolvedContext, Y as RhythmEvent, Z as RhythmOptions, _ as STEP_BEATS, $ as Section, a0 as SubstituteOptions, a1 as Substitution, a2 as SubstitutionType, a3 as SyncopateOptions, a4 as Vocabulary, a5 as VocabularyQuery, a6 as applyGrooveTemplate, a7 as assertVocabulary, a8 as deform, a9 as developMotif, aa as double, ab as doubleTime, ac as drumVoiceOf, ad as extractGrooveTemplate, ae as fitsQuery, af as generateBassLine, ag as generateCounterMelody, ah as generateDrums, ai as generateMotif, aj as generateProgression, ak as generateRhythm, al as gridMetricWeight, am as halfTime, an as humanize, ao as mergeVocabulary, ap as modalInterchangePalette, aq as motifToNoteEvents, ar as negativeHarmonyMirror, as as onsetWeightCurve, at as ornament, au as ornamentBy, av as pickProgressionPreset, aw as pickVocabulary, ax as progressions, ay as progressionsByStyle, az as resolveContext, aA as rhythmDensity, aB as rhythmToNoteEvents, aC as selectVocabulary, aD as substituteChord, aE as syncopate, aF as thin, aG as transformMotif, aH as vocabularyOfKind, aI as withinCeiling } from './index-BzLNkmA7.cjs';
16
+ export { BASS_LICKS, BassLick, ClassifiedMelodyTone, DRUM_KIT, DRUM_PATTERNS, DrumPattern, DrumPatternOptions, DrumStroke, DrumVocabulary, FILL_ARCHETYPES, FILL_TYPES, FillArchetype, FillStroke, FillType, FillVelocity, ImitationAnswer, ImitationOptions, KICK_FIGURES, KICK_STEPS, KickFigure, KickPattern, KickSlot, LickMaterial, LickNote, MAX_DIFFICULTY, MIN_DIFFICULTY, MelodyToneRole, PlaceLicksOptions, classifyMelodyTones, harmonizeMelody, imitate, isDrumPattern, isFillArchetype, isLickMaterial, placeDrumPattern, placeLicks, sustainsShift, sustainsStrokes } from './generate/index.cjs';
16
17
  export { Arrangement, ArrangementData, ArrangementSettings, ArrangementSetup, ArrangementTensionOptions, BassLineSettings, Chord, Composer, ComposerOptions, CounterMelodySettings, DetectedKeyMatch, Duration, HarmonizedMelody, Instrument, Interval, Key, KeyData, Meter, Motif, MotifGenerateOptions, Note, Progression, ProgressionData, Rhythm, RhythmData, RhythmDeformOptions, Score, ScoreData, ScoreOptions, Tempo, TempoData, Timeline, TimelineData, TimelineRoman, Tuning, Voicing, VoicingData, VoicingIndependenceOptions, VoicingSafetyQuery } from './model/index.cjs';
17
- export { BASS_LICKS, BassLick, ClassifiedMelodyTone, DRUM_KIT, DRUM_PATTERNS, DrumPattern, DrumPatternOptions, DrumStroke, DrumVocabulary, FILL_ARCHETYPES, FILL_TYPES, FillArchetype, FillStroke, FillType, FillVelocity, ImitationAnswer, ImitationOptions, KICK_FIGURES, KICK_STEPS, KickFigure, KickPattern, KickSlot, LickMaterial, LickNote, MAX_DIFFICULTY, MIN_DIFFICULTY, MelodyToneRole, PlaceLicksOptions, classifyMelodyTones, imitate, isDrumPattern, isFillArchetype, isLickMaterial, placeDrumPattern, placeLicks, sustainsShift, sustainsStrokes } from './generate/index.cjs';
package/dist/index.d.ts CHANGED
@@ -1,17 +1,17 @@
1
- export { A as ARTICULATIONS, a as Articulation, B as BudgetExceededError, I as IntervalLike, b as IntervalQualityLabel, c as InvalidInputError, K as KeyName, d as KeyScale, L as LibcantusError, e as LibcantusErrorCode, N as NoSolutionError, f as NoteData, g as NoteEvent, h as NoteLike, i as NoteNameOptions, j as NoteNameSystem, P as ParseResult, S as SpelledInterval, k as detectNoteNameSystem, l as diatonicLetterOf, m as formatKeyName, n as formatNote, o as intervalSemitones, p as isLibcantusError, q as midiToNote, r as naturalPitchClassOf, s as noteToMidi, t as noteToPitchClass, u as parseInterval, v as parseKeyName, w as parseNote, x as pitchClassOf, y as spelledInterval, z as toNoteData, C as toSpelledInterval, D as transposeByInterval, E as transposeNote, F as tryParseInterval, G as tryParseKeyName, H as tryParseNote } from './index-B9MNZboQ.js';
2
- export { D as DurationData, I as IndexedNoteEvent, J as JUST_RATIOS, N as NOTE_VALUES, a as NoteEventIndex, b as NoteEventIndexOptions, c as NotePlacement, d as NoteValue, O as OnsetTieBreak, P as PlayabilityIssue, e as PlayabilityIssueType, f as PlayabilityLayer, g as PlayabilityReport, S as SpelledDuration, T as TWELVE_TET, h as TempoEvent, i as TempoMap, j as TuningTable, k as Tuplet, l as beatsToDuration, m as beatsToSeconds, n as beatsToTicks, o as beatsToTiedDurations, p as centsBetweenFreq, q as centsFromNearestStep, r as centsOfSteps, s as centsToRatio, t as createNoteEventIndex, u as durationToBeats, v as durationToSeconds, w as edo, x as frequencyOf, y as justDeviationCents, z as nearestStep, A as playability, B as ratioToCents, C as secondsToBeats, E as stepOf, F as stepsOfCents, G as tempoAt, H as ticksToBeats } from './index-G1uwGGWQ.js';
3
- export { I as InstrumentProfile, a as InstrumentProfileCommon, b as InstrumentProfileLike, L as LIMBS, c as Limb, P as PercussionProfile, d as PositionalRng, S as SeedPath, e as StringFingering, f as StringedProfile, g as canSound, h as createPositionalRng, i as deriveSeed, j as fingeringsFor, k as foldIntoRange, l as includeAt, m as instrumentRange } from './positional-Cptlj-xs.js';
1
+ export { A as ARTICULATIONS, a as Articulation, B as BudgetExceededError, I as IntervalData, b as IntervalLike, c as IntervalQualityLabel, d as InvalidInputError, K as KeyName, e as KeyScale, L as LibcantusError, f as LibcantusErrorCode, N as NoSolutionError, g as NoteData, h as NoteEvent, i as NoteLike, j as NoteNameOptions, k as NoteNameSystem, P as ParseResult, S as SpelledInterval, l as detectNoteNameSystem, m as diatonicLetterOf, n as formatKeyName, o as formatNote, p as intervalSemitones, q as isLibcantusError, r as midiToNote, s as naturalPitchClassOf, t as noteToMidi, u as noteToPitchClass, v as parseInterval, w as parseKeyName, x as parseNote, y as pitchClassOf, z as spelledInterval, C as toNoteData, D as toSpelledInterval, E as transposeByInterval, F as transposeNote, G as tryParseInterval, H as tryParseKeyName, J as tryParseNote } from './index-Cy15oTvh.js';
2
+ export { D as DurationData, I as IndexedNoteEvent, J as JUST_RATIOS, N as NOTE_VALUES, a as NoteEventIndex, b as NoteEventIndexOptions, c as NotePlacement, d as NoteValue, O as OnsetTieBreak, P as PlayabilityIssue, e as PlayabilityIssueType, f as PlayabilityLayer, g as PlayabilityReport, S as SpelledDuration, T as TWELVE_TET, h as TempoEvent, i as TempoMap, j as TuningTable, k as Tuplet, l as beatsToDuration, m as beatsToSeconds, n as beatsToTicks, o as beatsToTiedDurations, p as centsBetweenFreq, q as centsFromNearestStep, r as centsOfSteps, s as centsToRatio, t as createNoteEventIndex, u as durationToBeats, v as durationToSeconds, w as edo, x as frequencyOf, y as justDeviationCents, z as nearestStep, A as playability, B as ratioToCents, C as secondsToBeats, E as stepOf, F as stepsOfCents, G as tempoAt, H as ticksToBeats } from './index-9eoQs2C1.js';
3
+ export { I as InstrumentProfile, a as InstrumentProfileCommon, b as InstrumentProfileLike, L as LIMBS, c as Limb, P as PercussionProfile, d as PositionalRng, S as SeedPath, e as StringFingering, f as StringedProfile, V as ValidatedPercussionProfile, g as ValidatedProfile, h as ValidatedStringedProfile, i as canSound, j as createPositionalRng, k as deriveSeed, l as fingeringsFor, m as foldIntoRange, n as includeAt, o as instrumentRange, t as toInstrumentProfile, p as toStringedProfile } from './positional-DJgs6ltD.js';
4
4
  export { ALGORITHM_VERSION, BASS_4_STRING, BASS_5_STRING, DEFAULT_GENERATION_BUDGET, GUITAR_DROP_D, GUITAR_STANDARD, MIN_ALGORITHM_VERSION, NoteEventAssertOptions, Rng, assertDegree, assertFiniteNumber, assertFiniteSemitones, assertGenerationBudget, assertInteger, assertMeterMap, assertMidiPitch, assertNoteEvent, assertNoteEvents, assertOneOf, assertPositiveInt, assertRange, assertTimeSignature, clampToMidi, createRng, dropSilentNotes, resolveAlgorithmVersion, soundingNotesOnly } from './core/index.js';
5
- export { B as BarPosition, M as MeterChange, a as MeterData, b as MeterLike, c as MeterMap, T as TimeSignature, d as barIndexAt, e as barPositionToBeat, f as barPositionToPulse, g as barStartBeat, h as beatToBarPosition, i as beatsPerBar, j as beatsPerBarAt, k as formatBarPosition, l as formatTimeSignature, m as isCompound, n as isStrongBeat, o as meterAt, p as metricWeight, q as parseTimeSignature, r as pulseBeats, s as pulsesPerBar, t as resolveMeters, u as toMeterData, v as tryParseTimeSignature, w as tuplet } from './index-Cj49F892.js';
6
- export { A as Alteration, a as AlteredDegree, C as ChordBase, b as ChordData, c as ChordLike, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordSymbolOptions, j as ChordToneRole, E as EvaluateSafetyOptions, K as KeyLike, k as KeyRelation, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, S as SafetyProfile, n as SafetyQuery, o as SafetyResult, p as SpelledKey, V as VoiceSnapshot, q as chordFromDegree, r as chordFromSpan, s as chordFromSpec, t as chordPitchClasses, u as chordQualities, v as chordSpecIntervals, w as chordSpecOf, x as chordSpecQuality, y as chordToneRole, z as diatonicSeventh, B as diatonicTriad, D as dominantKeyOf, F as enharmonicKeyOf, G as enumerateSafePitches, H as evaluateSafety, I as formatChordSymbol, J as intervalAboveRoot, L as isChordMember, M as keyRelationBetween, O as makeChord, Q as parallelKeyOf, T as parseChordSymbol, U as profileWeights, W as relatedKeysOf, X as relativeKeyOf, Y as spanFromChord, Z as spelledKeyOf, _ as subdominantKeyOf, $ as toChordData, a0 as toKeyScale, a1 as transposeChord, a2 as transposeChordSymbol, a3 as tryParseChordSymbol } from './index-szBv3496.js';
7
- export { FiguredBassRealization, FiguredBassSuspension, SpellingContext, classifySpelledInterval, createsBattuta, createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, figuredBassOf, figuredBassRealization, isAugmentedMelodicInterval, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, minorKey, nearestScaleTone, nextVoicing, noteNames, pitchToScaleDegree, realizeFiguredBass, scaleByName, scaleTonesInDegreeOrder, spellChord, spellChordFromRoot, spellPitch, spellPitchClass, spellPitchClasses, spellScale, voiceLeadingCost } from './theory/index.js';
8
- export { A as ALTERED_MASK, B as BLUES_MASK, C as CHROMATIC_MASK, D as DORIAN_MASK, a as DOUBLE_HARMONIC_MASK, H as HARMONIC_MINOR_MASK, L as LOCRIAN_MASK, b as LOCRIAN_NATURAL2_MASK, c as LYDIAN_DOMINANT_MASK, d as LYDIAN_MASK, M as MAJOR_MASK, e as MAJOR_PENTATONIC_MASK, f as MARWA_MASK, g as MELODIC_MINOR_MASK, h as MINOR_PENTATONIC_MASK, i as MIXOLYDIAN_B13_MASK, j as MIXOLYDIAN_MASK, k as MIYAKO_BUSHI_MASK, N as NAMED_SCALES, l as NATURAL_MINOR_MASK, O as OCTATONIC_HALF_WHOLE_MASK, m as OCTATONIC_WHOLE_HALF_MASK, P as PHRYGIAN_DOMINANT_MASK, n as PHRYGIAN_MASK, o as PURVI_MASK, R as RITSU_MASK, p as RYUKYU_MASK, S as SCALE_ALIASES, q as ScaleAliasName, r as ScaleName, s as ScaleNameInput, T as TODI_MASK, W as WHOLE_TONE_MASK, t as WORLD_SCALES, u as WorldScaleName, v as maskFromOffsets, w as namedScaleMask, x as requireScaleMask, y as resolveScaleName } from './masks-DYbE485J.js';
9
- export { A as AvailableTensionsOptions, a as AvoidNoteUse, b as AvoidNotesOptions, C as ChordScaleMatch, c as ChordScaleReportEntry, K as KeyMode, P as PartWritingOptions, d as PartWritingViolation, e as PartWritingViolationKind, S as SATB_RANGES, f as SCALE_SYSTEMS, g as ScaleChoice, h as ScaleSystem, i as Species, j as SpeciesOptions, k as SpelledVoicing, l as StyledVoicingOptions, T as TRANSPOSING_INSTRUMENTS, m as TransposingInstrument, n as TransposingInstrumentName, V as VoiceIndependenceOptions, o as VoiceIndependenceReport, p as VoiceRange, q as VoicingOptions, r as VoicingStyle, s as availableTensions, t as avoidNotes, u as checkPartWriting, v as checkSpecies, w as chordScaleReport, x as chordScales, y as instrumentTransposition, z as keyFromFifths, B as keySignatureFifths, D as scaleMatchesChord, E as scaleSystemOf, F as scalesForChanges, G as spellVoicing, H as supportsFunctionalHarmony, I as toSoundingPitch, J as toWrittenPitch, L as voiceChord, M as voiceChordStyled, N as voiceIndependence, O as voiceProgression } from './index-9wcMhG73.js';
10
- export { A as ArrangementAnalysis, a as ArrangementOptions, b as ArrangementSession, c as ArrangementTrack, C as ChordMatch, d as Conflict, e as ContourDirection, D as DetectChordOptions, f as DetectKeyOptions, E as ExtractMotifsOptions, F as FormSection, g as FormSectionOptions, H as Hypermeter, h as HypermeterOptions, K as KeyMatch, i as KeyVariant, M as MODAL_SCALE_NAMES, j as MelodicComparison, k as MelodicContour, l as MelodicContourShape, m as MelodicPhrase, n as ModalCandidate, o as ModalScaleName, p as MotifData, q as MotifOccurrence, r as MotifRelation, s as MotifRelationKind, P as Phrase, t as PhraseOptions, u as PhraseSignal, R as ReduceProgressionOptions, v as ReducedChord, w as ReductionBasis, x as ReductionLevel, S as StructuralCadence, T as TensionPoint, y as TrackAnalysis, z as TrackEdit, B as TrackRole, G as analyzeArrangement, I as compareMelodies, J as createArrangementSession, L as detectChord, N as detectChordBest, O as detectKey, Q as detectKeyBest, U as detectKeyFromNotes, V as extractMotifs, W as hypermeter, X as melodicContour, Y as melodicSimilarity, Z as motifFromNotes, _ as phrasesFromTimeline, $ as reduceProgression, a0 as relateMotifs, a1 as sectionsFromNotes, a2 as structuralCadences, a3 as tensionCurve, a4 as tensionCurveFrom } from './index-D57QRbVn.js';
11
- export { AugmentedSixthKind, SpellLineOptions, augmentedSixthChord, augmentedSixthFromPitchClasses, augmentedSixthKind, spellAugmentedSixth, spellLine } from './analyze/index.js';
12
- export { A as AnalyzeChordOptions, a as AnalyzedNote, B as BorrowedSource, C as CadenceHit, b as CadenceResult, c as ChordAnalysis, d as ChordSegmentation, e as ChordTimeline, f as ChordTimelineOptions, g as ChordTimelineResult, h as ChordToRomanOptions, D as DetectCadenceOptions, E as ExplainRomanOptions, H as HarmonicFunction, I as IdentifiedVoiceNote, K as KeyContext, i as KeyProfileName, j as KeyProfilePair, k as KeyRegion, l as KeyTimelineOptions, P as PivotChord, R as RejectedCandidate, m as RomanExplanation, S as SuspensionFigure, T as TheoryLabel, V as VoiceNote, n as analyzeChord, o as analyzeVoice, p as borrowedSource, q as chordTimelineFromChords, r as chordTimelineFromNotes, s as chordToRoman, t as detectCadence, u as detectCadences, v as detectModulations, w as explainRoman, x as functionOf, y as isBorrowedChord, z as isDiatonic, F as isMinorKey, G as keyTimelineFromNotes, J as pivotChords, L as prevailingKeyOf, M as romanToChord, N as secondaryDominant, O as secondaryDominantOf, Q as toVoiceNotes } from './index-Chbst3Jx.js';
5
+ export { B as BarPosition, M as MeterChange, a as MeterData, b as MeterLike, c as MeterMap, T as TimeSignature, d as barIndexAt, e as barPositionToBeat, f as barPositionToPulse, g as barStartBeat, h as beatToBarPosition, i as beatsPerBar, j as beatsPerBarAt, k as formatBarPosition, l as formatTimeSignature, m as isCompound, n as isStrongBeat, o as meterAt, p as metricWeight, q as parseTimeSignature, r as pulseBeats, s as pulsesPerBar, t as resolveMeters, u as toMeterData, v as tryParseTimeSignature, w as tuplet } from './index-Ci3xyows.js';
6
+ export { A as Alteration, a as AlteredDegree, C as ChordBase, b as ChordData, c as ChordLike, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordToneRole, E as EvaluateSafetyOptions, K as KeyLike, j as KeyRelation, k as KeyVariant, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, n as ResolvedKey, S as SafetyProfile, o as SafetyQuery, p as SafetyResult, q as SpelledKeyLike, r as SpelledKeyScale, V as VoiceSnapshot, s as chordFromDegree, t as chordFromSpan, u as chordFromSpec, v as chordPitchClasses, w as chordQualities, x as chordSpecIntervals, y as chordSpecOf, z as chordSpecQuality, B as chordToneRole, D as diatonicSeventh, F as diatonicTriad, G as dominantKeyOf, H as enharmonicKeyOf, I as enumerateSafePitches, J as evaluateSafety, L as intervalAboveRoot, M as isChordMember, O as keyRelationBetween, Q as makeChord, T as parallelKeyOf, U as profileWeights, W as relatedKeysOf, X as relativeKeyOf, Y as spanFromChord, Z as spelledKeyOf, _ as subdominantKeyOf, $ as toChordData, a0 as toKeyScale, a1 as transposeChord } from './coerce-wwdELNYS.js';
7
+ export { FiguredBassRealization, FiguredBassSuspension, HiddenParallelReading, ScaleLadderPosition, SpellingContext, classifySpelledInterval, createsBattuta, createsHiddenParallelPerfect, createsParallelOctave, createsParallelPerfect, createsParallelUnison, createsVerticalDissonance, createsVoiceCrossing, createsVoiceOverlap, diatonicPitchClasses, exceedsSpacing, figuredBassOf, figuredBassRealization, isAugmentedMelodicInterval, isForbiddenMelodicLeap, isLeadingToneResolution, isScaleTone, majorKey, minorKey, nearestScaleTone, nextVoicing, noteNames, pitchToScaleDegree, realizeFiguredBass, resolveKey, scaleByName, scaleLadderPitch, scaleLadderPosition, scaleOf, scaleTonesInDegreeOrder, shiftByScaleDegrees, spellChord, spellChordFromRoot, spellPitch, spellPitchClass, spellPitchClasses, spellScale, tryResolveKeyName, voiceLeadingCost } from './theory/index.js';
8
+ export { A as ALTERED_MASK, B as BLUES_MASK, C as CHROMATIC_MASK, D as DORIAN_MASK, a as DOUBLE_HARMONIC_MASK, H as HARMONIC_MINOR_MASK, L as LOCRIAN_MASK, b as LOCRIAN_NATURAL2_MASK, c as LYDIAN_DOMINANT_MASK, d as LYDIAN_MASK, M as MAJOR_MASK, e as MAJOR_PENTATONIC_MASK, f as MARWA_MASK, g as MELODIC_MINOR_MASK, h as MINOR_PENTATONIC_MASK, i as MIXOLYDIAN_B13_MASK, j as MIXOLYDIAN_MASK, k as MIYAKO_BUSHI_MASK, N as NAMED_SCALES, l as NATURAL_MINOR_MASK, O as OCTATONIC_HALF_WHOLE_MASK, m as OCTATONIC_WHOLE_HALF_MASK, P as PHRYGIAN_DOMINANT_MASK, n as PHRYGIAN_MASK, o as PURVI_MASK, R as RITSU_MASK, p as RYUKYU_MASK, S as SCALE_ALIASES, q as ScaleAliasName, r as ScaleName, s as ScaleNameInput, T as TODI_MASK, W as WHOLE_TONE_MASK, t as WORLD_SCALES, u as WorldScaleName, v as assertKeyVariant, w as assertModeMask, x as maskFromOffsets, y as namedScaleMask, z as requireScaleMask, E as resolveScaleName, F as variantOfMask } from './masks-O73Rhj5d.js';
9
+ export { A as AvailableTensionsOptions, a as AvoidNoteUse, b as AvoidNotesOptions, C as ChordScaleMatch, c as ChordScaleReportEntry, d as ChordSymbolOptions, K as KeyMode, P as PartWritingOptions, e as PartWritingViolation, f as PartWritingViolationKind, S as SATB_RANGES, g as SCALE_SYSTEMS, h as ScaleChoice, i as ScaleSystem, j as Species, k as SpeciesOptions, l as SpelledVoicing, m as StyledVoicingOptions, T as TRANSPOSING_INSTRUMENTS, n as TransposingInstrument, o as TransposingInstrumentName, V as VoiceIndependenceOptions, p as VoiceIndependenceReport, q as VoiceRange, r as VoicingOptions, s as VoicingStyle, t as availableTensions, u as avoidNotes, v as checkPartWriting, w as checkSpecies, x as chordScaleReport, y as chordScales, z as formatChordSymbol, B as instrumentTransposition, D as isSignatureKey, E as keyFromFifths, F as keySignatureFifths, G as parseChordSymbol, H as scaleMatchesChord, I as scaleSystemOf, J as scalesForChanges, L as spellVoicing, M as supportsFunctionalHarmony, N as toSoundingPitch, O as toWrittenPitch, Q as transposeChordSymbol, R as tryParseChordSymbol, U as voiceChord, W as voiceChordStyled, X as voiceIndependence, Y as voiceProgression } from './index-CnHQgqNh.js';
10
+ export { A as AnalyzeChordOptions, a as AnalyzedNote, B as BorrowedSource, C as CadenceHit, b as CadenceResult, c as ChordAnalysis, d as ChordSegmentation, e as ChordTimeline, f as ChordTimelineOptions, g as ChordTimelineResult, h as ChordToRomanOptions, D as DetectCadenceOptions, E as ExplainRomanOptions, H as HarmonicFunction, I as IdentifiedVoiceNote, K as KeyContext, i as KeyProfileName, j as KeyProfilePair, k as KeyRegion, l as KeyTimelineOptions, P as PivotChord, R as RejectedCandidate, m as RomanExplanation, S as SuspensionFigure, T as TheoryLabel, V as VoiceNote, n as analyzeChord, o as analyzeVoice, p as assertChordTimeline, q as borrowedSource, r as chordTimelineFromChords, s as chordTimelineFromNotes, t as chordToRoman, u as detectCadence, v as detectCadences, w as detectModulations, x as explainRoman, y as functionOf, z as isBorrowedChord, F as isDiatonic, G as isMinorKey, J as keyTimelineFromNotes, L as pivotChords, M as prevailingKeyOf, N as romanToChord, O as secondaryDominant, Q as secondaryDominantOf, U as toVoiceNotes } from './index-BpWOhkkE.js';
11
+ export { A as ArrangementAnalysis, a as ArrangementOptions, b as ArrangementSession, c as ArrangementTrack, d as AugmentedSixthKind, C as ChordMatch, e as Conflict, f as ContourDirection, D as DetectChordOptions, g as DetectKeyOptions, E as ExtractMotifsOptions, F as FormSection, h as FormSectionOptions, H as Hypermeter, i as HypermeterOptions, K as KeyMatch, M as MODAL_SCALE_NAMES, j as MelodicContour, k as MelodicContourShape, l as MelodicPhrase, m as ModalCandidate, n as ModalScaleName, o as MotifData, p as MotifOccurrence, q as MotifRelation, r as MotifRelationKind, P as Phrase, s as PhraseOptions, t as PhraseSignal, R as ReduceProgressionOptions, u as ReducedChord, v as ReductionBasis, w as ReductionLevel, S as StructuralCadence, T as TensionPoint, x as TrackAnalysis, y as TrackEdit, z as TrackRole, B as analyzeArrangement, G as analyzePolyphony, I as augmentedSixthChord, J as augmentedSixthFromPitchClasses, L as augmentedSixthKind, N as createArrangementSession, O as detectChord, Q as detectChordBest, U as detectKey, V as detectKeyBest, W as detectKeyFromNotes, X as extractMotifs, Y as hypermeter, Z as melodicContour, _ as motifFromNotes, $ as phrasesFromTimeline, a0 as reduceProgression, a1 as relateMotifs, a2 as sectionsFromNotes, a3 as spellAugmentedSixth, a4 as structuralCadences, a5 as tensionCurve, a6 as tensionCurveFrom } from './index-BUtIf2go.js';
12
+ export { MelodicComparison, SpellLineOptions, compareMelodies, melodicSimilarity, spellLine } from './analyze/index.js';
13
13
  export { C as ConsonanceClass, c as classifyInterval, i as isConsonantInterval, a as isPerfectInterval } from './index-DInQqT8Q.js';
14
- export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-CunYKLiu.js';
15
- export { B as BAR_STEPS, a as BASS_STYLES, b as BEAT_STEPS, c as BORROWED_DEGREES, d as BassLineOptions, e as BassSegment, f as BassStyle, g as BorrowedChord, C as Complexity, h as CounterMelodyOptions, D as DRUM_NOTES, i as DeformOptions, j as Draw, k as DrumHit, l as DrumRole, m as DrumStyle, n as DrumVoice, o as DrumsOptions, E as EuclideanKick, G as GENRES, p as GenerationContext, q as GenerationContextInput, r as Genre, s as GridEvent, t as GrooveFeel, u as GrooveSlot, v as GrooveStyle, w as GrooveTemplate, H as HarmonizeOptions, x as HarmonizePlacement, y as HarmonizeResult, z as HumanizeOptions, M as MelodyNote, A as MotifCell, F as MotifContour, I as MotifNote, J as MotifOptions, K as MotifTransform, O as ORNAMENT_STYLES, L as OrnamentOptions, N as OrnamentStyle, P as PROVENANCE_BASES, Q as ProgFunction, R as ProgStyle, S as ProgressionDegree, T as ProgressionOptions, U as ProgressionPreset, V as Provenance, W as ProvenanceBasis, X as ResolvedContext, Y as RhythmEvent, Z as RhythmOptions, _ as STEP_BEATS, $ as Section, a0 as SubstituteOptions, a1 as Substitution, a2 as SubstitutionType, a3 as Vocabulary, a4 as VocabularyQuery, a5 as applyGrooveTemplate, a6 as assertVocabulary, a7 as deform, a8 as developMotif, a9 as double, aa as doubleTime, ab as drumVoiceOf, ac as extractGrooveTemplate, ad as fitsQuery, ae as generateBassLine, af as generateCounterMelody, ag as generateDrums, ah as generateMotif, ai as generateProgression, aj as generateRhythm, ak as gridMetricWeight, al as halfTime, am as harmonizeMelody, an as humanize, ao as mergeVocabulary, ap as modalInterchangePalette, aq as motifToNoteEvents, ar as negativeHarmonyMirror, as as onsetWeightCurve, at as ornament, au as ornamentBy, av as pickProgressionPreset, aw as pickVocabulary, ax as progressions, ay as progressionsByStyle, az as resolveContext, aA as rhythmDensity, aB as rhythmToNoteEvents, aC as selectVocabulary, aD as substituteChord, aE as syncopate, aF as thin, aG as transformMotif, aH as vocabularyOfKind, aI as withinCeiling } from './index-CgHqxdps.js';
14
+ export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from './index-CnIdP4EZ.js';
15
+ export { B as BAR_STEPS, a as BASS_STYLES, b as BEAT_STEPS, c as BORROWED_DEGREES, d as BassLineOptions, e as BassSegment, f as BassStyle, g as BorrowedChord, C as Complexity, h as CounterMelodyOptions, D as DRUM_NOTES, i as DeformOptions, j as Draw, k as DrumHit, l as DrumRole, m as DrumStyle, n as DrumVoice, o as DrumsOptions, E as EuclideanKick, G as GENRES, p as GenerationContext, q as GenerationContextInput, r as Genre, s as GridEvent, t as GrooveFeel, u as GrooveSlot, v as GrooveStyle, w as GrooveTemplate, H as HarmonizeOptions, x as HarmonizePlacement, y as HarmonizeResult, z as HumanizeOptions, M as MelodyNote, A as MotifCell, F as MotifContour, I as MotifNote, J as MotifOptions, K as MotifTransform, O as ORNAMENT_STYLES, L as OrnamentOptions, N as OrnamentStyle, P as PROVENANCE_BASES, Q as ProgFunction, R as ProgStyle, S as ProgressionDegree, T as ProgressionOptions, U as ProgressionPreset, V as Provenance, W as ProvenanceBasis, X as ResolvedContext, Y as RhythmEvent, Z as RhythmOptions, _ as STEP_BEATS, $ as Section, a0 as SubstituteOptions, a1 as Substitution, a2 as SubstitutionType, a3 as SyncopateOptions, a4 as Vocabulary, a5 as VocabularyQuery, a6 as applyGrooveTemplate, a7 as assertVocabulary, a8 as deform, a9 as developMotif, aa as double, ab as doubleTime, ac as drumVoiceOf, ad as extractGrooveTemplate, ae as fitsQuery, af as generateBassLine, ag as generateCounterMelody, ah as generateDrums, ai as generateMotif, aj as generateProgression, ak as generateRhythm, al as gridMetricWeight, am as halfTime, an as humanize, ao as mergeVocabulary, ap as modalInterchangePalette, aq as motifToNoteEvents, ar as negativeHarmonyMirror, as as onsetWeightCurve, at as ornament, au as ornamentBy, av as pickProgressionPreset, aw as pickVocabulary, ax as progressions, ay as progressionsByStyle, az as resolveContext, aA as rhythmDensity, aB as rhythmToNoteEvents, aC as selectVocabulary, aD as substituteChord, aE as syncopate, aF as thin, aG as transformMotif, aH as vocabularyOfKind, aI as withinCeiling } from './index-DpC-mDlV.js';
16
+ export { BASS_LICKS, BassLick, ClassifiedMelodyTone, DRUM_KIT, DRUM_PATTERNS, DrumPattern, DrumPatternOptions, DrumStroke, DrumVocabulary, FILL_ARCHETYPES, FILL_TYPES, FillArchetype, FillStroke, FillType, FillVelocity, ImitationAnswer, ImitationOptions, KICK_FIGURES, KICK_STEPS, KickFigure, KickPattern, KickSlot, LickMaterial, LickNote, MAX_DIFFICULTY, MIN_DIFFICULTY, MelodyToneRole, PlaceLicksOptions, classifyMelodyTones, harmonizeMelody, imitate, isDrumPattern, isFillArchetype, isLickMaterial, placeDrumPattern, placeLicks, sustainsShift, sustainsStrokes } from './generate/index.js';
16
17
  export { Arrangement, ArrangementData, ArrangementSettings, ArrangementSetup, ArrangementTensionOptions, BassLineSettings, Chord, Composer, ComposerOptions, CounterMelodySettings, DetectedKeyMatch, Duration, HarmonizedMelody, Instrument, Interval, Key, KeyData, Meter, Motif, MotifGenerateOptions, Note, Progression, ProgressionData, Rhythm, RhythmData, RhythmDeformOptions, Score, ScoreData, ScoreOptions, Tempo, TempoData, Timeline, TimelineData, TimelineRoman, Tuning, Voicing, VoicingData, VoicingIndependenceOptions, VoicingSafetyQuery } from './model/index.js';
17
- export { BASS_LICKS, BassLick, ClassifiedMelodyTone, DRUM_KIT, DRUM_PATTERNS, DrumPattern, DrumPatternOptions, DrumStroke, DrumVocabulary, FILL_ARCHETYPES, FILL_TYPES, FillArchetype, FillStroke, FillType, FillVelocity, ImitationAnswer, ImitationOptions, KICK_FIGURES, KICK_STEPS, KickFigure, KickPattern, KickSlot, LickMaterial, LickNote, MAX_DIFFICULTY, MIN_DIFFICULTY, MelodyToneRole, PlaceLicksOptions, classifyMelodyTones, imitate, isDrumPattern, isFillArchetype, isLickMaterial, placeDrumPattern, placeLicks, sustainsShift, sustainsStrokes } from './generate/index.js';