@musodojo/music-theory-data 31.1.0 → 33.0.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/README.md +58 -7
- package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/build_message.d.ts.map +1 -1
- package/{script/deps/jsr.io/@std/internal/1.0.13 → esm/deps/jsr.io/@std/internal/1.0.14}/diff.d.ts.map +1 -1
- package/{script/deps/jsr.io/@std/internal/1.0.13 → esm/deps/jsr.io/@std/internal/1.0.14}/diff_str.d.ts.map +1 -1
- package/{script/deps/jsr.io/@std/internal/1.0.13 → esm/deps/jsr.io/@std/internal/1.0.14}/format.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/styles.d.ts.map +1 -1
- package/esm/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/types.d.ts.map +1 -1
- package/esm/src/data/chord-progressions/mod.d.ts +28 -16
- package/esm/src/data/chord-progressions/mod.d.ts.map +1 -1
- package/esm/src/data/chord-progressions/mod.js +180 -65
- package/esm/src/data/chords/mod.d.ts +26 -1
- package/esm/src/data/chords/mod.d.ts.map +1 -1
- package/esm/src/data/chords/mod.js +70 -1
- package/esm/src/data/labels/mod.d.ts +1 -0
- package/esm/src/data/labels/mod.d.ts.map +1 -1
- package/esm/src/data/labels/mod.js +1 -0
- package/esm/src/data/labels/note-label-collections.d.ts +1 -25
- package/esm/src/data/labels/note-label-collections.d.ts.map +1 -1
- package/esm/src/data/labels/note-label-collections.js +1 -77
- package/esm/src/data/labels/note-labels.d.ts +1 -1
- package/esm/src/data/labels/note-labels.d.ts.map +1 -1
- package/esm/src/data/labels/solfege.d.ts +33 -0
- package/esm/src/data/labels/solfege.d.ts.map +1 -0
- package/esm/src/data/labels/solfege.js +165 -0
- package/esm/src/data/note-collections/augmented-variants.d.ts.map +1 -1
- package/esm/src/data/note-collections/augmented-variants.js +3 -2
- package/esm/src/data/note-collections/mod.d.ts +15 -0
- package/esm/src/data/note-collections/mod.d.ts.map +1 -1
- package/esm/src/data/note-collections/mod.js +2 -2
- package/esm/src/utils/chord-progressions.d.ts +22 -5
- package/esm/src/utils/chord-progressions.d.ts.map +1 -1
- package/esm/src/utils/chord-progressions.js +70 -7
- package/esm/src/utils/chords.d.ts +7 -1
- package/esm/src/utils/chords.d.ts.map +1 -1
- package/esm/src/utils/chords.js +18 -1
- package/esm/src/utils/conversion-registry.d.ts +40 -20
- package/esm/src/utils/conversion-registry.d.ts.map +1 -1
- package/esm/src/utils/conversion-registry.js +95 -25
- package/esm/src/utils/intervals.d.ts +3 -0
- package/esm/src/utils/intervals.d.ts.map +1 -1
- package/esm/src/utils/intervals.js +23 -0
- package/esm/src/utils/midi.d.ts +7 -0
- package/esm/src/utils/midi.d.ts.map +1 -1
- package/esm/src/utils/midi.js +16 -0
- package/esm/src/utils/note-collections.d.ts +9 -1
- package/esm/src/utils/note-collections.d.ts.map +1 -1
- package/esm/src/utils/note-collections.js +22 -0
- package/esm/tests/solfege.test.d.ts.map +1 -0
- package/package.json +1 -1
- package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/build_message.d.ts.map +1 -1
- package/{esm/deps/jsr.io/@std/internal/1.0.13 → script/deps/jsr.io/@std/internal/1.0.14}/diff.d.ts.map +1 -1
- package/{esm/deps/jsr.io/@std/internal/1.0.13 → script/deps/jsr.io/@std/internal/1.0.14}/diff_str.d.ts.map +1 -1
- package/{esm/deps/jsr.io/@std/internal/1.0.13 → script/deps/jsr.io/@std/internal/1.0.14}/format.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/styles.d.ts.map +1 -1
- package/script/deps/jsr.io/@std/internal/{1.0.13 → 1.0.14}/types.d.ts.map +1 -1
- package/script/src/data/chord-progressions/mod.d.ts +28 -16
- package/script/src/data/chord-progressions/mod.d.ts.map +1 -1
- package/script/src/data/chord-progressions/mod.js +181 -66
- package/script/src/data/chords/mod.d.ts +26 -1
- package/script/src/data/chords/mod.d.ts.map +1 -1
- package/script/src/data/chords/mod.js +75 -2
- package/script/src/data/labels/mod.d.ts +1 -0
- package/script/src/data/labels/mod.d.ts.map +1 -1
- package/script/src/data/labels/mod.js +1 -0
- package/script/src/data/labels/note-label-collections.d.ts +1 -25
- package/script/src/data/labels/note-label-collections.d.ts.map +1 -1
- package/script/src/data/labels/note-label-collections.js +1 -77
- package/script/src/data/labels/note-labels.d.ts +1 -1
- package/script/src/data/labels/note-labels.d.ts.map +1 -1
- package/script/src/data/labels/solfege.d.ts +33 -0
- package/script/src/data/labels/solfege.d.ts.map +1 -0
- package/script/src/data/labels/solfege.js +173 -0
- package/script/src/data/note-collections/augmented-variants.d.ts.map +1 -1
- package/script/src/data/note-collections/augmented-variants.js +3 -2
- package/script/src/data/note-collections/mod.d.ts +15 -0
- package/script/src/data/note-collections/mod.d.ts.map +1 -1
- package/script/src/utils/chord-progressions.d.ts +22 -5
- package/script/src/utils/chord-progressions.d.ts.map +1 -1
- package/script/src/utils/chord-progressions.js +72 -5
- package/script/src/utils/chords.d.ts +7 -1
- package/script/src/utils/chords.d.ts.map +1 -1
- package/script/src/utils/chords.js +19 -0
- package/script/src/utils/conversion-registry.d.ts +40 -20
- package/script/src/utils/conversion-registry.d.ts.map +1 -1
- package/script/src/utils/conversion-registry.js +98 -26
- package/script/src/utils/intervals.d.ts +3 -0
- package/script/src/utils/intervals.d.ts.map +1 -1
- package/script/src/utils/intervals.js +26 -0
- package/script/src/utils/midi.d.ts +7 -0
- package/script/src/utils/midi.d.ts.map +1 -1
- package/script/src/utils/midi.js +19 -0
- package/script/src/utils/note-collections.d.ts +9 -1
- package/script/src/utils/note-collections.d.ts.map +1 -1
- package/script/src/utils/note-collections.js +25 -0
- package/script/tests/solfege.test.d.ts.map +1 -0
package/README.md
CHANGED
|
@@ -13,14 +13,14 @@ helpers, and naming utilities.
|
|
|
13
13
|
collections, grouped into families such as diatonic modes, pentatonic
|
|
14
14
|
variants, major/minor/dominant variants, harmonic minor modes, melodic minor
|
|
15
15
|
modes, diminished variants, and augmented variants.
|
|
16
|
-
- **Chord progressions:**
|
|
17
|
-
|
|
18
|
-
durations.
|
|
16
|
+
- **Chord progressions:** foundational loops, blues changes, and jazz-standard
|
|
17
|
+
forms with musical categories, scale degrees, chord collection keys, bar
|
|
18
|
+
durations, derived roman symbols, and optional analysis labels.
|
|
19
19
|
- **Labels and theory primitives:** note names, root notes, intervals, chromatic
|
|
20
20
|
indexes, roman numerals, chord qualities, and conversion helpers.
|
|
21
21
|
- **Application helpers:** note-name generation, interval transforms, chord
|
|
22
|
-
progression resolution, chord spelling,
|
|
23
|
-
helpers, and string instrument tunings.
|
|
22
|
+
progression resolution, chord spelling, a UI-friendly conversion registry,
|
|
23
|
+
MIDI helpers, note colors, contrast helpers, and string instrument tunings.
|
|
24
24
|
- **TypeScript-first API:** exported data, utility functions, and types are
|
|
25
25
|
designed to work well with autocomplete and compile-time checking.
|
|
26
26
|
|
|
@@ -79,6 +79,44 @@ console.log(fMajor);
|
|
|
79
79
|
// ["F", "G", "A", "B♭", "C", "D", "E", "F"]
|
|
80
80
|
```
|
|
81
81
|
|
|
82
|
+
### Use The Conversion Registry
|
|
83
|
+
|
|
84
|
+
```ts
|
|
85
|
+
import {
|
|
86
|
+
conversions,
|
|
87
|
+
getAvailableRootAndNoteCollectionConversions,
|
|
88
|
+
} from "jsr:@musodojo/music-theory-data";
|
|
89
|
+
|
|
90
|
+
const options = {
|
|
91
|
+
fillChromatic: true,
|
|
92
|
+
rotateToRootInteger0: true,
|
|
93
|
+
} as const;
|
|
94
|
+
|
|
95
|
+
const noteNames = conversions.rootAndNoteCollection.noteNames.get(
|
|
96
|
+
"C",
|
|
97
|
+
"ionian",
|
|
98
|
+
options,
|
|
99
|
+
);
|
|
100
|
+
|
|
101
|
+
console.log(noteNames);
|
|
102
|
+
// ["C", "D♭", "D", "E♭", "E", "F", "G♭", "G", "A♭", "A", "B♭", "B"]
|
|
103
|
+
|
|
104
|
+
const availableForMajorChord = getAvailableRootAndNoteCollectionConversions(
|
|
105
|
+
"C",
|
|
106
|
+
"major",
|
|
107
|
+
);
|
|
108
|
+
|
|
109
|
+
console.log(availableForMajorChord.map((entry) => entry.id));
|
|
110
|
+
// ["note-names", "intervals", "extensions", "compound-intervals"]
|
|
111
|
+
```
|
|
112
|
+
|
|
113
|
+
The conversion registry is useful when an app needs selectable display layers
|
|
114
|
+
for the same root and note collection. Each entry includes UI metadata such as
|
|
115
|
+
`name`, `shortName`, `description`, `outputShape`, and whether empty chromatic
|
|
116
|
+
slots can appear. Authored harmony conversions are exposed for modal collections
|
|
117
|
+
such as `ionian`, but are filtered out for collections that do not define modal
|
|
118
|
+
harmony, such as the `major` triad.
|
|
119
|
+
|
|
82
120
|
### Inspect A Note Collection
|
|
83
121
|
|
|
84
122
|
```ts
|
|
@@ -107,20 +145,33 @@ source files for complete schemas.
|
|
|
107
145
|
|
|
108
146
|
```ts
|
|
109
147
|
import {
|
|
148
|
+
chordProgressionCategoryGroups,
|
|
110
149
|
chordProgressions,
|
|
111
150
|
getChordProgressionChordNames,
|
|
151
|
+
getChordProgressionKeysForCategory,
|
|
112
152
|
getChordProgressionRomanSymbols,
|
|
113
153
|
getChordProgressionTotalDurationInBars,
|
|
114
154
|
} from "jsr:@musodojo/music-theory-data";
|
|
115
155
|
|
|
116
156
|
const oneSixFourFive = chordProgressions.oneSixFourFive;
|
|
117
157
|
|
|
118
|
-
console.log(
|
|
119
|
-
|
|
158
|
+
console.log(
|
|
159
|
+
oneSixFourFive.chords.map((chord) => [
|
|
160
|
+
chord.degree,
|
|
161
|
+
chord.chordCollectionKey,
|
|
162
|
+
]),
|
|
163
|
+
);
|
|
164
|
+
// [["1", "major"], ["6", "minor"], ["4", "major"], ["5", "major"]]
|
|
120
165
|
|
|
121
166
|
console.log(getChordProgressionRomanSymbols("oneSixFourFive"));
|
|
122
167
|
// ["I", "vi", "IV", "V"]
|
|
123
168
|
|
|
169
|
+
console.log(chordProgressionCategoryGroups.map((group) => group.name));
|
|
170
|
+
// ["Fundamentals", "Popular Loops", "Jazz & Turnarounds", "Blues"]
|
|
171
|
+
|
|
172
|
+
console.log(getChordProgressionKeysForCategory("jazz"));
|
|
173
|
+
// ["oneSixTwoFive", "sixTwoFiveOne", "majorTwoFiveOne", ...]
|
|
174
|
+
|
|
124
175
|
console.log(getChordProgressionChordNames("C", "oneSixFourFive"));
|
|
125
176
|
// ["CM", "Am", "FM", "GM"]
|
|
126
177
|
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"build_message.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.
|
|
1
|
+
{"version":3,"file":"build_message.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.14/build_message.ts"],"names":[],"mappings":"AAIA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEvD;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,WAAW,CACzB,QAAQ,EAAE,QAAQ;AAClB;;;GAGG;AACH,UAAU,UAAQ,GACjB,CAAC,CAAC,EAAE,MAAM,KAAK,MAAM,CAWvB;AAED;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,QAAQ,GAAG,MAAM,CASrD;AAED,4CAA4C;AAC5C,MAAM,WAAW,mBAAmB;IAClC;;;OAGG;IACH,UAAU,CAAC,EAAE,OAAO,CAAC;CACtB;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,YAAY,CAC1B,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAC7C,OAAO,GAAE,mBAAwB,EACjC,YAAY,CAAC,EAAE,CACb,UAAU,EAAE,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,EAC7C,UAAU,EAAE,OAAO,EACnB,aAAa,CAAC,EAAE,MAAM,GAAG,IAAI,KAC1B,aAAa,CAAC,UAAU,CAAC,MAAM,CAAC,CAAC,GACrC,MAAM,EAAE,CA8BV"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.
|
|
1
|
+
{"version":3,"file":"diff.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.14/diff.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAE,UAAU,EAAE,QAAQ,EAAE,MAAM,YAAY,CAAC;AAEvD,2DAA2D;AAC3D,MAAM,WAAW,aAAa;IAC5B,qCAAqC;IACrC,CAAC,EAAE,MAAM,CAAC;IACV,2BAA2B;IAC3B,EAAE,EAAE,MAAM,CAAC;CACZ;AAMD;;;;;;;;;;;;;;;;;;;;GAoBG;AACH,wBAAgB,YAAY,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,CAAC,EAAE,CAanD;AAED;;;;;;;;;;;;;;;;;;GAkBG;AACH,wBAAgB,QAAQ,CAAC,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,KAAK,IAAI,aAAa,CAWvE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,SAAS,CAAC,CAAC,EACzB,CAAC,EAAE,CAAC,EAAE,EACN,CAAC,EAAE,CAAC,EAAE,EACN,OAAO,EAAE,aAAa,EACtB,OAAO,EAAE,OAAO,EAChB,MAAM,EAAE,WAAW,EACnB,kBAAkB,EAAE,MAAM,GACzB,KAAK,CAAC;IACP,IAAI,EAAE,QAAQ,CAAC;IACf,KAAK,EAAE,CAAC,CAAC;CACV,CAAC,CAiCD;AAED;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GA+BG;AACH,wBAAgB,QAAQ,CACtB,CAAC,EAAE,MAAM,EACT,CAAC,EAAE,MAAM,EACT,MAAM,EAAE,WAAW,EACnB,kBAAkB,EAAE,MAAM,EAC1B,GAAG,EAAE,MAAM,EACX,KAAK,CAAC,EAAE,aAAa,EACrB,IAAI,CAAC,EAAE,aAAa,GACnB,aAAa,CAsBf;AAED;;;;;;;;;;;;;;;;;;;;;;;;;GAyBG;AACH,wBAAgB,IAAI,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,EAAE,CAAC,EAAE,CAAC,EAAE,GAAG,UAAU,CAAC,CAAC,CAAC,EAAE,CAwEvD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"diff_str.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.
|
|
1
|
+
{"version":3,"file":"diff_str.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.14/diff_str.ts"],"names":[],"mappings":"AAGA,OAAO,KAAK,EAAqB,UAAU,EAAE,MAAM,YAAY,CAAC;AAGhE;;;;;;;;;;;;;;;;GAgBG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAY/C;AAKD;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,QAAQ,CAAC,MAAM,EAAE,MAAM,EAAE,QAAQ,UAAQ,GAAG,MAAM,EAAE,CAiBnE;AAED;;;;;;;;;;;;;;;;;;;;;;;;GAwBG;AACH,wBAAgB,aAAa,CAC3B,IAAI,EAAE,UAAU,CAAC,MAAM,CAAC,EACxB,MAAM,EAAE,UAAU,CAAC,MAAM,CAAC,EAAE,GAC3B,UAAU,CAAC,MAAM,CAAC,EAAE,CAetB;AAID;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;;GAkCG;AACH,wBAAgB,OAAO,CAAC,CAAC,EAAE,MAAM,EAAE,CAAC,EAAE,MAAM,GAAG,UAAU,CAAC,MAAM,CAAC,EAAE,CAkDlE"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.
|
|
1
|
+
{"version":3,"file":"format.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.14/format.ts"],"names":[],"mappings":"AAMA,MAAM,MAAM,SAAS,GAAG,CACtB,CAAC,EAAE,OAAO,EACV,OAAO,EAAE;IACP,KAAK,EAAE,MAAM,CAAC;IACd,MAAM,EAAE,OAAO,CAAC;IAChB,aAAa,EAAE,OAAO,CAAC;IACvB,OAAO,EAAE,OAAO,CAAC;IACjB,aAAa,EAAE,MAAM,CAAC;IACtB,OAAO,EAAE,OAAO,CAAC;IACjB,iBAAiB,EAAE,MAAM,CAAC;CAC3B,KACE,MAAM,CAAC;AAEZ;;;;;;;;;;;;;;;;;GAiBG;AACH,wBAAgB,MAAM,CAAC,CAAC,EAAE,OAAO,GAAG,MAAM,CAmBzC"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.
|
|
1
|
+
{"version":3,"file":"styles.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.14/styles.ts"],"names":[],"mappings":"AAqCA;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAExC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,GAAG,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEvC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED;;;;;;;;;;;;;;;GAeG;AACH,wBAAgB,MAAM,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE1C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,IAAI,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAExC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,WAAW,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE/C;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,KAAK,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAEzC;AAED;;;;;;;;;;;;;GAaG;AACH,wBAAgB,OAAO,CAAC,GAAG,EAAE,MAAM,GAAG,MAAM,CAE3C;AAWD;;;;;;;;;;;;;GAaG;AACH,wBAAgB,aAAa,CAAC,MAAM,EAAE,MAAM,GAAG,MAAM,CAEpD"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.
|
|
1
|
+
{"version":3,"file":"types.d.ts","sourceRoot":"","sources":["../../../../../../src/deps/jsr.io/@std/internal/1.0.14/types.ts"],"names":[],"mappings":"AAGA,kDAAkD;AAClD,MAAM,MAAM,QAAQ,GAAG,UAAU,CAAC,OAAO,CAAC,CAAC,MAAM,CAAC,CAAC;AAEnD;;;GAGG;AACH,MAAM,MAAM,UAAU,CAAC,CAAC,IAAI,iBAAiB,CAAC,CAAC,CAAC,GAAG,gBAAgB,CAAC,CAAC,CAAC,CAAC;AAEvE;;;GAGG;AACH,MAAM,MAAM,gBAAgB,CAAC,CAAC,IAAI;IAChC,IAAI,EAAE,QAAQ,GAAG,YAAY,CAAC;IAC9B,KAAK,EAAE,CAAC,CAAC;CACV,CAAC;AAEF;;;GAGG;AACH,MAAM,MAAM,iBAAiB,CAAC,CAAC,IAAI;IACjC,IAAI,EAAE,SAAS,GAAG,OAAO,CAAC;IAC1B,KAAK,EAAE,CAAC,CAAC;IACT,OAAO,CAAC,EAAE,UAAU,CAAC,CAAC,CAAC,EAAE,CAAC;CAC3B,CAAC"}
|
|
@@ -1,25 +1,37 @@
|
|
|
1
|
-
import type { ChordProgression, ChordProgressionBarGroup } from "../../types/chord-progressions";
|
|
1
|
+
import type { ChordProgression, ChordProgressionBarGroup, ChordProgressionCategoryGroup, ChordProgressionCategoryKey, ChordProgressionCategoryMetadata } from "../../types/chord-progressions";
|
|
2
|
+
type BuiltInChordProgression = ChordProgression & {
|
|
3
|
+
readonly category: ChordProgressionCategoryKey;
|
|
4
|
+
};
|
|
5
|
+
/** Category display metadata for built-in chord progressions. */
|
|
6
|
+
export declare const chordProgressionCategories: Record<ChordProgressionCategoryKey, ChordProgressionCategoryMetadata>;
|
|
7
|
+
/** Built-in chord progression category keys in recommended display order. */
|
|
8
|
+
export declare const chordProgressionCategoryKeys: readonly ChordProgressionCategoryKey[];
|
|
2
9
|
declare const _chordProgressions: {
|
|
3
|
-
readonly oneOneFiveFive:
|
|
4
|
-
readonly oneOneFiveFiveDominant7:
|
|
5
|
-
readonly oneOneFourFour:
|
|
6
|
-
readonly oneOneFourFive:
|
|
7
|
-
readonly oneFourOneFive:
|
|
8
|
-
readonly oneSixFourFive:
|
|
9
|
-
readonly oneFiveSixFour:
|
|
10
|
-
readonly oneSixTwoFive:
|
|
11
|
-
readonly sixTwoFiveOne:
|
|
12
|
-
readonly majorTwoFiveOne:
|
|
13
|
-
readonly minorTwoFiveOne:
|
|
14
|
-
readonly oneFourOneFiveSplitReturn:
|
|
15
|
-
readonly
|
|
16
|
-
readonly
|
|
10
|
+
readonly oneOneFiveFive: BuiltInChordProgression;
|
|
11
|
+
readonly oneOneFiveFiveDominant7: BuiltInChordProgression;
|
|
12
|
+
readonly oneOneFourFour: BuiltInChordProgression;
|
|
13
|
+
readonly oneOneFourFive: BuiltInChordProgression;
|
|
14
|
+
readonly oneFourOneFive: BuiltInChordProgression;
|
|
15
|
+
readonly oneSixFourFive: BuiltInChordProgression;
|
|
16
|
+
readonly oneFiveSixFour: BuiltInChordProgression;
|
|
17
|
+
readonly oneSixTwoFive: BuiltInChordProgression;
|
|
18
|
+
readonly sixTwoFiveOne: BuiltInChordProgression;
|
|
19
|
+
readonly majorTwoFiveOne: BuiltInChordProgression;
|
|
20
|
+
readonly minorTwoFiveOne: BuiltInChordProgression;
|
|
21
|
+
readonly oneFourOneFiveSplitReturn: BuiltInChordProgression;
|
|
22
|
+
readonly autumnLeavesA: BuiltInChordProgression;
|
|
23
|
+
readonly autumnLeavesB: BuiltInChordProgression;
|
|
24
|
+
readonly twelveBarBlues: BuiltInChordProgression;
|
|
25
|
+
readonly twelveBarBluesQuickChange: BuiltInChordProgression;
|
|
26
|
+
readonly rhythmChanges: BuiltInChordProgression;
|
|
17
27
|
};
|
|
18
28
|
/** A key for one of the built-in chord progression templates. */
|
|
19
29
|
export type ChordProgressionKey = keyof typeof _chordProgressions;
|
|
20
30
|
/** Built-in chord progression templates keyed by progression id. */
|
|
21
|
-
export declare const chordProgressions: Record<ChordProgressionKey,
|
|
31
|
+
export declare const chordProgressions: Record<ChordProgressionKey, BuiltInChordProgression>;
|
|
22
32
|
/** Built-in chord progression keys grouped by total duration in bars. */
|
|
23
33
|
export declare const chordProgressionBarGroups: readonly ChordProgressionBarGroup<ChordProgressionKey>[];
|
|
34
|
+
/** Built-in chord progression keys grouped by musical category. */
|
|
35
|
+
export declare const chordProgressionCategoryGroups: readonly ChordProgressionCategoryGroup<ChordProgressionKey>[];
|
|
24
36
|
export {};
|
|
25
37
|
//# sourceMappingURL=mod.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/src/data/chord-progressions/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,wBAAwB,
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/src/data/chord-progressions/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,gBAAgB,EAChB,wBAAwB,EACxB,6BAA6B,EAC7B,2BAA2B,EAC3B,gCAAgC,EAEjC,MAAM,gCAAgC,CAAC;AAExC,KAAK,uBAAuB,GAAG,gBAAgB,GAAG;IAChD,QAAQ,CAAC,QAAQ,EAAE,2BAA2B,CAAC;CAChD,CAAC;AAgDF,iEAAiE;AACjE,eAAO,MAAM,0BAA0B,EAAE,MAAM,CAC7C,2BAA2B,EAC3B,gCAAgC,CACH,CAAC;AAEhC,6EAA6E;AAC7E,eAAO,MAAM,4BAA4B,EACvC,SAAS,2BAA2B,EAKnC,CAAC;AAsNJ,QAAA,MAAM,kBAAkB;;;;;;;;;;;;;;;;;;CAkBd,CAAC;AAEX,iEAAiE;AACjE,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAElE,oEAAoE;AACpE,eAAO,MAAM,iBAAiB,EAAE,MAAM,CACpC,mBAAmB,EACnB,uBAAuB,CACH,CAAC;AAiBvB,yEAAyE;AACzE,eAAO,MAAM,yBAAyB,EAAE,SAAS,wBAAwB,CACvE,mBAAmB,CACpB,EAM0C,CAAC;AAE5C,mEAAmE;AACnE,eAAO,MAAM,8BAA8B,EACzC,SAAS,6BAA6B,CAAC,mBAAmB,CAAC,EAQtD,CAAC"}
|
|
@@ -1,128 +1,234 @@
|
|
|
1
|
-
function chord(
|
|
2
|
-
|
|
3
|
-
romanSymbol,
|
|
1
|
+
function chord(degree, chordCollectionKey, durationInBars, analysis) {
|
|
2
|
+
const progressionChord = {
|
|
4
3
|
degree,
|
|
5
|
-
|
|
4
|
+
chordCollectionKey,
|
|
6
5
|
durationInBars,
|
|
7
6
|
};
|
|
7
|
+
if (analysis === undefined)
|
|
8
|
+
return progressionChord;
|
|
9
|
+
return {
|
|
10
|
+
...progressionChord,
|
|
11
|
+
analysis,
|
|
12
|
+
};
|
|
8
13
|
}
|
|
14
|
+
const _chordProgressionCategories = {
|
|
15
|
+
fundamentals: {
|
|
16
|
+
name: "Fundamentals",
|
|
17
|
+
description: "Small tonic, subdominant, and dominant patterns for core harmonic motion.",
|
|
18
|
+
},
|
|
19
|
+
popular: {
|
|
20
|
+
name: "Popular Loops",
|
|
21
|
+
description: "Common diatonic loops used widely in popular, rock, folk, and songwriting contexts.",
|
|
22
|
+
},
|
|
23
|
+
jazz: {
|
|
24
|
+
name: "Jazz & Turnarounds",
|
|
25
|
+
description: "ii-V motion, turnarounds, and jazz-standard forms with richer chord collections.",
|
|
26
|
+
},
|
|
27
|
+
blues: {
|
|
28
|
+
name: "Blues",
|
|
29
|
+
description: "Blues forms built from dominant-function tonic, subdominant, and dominant areas.",
|
|
30
|
+
},
|
|
31
|
+
};
|
|
32
|
+
/** Category display metadata for built-in chord progressions. */
|
|
33
|
+
export const chordProgressionCategories = _chordProgressionCategories;
|
|
34
|
+
/** Built-in chord progression category keys in recommended display order. */
|
|
35
|
+
export const chordProgressionCategoryKeys = [
|
|
36
|
+
"fundamentals",
|
|
37
|
+
"popular",
|
|
38
|
+
"jazz",
|
|
39
|
+
"blues",
|
|
40
|
+
];
|
|
9
41
|
const oneOneFiveFive = {
|
|
42
|
+
category: "fundamentals",
|
|
10
43
|
chords: [
|
|
11
|
-
chord("
|
|
12
|
-
chord("
|
|
44
|
+
chord("1", "major", 2),
|
|
45
|
+
chord("5", "major", 2),
|
|
13
46
|
],
|
|
14
47
|
};
|
|
15
48
|
const oneOneFiveFiveDominant7 = {
|
|
49
|
+
category: "fundamentals",
|
|
16
50
|
chords: [
|
|
17
|
-
chord("
|
|
18
|
-
chord("
|
|
19
|
-
chord("
|
|
51
|
+
chord("1", "major", 2),
|
|
52
|
+
chord("5", "major", 1),
|
|
53
|
+
chord("5", "dominant7", 1),
|
|
20
54
|
],
|
|
21
55
|
};
|
|
22
56
|
const oneOneFourFour = {
|
|
57
|
+
category: "fundamentals",
|
|
23
58
|
chords: [
|
|
24
|
-
chord("
|
|
25
|
-
chord("
|
|
59
|
+
chord("1", "major", 2),
|
|
60
|
+
chord("4", "major", 2),
|
|
26
61
|
],
|
|
27
62
|
};
|
|
28
63
|
const oneOneFourFive = {
|
|
64
|
+
category: "fundamentals",
|
|
29
65
|
chords: [
|
|
30
|
-
chord("
|
|
31
|
-
chord("
|
|
32
|
-
chord("
|
|
66
|
+
chord("1", "major", 2),
|
|
67
|
+
chord("4", "major", 1),
|
|
68
|
+
chord("5", "major", 1),
|
|
33
69
|
],
|
|
34
70
|
};
|
|
35
71
|
const oneFourOneFive = {
|
|
72
|
+
category: "fundamentals",
|
|
36
73
|
chords: [
|
|
37
|
-
chord("
|
|
38
|
-
chord("
|
|
39
|
-
chord("
|
|
40
|
-
chord("
|
|
74
|
+
chord("1", "major", 1),
|
|
75
|
+
chord("4", "major", 1),
|
|
76
|
+
chord("1", "major", 1),
|
|
77
|
+
chord("5", "major", 1),
|
|
41
78
|
],
|
|
42
79
|
};
|
|
43
80
|
const oneSixFourFive = {
|
|
81
|
+
category: "popular",
|
|
44
82
|
chords: [
|
|
45
|
-
chord("
|
|
46
|
-
chord("
|
|
47
|
-
chord("
|
|
48
|
-
chord("
|
|
83
|
+
chord("1", "major", 1),
|
|
84
|
+
chord("6", "minor", 1),
|
|
85
|
+
chord("4", "major", 1),
|
|
86
|
+
chord("5", "major", 1),
|
|
49
87
|
],
|
|
50
88
|
};
|
|
51
89
|
const oneFiveSixFour = {
|
|
90
|
+
category: "popular",
|
|
52
91
|
chords: [
|
|
53
|
-
chord("
|
|
54
|
-
chord("
|
|
55
|
-
chord("
|
|
56
|
-
chord("
|
|
92
|
+
chord("1", "major", 1),
|
|
93
|
+
chord("5", "major", 1),
|
|
94
|
+
chord("6", "minor", 1),
|
|
95
|
+
chord("4", "major", 1),
|
|
57
96
|
],
|
|
58
97
|
};
|
|
59
98
|
const oneSixTwoFive = {
|
|
99
|
+
category: "jazz",
|
|
60
100
|
chords: [
|
|
61
|
-
chord("
|
|
62
|
-
chord("
|
|
63
|
-
chord("
|
|
64
|
-
chord("
|
|
101
|
+
chord("1", "major", 1),
|
|
102
|
+
chord("6", "minor", 1),
|
|
103
|
+
chord("2", "minor", 1),
|
|
104
|
+
chord("5", "major", 1),
|
|
65
105
|
],
|
|
66
106
|
};
|
|
67
107
|
const sixTwoFiveOne = {
|
|
108
|
+
category: "jazz",
|
|
68
109
|
chords: [
|
|
69
|
-
chord("
|
|
70
|
-
chord("
|
|
71
|
-
chord("
|
|
72
|
-
chord("
|
|
110
|
+
chord("6", "minor", 1),
|
|
111
|
+
chord("2", "minor", 1),
|
|
112
|
+
chord("5", "major", 1),
|
|
113
|
+
chord("1", "major", 1),
|
|
73
114
|
],
|
|
74
115
|
};
|
|
75
116
|
const majorTwoFiveOne = {
|
|
117
|
+
category: "jazz",
|
|
76
118
|
chords: [
|
|
77
|
-
chord("
|
|
78
|
-
chord("
|
|
79
|
-
chord("
|
|
119
|
+
chord("2", "minor7", 1),
|
|
120
|
+
chord("5", "dominant7", 1),
|
|
121
|
+
chord("1", "major7", 2),
|
|
80
122
|
],
|
|
81
123
|
};
|
|
82
124
|
const minorTwoFiveOne = {
|
|
125
|
+
category: "jazz",
|
|
126
|
+
chords: [
|
|
127
|
+
chord("2", "halfDiminished7", 1),
|
|
128
|
+
chord("5", "dominant7", 1),
|
|
129
|
+
chord("1", "minor", 2),
|
|
130
|
+
],
|
|
131
|
+
};
|
|
132
|
+
const autumnLeavesA = {
|
|
133
|
+
commonName: "Autumn Leaves A Section",
|
|
134
|
+
category: "jazz",
|
|
83
135
|
chords: [
|
|
84
|
-
chord("
|
|
85
|
-
chord("
|
|
86
|
-
chord("
|
|
136
|
+
chord("2", "minor7", 1),
|
|
137
|
+
chord("5", "dominant7", 1),
|
|
138
|
+
chord("1", "major7", 1),
|
|
139
|
+
chord("4", "major7", 1),
|
|
140
|
+
chord("7", "halfDiminished7", 1, { romanSymbol: "iiø7/vi" }),
|
|
141
|
+
chord("3", "dominant7", 1, { romanSymbol: "V7/vi" }),
|
|
142
|
+
chord("6", "minor", 2),
|
|
143
|
+
],
|
|
144
|
+
};
|
|
145
|
+
const autumnLeavesB = {
|
|
146
|
+
commonName: "Autumn Leaves B Section",
|
|
147
|
+
category: "jazz",
|
|
148
|
+
chords: [
|
|
149
|
+
chord("7", "halfDiminished7", 1, { romanSymbol: "iiø7/vi" }),
|
|
150
|
+
chord("3", "dominant7", 1, { romanSymbol: "V7/vi" }),
|
|
151
|
+
chord("6", "minor", 2),
|
|
152
|
+
chord("2", "minor7", 1),
|
|
153
|
+
chord("5", "dominant7", 1),
|
|
154
|
+
chord("1", "major7", 1),
|
|
155
|
+
chord("4", "major7", 1),
|
|
87
156
|
],
|
|
88
157
|
};
|
|
89
158
|
const oneFourOneFiveSplitReturn = {
|
|
159
|
+
category: "fundamentals",
|
|
90
160
|
chords: [
|
|
91
|
-
chord("
|
|
92
|
-
chord("
|
|
93
|
-
chord("
|
|
94
|
-
chord("
|
|
95
|
-
chord("
|
|
96
|
-
chord("
|
|
97
|
-
chord("
|
|
98
|
-
chord("
|
|
99
|
-
chord("
|
|
161
|
+
chord("1", "major", 1),
|
|
162
|
+
chord("4", "major", 1),
|
|
163
|
+
chord("1", "major", 1),
|
|
164
|
+
chord("5", "major", 1),
|
|
165
|
+
chord("1", "major", 1),
|
|
166
|
+
chord("4", "major", 1),
|
|
167
|
+
chord("1", "major", 0.5),
|
|
168
|
+
chord("5", "major", 0.5),
|
|
169
|
+
chord("1", "major", 1),
|
|
100
170
|
],
|
|
101
171
|
};
|
|
102
172
|
const twelveBarBlues = {
|
|
103
173
|
commonName: "12 Bar Blues",
|
|
174
|
+
category: "blues",
|
|
104
175
|
chords: [
|
|
105
|
-
chord("
|
|
106
|
-
chord("
|
|
107
|
-
chord("
|
|
108
|
-
chord("
|
|
109
|
-
chord("
|
|
110
|
-
chord("
|
|
111
|
-
chord("
|
|
176
|
+
chord("1", "dominant7", 4),
|
|
177
|
+
chord("4", "dominant7", 2),
|
|
178
|
+
chord("1", "dominant7", 2),
|
|
179
|
+
chord("5", "dominant7", 1),
|
|
180
|
+
chord("4", "dominant7", 1),
|
|
181
|
+
chord("1", "dominant7", 1),
|
|
182
|
+
chord("5", "dominant7", 1),
|
|
112
183
|
],
|
|
113
184
|
};
|
|
114
185
|
const twelveBarBluesQuickChange = {
|
|
115
186
|
commonName: "12 Bar Blues Quick Change",
|
|
187
|
+
category: "blues",
|
|
188
|
+
chords: [
|
|
189
|
+
chord("1", "dominant7", 1),
|
|
190
|
+
chord("4", "dominant7", 1),
|
|
191
|
+
chord("1", "dominant7", 2),
|
|
192
|
+
chord("4", "dominant7", 2),
|
|
193
|
+
chord("1", "dominant7", 2),
|
|
194
|
+
chord("5", "dominant7", 1),
|
|
195
|
+
chord("4", "dominant7", 1),
|
|
196
|
+
chord("1", "dominant7", 1),
|
|
197
|
+
chord("5", "dominant7", 1),
|
|
198
|
+
],
|
|
199
|
+
};
|
|
200
|
+
const rhythmChangesAChords = [
|
|
201
|
+
chord("1", "major", 0.5),
|
|
202
|
+
chord("6", "dominant7", 0.5),
|
|
203
|
+
chord("2", "minor7", 0.5),
|
|
204
|
+
chord("5", "dominant7", 0.5),
|
|
205
|
+
chord("3", "minor7", 0.5),
|
|
206
|
+
chord("6", "dominant7", 0.5),
|
|
207
|
+
chord("2", "minor7", 0.5),
|
|
208
|
+
chord("5", "dominant7", 0.5),
|
|
209
|
+
chord("1", "major", 0.5),
|
|
210
|
+
chord("1", "dominant7", 0.5),
|
|
211
|
+
chord("4", "major", 0.5),
|
|
212
|
+
chord("♯4", "diminished7", 0.5),
|
|
213
|
+
chord("1", "major", 0.5),
|
|
214
|
+
chord("6", "dominant7", 0.5),
|
|
215
|
+
chord("2", "minor7", 0.5),
|
|
216
|
+
chord("5", "dominant7", 0.5),
|
|
217
|
+
];
|
|
218
|
+
const rhythmChangesBridgeChords = [
|
|
219
|
+
chord("3", "dominant7", 2),
|
|
220
|
+
chord("6", "dominant7", 2),
|
|
221
|
+
chord("2", "dominant7", 2),
|
|
222
|
+
chord("5", "dominant7", 2),
|
|
223
|
+
];
|
|
224
|
+
const rhythmChanges = {
|
|
225
|
+
commonName: "Rhythm Changes",
|
|
226
|
+
category: "jazz",
|
|
116
227
|
chords: [
|
|
117
|
-
|
|
118
|
-
|
|
119
|
-
|
|
120
|
-
|
|
121
|
-
chord("I7", "1", "7", 2),
|
|
122
|
-
chord("V7", "5", "7", 1),
|
|
123
|
-
chord("IV7", "4", "7", 1),
|
|
124
|
-
chord("I7", "1", "7", 1),
|
|
125
|
-
chord("V7", "5", "7", 1),
|
|
228
|
+
...rhythmChangesAChords,
|
|
229
|
+
...rhythmChangesAChords,
|
|
230
|
+
...rhythmChangesBridgeChords,
|
|
231
|
+
...rhythmChangesAChords,
|
|
126
232
|
],
|
|
127
233
|
};
|
|
128
234
|
const _chordProgressions = {
|
|
@@ -138,8 +244,11 @@ const _chordProgressions = {
|
|
|
138
244
|
majorTwoFiveOne,
|
|
139
245
|
minorTwoFiveOne,
|
|
140
246
|
oneFourOneFiveSplitReturn,
|
|
247
|
+
autumnLeavesA,
|
|
248
|
+
autumnLeavesB,
|
|
141
249
|
twelveBarBlues,
|
|
142
250
|
twelveBarBluesQuickChange,
|
|
251
|
+
rhythmChanges,
|
|
143
252
|
};
|
|
144
253
|
/** Built-in chord progression templates keyed by progression id. */
|
|
145
254
|
export const chordProgressions = _chordProgressions;
|
|
@@ -160,3 +269,9 @@ export const chordProgressionBarGroups = Array.from(chordProgressionsByTotalBars
|
|
|
160
269
|
totalBars,
|
|
161
270
|
progressionKeys,
|
|
162
271
|
})).sort((a, b) => a.totalBars - b.totalBars);
|
|
272
|
+
/** Built-in chord progression keys grouped by musical category. */
|
|
273
|
+
export const chordProgressionCategoryGroups = chordProgressionCategoryKeys.map((category) => ({
|
|
274
|
+
category,
|
|
275
|
+
...chordProgressionCategories[category],
|
|
276
|
+
progressionKeys: Object.entries(chordProgressions).flatMap(([key, progression]) => progression.category === category ? [key] : []),
|
|
277
|
+
}));
|
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
import type { NoteCollectionKey } from "../note-collections/mod.js";
|
|
1
|
+
import type { ChordCollectionKey, NoteCollectionKey } from "../note-collections/mod.js";
|
|
2
2
|
declare const _triadChordQualities: readonly ["M", "m", "°", "+"];
|
|
3
3
|
declare const _seventhChordQualities: readonly ["M7", "m7", "7", "ø7", "m7♭5", "°7", "m(M7)", "+M7", "M7♯5"];
|
|
4
4
|
declare const _upperCaseRomanNumerals: readonly ["I", "II", "III", "IV", "V", "VI", "VII"];
|
|
@@ -26,16 +26,33 @@ export interface ChordQualityRomanRendering {
|
|
|
26
26
|
readonly numeralCase: RomanNumeralCase;
|
|
27
27
|
readonly suffix: string;
|
|
28
28
|
}
|
|
29
|
+
/** Rendering metadata for converting a chord collection into chord/roman symbols. */
|
|
30
|
+
export interface ChordCollectionSymbolRendering {
|
|
31
|
+
/** The suffix used after a root note in a chord symbol, e.g. "m7" in "Dm7". */
|
|
32
|
+
readonly chordSuffix: string;
|
|
33
|
+
/** The suffix used after a roman numeral, e.g. "ø7" in "iiø7". */
|
|
34
|
+
readonly romanSuffix: string;
|
|
35
|
+
/** The preferred roman numeral case for this chord collection. */
|
|
36
|
+
readonly numeralCase: RomanNumeralCase;
|
|
37
|
+
}
|
|
38
|
+
export type ChordCollectionChordSuffix = string;
|
|
39
|
+
export type ChordCollectionRomanSuffix = string;
|
|
29
40
|
/** The complete set of supported triad chord qualities. */
|
|
30
41
|
export declare const triadChordQualities: readonly Triad[];
|
|
31
42
|
/** The complete set of supported seventh chord qualities. */
|
|
32
43
|
export declare const seventhChordQualities: readonly SeventhChord[];
|
|
33
44
|
/** The complete set of supported chord suffix qualities. */
|
|
34
45
|
export declare const chordQualities: readonly ChordQuality[];
|
|
46
|
+
/** Maps each supported chord quality to its matching chord collection key. */
|
|
47
|
+
export type ChordQualityChordCollectionKeyMap = Record<ChordQuality, ChordCollectionKey>;
|
|
48
|
+
/** Chord collection keys for every supported chord quality. */
|
|
49
|
+
export declare const chordQualityChordCollectionKeys: ChordQualityChordCollectionKeyMap;
|
|
35
50
|
/** Maps each supported chord quality to its matching note-collection key. */
|
|
36
51
|
export type ChordQualityNoteCollectionKeyMap = Record<ChordQuality, NoteCollectionKey>;
|
|
37
52
|
/** Note-collection keys for every supported chord quality. */
|
|
38
53
|
export declare const chordQualityNoteCollectionKeys: ChordQualityNoteCollectionKeyMap;
|
|
54
|
+
/** Symbol rendering metadata for every built-in chord collection. */
|
|
55
|
+
export declare const chordCollectionSymbolRenderings: Record<ChordCollectionKey, ChordCollectionSymbolRendering>;
|
|
39
56
|
/** Roman numeral rendering metadata for each supported chord quality. */
|
|
40
57
|
export declare const chordQualityRomanRenderings: ReadonlyMap<ChordQuality, ChordQualityRomanRendering>;
|
|
41
58
|
/** An ordered array containing the fundamental triad qualities of the diatonic major scale. */
|
|
@@ -56,5 +73,13 @@ export declare const upperCaseRomanNumerals: readonly UpperCaseRomanNumeral[];
|
|
|
56
73
|
export declare const lowerCaseRomanNumerals: readonly LowerCaseRomanNumeral[];
|
|
57
74
|
/** Returns the note-collection key that describes the notes in a chord quality. */
|
|
58
75
|
export declare function getChordQualityNoteCollectionKey(quality: ChordQuality): NoteCollectionKey;
|
|
76
|
+
/** Returns the chord-collection key that describes the notes in a chord quality. */
|
|
77
|
+
export declare function getChordQualityChordCollectionKey(quality: ChordQuality): ChordCollectionKey;
|
|
78
|
+
/** Returns symbol rendering metadata for a chord collection. */
|
|
79
|
+
export declare function getChordCollectionSymbolRendering(chordCollectionKey: ChordCollectionKey): ChordCollectionSymbolRendering;
|
|
80
|
+
/** Returns the chord-symbol suffix for a chord collection. */
|
|
81
|
+
export declare function getChordCollectionChordSuffix(chordCollectionKey: ChordCollectionKey): ChordCollectionChordSuffix;
|
|
82
|
+
/** Returns the roman-symbol suffix for a chord collection. */
|
|
83
|
+
export declare function getChordCollectionRomanSuffix(chordCollectionKey: ChordCollectionKey): ChordCollectionRomanSuffix;
|
|
59
84
|
export {};
|
|
60
85
|
//# sourceMappingURL=mod.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/src/data/chords/mod.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,
|
|
1
|
+
{"version":3,"file":"mod.d.ts","sourceRoot":"","sources":["../../../../src/src/data/chords/mod.ts"],"names":[],"mappings":"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"}
|