@libraz/libcantus 1.3.0 → 1.4.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.
- package/NOTICE +63 -0
- package/README.md +3 -1
- package/README_ja.md +13 -11
- package/dist/analyze/index.cjs +7 -7
- package/dist/analyze/index.cjs.map +1 -1
- package/dist/analyze/index.d.cts +14 -12
- package/dist/analyze/index.d.ts +14 -12
- package/dist/analyze/index.js +6 -6
- package/dist/{chunk-NB25P3EH.js → chunk-2G5MCGYU.js} +33 -11
- package/dist/chunk-2G5MCGYU.js.map +1 -0
- package/dist/{chunk-NM7UAMC3.cjs → chunk-3FDBMIPR.cjs} +64 -64
- package/dist/chunk-3FDBMIPR.cjs.map +1 -0
- package/dist/{chunk-YFA7X2F6.cjs → chunk-3MDOEFIQ.cjs} +411 -327
- package/dist/chunk-3MDOEFIQ.cjs.map +1 -0
- package/dist/{chunk-IPEF6NWB.js → chunk-5MWRBYAT.js} +278 -154
- package/dist/chunk-5MWRBYAT.js.map +1 -0
- package/dist/{chunk-B2PW6EHN.cjs → chunk-6TTBEON3.cjs} +1253 -889
- package/dist/chunk-6TTBEON3.cjs.map +1 -0
- package/dist/{chunk-UMWZ4ZET.js → chunk-7NQ6AL3H.js} +4 -4
- package/dist/chunk-7NQ6AL3H.js.map +1 -0
- package/dist/{chunk-PWC4CRWT.cjs → chunk-E3QO3UET.cjs} +31 -23
- package/dist/chunk-E3QO3UET.cjs.map +1 -0
- package/dist/{chunk-GNVN4PPJ.js → chunk-FJFULJZE.js} +531 -213
- package/dist/chunk-FJFULJZE.js.map +1 -0
- package/dist/{chunk-CPMB7P75.js → chunk-FK3DGAIZ.js} +608 -244
- package/dist/chunk-FK3DGAIZ.js.map +1 -0
- package/dist/chunk-GEDTJHAC.cjs.map +1 -1
- package/dist/{chunk-RFIBF2RR.js → chunk-H7FVMBUC.js} +138 -65
- package/dist/chunk-H7FVMBUC.js.map +1 -0
- package/dist/{chunk-4R2LWV7E.cjs → chunk-HYSVSFNI.cjs} +664 -540
- package/dist/chunk-HYSVSFNI.cjs.map +1 -0
- package/dist/{chunk-35NBV2FT.cjs → chunk-KMYGRFZ6.cjs} +47 -24
- package/dist/chunk-KMYGRFZ6.cjs.map +1 -0
- package/dist/{chunk-IFZDWIKM.cjs → chunk-LQZQDBCD.cjs} +1048 -730
- package/dist/chunk-LQZQDBCD.cjs.map +1 -0
- package/dist/{chunk-PM4XJE2Y.cjs → chunk-P3CPXAJ5.cjs} +76 -54
- package/dist/chunk-P3CPXAJ5.cjs.map +1 -0
- package/dist/{chunk-S5BKZZGM.cjs → chunk-S3QELJUE.cjs} +72 -56
- package/dist/chunk-S3QELJUE.cjs.map +1 -0
- package/dist/{chunk-PUKJP2Z5.js → chunk-TXFWSU5D.js} +31 -8
- package/dist/chunk-TXFWSU5D.js.map +1 -0
- package/dist/{chunk-76ZBTRG2.cjs → chunk-U4EQTDGN.cjs} +258 -218
- package/dist/chunk-U4EQTDGN.cjs.map +1 -0
- package/dist/chunk-UGLFDG7L.cjs.map +1 -1
- package/dist/{chunk-MLBPXA4Z.js → chunk-UTE5A36R.js} +198 -114
- package/dist/chunk-UTE5A36R.js.map +1 -0
- package/dist/{chunk-ZBUROTJQ.js → chunk-UZKQISRF.js} +17 -9
- package/dist/chunk-UZKQISRF.js.map +1 -0
- package/dist/{chunk-7KG3RTYS.js → chunk-VL5NXVCN.js} +281 -155
- package/dist/chunk-VL5NXVCN.js.map +1 -0
- package/dist/{chunk-CGBADIO5.cjs → chunk-WOMCXN2W.cjs} +328 -202
- package/dist/chunk-WOMCXN2W.cjs.map +1 -0
- package/dist/{chunk-3R3QVKY5.cjs → chunk-YDGMWH43.cjs} +397 -324
- package/dist/chunk-YDGMWH43.cjs.map +1 -0
- package/dist/{chunk-AGOVW7U6.js → chunk-YYVXRV3V.js} +72 -56
- package/dist/chunk-YYVXRV3V.js.map +1 -0
- package/dist/{chunk-M5RYMAFI.js → chunk-ZLNSH4UL.js} +71 -31
- package/dist/chunk-ZLNSH4UL.js.map +1 -0
- package/dist/{coerce-DRERzdve.d.cts → coerce-CUhHc3Tu.d.ts} +16 -8
- package/dist/{coerce-DP0vYu-x.d.ts → coerce-Ytt2Eiq9.d.cts} +16 -8
- package/dist/core/index.cjs +5 -5
- package/dist/core/index.cjs.map +1 -1
- package/dist/core/index.d.cts +9 -8
- package/dist/core/index.d.ts +9 -8
- package/dist/core/index.js +4 -4
- package/dist/generate/index.cjs +8 -8
- package/dist/generate/index.cjs.map +1 -1
- package/dist/generate/index.d.cts +28 -18
- package/dist/generate/index.d.ts +28 -18
- package/dist/generate/index.js +7 -7
- package/dist/{index-BMweUlm5.d.cts → index-5VJgKz_Q.d.cts} +6 -2
- package/dist/{index-BHIUyjhZ.d.ts → index-BLuDesVG.d.ts} +20 -13
- package/dist/{index-B9QLziDe.d.cts → index-BV6APVa6.d.cts} +20 -13
- package/dist/{index-CL4b4gUQ.d.ts → index-Bf0Sv8a9.d.ts} +6 -2
- package/dist/{index-Dw2DP7vm.d.ts → index-BkT21EMv.d.cts} +3 -2
- package/dist/{index-BL5N2Oyz.d.cts → index-C7KCaTRz.d.ts} +3 -2
- package/dist/{index-Cy15oTvh.d.ts → index-C9MYbuKS.d.cts} +7 -3
- package/dist/{index-Cy15oTvh.d.cts → index-C9MYbuKS.d.ts} +7 -3
- package/dist/{index-CY-3NVfy.d.cts → index-DVInzCDS.d.cts} +53 -29
- package/dist/{index-9eoQs2C1.d.ts → index-Dg-SAfhz.d.ts} +6 -4
- package/dist/{index-zaZdmnU4.d.ts → index-jgeug9EA.d.ts} +53 -29
- package/dist/{index-cHvbYgJI.d.cts → index-pQihL4z7.d.cts} +6 -4
- package/dist/index.cjs +13 -13
- package/dist/index.cjs.map +1 -1
- package/dist/index.d.cts +11 -11
- package/dist/index.d.ts +11 -11
- package/dist/index.js +12 -12
- package/dist/{masks-Cc7-MzzY.d.ts → masks-BnzXnBj0.d.cts} +3 -2
- package/dist/{masks-pADfTOiD.d.cts → masks-tycmkrgs.d.ts} +3 -2
- package/dist/model/index.cjs +12 -12
- package/dist/model/index.cjs.map +1 -1
- package/dist/model/index.d.cts +63 -48
- package/dist/model/index.d.ts +63 -48
- package/dist/model/index.js +11 -11
- package/dist/{positional-DJgs6ltD.d.ts → positional-CscpxtlE.d.cts} +3 -2
- package/dist/{positional-DMZer-FM.d.cts → positional-DLnfUgqG.d.ts} +3 -2
- package/dist/{profile-DLdlIpS9.d.ts → profile-B4WqcM4H.d.ts} +25 -17
- package/dist/{profile-CQMEqdH9.d.cts → profile-BJd1XkPB.d.cts} +25 -17
- package/dist/theory/index.cjs +5 -5
- package/dist/theory/index.cjs.map +1 -1
- package/dist/theory/index.d.cts +18 -14
- package/dist/theory/index.d.ts +18 -14
- package/dist/theory/index.js +4 -4
- package/dist/{types-D-XgxGvp.d.cts → types-7mGFwvMm.d.ts} +45 -22
- package/dist/{types-Dh7C064C.d.ts → types-_ofpb2be.d.cts} +45 -22
- package/package.json +13 -13
- package/dist/chunk-35NBV2FT.cjs.map +0 -1
- package/dist/chunk-3R3QVKY5.cjs.map +0 -1
- package/dist/chunk-4R2LWV7E.cjs.map +0 -1
- package/dist/chunk-76ZBTRG2.cjs.map +0 -1
- package/dist/chunk-7KG3RTYS.js.map +0 -1
- package/dist/chunk-AGOVW7U6.js.map +0 -1
- package/dist/chunk-B2PW6EHN.cjs.map +0 -1
- package/dist/chunk-CGBADIO5.cjs.map +0 -1
- package/dist/chunk-CPMB7P75.js.map +0 -1
- package/dist/chunk-GNVN4PPJ.js.map +0 -1
- package/dist/chunk-IFZDWIKM.cjs.map +0 -1
- package/dist/chunk-IPEF6NWB.js.map +0 -1
- package/dist/chunk-M5RYMAFI.js.map +0 -1
- package/dist/chunk-MLBPXA4Z.js.map +0 -1
- package/dist/chunk-NB25P3EH.js.map +0 -1
- package/dist/chunk-NM7UAMC3.cjs.map +0 -1
- package/dist/chunk-PM4XJE2Y.cjs.map +0 -1
- package/dist/chunk-PUKJP2Z5.js.map +0 -1
- package/dist/chunk-PWC4CRWT.cjs.map +0 -1
- package/dist/chunk-RFIBF2RR.js.map +0 -1
- package/dist/chunk-S5BKZZGM.cjs.map +0 -1
- package/dist/chunk-UMWZ4ZET.js.map +0 -1
- package/dist/chunk-YFA7X2F6.cjs.map +0 -1
- package/dist/chunk-ZBUROTJQ.js.map +0 -1
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { e as KeyScale, h as NoteEvent, i as NoteLike, g as Note } from './index-
|
|
2
|
-
import { d as ChordQuality, k as KeyVariant, b as Chord, r as SpelledKeyLike, c as ChordLike, K as KeyLike, n as ResolvedKey, N as NoteSafety, o as SafetyProfile } from './coerce-
|
|
3
|
-
import { r as ScaleName } from './masks-
|
|
4
|
-
import { p as KeyProfileName, q as KeyProfilePair, a6 as RejectedCandidate, r as KeyRegion, h as ChordTimeline, c as CadenceHit, a as AnalyzedNote, ab as TheoryLabel, K as KeyContext, d as CadenceResult, a5 as ReferenceProfile } from './types-
|
|
5
|
-
import { b as MeterLike } from './index-
|
|
1
|
+
import { e as KeyScale, h as NoteEvent, i as NoteLike, g as Note } from './index-C9MYbuKS.js';
|
|
2
|
+
import { d as ChordQuality, k as KeyVariant, b as Chord, r as SpelledKeyLike, c as ChordLike, K as KeyLike, n as ResolvedKey, N as NoteSafety, o as SafetyProfile } from './coerce-CUhHc3Tu.js';
|
|
3
|
+
import { r as ScaleName } from './masks-tycmkrgs.js';
|
|
4
|
+
import { p as KeyProfileName, q as KeyProfilePair, a6 as RejectedCandidate, r as KeyRegion, h as ChordTimeline, c as CadenceHit, a as AnalyzedNote, ab as TheoryLabel, K as KeyContext, d as CadenceResult, a5 as ReferenceProfile } from './types-7mGFwvMm.js';
|
|
5
|
+
import { b as MeterLike } from './index-Bf0Sv8a9.js';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Church-mode candidates for {@link detectKey}.
|
|
@@ -243,7 +243,8 @@ type DetectKeyOptions = {
|
|
|
243
243
|
* Every input pitch class is tried as a root against every known chord quality.
|
|
244
244
|
* A match is reported when all of the chord's tones are present in the input, or
|
|
245
245
|
* when the only absent tone is the perfect fifth (a common omission in shell
|
|
246
|
-
* voicings)
|
|
246
|
+
* voicings) and at least two of the chord's tones still sound, so a single
|
|
247
|
+
* pitch class matches no chord; matches are ranked best-first by fewest extra notes, then fewest
|
|
247
248
|
* missing notes, then root position over an inversion, then most specific
|
|
248
249
|
* (largest) chord. An exact match (no extras, no missing) is flagged and ranked
|
|
249
250
|
* first.
|
|
@@ -291,11 +292,11 @@ declare function detectChordBest(pitches: readonly number[], opts?: DetectChordO
|
|
|
291
292
|
*
|
|
292
293
|
* Choosing the minor variant is deliberately not part of the ranking. A minor
|
|
293
294
|
* candidate is ranked once, on the minor profile, which already expects some
|
|
294
|
-
* weight on the raised
|
|
295
|
-
* the natural, harmonic and melodic masks
|
|
296
|
-
* `fit` is measured against that mask. That
|
|
297
|
-
* cadence ranks its own tonic first without the
|
|
298
|
-
* a scoring contest against the natural one.
|
|
295
|
+
* weight on the raised seventh and treats the raised sixth as chromatic; only
|
|
296
|
+
* then does it report whichever of the natural, harmonic and melodic masks
|
|
297
|
+
* covers the most input weight, and `fit` is measured against that mask. That
|
|
298
|
+
* split is why a harmonic-minor cadence ranks its own tonic first without the
|
|
299
|
+
* harmonic variant having to win a scoring contest against the natural one.
|
|
299
300
|
*
|
|
300
301
|
* {@link DetectKeyOptions.modes} adds the church modes to the same contest, one
|
|
301
302
|
* candidate per mode per tonic, each ranked on a profile derived from its
|
|
@@ -737,7 +738,8 @@ type ArrangementOptions = {
|
|
|
737
738
|
*
|
|
738
739
|
* The first downbeat is beat 0, so an upbeat is written at negative beats.
|
|
739
740
|
* Declaring its length rejects a note that starts before the pickup does;
|
|
740
|
-
* leave it unset to accept any
|
|
741
|
+
* leave it unset to accept any onset within ±`Number.MAX_SAFE_INTEGER`
|
|
742
|
+
* (2^53 - 1).
|
|
741
743
|
*
|
|
742
744
|
* @defaultValue no declared pickup
|
|
743
745
|
*/
|
|
@@ -1307,8 +1309,8 @@ type StructuralCadence = {
|
|
|
1307
1309
|
*
|
|
1308
1310
|
* Three kinds of evidence are gathered independently and then reconciled. The
|
|
1309
1311
|
* harmony contributes its cadences, each closing at the end of the chord it
|
|
1310
|
-
* arrives on, and at
|
|
1311
|
-
*
|
|
1312
|
+
* arrives on, and at every bar line that chord is held across — a tonic still
|
|
1313
|
+
* sounding into the next phrase closed this one at the bar line. The
|
|
1312
1314
|
* cadence reported for a phrase is always one that arrived inside it. The
|
|
1313
1315
|
* melody contributes the rests it breathes at and the notes it
|
|
1314
1316
|
* holds long enough to read as arrivals. Repetition contributes the beats where
|
|
@@ -1436,7 +1438,10 @@ type ReferenceProfileOptions = {
|
|
|
1436
1438
|
timeline?: ChordTimeline;
|
|
1437
1439
|
/**
|
|
1438
1440
|
* The melodic line. Omit it to read the top line of `notes`, where notes
|
|
1439
|
-
* struck together are one event and the highest of them stands for it.
|
|
1441
|
+
* struck together are one event and the highest of them stands for it. Only
|
|
1442
|
+
* notes struck together are collapsed: a lower note struck while a higher
|
|
1443
|
+
* one still sounds — a broken-chord or Alberti accompaniment under a held
|
|
1444
|
+
* melody note — joins the line, so pass the melody of such a texture.
|
|
1440
1445
|
*
|
|
1441
1446
|
* @defaultValue the top line of the notes
|
|
1442
1447
|
*/
|
|
@@ -1461,7 +1466,9 @@ type ReferenceProfileOptions = {
|
|
|
1461
1466
|
*
|
|
1462
1467
|
* The melody is the `melody` option when given, and otherwise the top line of
|
|
1463
1468
|
* the notes — notes struck together read as one event, the highest standing
|
|
1464
|
-
* for it
|
|
1469
|
+
* for it. A lower note struck while a higher one still sounds stays in that
|
|
1470
|
+
* line, so a part whose accompaniment moves under a held melody note is read
|
|
1471
|
+
* as its melody only when the melody is passed. The harmony
|
|
1465
1472
|
* is the `timeline` option when given, and otherwise inferred from all the
|
|
1466
1473
|
* notes. The motif search expects quantized onsets.
|
|
1467
1474
|
*
|
|
@@ -1494,4 +1501,5 @@ type ReferenceProfileOptions = {
|
|
|
1494
1501
|
*/
|
|
1495
1502
|
declare function analyzeReference(notes: readonly NoteEvent[], opts?: ReferenceProfileOptions): ReferenceProfile;
|
|
1496
1503
|
|
|
1497
|
-
export {
|
|
1504
|
+
export { detectKeyFromNotes as B, hypermeter as E, phrasesFromTimeline as F, spellAugmentedSixth as G, structuralCadences as I, tensionCurve as J, tensionCurveFrom as L, MODAL_SCALE_NAMES as M, analyzeArrangement as p, analyzePolyphony as q, analyzeReference as r, augmentedSixthChord as s, augmentedSixthFromPitchClasses as t, augmentedSixthKind as u, createArrangementSession as v, detectChord as w, detectChordBest as x, detectKey as y, detectKeyBest as z };
|
|
1505
|
+
export type { ArrangementAnalysis as A, ChordMatch as C, DetectChordOptions as D, Hypermeter as H, KeyMatch as K, Phrase as P, ReferenceProfileOptions as R, StructuralCadence as S, TensionPoint as T, ArrangementOptions as a, ArrangementSession as b, ArrangementTrack as c, AugmentedSixthKind as d, Conflict as e, ConflictPartner as f, DetectKeyOptions as g, HypermeterOptions as h, ModalCandidate as i, ModalScaleName as j, PhraseOptions as k, PhraseSignal as l, TrackAnalysis as m, TrackEdit as n, TrackRole as o };
|
|
@@ -1,8 +1,8 @@
|
|
|
1
|
-
import { e as KeyScale, h as NoteEvent, i as NoteLike, g as Note } from './index-
|
|
2
|
-
import { d as ChordQuality, k as KeyVariant, b as Chord, r as SpelledKeyLike, c as ChordLike, K as KeyLike, n as ResolvedKey, N as NoteSafety, o as SafetyProfile } from './coerce-
|
|
3
|
-
import { r as ScaleName } from './masks-
|
|
4
|
-
import { p as KeyProfileName, q as KeyProfilePair, a6 as RejectedCandidate, r as KeyRegion, h as ChordTimeline, c as CadenceHit, a as AnalyzedNote, ab as TheoryLabel, K as KeyContext, d as CadenceResult, a5 as ReferenceProfile } from './types-
|
|
5
|
-
import { b as MeterLike } from './index-
|
|
1
|
+
import { e as KeyScale, h as NoteEvent, i as NoteLike, g as Note } from './index-C9MYbuKS.cjs';
|
|
2
|
+
import { d as ChordQuality, k as KeyVariant, b as Chord, r as SpelledKeyLike, c as ChordLike, K as KeyLike, n as ResolvedKey, N as NoteSafety, o as SafetyProfile } from './coerce-Ytt2Eiq9.cjs';
|
|
3
|
+
import { r as ScaleName } from './masks-BnzXnBj0.cjs';
|
|
4
|
+
import { p as KeyProfileName, q as KeyProfilePair, a6 as RejectedCandidate, r as KeyRegion, h as ChordTimeline, c as CadenceHit, a as AnalyzedNote, ab as TheoryLabel, K as KeyContext, d as CadenceResult, a5 as ReferenceProfile } from './types-_ofpb2be.cjs';
|
|
5
|
+
import { b as MeterLike } from './index-5VJgKz_Q.cjs';
|
|
6
6
|
|
|
7
7
|
/**
|
|
8
8
|
* Church-mode candidates for {@link detectKey}.
|
|
@@ -243,7 +243,8 @@ type DetectKeyOptions = {
|
|
|
243
243
|
* Every input pitch class is tried as a root against every known chord quality.
|
|
244
244
|
* A match is reported when all of the chord's tones are present in the input, or
|
|
245
245
|
* when the only absent tone is the perfect fifth (a common omission in shell
|
|
246
|
-
* voicings)
|
|
246
|
+
* voicings) and at least two of the chord's tones still sound, so a single
|
|
247
|
+
* pitch class matches no chord; matches are ranked best-first by fewest extra notes, then fewest
|
|
247
248
|
* missing notes, then root position over an inversion, then most specific
|
|
248
249
|
* (largest) chord. An exact match (no extras, no missing) is flagged and ranked
|
|
249
250
|
* first.
|
|
@@ -291,11 +292,11 @@ declare function detectChordBest(pitches: readonly number[], opts?: DetectChordO
|
|
|
291
292
|
*
|
|
292
293
|
* Choosing the minor variant is deliberately not part of the ranking. A minor
|
|
293
294
|
* candidate is ranked once, on the minor profile, which already expects some
|
|
294
|
-
* weight on the raised
|
|
295
|
-
* the natural, harmonic and melodic masks
|
|
296
|
-
* `fit` is measured against that mask. That
|
|
297
|
-
* cadence ranks its own tonic first without the
|
|
298
|
-
* a scoring contest against the natural one.
|
|
295
|
+
* weight on the raised seventh and treats the raised sixth as chromatic; only
|
|
296
|
+
* then does it report whichever of the natural, harmonic and melodic masks
|
|
297
|
+
* covers the most input weight, and `fit` is measured against that mask. That
|
|
298
|
+
* split is why a harmonic-minor cadence ranks its own tonic first without the
|
|
299
|
+
* harmonic variant having to win a scoring contest against the natural one.
|
|
299
300
|
*
|
|
300
301
|
* {@link DetectKeyOptions.modes} adds the church modes to the same contest, one
|
|
301
302
|
* candidate per mode per tonic, each ranked on a profile derived from its
|
|
@@ -737,7 +738,8 @@ type ArrangementOptions = {
|
|
|
737
738
|
*
|
|
738
739
|
* The first downbeat is beat 0, so an upbeat is written at negative beats.
|
|
739
740
|
* Declaring its length rejects a note that starts before the pickup does;
|
|
740
|
-
* leave it unset to accept any
|
|
741
|
+
* leave it unset to accept any onset within ±`Number.MAX_SAFE_INTEGER`
|
|
742
|
+
* (2^53 - 1).
|
|
741
743
|
*
|
|
742
744
|
* @defaultValue no declared pickup
|
|
743
745
|
*/
|
|
@@ -1307,8 +1309,8 @@ type StructuralCadence = {
|
|
|
1307
1309
|
*
|
|
1308
1310
|
* Three kinds of evidence are gathered independently and then reconciled. The
|
|
1309
1311
|
* harmony contributes its cadences, each closing at the end of the chord it
|
|
1310
|
-
* arrives on, and at
|
|
1311
|
-
*
|
|
1312
|
+
* arrives on, and at every bar line that chord is held across — a tonic still
|
|
1313
|
+
* sounding into the next phrase closed this one at the bar line. The
|
|
1312
1314
|
* cadence reported for a phrase is always one that arrived inside it. The
|
|
1313
1315
|
* melody contributes the rests it breathes at and the notes it
|
|
1314
1316
|
* holds long enough to read as arrivals. Repetition contributes the beats where
|
|
@@ -1436,7 +1438,10 @@ type ReferenceProfileOptions = {
|
|
|
1436
1438
|
timeline?: ChordTimeline;
|
|
1437
1439
|
/**
|
|
1438
1440
|
* The melodic line. Omit it to read the top line of `notes`, where notes
|
|
1439
|
-
* struck together are one event and the highest of them stands for it.
|
|
1441
|
+
* struck together are one event and the highest of them stands for it. Only
|
|
1442
|
+
* notes struck together are collapsed: a lower note struck while a higher
|
|
1443
|
+
* one still sounds — a broken-chord or Alberti accompaniment under a held
|
|
1444
|
+
* melody note — joins the line, so pass the melody of such a texture.
|
|
1440
1445
|
*
|
|
1441
1446
|
* @defaultValue the top line of the notes
|
|
1442
1447
|
*/
|
|
@@ -1461,7 +1466,9 @@ type ReferenceProfileOptions = {
|
|
|
1461
1466
|
*
|
|
1462
1467
|
* The melody is the `melody` option when given, and otherwise the top line of
|
|
1463
1468
|
* the notes — notes struck together read as one event, the highest standing
|
|
1464
|
-
* for it
|
|
1469
|
+
* for it. A lower note struck while a higher one still sounds stays in that
|
|
1470
|
+
* line, so a part whose accompaniment moves under a held melody note is read
|
|
1471
|
+
* as its melody only when the melody is passed. The harmony
|
|
1465
1472
|
* is the `timeline` option when given, and otherwise inferred from all the
|
|
1466
1473
|
* notes. The motif search expects quantized onsets.
|
|
1467
1474
|
*
|
|
@@ -1494,4 +1501,5 @@ type ReferenceProfileOptions = {
|
|
|
1494
1501
|
*/
|
|
1495
1502
|
declare function analyzeReference(notes: readonly NoteEvent[], opts?: ReferenceProfileOptions): ReferenceProfile;
|
|
1496
1503
|
|
|
1497
|
-
export {
|
|
1504
|
+
export { detectKeyFromNotes as B, hypermeter as E, phrasesFromTimeline as F, spellAugmentedSixth as G, structuralCadences as I, tensionCurve as J, tensionCurveFrom as L, MODAL_SCALE_NAMES as M, analyzeArrangement as p, analyzePolyphony as q, analyzeReference as r, augmentedSixthChord as s, augmentedSixthFromPitchClasses as t, augmentedSixthKind as u, createArrangementSession as v, detectChord as w, detectChordBest as x, detectKey as y, detectKeyBest as z };
|
|
1505
|
+
export type { ArrangementAnalysis as A, ChordMatch as C, DetectChordOptions as D, Hypermeter as H, KeyMatch as K, Phrase as P, ReferenceProfileOptions as R, StructuralCadence as S, TensionPoint as T, ArrangementOptions as a, ArrangementSession as b, ArrangementTrack as c, AugmentedSixthKind as d, Conflict as e, ConflictPartner as f, DetectKeyOptions as g, HypermeterOptions as h, ModalCandidate as i, ModalScaleName as j, PhraseOptions as k, PhraseSignal as l, TrackAnalysis as m, TrackEdit as n, TrackRole as o };
|
package/dist/theory/index.cjs
CHANGED
|
@@ -16,7 +16,7 @@
|
|
|
16
16
|
|
|
17
17
|
|
|
18
18
|
|
|
19
|
-
var
|
|
19
|
+
var _chunkU4EQTDGNcjs = require('../chunk-U4EQTDGN.cjs');
|
|
20
20
|
|
|
21
21
|
|
|
22
22
|
|
|
@@ -25,7 +25,7 @@ var _chunk76ZBTRG2cjs = require('../chunk-76ZBTRG2.cjs');
|
|
|
25
25
|
|
|
26
26
|
|
|
27
27
|
|
|
28
|
-
var
|
|
28
|
+
var _chunkP3CPXAJ5cjs = require('../chunk-P3CPXAJ5.cjs');
|
|
29
29
|
|
|
30
30
|
|
|
31
31
|
|
|
@@ -142,13 +142,13 @@ var _chunkPM4XJE2Ycjs = require('../chunk-PM4XJE2Y.cjs');
|
|
|
142
142
|
|
|
143
143
|
|
|
144
144
|
|
|
145
|
-
var
|
|
145
|
+
var _chunkYDGMWH43cjs = require('../chunk-YDGMWH43.cjs');
|
|
146
146
|
|
|
147
147
|
|
|
148
148
|
|
|
149
149
|
|
|
150
150
|
|
|
151
|
-
var
|
|
151
|
+
var _chunkS3QELJUEcjs = require('../chunk-S3QELJUE.cjs');
|
|
152
152
|
|
|
153
153
|
|
|
154
154
|
|
|
@@ -292,5 +292,5 @@ var _chunkS5BKZZGMcjs = require('../chunk-S5BKZZGM.cjs');
|
|
|
292
292
|
|
|
293
293
|
|
|
294
294
|
|
|
295
|
-
exports.ALTERED_MASK =
|
|
295
|
+
exports.ALTERED_MASK = _chunkYDGMWH43cjs.ALTERED_MASK; exports.BLUES_MASK = _chunkYDGMWH43cjs.BLUES_MASK; exports.BudgetExceededError = _chunkS3QELJUEcjs.BudgetExceededError; exports.CHROMATIC_MASK = _chunkYDGMWH43cjs.CHROMATIC_MASK; exports.ConsonanceClass = _chunkS3QELJUEcjs.ConsonanceClass; exports.DORIAN_MASK = _chunkYDGMWH43cjs.DORIAN_MASK; exports.DOUBLE_HARMONIC_MASK = _chunkYDGMWH43cjs.DOUBLE_HARMONIC_MASK; exports.HARMONIC_MINOR_MASK = _chunkYDGMWH43cjs.HARMONIC_MINOR_MASK; exports.InvalidInputError = _chunkS3QELJUEcjs.InvalidInputError; exports.LOCRIAN_MASK = _chunkYDGMWH43cjs.LOCRIAN_MASK; exports.LOCRIAN_NATURAL2_MASK = _chunkYDGMWH43cjs.LOCRIAN_NATURAL2_MASK; exports.LYDIAN_DOMINANT_MASK = _chunkYDGMWH43cjs.LYDIAN_DOMINANT_MASK; exports.LYDIAN_MASK = _chunkYDGMWH43cjs.LYDIAN_MASK; exports.MAJOR_MASK = _chunkYDGMWH43cjs.MAJOR_MASK; exports.MAJOR_PENTATONIC_MASK = _chunkYDGMWH43cjs.MAJOR_PENTATONIC_MASK; exports.MARWA_MASK = _chunkYDGMWH43cjs.MARWA_MASK; exports.MELODIC_MINOR_MASK = _chunkYDGMWH43cjs.MELODIC_MINOR_MASK; exports.MINOR_PENTATONIC_MASK = _chunkYDGMWH43cjs.MINOR_PENTATONIC_MASK; exports.MIXOLYDIAN_B13_MASK = _chunkYDGMWH43cjs.MIXOLYDIAN_B13_MASK; exports.MIXOLYDIAN_MASK = _chunkYDGMWH43cjs.MIXOLYDIAN_MASK; exports.MIYAKO_BUSHI_MASK = _chunkYDGMWH43cjs.MIYAKO_BUSHI_MASK; exports.NAMED_SCALES = _chunkYDGMWH43cjs.NAMED_SCALES; exports.NATURAL_MINOR_MASK = _chunkYDGMWH43cjs.NATURAL_MINOR_MASK; exports.NoSolutionError = _chunkS3QELJUEcjs.NoSolutionError; exports.NoteSafety = _chunkYDGMWH43cjs.NoteSafety; exports.OCTATONIC_HALF_WHOLE_MASK = _chunkYDGMWH43cjs.OCTATONIC_HALF_WHOLE_MASK; exports.OCTATONIC_WHOLE_HALF_MASK = _chunkYDGMWH43cjs.OCTATONIC_WHOLE_HALF_MASK; exports.PHRYGIAN_DOMINANT_MASK = _chunkYDGMWH43cjs.PHRYGIAN_DOMINANT_MASK; exports.PHRYGIAN_MASK = _chunkYDGMWH43cjs.PHRYGIAN_MASK; exports.PROFILE_WEIGHTS = _chunkYDGMWH43cjs.PROFILE_WEIGHTS; exports.PURVI_MASK = _chunkYDGMWH43cjs.PURVI_MASK; exports.RITSU_MASK = _chunkYDGMWH43cjs.RITSU_MASK; exports.RYUKYU_MASK = _chunkYDGMWH43cjs.RYUKYU_MASK; exports.ReasonFlag = _chunkYDGMWH43cjs.ReasonFlag; exports.SATB_RANGES = _chunkU4EQTDGNcjs.SATB_RANGES; exports.SCALE_ALIASES = _chunkYDGMWH43cjs.SCALE_ALIASES; exports.SCALE_SYSTEMS = _chunkYDGMWH43cjs.SCALE_SYSTEMS; exports.TODI_MASK = _chunkYDGMWH43cjs.TODI_MASK; exports.TRANSPOSING_INSTRUMENTS = _chunkU4EQTDGNcjs.TRANSPOSING_INSTRUMENTS; exports.WHOLE_TONE_MASK = _chunkYDGMWH43cjs.WHOLE_TONE_MASK; exports.WORLD_SCALES = _chunkYDGMWH43cjs.WORLD_SCALES; exports.assertKeyVariant = _chunkYDGMWH43cjs.assertKeyVariant; exports.assertModeMask = _chunkYDGMWH43cjs.assertModeMask; exports.availableTensions = _chunkP3CPXAJ5cjs.availableTensions; exports.avoidNotes = _chunkP3CPXAJ5cjs.avoidNotes; exports.checkPartWriting = _chunkU4EQTDGNcjs.checkPartWriting; exports.checkSpecies = _chunkU4EQTDGNcjs.checkSpecies; exports.chordFromDegree = _chunkYDGMWH43cjs.chordFromDegree; exports.chordFromSpan = _chunkYDGMWH43cjs.chordFromSpan; exports.chordFromSpec = _chunkYDGMWH43cjs.chordFromSpec; exports.chordPitchClasses = _chunkYDGMWH43cjs.chordPitchClasses; exports.chordQualities = _chunkYDGMWH43cjs.chordQualities; exports.chordScaleReport = _chunkP3CPXAJ5cjs.chordScaleReport; exports.chordScales = _chunkP3CPXAJ5cjs.chordScales; exports.chordSpecIntervals = _chunkYDGMWH43cjs.chordSpecIntervals; exports.chordSpecOf = _chunkYDGMWH43cjs.chordSpecOf; exports.chordSpecQuality = _chunkYDGMWH43cjs.chordSpecQuality; exports.chordToneRole = _chunkYDGMWH43cjs.chordToneRole; exports.classifySpelledInterval = _chunkYDGMWH43cjs.classifySpelledInterval; exports.createsBattuta = _chunkYDGMWH43cjs.createsBattuta; exports.createsHiddenParallelPerfect = _chunkYDGMWH43cjs.createsHiddenParallelPerfect; exports.createsParallelOctave = _chunkYDGMWH43cjs.createsParallelOctave; exports.createsParallelPerfect = _chunkYDGMWH43cjs.createsParallelPerfect; exports.createsParallelUnison = _chunkYDGMWH43cjs.createsParallelUnison; exports.createsVerticalDissonance = _chunkYDGMWH43cjs.createsVerticalDissonance; exports.createsVoiceCrossing = _chunkYDGMWH43cjs.createsVoiceCrossing; exports.createsVoiceOverlap = _chunkYDGMWH43cjs.createsVoiceOverlap; exports.diatonicPitchClasses = _chunkYDGMWH43cjs.diatonicPitchClasses; exports.diatonicSeventh = _chunkYDGMWH43cjs.diatonicSeventh; exports.diatonicTriad = _chunkYDGMWH43cjs.diatonicTriad; exports.dominantKeyOf = _chunkYDGMWH43cjs.dominantKeyOf; exports.enharmonicKeyOf = _chunkYDGMWH43cjs.enharmonicKeyOf; exports.enumerateSafePitches = _chunkYDGMWH43cjs.enumerateSafePitches; exports.evaluateSafety = _chunkYDGMWH43cjs.evaluateSafety; exports.exceedsSpacing = _chunkYDGMWH43cjs.exceedsSpacing; exports.figuredBassOf = _chunkU4EQTDGNcjs.figuredBassOf; exports.figuredBassRealization = _chunkU4EQTDGNcjs.figuredBassRealization; exports.formatChordSymbol = _chunkYDGMWH43cjs.formatChordSymbol; exports.instrumentTransposition = _chunkU4EQTDGNcjs.instrumentTransposition; exports.intervalAboveRoot = _chunkYDGMWH43cjs.intervalAboveRoot; exports.isAugmentedMelodicInterval = _chunkYDGMWH43cjs.isAugmentedMelodicInterval; exports.isChordMember = _chunkYDGMWH43cjs.isChordMember; exports.isForbiddenMelodicLeap = _chunkYDGMWH43cjs.isForbiddenMelodicLeap; exports.isLeadingToneResolution = _chunkYDGMWH43cjs.isLeadingToneResolution; exports.isScaleTone = _chunkYDGMWH43cjs.isScaleTone; exports.isSignatureKey = _chunkYDGMWH43cjs.isSignatureKey; exports.keyFromFifths = _chunkYDGMWH43cjs.keyFromFifths; exports.keyRelationBetween = _chunkYDGMWH43cjs.keyRelationBetween; exports.keySignatureFifths = _chunkYDGMWH43cjs.keySignatureFifths; exports.majorKey = _chunkYDGMWH43cjs.majorKey; exports.makeChord = _chunkYDGMWH43cjs.makeChord; exports.maskFromOffsets = _chunkYDGMWH43cjs.maskFromOffsets; exports.minorKey = _chunkYDGMWH43cjs.minorKey; exports.namedScaleMask = _chunkYDGMWH43cjs.namedScaleMask; exports.nearestScaleTone = _chunkYDGMWH43cjs.nearestScaleTone; exports.nextVoicing = _chunkU4EQTDGNcjs.nextVoicing; exports.noteNames = _chunkYDGMWH43cjs.noteNames; exports.parallelKeyOf = _chunkYDGMWH43cjs.parallelKeyOf; exports.parseChordSymbol = _chunkYDGMWH43cjs.parseChordSymbol; exports.pitchToScaleDegree = _chunkYDGMWH43cjs.pitchToScaleDegree; exports.profileWeights = _chunkYDGMWH43cjs.profileWeights; exports.realizeFiguredBass = _chunkU4EQTDGNcjs.realizeFiguredBass; exports.relatedKeysOf = _chunkYDGMWH43cjs.relatedKeysOf; exports.relativeKeyOf = _chunkYDGMWH43cjs.relativeKeyOf; exports.requireScaleMask = _chunkYDGMWH43cjs.requireScaleMask; exports.resolveKey = _chunkYDGMWH43cjs.resolveKey; exports.resolveScaleName = _chunkYDGMWH43cjs.resolveScaleName; exports.roleOf = _chunkP3CPXAJ5cjs.roleOf; exports.scaleByName = _chunkYDGMWH43cjs.scaleByName; exports.scaleLadderPitch = _chunkYDGMWH43cjs.scaleLadderPitch; exports.scaleLadderPosition = _chunkYDGMWH43cjs.scaleLadderPosition; exports.scaleMatchesChord = _chunkP3CPXAJ5cjs.scaleMatchesChord; exports.scaleOf = _chunkYDGMWH43cjs.scaleOf; exports.scaleSystemOf = _chunkYDGMWH43cjs.scaleSystemOf; exports.scaleTonesInDegreeOrder = _chunkYDGMWH43cjs.scaleTonesInDegreeOrder; exports.scalesForChanges = _chunkP3CPXAJ5cjs.scalesForChanges; exports.shiftByScaleDegrees = _chunkYDGMWH43cjs.shiftByScaleDegrees; exports.spanFromChord = _chunkYDGMWH43cjs.spanFromChord; exports.spellChord = _chunkYDGMWH43cjs.spellChord; exports.spellChordFromRoot = _chunkYDGMWH43cjs.spellChordFromRoot; exports.spellPitch = _chunkYDGMWH43cjs.spellPitch; exports.spellPitchClass = _chunkYDGMWH43cjs.spellPitchClass; exports.spellPitchClasses = _chunkYDGMWH43cjs.spellPitchClasses; exports.spellScale = _chunkYDGMWH43cjs.spellScale; exports.spellVoicing = _chunkU4EQTDGNcjs.spellVoicing; exports.spelledKeyOf = _chunkYDGMWH43cjs.spelledKeyOf; exports.subdominantKeyOf = _chunkYDGMWH43cjs.subdominantKeyOf; exports.supportsFunctionalHarmony = _chunkYDGMWH43cjs.supportsFunctionalHarmony; exports.toChordData = _chunkYDGMWH43cjs.toChordData; exports.toKeyScale = _chunkYDGMWH43cjs.toKeyScale; exports.toSoundingPitch = _chunkU4EQTDGNcjs.toSoundingPitch; exports.toWrittenPitch = _chunkU4EQTDGNcjs.toWrittenPitch; exports.transposeChord = _chunkYDGMWH43cjs.transposeChord; exports.transposeChordSymbol = _chunkYDGMWH43cjs.transposeChordSymbol; exports.tryParseChordSymbol = _chunkYDGMWH43cjs.tryParseChordSymbol; exports.tryResolveKeyName = _chunkYDGMWH43cjs.tryResolveKeyName; exports.variantOfMask = _chunkYDGMWH43cjs.variantOfMask; exports.voiceChord = _chunkU4EQTDGNcjs.voiceChord; exports.voiceChordStyled = _chunkU4EQTDGNcjs.voiceChordStyled; exports.voiceIndependence = _chunkYDGMWH43cjs.voiceIndependence; exports.voiceLeadingCost = _chunkU4EQTDGNcjs.voiceLeadingCost; exports.voiceProgression = _chunkU4EQTDGNcjs.voiceProgression;
|
|
296
296
|
//# sourceMappingURL=index.cjs.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"sources":["/home/runner/work/libcantus/libcantus/dist/theory/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;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,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;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;AACF,+jRAAC","file":"/home/runner/work/libcantus/libcantus/dist/theory/index.cjs"}
|
|
1
|
+
{"version":3,"sources":["/home/runner/work/libcantus/libcantus/ts/dist/theory/index.cjs"],"names":[],"mappings":"AAAA,0GAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;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,yDAA8B;AAC9B;AACE;AACA;AACA;AACA;AACF,yDAA8B;AAC9B;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;AACF,+jRAAC","file":"/home/runner/work/libcantus/libcantus/ts/dist/theory/index.cjs"}
|
package/dist/theory/index.d.cts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { e as KeyScale, j as NoteNameOptions, P as ParseResult, S as SpelledInterval, g as Note, i as NoteLike } from '../index-
|
|
2
|
-
export { B as BudgetExceededError, I as IntervalData, b as IntervalLike, c as IntervalQualityLabel, d as InvalidInputError, L as LibcantusError, N as NoSolutionError, k as NoteNameSystem } from '../index-
|
|
1
|
+
import { e as KeyScale, j as NoteNameOptions, P as ParseResult, S as SpelledInterval, g as Note, i as NoteLike } from '../index-C9MYbuKS.cjs';
|
|
2
|
+
export { B as BudgetExceededError, I as IntervalData, b as IntervalLike, c as IntervalQualityLabel, d as InvalidInputError, L as LibcantusError, N as NoSolutionError, k as NoteNameSystem } from '../index-C9MYbuKS.cjs';
|
|
3
3
|
import { C as ConsonanceClass } from '../index-DInQqT8Q.cjs';
|
|
4
|
-
import { K as KeyLike, n as ResolvedKey, s as SpelledKeyScale, c as ChordLike, b as Chord, r as SpelledKeyLike } from '../coerce-
|
|
5
|
-
export { A as Alteration, a as AlteredDegree, C as ChordBase, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordToneRole, E as EvaluateSafetyOptions, j as KeyRelation, k as KeyVariant, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, S as SafetyPartner, o as SafetyProfile, p as SafetyQuery, q as SafetyResult, V as VoiceSnapshot, t as chordFromDegree, u as chordFromSpan, v as chordFromSpec, w as chordPitchClasses, x as chordQualities, y as chordSpecIntervals, z as chordSpecOf, B as chordSpecQuality, D as chordToneRole, F as diatonicSeventh, G as diatonicTriad, H as dominantKeyOf, I as enharmonicKeyOf, J as enumerateSafePitches, L as evaluateSafety, M as intervalAboveRoot, O as isChordMember, Q as keyRelationBetween, T as makeChord, U as parallelKeyOf, W as profileWeights, X as relatedKeysOf, Y as relativeKeyOf, Z as spanFromChord, _ as spelledKeyOf, $ as subdominantKeyOf, a0 as toChordData, a1 as toKeyScale, a2 as transposeChord } from '../coerce-
|
|
6
|
-
import { r as VoicingOptions } from '../index-
|
|
7
|
-
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, 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-
|
|
8
|
-
export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from '../index-
|
|
9
|
-
import { s as ScaleNameInput } from '../masks-
|
|
10
|
-
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, 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-
|
|
4
|
+
import { K as KeyLike, n as ResolvedKey, s as SpelledKeyScale, c as ChordLike, b as Chord, r as SpelledKeyLike } from '../coerce-Ytt2Eiq9.cjs';
|
|
5
|
+
export { A as Alteration, a as AlteredDegree, C as ChordBase, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordToneRole, E as EvaluateSafetyOptions, j as KeyRelation, k as KeyVariant, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, S as SafetyPartner, o as SafetyProfile, p as SafetyQuery, q as SafetyResult, V as VoiceSnapshot, t as chordFromDegree, u as chordFromSpan, v as chordFromSpec, w as chordPitchClasses, x as chordQualities, y as chordSpecIntervals, z as chordSpecOf, B as chordSpecQuality, D as chordToneRole, F as diatonicSeventh, G as diatonicTriad, H as dominantKeyOf, I as enharmonicKeyOf, J as enumerateSafePitches, L as evaluateSafety, M as intervalAboveRoot, O as isChordMember, Q as keyRelationBetween, T as makeChord, U as parallelKeyOf, W as profileWeights, X as relatedKeysOf, Y as relativeKeyOf, Z as spanFromChord, _ as spelledKeyOf, $ as subdominantKeyOf, a0 as toChordData, a1 as toKeyScale, a2 as transposeChord } from '../coerce-Ytt2Eiq9.cjs';
|
|
6
|
+
import { r as VoicingOptions } from '../index-BV6APVa6.cjs';
|
|
7
|
+
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, 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-BV6APVa6.cjs';
|
|
8
|
+
export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from '../index-BkT21EMv.cjs';
|
|
9
|
+
import { s as ScaleNameInput } from '../masks-BnzXnBj0.cjs';
|
|
10
|
+
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, 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-BnzXnBj0.cjs';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Test whether a pitch belongs to the scale.
|
|
@@ -744,10 +744,13 @@ declare function realizeFiguredBass(bass: NoteLike, figures: string, key: KeyLik
|
|
|
744
744
|
* What this returns is read back before it is returned, so the two directions
|
|
745
745
|
* cannot disagree: a chord the digits would name only approximately has no
|
|
746
746
|
* figures rather than figures that fail to realize. What that excludes is a
|
|
747
|
-
* stack, not a family of chords — the Italian and German sixths
|
|
748
|
-
*
|
|
749
|
-
*
|
|
750
|
-
*
|
|
747
|
+
* stack, not a family of chords — the Italian and German sixths are
|
|
748
|
+
* conventionally figured `#6` and `#6/5/3`, but their tones do not stack in
|
|
749
|
+
* thirds into any chord quality, so this reads no figures for them (and
|
|
750
|
+
* {@link realizeFiguredBass} raises {@link NoSolutionError} for those figures).
|
|
751
|
+
* That is a limit of the quality vocabulary, not of the notation. The French
|
|
752
|
+
* sixth stacks from its lowered supertonic and is written `#643`, which
|
|
753
|
+
* realizes back to the chord it was written from.
|
|
751
754
|
*
|
|
752
755
|
* @param chord The chord to figure, as a chord symbol, chord data, or a
|
|
753
756
|
* `Chord`; its `bassPc`, when present, is the bass the intervals are measured
|
|
@@ -985,4 +988,5 @@ declare function spellPitch(pitch: number, tonic: NoteLike, key: KeyLike, contex
|
|
|
985
988
|
*/
|
|
986
989
|
declare function noteNames(notes: readonly NoteLike[]): string[];
|
|
987
990
|
|
|
988
|
-
export { Chord as ChordData, ChordLike, ConsonanceClass,
|
|
991
|
+
export { Chord as ChordData, ChordLike, ConsonanceClass, KeyLike, KeyScale, Note as NoteData, NoteLike, NoteNameOptions, ParseResult, ResolvedKey, ScaleNameInput, SpelledInterval, SpelledKeyLike, SpelledKeyScale, VoicingOptions, 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 };
|
|
992
|
+
export type { FiguredBassRealization, FiguredBassSuspension, HiddenParallelReading, ScaleLadderPosition, SpellingContext };
|
package/dist/theory/index.d.ts
CHANGED
|
@@ -1,13 +1,13 @@
|
|
|
1
|
-
import { e as KeyScale, j as NoteNameOptions, P as ParseResult, S as SpelledInterval, g as Note, i as NoteLike } from '../index-
|
|
2
|
-
export { B as BudgetExceededError, I as IntervalData, b as IntervalLike, c as IntervalQualityLabel, d as InvalidInputError, L as LibcantusError, N as NoSolutionError, k as NoteNameSystem } from '../index-
|
|
1
|
+
import { e as KeyScale, j as NoteNameOptions, P as ParseResult, S as SpelledInterval, g as Note, i as NoteLike } from '../index-C9MYbuKS.js';
|
|
2
|
+
export { B as BudgetExceededError, I as IntervalData, b as IntervalLike, c as IntervalQualityLabel, d as InvalidInputError, L as LibcantusError, N as NoSolutionError, k as NoteNameSystem } from '../index-C9MYbuKS.js';
|
|
3
3
|
import { C as ConsonanceClass } from '../index-DInQqT8Q.js';
|
|
4
|
-
import { K as KeyLike, n as ResolvedKey, s as SpelledKeyScale, c as ChordLike, b as Chord, r as SpelledKeyLike } from '../coerce-
|
|
5
|
-
export { A as Alteration, a as AlteredDegree, C as ChordBase, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordToneRole, E as EvaluateSafetyOptions, j as KeyRelation, k as KeyVariant, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, S as SafetyPartner, o as SafetyProfile, p as SafetyQuery, q as SafetyResult, V as VoiceSnapshot, t as chordFromDegree, u as chordFromSpan, v as chordFromSpec, w as chordPitchClasses, x as chordQualities, y as chordSpecIntervals, z as chordSpecOf, B as chordSpecQuality, D as chordToneRole, F as diatonicSeventh, G as diatonicTriad, H as dominantKeyOf, I as enharmonicKeyOf, J as enumerateSafePitches, L as evaluateSafety, M as intervalAboveRoot, O as isChordMember, Q as keyRelationBetween, T as makeChord, U as parallelKeyOf, W as profileWeights, X as relatedKeysOf, Y as relativeKeyOf, Z as spanFromChord, _ as spelledKeyOf, $ as subdominantKeyOf, a0 as toChordData, a1 as toKeyScale, a2 as transposeChord } from '../coerce-
|
|
6
|
-
import { r as VoicingOptions } from '../index-
|
|
7
|
-
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, 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-
|
|
8
|
-
export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from '../index-
|
|
9
|
-
import { s as ScaleNameInput } from '../masks-
|
|
10
|
-
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, 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-
|
|
4
|
+
import { K as KeyLike, n as ResolvedKey, s as SpelledKeyScale, c as ChordLike, b as Chord, r as SpelledKeyLike } from '../coerce-CUhHc3Tu.js';
|
|
5
|
+
export { A as Alteration, a as AlteredDegree, C as ChordBase, d as ChordQuality, e as ChordSegment, f as ChordSeventh, g as ChordSpan, h as ChordSpec, i as ChordToneRole, E as EvaluateSafetyOptions, j as KeyRelation, k as KeyVariant, N as NoteSafety, P as PROFILE_WEIGHTS, l as PitchSpelling, m as ProfileWeights, R as ReasonFlag, S as SafetyPartner, o as SafetyProfile, p as SafetyQuery, q as SafetyResult, V as VoiceSnapshot, t as chordFromDegree, u as chordFromSpan, v as chordFromSpec, w as chordPitchClasses, x as chordQualities, y as chordSpecIntervals, z as chordSpecOf, B as chordSpecQuality, D as chordToneRole, F as diatonicSeventh, G as diatonicTriad, H as dominantKeyOf, I as enharmonicKeyOf, J as enumerateSafePitches, L as evaluateSafety, M as intervalAboveRoot, O as isChordMember, Q as keyRelationBetween, T as makeChord, U as parallelKeyOf, W as profileWeights, X as relatedKeysOf, Y as relativeKeyOf, Z as spanFromChord, _ as spelledKeyOf, $ as subdominantKeyOf, a0 as toChordData, a1 as toKeyScale, a2 as transposeChord } from '../coerce-CUhHc3Tu.js';
|
|
6
|
+
import { r as VoicingOptions } from '../index-BLuDesVG.js';
|
|
7
|
+
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, 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-BLuDesVG.js';
|
|
8
|
+
export { H as HarmonyRole, L as LockLevel, V as VoicedRole, r as roleOf } from '../index-C7KCaTRz.js';
|
|
9
|
+
import { s as ScaleNameInput } from '../masks-tycmkrgs.js';
|
|
10
|
+
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, 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-tycmkrgs.js';
|
|
11
11
|
|
|
12
12
|
/**
|
|
13
13
|
* Test whether a pitch belongs to the scale.
|
|
@@ -744,10 +744,13 @@ declare function realizeFiguredBass(bass: NoteLike, figures: string, key: KeyLik
|
|
|
744
744
|
* What this returns is read back before it is returned, so the two directions
|
|
745
745
|
* cannot disagree: a chord the digits would name only approximately has no
|
|
746
746
|
* figures rather than figures that fail to realize. What that excludes is a
|
|
747
|
-
* stack, not a family of chords — the Italian and German sixths
|
|
748
|
-
*
|
|
749
|
-
*
|
|
750
|
-
*
|
|
747
|
+
* stack, not a family of chords — the Italian and German sixths are
|
|
748
|
+
* conventionally figured `#6` and `#6/5/3`, but their tones do not stack in
|
|
749
|
+
* thirds into any chord quality, so this reads no figures for them (and
|
|
750
|
+
* {@link realizeFiguredBass} raises {@link NoSolutionError} for those figures).
|
|
751
|
+
* That is a limit of the quality vocabulary, not of the notation. The French
|
|
752
|
+
* sixth stacks from its lowered supertonic and is written `#643`, which
|
|
753
|
+
* realizes back to the chord it was written from.
|
|
751
754
|
*
|
|
752
755
|
* @param chord The chord to figure, as a chord symbol, chord data, or a
|
|
753
756
|
* `Chord`; its `bassPc`, when present, is the bass the intervals are measured
|
|
@@ -985,4 +988,5 @@ declare function spellPitch(pitch: number, tonic: NoteLike, key: KeyLike, contex
|
|
|
985
988
|
*/
|
|
986
989
|
declare function noteNames(notes: readonly NoteLike[]): string[];
|
|
987
990
|
|
|
988
|
-
export { Chord as ChordData, ChordLike, ConsonanceClass,
|
|
991
|
+
export { Chord as ChordData, ChordLike, ConsonanceClass, KeyLike, KeyScale, Note as NoteData, NoteLike, NoteNameOptions, ParseResult, ResolvedKey, ScaleNameInput, SpelledInterval, SpelledKeyLike, SpelledKeyScale, VoicingOptions, 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 };
|
|
992
|
+
export type { FiguredBassRealization, FiguredBassSuspension, HiddenParallelReading, ScaleLadderPosition, SpellingContext };
|
package/dist/theory/index.js
CHANGED
|
@@ -16,7 +16,7 @@ import {
|
|
|
16
16
|
voiceChordStyled,
|
|
17
17
|
voiceLeadingCost,
|
|
18
18
|
voiceProgression
|
|
19
|
-
} from "../chunk-
|
|
19
|
+
} from "../chunk-ZLNSH4UL.js";
|
|
20
20
|
import {
|
|
21
21
|
availableTensions,
|
|
22
22
|
avoidNotes,
|
|
@@ -25,7 +25,7 @@ import {
|
|
|
25
25
|
roleOf,
|
|
26
26
|
scaleMatchesChord,
|
|
27
27
|
scalesForChanges
|
|
28
|
-
} from "../chunk-
|
|
28
|
+
} from "../chunk-2G5MCGYU.js";
|
|
29
29
|
import {
|
|
30
30
|
ALTERED_MASK,
|
|
31
31
|
BLUES_MASK,
|
|
@@ -142,13 +142,13 @@ import {
|
|
|
142
142
|
tryResolveKeyName,
|
|
143
143
|
variantOfMask,
|
|
144
144
|
voiceIndependence
|
|
145
|
-
} from "../chunk-
|
|
145
|
+
} from "../chunk-H7FVMBUC.js";
|
|
146
146
|
import {
|
|
147
147
|
BudgetExceededError,
|
|
148
148
|
ConsonanceClass,
|
|
149
149
|
InvalidInputError,
|
|
150
150
|
NoSolutionError
|
|
151
|
-
} from "../chunk-
|
|
151
|
+
} from "../chunk-YYVXRV3V.js";
|
|
152
152
|
export {
|
|
153
153
|
ALTERED_MASK,
|
|
154
154
|
BLUES_MASK,
|