@musodojo/music-theory-data 20.3.0 → 20.6.1

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (276) hide show
  1. package/esm/_dnt.test_shims.d.ts.map +1 -0
  2. package/esm/deps/jsr.io/@std/assert/1.0.18/almost_equals.d.ts.map +1 -0
  3. package/esm/deps/jsr.io/@std/assert/1.0.18/array_includes.d.ts.map +1 -0
  4. package/esm/deps/jsr.io/@std/assert/1.0.18/assert.d.ts.map +1 -0
  5. package/esm/deps/jsr.io/@std/assert/1.0.18/assertion_error.d.ts.map +1 -0
  6. package/esm/deps/jsr.io/@std/assert/1.0.18/equal.d.ts.map +1 -0
  7. package/esm/deps/jsr.io/@std/assert/1.0.18/equals.d.ts.map +1 -0
  8. package/esm/deps/jsr.io/@std/assert/1.0.18/exists.d.ts.map +1 -0
  9. package/esm/deps/jsr.io/@std/assert/1.0.18/fail.d.ts.map +1 -0
  10. package/esm/deps/jsr.io/@std/assert/1.0.18/false.d.ts.map +1 -0
  11. package/esm/deps/jsr.io/@std/assert/1.0.18/greater.d.ts.map +1 -0
  12. package/esm/deps/jsr.io/@std/assert/1.0.18/greater_or_equal.d.ts.map +1 -0
  13. package/esm/deps/jsr.io/@std/assert/1.0.18/instance_of.d.ts.map +1 -0
  14. package/esm/deps/jsr.io/@std/assert/1.0.18/is_error.d.ts.map +1 -0
  15. package/esm/deps/jsr.io/@std/assert/1.0.18/less.d.ts.map +1 -0
  16. package/esm/deps/jsr.io/@std/assert/1.0.18/less_or_equal.d.ts.map +1 -0
  17. package/esm/deps/jsr.io/@std/assert/1.0.18/match.d.ts.map +1 -0
  18. package/esm/deps/jsr.io/@std/assert/1.0.18/mod.d.ts.map +1 -0
  19. package/esm/deps/jsr.io/@std/assert/1.0.18/not_equals.d.ts.map +1 -0
  20. package/esm/deps/jsr.io/@std/assert/1.0.18/not_instance_of.d.ts.map +1 -0
  21. package/esm/deps/jsr.io/@std/assert/1.0.18/not_match.d.ts.map +1 -0
  22. package/esm/deps/jsr.io/@std/assert/1.0.18/not_strict_equals.d.ts.map +1 -0
  23. package/esm/deps/jsr.io/@std/assert/1.0.18/object_match.d.ts.map +1 -0
  24. package/esm/deps/jsr.io/@std/assert/1.0.18/rejects.d.ts.map +1 -0
  25. package/esm/deps/jsr.io/@std/assert/1.0.18/strict_equals.d.ts.map +1 -0
  26. package/esm/deps/jsr.io/@std/assert/1.0.18/string_includes.d.ts.map +1 -0
  27. package/esm/deps/jsr.io/@std/assert/1.0.18/throws.d.ts.map +1 -0
  28. package/esm/deps/jsr.io/@std/assert/1.0.18/unimplemented.d.ts.map +1 -0
  29. package/esm/deps/jsr.io/@std/assert/1.0.18/unreachable.d.ts.map +1 -0
  30. package/esm/deps/jsr.io/@std/internal/1.0.12/build_message.d.ts.map +1 -0
  31. package/esm/deps/jsr.io/@std/internal/1.0.12/diff.d.ts.map +1 -0
  32. package/esm/deps/jsr.io/@std/internal/1.0.12/diff_str.d.ts.map +1 -0
  33. package/esm/deps/jsr.io/@std/internal/1.0.12/format.d.ts.map +1 -0
  34. package/esm/deps/jsr.io/@std/internal/1.0.12/styles.d.ts.map +1 -0
  35. package/esm/deps/jsr.io/@std/internal/1.0.12/types.d.ts.map +1 -0
  36. package/esm/package.json +3 -0
  37. package/esm/src/data/chords/mod.d.ts +10 -0
  38. package/esm/src/data/chords/mod.d.ts.map +1 -0
  39. package/esm/src/data/chords/mod.js +72 -0
  40. package/esm/src/data/colors/mod.d.ts +51 -0
  41. package/esm/src/data/colors/mod.d.ts.map +1 -0
  42. package/esm/src/data/colors/mod.js +79 -0
  43. package/esm/src/data/labels/mod.d.ts +3 -0
  44. package/esm/src/data/labels/mod.d.ts.map +1 -0
  45. package/esm/src/data/labels/mod.js +2 -0
  46. package/esm/src/data/labels/note-label-collections.d.ts +62 -0
  47. package/esm/src/data/labels/note-label-collections.d.ts.map +1 -0
  48. package/esm/src/data/labels/note-label-collections.js +91 -0
  49. package/esm/src/data/labels/note-labels.d.ts +314 -0
  50. package/esm/src/data/labels/note-labels.d.ts.map +1 -0
  51. package/esm/src/data/labels/note-labels.js +502 -0
  52. package/esm/src/data/mod.d.ts +5 -0
  53. package/esm/src/data/mod.d.ts.map +1 -0
  54. package/esm/src/data/mod.js +4 -0
  55. package/esm/src/data/note-collections/augmented-variants.d.ts +8 -0
  56. package/esm/src/data/note-collections/augmented-variants.d.ts.map +1 -0
  57. package/esm/src/data/note-collections/augmented-variants.js +27 -0
  58. package/esm/src/data/note-collections/diatonic-modes.d.ts +14 -0
  59. package/esm/src/data/note-collections/diatonic-modes.d.ts.map +1 -0
  60. package/esm/src/data/note-collections/diatonic-modes.js +268 -0
  61. package/esm/src/data/note-collections/diminished-variants.d.ts +11 -0
  62. package/esm/src/data/note-collections/diminished-variants.d.ts.map +1 -0
  63. package/esm/src/data/note-collections/diminished-variants.js +72 -0
  64. package/esm/src/data/note-collections/dominant-variants.d.ts +11 -0
  65. package/esm/src/data/note-collections/dominant-variants.d.ts.map +1 -0
  66. package/esm/src/data/note-collections/dominant-variants.js +116 -0
  67. package/esm/src/data/note-collections/harmonic-minor-modes.d.ts +13 -0
  68. package/esm/src/data/note-collections/harmonic-minor-modes.d.ts.map +1 -0
  69. package/esm/src/data/note-collections/harmonic-minor-modes.js +246 -0
  70. package/esm/src/data/note-collections/major-variants.d.ts +12 -0
  71. package/esm/src/data/note-collections/major-variants.d.ts.map +1 -0
  72. package/esm/src/data/note-collections/major-variants.js +123 -0
  73. package/esm/src/data/note-collections/melodic-minor-modes.d.ts +13 -0
  74. package/esm/src/data/note-collections/melodic-minor-modes.d.ts.map +1 -0
  75. package/esm/src/data/note-collections/melodic-minor-modes.js +206 -0
  76. package/esm/src/data/note-collections/minor-variants.d.ts +13 -0
  77. package/esm/src/data/note-collections/minor-variants.d.ts.map +1 -0
  78. package/esm/src/data/note-collections/minor-variants.js +118 -0
  79. package/esm/src/data/note-collections/mod.d.ts +86 -0
  80. package/esm/src/data/note-collections/mod.d.ts.map +1 -0
  81. package/esm/src/data/note-collections/mod.js +86 -0
  82. package/esm/src/data/note-collections/other-collections.d.ts +10 -0
  83. package/esm/src/data/note-collections/other-collections.d.ts.map +1 -0
  84. package/esm/src/data/note-collections/other-collections.js +91 -0
  85. package/esm/src/data/note-collections/pentatonic-variants.d.ts +11 -0
  86. package/esm/src/data/note-collections/pentatonic-variants.d.ts.map +1 -0
  87. package/esm/src/data/note-collections/pentatonic-variants.js +86 -0
  88. package/esm/src/mod.d.ts +74 -0
  89. package/esm/src/mod.d.ts.map +1 -0
  90. package/{src/mod.ts → esm/src/mod.js} +2 -3
  91. package/esm/src/utils/chords.d.ts +14 -0
  92. package/esm/src/utils/chords.d.ts.map +1 -0
  93. package/esm/src/utils/chords.js +93 -0
  94. package/esm/src/utils/colors.d.ts +14 -0
  95. package/esm/src/utils/colors.d.ts.map +1 -0
  96. package/esm/src/utils/colors.js +47 -0
  97. package/esm/src/utils/intervals.d.ts +26 -0
  98. package/esm/src/utils/intervals.d.ts.map +1 -0
  99. package/esm/src/utils/intervals.js +61 -0
  100. package/esm/src/utils/midi-note-sequences.d.ts +23 -0
  101. package/esm/src/utils/midi-note-sequences.d.ts.map +1 -0
  102. package/esm/src/utils/midi-note-sequences.js +109 -0
  103. package/esm/src/utils/midi.d.ts +7 -0
  104. package/esm/src/utils/midi.d.ts.map +1 -0
  105. package/esm/src/utils/midi.js +26 -0
  106. package/esm/src/utils/mod.d.ts +9 -0
  107. package/esm/src/utils/mod.d.ts.map +1 -0
  108. package/esm/src/utils/mod.js +8 -0
  109. package/esm/src/utils/note-collections.d.ts +24 -0
  110. package/esm/src/utils/note-collections.d.ts.map +1 -0
  111. package/esm/src/utils/note-collections.js +132 -0
  112. package/esm/src/utils/note-names.d.ts +23 -0
  113. package/esm/src/utils/note-names.d.ts.map +1 -0
  114. package/esm/src/utils/note-names.js +127 -0
  115. package/esm/src/utils/rotate-array.d.ts +19 -0
  116. package/esm/src/utils/rotate-array.d.ts.map +1 -0
  117. package/{src/utils/rotate-array.ts → esm/src/utils/rotate-array.js} +10 -12
  118. package/esm/tests/get-chord-details.test.d.ts.map +1 -0
  119. package/esm/tests/get-note-names.test.d.ts.map +1 -0
  120. package/esm/tests/midi.test.d.ts.map +1 -0
  121. package/esm/tests/note-name-strings.test.d.ts.map +1 -0
  122. package/esm/tests/search-note-collections.test.d.ts.map +1 -0
  123. package/esm/tests/transform-intervals.test.d.ts.map +1 -0
  124. package/package.json +21 -6
  125. package/script/_dnt.test_shims.d.ts.map +1 -0
  126. package/script/deps/jsr.io/@std/assert/1.0.18/almost_equals.d.ts.map +1 -0
  127. package/script/deps/jsr.io/@std/assert/1.0.18/array_includes.d.ts.map +1 -0
  128. package/script/deps/jsr.io/@std/assert/1.0.18/assert.d.ts.map +1 -0
  129. package/script/deps/jsr.io/@std/assert/1.0.18/assertion_error.d.ts.map +1 -0
  130. package/script/deps/jsr.io/@std/assert/1.0.18/equal.d.ts.map +1 -0
  131. package/script/deps/jsr.io/@std/assert/1.0.18/equals.d.ts.map +1 -0
  132. package/script/deps/jsr.io/@std/assert/1.0.18/exists.d.ts.map +1 -0
  133. package/script/deps/jsr.io/@std/assert/1.0.18/fail.d.ts.map +1 -0
  134. package/script/deps/jsr.io/@std/assert/1.0.18/false.d.ts.map +1 -0
  135. package/script/deps/jsr.io/@std/assert/1.0.18/greater.d.ts.map +1 -0
  136. package/script/deps/jsr.io/@std/assert/1.0.18/greater_or_equal.d.ts.map +1 -0
  137. package/script/deps/jsr.io/@std/assert/1.0.18/instance_of.d.ts.map +1 -0
  138. package/script/deps/jsr.io/@std/assert/1.0.18/is_error.d.ts.map +1 -0
  139. package/script/deps/jsr.io/@std/assert/1.0.18/less.d.ts.map +1 -0
  140. package/script/deps/jsr.io/@std/assert/1.0.18/less_or_equal.d.ts.map +1 -0
  141. package/script/deps/jsr.io/@std/assert/1.0.18/match.d.ts.map +1 -0
  142. package/script/deps/jsr.io/@std/assert/1.0.18/mod.d.ts.map +1 -0
  143. package/script/deps/jsr.io/@std/assert/1.0.18/not_equals.d.ts.map +1 -0
  144. package/script/deps/jsr.io/@std/assert/1.0.18/not_instance_of.d.ts.map +1 -0
  145. package/script/deps/jsr.io/@std/assert/1.0.18/not_match.d.ts.map +1 -0
  146. package/script/deps/jsr.io/@std/assert/1.0.18/not_strict_equals.d.ts.map +1 -0
  147. package/script/deps/jsr.io/@std/assert/1.0.18/object_match.d.ts.map +1 -0
  148. package/script/deps/jsr.io/@std/assert/1.0.18/rejects.d.ts.map +1 -0
  149. package/script/deps/jsr.io/@std/assert/1.0.18/strict_equals.d.ts.map +1 -0
  150. package/script/deps/jsr.io/@std/assert/1.0.18/string_includes.d.ts.map +1 -0
  151. package/script/deps/jsr.io/@std/assert/1.0.18/throws.d.ts.map +1 -0
  152. package/script/deps/jsr.io/@std/assert/1.0.18/unimplemented.d.ts.map +1 -0
  153. package/script/deps/jsr.io/@std/assert/1.0.18/unreachable.d.ts.map +1 -0
  154. package/script/deps/jsr.io/@std/internal/1.0.12/build_message.d.ts.map +1 -0
  155. package/script/deps/jsr.io/@std/internal/1.0.12/diff.d.ts.map +1 -0
  156. package/script/deps/jsr.io/@std/internal/1.0.12/diff_str.d.ts.map +1 -0
  157. package/script/deps/jsr.io/@std/internal/1.0.12/format.d.ts.map +1 -0
  158. package/script/deps/jsr.io/@std/internal/1.0.12/styles.d.ts.map +1 -0
  159. package/script/deps/jsr.io/@std/internal/1.0.12/types.d.ts.map +1 -0
  160. package/script/package.json +3 -0
  161. package/script/src/data/chords/mod.d.ts +10 -0
  162. package/script/src/data/chords/mod.d.ts.map +1 -0
  163. package/script/src/data/chords/mod.js +75 -0
  164. package/script/src/data/colors/mod.d.ts +51 -0
  165. package/script/src/data/colors/mod.d.ts.map +1 -0
  166. package/script/src/data/colors/mod.js +82 -0
  167. package/script/src/data/labels/mod.d.ts +3 -0
  168. package/script/src/data/labels/mod.d.ts.map +1 -0
  169. package/script/src/data/labels/mod.js +18 -0
  170. package/script/src/data/labels/note-label-collections.d.ts +62 -0
  171. package/script/src/data/labels/note-label-collections.d.ts.map +1 -0
  172. package/script/src/data/labels/note-label-collections.js +94 -0
  173. package/script/src/data/labels/note-labels.d.ts +314 -0
  174. package/script/src/data/labels/note-labels.d.ts.map +1 -0
  175. package/script/src/data/labels/note-labels.js +505 -0
  176. package/script/src/data/mod.d.ts +5 -0
  177. package/script/src/data/mod.d.ts.map +1 -0
  178. package/script/src/data/mod.js +20 -0
  179. package/script/src/data/note-collections/augmented-variants.d.ts +8 -0
  180. package/script/src/data/note-collections/augmented-variants.d.ts.map +1 -0
  181. package/script/src/data/note-collections/augmented-variants.js +30 -0
  182. package/script/src/data/note-collections/diatonic-modes.d.ts +14 -0
  183. package/script/src/data/note-collections/diatonic-modes.d.ts.map +1 -0
  184. package/script/src/data/note-collections/diatonic-modes.js +271 -0
  185. package/script/src/data/note-collections/diminished-variants.d.ts +11 -0
  186. package/script/src/data/note-collections/diminished-variants.d.ts.map +1 -0
  187. package/script/src/data/note-collections/diminished-variants.js +75 -0
  188. package/script/src/data/note-collections/dominant-variants.d.ts +11 -0
  189. package/script/src/data/note-collections/dominant-variants.d.ts.map +1 -0
  190. package/script/src/data/note-collections/dominant-variants.js +119 -0
  191. package/script/src/data/note-collections/harmonic-minor-modes.d.ts +13 -0
  192. package/script/src/data/note-collections/harmonic-minor-modes.d.ts.map +1 -0
  193. package/script/src/data/note-collections/harmonic-minor-modes.js +249 -0
  194. package/script/src/data/note-collections/major-variants.d.ts +12 -0
  195. package/script/src/data/note-collections/major-variants.d.ts.map +1 -0
  196. package/script/src/data/note-collections/major-variants.js +126 -0
  197. package/script/src/data/note-collections/melodic-minor-modes.d.ts +13 -0
  198. package/script/src/data/note-collections/melodic-minor-modes.d.ts.map +1 -0
  199. package/script/src/data/note-collections/melodic-minor-modes.js +209 -0
  200. package/script/src/data/note-collections/minor-variants.d.ts +13 -0
  201. package/script/src/data/note-collections/minor-variants.d.ts.map +1 -0
  202. package/script/src/data/note-collections/minor-variants.js +121 -0
  203. package/script/src/data/note-collections/mod.d.ts +86 -0
  204. package/script/src/data/note-collections/mod.d.ts.map +1 -0
  205. package/script/src/data/note-collections/mod.js +99 -0
  206. package/script/src/data/note-collections/other-collections.d.ts +10 -0
  207. package/script/src/data/note-collections/other-collections.d.ts.map +1 -0
  208. package/script/src/data/note-collections/other-collections.js +94 -0
  209. package/script/src/data/note-collections/pentatonic-variants.d.ts +11 -0
  210. package/script/src/data/note-collections/pentatonic-variants.d.ts.map +1 -0
  211. package/script/src/data/note-collections/pentatonic-variants.js +89 -0
  212. package/script/src/mod.d.ts +74 -0
  213. package/script/src/mod.d.ts.map +1 -0
  214. package/script/src/mod.js +88 -0
  215. package/script/src/utils/chords.d.ts +14 -0
  216. package/script/src/utils/chords.d.ts.map +1 -0
  217. package/script/src/utils/chords.js +102 -0
  218. package/script/src/utils/colors.d.ts +14 -0
  219. package/script/src/utils/colors.d.ts.map +1 -0
  220. package/script/src/utils/colors.js +51 -0
  221. package/script/src/utils/intervals.d.ts +26 -0
  222. package/script/src/utils/intervals.d.ts.map +1 -0
  223. package/script/src/utils/intervals.js +69 -0
  224. package/script/src/utils/midi-note-sequences.d.ts +23 -0
  225. package/script/src/utils/midi-note-sequences.d.ts.map +1 -0
  226. package/script/src/utils/midi-note-sequences.js +112 -0
  227. package/script/src/utils/midi.d.ts +7 -0
  228. package/script/src/utils/midi.d.ts.map +1 -0
  229. package/script/src/utils/midi.js +32 -0
  230. package/script/src/utils/mod.d.ts +9 -0
  231. package/script/src/utils/mod.d.ts.map +1 -0
  232. package/script/src/utils/mod.js +24 -0
  233. package/script/src/utils/note-collections.d.ts +24 -0
  234. package/script/src/utils/note-collections.d.ts.map +1 -0
  235. package/script/src/utils/note-collections.js +137 -0
  236. package/script/src/utils/note-names.d.ts +23 -0
  237. package/script/src/utils/note-names.d.ts.map +1 -0
  238. package/script/src/utils/note-names.js +134 -0
  239. package/script/src/utils/rotate-array.d.ts +19 -0
  240. package/script/src/utils/rotate-array.d.ts.map +1 -0
  241. package/script/src/utils/rotate-array.js +32 -0
  242. package/script/tests/get-chord-details.test.d.ts.map +1 -0
  243. package/script/tests/get-note-names.test.d.ts.map +1 -0
  244. package/script/tests/midi.test.d.ts.map +1 -0
  245. package/script/tests/note-name-strings.test.d.ts.map +1 -0
  246. package/script/tests/search-note-collections.test.d.ts.map +1 -0
  247. package/script/tests/transform-intervals.test.d.ts.map +1 -0
  248. package/src/data/chords/mod.ts +0 -86
  249. package/src/data/colors/mod.ts +0 -109
  250. package/src/data/labels/mod.ts +0 -2
  251. package/src/data/labels/note-label-collections.ts +0 -124
  252. package/src/data/labels/note-labels.ts +0 -702
  253. package/src/data/mod.ts +0 -4
  254. package/src/data/note-collections/augmented-variants.ts +0 -35
  255. package/src/data/note-collections/diatonic-modes.ts +0 -281
  256. package/src/data/note-collections/diminished-variants.ts +0 -87
  257. package/src/data/note-collections/dominant-variants.ts +0 -131
  258. package/src/data/note-collections/harmonic-minor-modes.ts +0 -261
  259. package/src/data/note-collections/major-variants.ts +0 -135
  260. package/src/data/note-collections/melodic-minor-modes.ts +0 -221
  261. package/src/data/note-collections/minor-variants.ts +0 -131
  262. package/src/data/note-collections/mod.ts +0 -108
  263. package/src/data/note-collections/other-collections.ts +0 -107
  264. package/src/data/note-collections/pentatonic-variants.ts +0 -99
  265. package/src/types/chords.d.ts +0 -48
  266. package/src/types/midi.d.ts +0 -131
  267. package/src/types/mod.d.ts +0 -3
  268. package/src/types/note-collections.d.ts +0 -86
  269. package/src/utils/chords.ts +0 -168
  270. package/src/utils/colors.ts +0 -57
  271. package/src/utils/intervals.ts +0 -111
  272. package/src/utils/midi-note-sequences.ts +0 -171
  273. package/src/utils/midi.ts +0 -51
  274. package/src/utils/mod.ts +0 -8
  275. package/src/utils/note-collections.ts +0 -188
  276. package/src/utils/note-names.ts +0 -182
@@ -0,0 +1,246 @@
1
+ const harmonicMinor = {
2
+ category: "scale",
3
+ rotation: 0,
4
+ parentScale: "harmonicMinor",
5
+ primaryName: "Harmonic Minor",
6
+ names: [
7
+ "Harmonic Minor",
8
+ "Aeolian ♮7",
9
+ "Aeolian Natural Seventh",
10
+ "Aeolian Raised Seventh",
11
+ ],
12
+ intervals: ["1", "2", "♭3", "4", "5", "♭6", "7", "8"],
13
+ integers: [0, 2, 3, 5, 7, 8, 11],
14
+ type: ["harmonic minor mode", "minor", "scale", "mode", "heptatonic"],
15
+ characteristics: [
16
+ "dark",
17
+ "tense",
18
+ "exotic",
19
+ "classical",
20
+ "neo-classical",
21
+ "middle-eastern",
22
+ "first mode of harmonic minor",
23
+ ],
24
+ pattern: [
25
+ "whole",
26
+ "half",
27
+ "whole",
28
+ "whole",
29
+ "half",
30
+ "augmented second",
31
+ "half",
32
+ ],
33
+ patternShort: ["W", "H", "W", "W", "H", "A2", "H"],
34
+ };
35
+ const locrianNatural6 = {
36
+ category: "scale",
37
+ rotation: 1,
38
+ parentScale: "harmonicMinor",
39
+ primaryName: "Locrian ♮6",
40
+ names: ["Locrian ♮6", "Locrian Natural Sixth", "Locrian Raised Sixth"],
41
+ intervals: ["1", "♭2", "♭3", "4", "♭5", "6", "♭7", "8"],
42
+ integers: [0, 1, 3, 5, 6, 9, 10],
43
+ type: ["harmonic minor mode", "diminished", "scale", "mode", "heptatonic"],
44
+ characteristics: [
45
+ "dark",
46
+ "unstable",
47
+ "jazzy",
48
+ "exotic",
49
+ "second mode of harmonic minor",
50
+ ],
51
+ pattern: [
52
+ "half",
53
+ "whole",
54
+ "whole",
55
+ "half",
56
+ "augmented second",
57
+ "half",
58
+ "whole",
59
+ ],
60
+ patternShort: ["H", "W", "W", "H", "A2", "H", "W"],
61
+ };
62
+ const ionianSharp5 = {
63
+ category: "scale",
64
+ rotation: 2,
65
+ parentScale: "harmonicMinor",
66
+ primaryName: "Ionian ♯5",
67
+ names: [
68
+ "Ionian ♯5",
69
+ "Ionian Sharp Fifth",
70
+ "Augmented Major",
71
+ "Ionian Augmented",
72
+ ],
73
+ intervals: ["1", "2", "3", "4", "♯5", "6", "7", "8"],
74
+ integers: [0, 2, 4, 5, 8, 9, 11],
75
+ type: [
76
+ "harmonic minor mode",
77
+ "major",
78
+ "augmented",
79
+ "scale",
80
+ "mode",
81
+ "heptatonic",
82
+ ],
83
+ characteristics: [
84
+ "bright",
85
+ "dreamy",
86
+ "unsettling",
87
+ "magical",
88
+ "third mode of harmonic minor",
89
+ ],
90
+ pattern: [
91
+ "whole",
92
+ "whole",
93
+ "half",
94
+ "augmented second",
95
+ "half",
96
+ "whole",
97
+ "half",
98
+ ],
99
+ patternShort: ["W", "W", "H", "A2", "H", "W", "H"],
100
+ };
101
+ const dorianSharp4 = {
102
+ category: "scale",
103
+ rotation: 3,
104
+ parentScale: "harmonicMinor",
105
+ primaryName: "Dorian ♯4",
106
+ names: [
107
+ "Dorian ♯4",
108
+ "Dorian Sharp Fourth",
109
+ "Dorian ♯11",
110
+ "Dorian Sharp Eleventh",
111
+ "Ukrainian Dorian",
112
+ "Romanian Minor",
113
+ ],
114
+ intervals: ["1", "2", "♭3", "♯4", "5", "6", "♭7", "8"],
115
+ integers: [0, 2, 3, 6, 7, 9, 10],
116
+ type: ["harmonic minor mode", "minor", "scale", "mode", "heptatonic"],
117
+ characteristics: [
118
+ "exotic minor",
119
+ "eastern european folk",
120
+ "gypsy",
121
+ "fourth mode of harmonic minor",
122
+ ],
123
+ pattern: [
124
+ "whole",
125
+ "half",
126
+ "augmented second",
127
+ "half",
128
+ "whole",
129
+ "half",
130
+ "whole",
131
+ ],
132
+ patternShort: ["W", "H", "A2", "H", "W", "H", "W"],
133
+ };
134
+ const phrygianDominant = {
135
+ category: "scale",
136
+ rotation: 4,
137
+ parentScale: "harmonicMinor",
138
+ primaryName: "Phrygian Dominant",
139
+ names: [
140
+ "Phrygian Dominant",
141
+ "Phrygian ♮3",
142
+ "Phrygian Natural Third",
143
+ "Phrygian Raised Third",
144
+ "Spanish Gypsy Scale",
145
+ "Freygish Scale",
146
+ "Phrygian Major",
147
+ "Harmonic Dominant",
148
+ ],
149
+ intervals: ["1", "♭2", "3", "4", "5", "♭6", "♭7", "8"],
150
+ integers: [0, 1, 4, 5, 7, 8, 10],
151
+ type: ["harmonic minor mode", "dominant", "scale", "mode", "heptatonic"],
152
+ characteristics: [
153
+ "fifth mode of harmonic minor",
154
+ "very exotic",
155
+ "spanish",
156
+ "flamenco",
157
+ "klezmer",
158
+ "arabic",
159
+ "middle-eastern",
160
+ "tense",
161
+ ],
162
+ pattern: [
163
+ "half",
164
+ "augmented second",
165
+ "half",
166
+ "whole",
167
+ "half",
168
+ "whole",
169
+ "whole",
170
+ ],
171
+ patternShort: ["H", "A2", "H", "W", "H", "W", "W"],
172
+ };
173
+ const lydianSharp2 = {
174
+ category: "scale",
175
+ rotation: 5,
176
+ parentScale: "harmonicMinor",
177
+ primaryName: "Lydian ♯2",
178
+ names: [
179
+ "Lydian ♯2",
180
+ "Lydian Sharp Second",
181
+ "Lydian ♯9",
182
+ "Lydian Sharp Ninth",
183
+ ],
184
+ intervals: ["1", "♯2", "3", "♯4", "5", "6", "7", "8"],
185
+ integers: [0, 3, 4, 6, 7, 9, 11],
186
+ type: ["harmonic minor mode", "major", "scale", "mode", "heptatonic"],
187
+ characteristics: [
188
+ "very bright",
189
+ "unusual",
190
+ "double augmented",
191
+ "exotic",
192
+ "sixth mode of harmonic minor",
193
+ ],
194
+ pattern: [
195
+ "augmented second",
196
+ "half",
197
+ "whole",
198
+ "half",
199
+ "whole",
200
+ "whole",
201
+ "half",
202
+ ],
203
+ patternShort: ["A2", "H", "W", "H", "W", "W", "H"],
204
+ };
205
+ const superLocrianDoubleFlat7 = {
206
+ category: "scale",
207
+ rotation: 6,
208
+ parentScale: "harmonicMinor",
209
+ primaryName: "Super Locrian 𝄫7",
210
+ names: [
211
+ "Super Locrian 𝄫7",
212
+ "Super Locrian Diminished 7",
213
+ "Altered Diminished",
214
+ "Altered 𝄫7",
215
+ ],
216
+ intervals: ["1", "♭2", "♭3", "♭4", "♭5", "♭6", "𝄫7", "8"],
217
+ integers: [0, 1, 3, 4, 6, 8, 9],
218
+ type: ["harmonic minor mode", "diminished", "scale", "mode", "heptatonic"],
219
+ characteristics: [
220
+ "extremely tense",
221
+ "highly dissonant",
222
+ "altered",
223
+ "theoretical",
224
+ "seventh mode of harmonic minor",
225
+ ],
226
+ pattern: [
227
+ "half",
228
+ "whole",
229
+ "half",
230
+ "whole",
231
+ "whole",
232
+ "half",
233
+ "augmented second",
234
+ ],
235
+ patternShort: ["H", "W", "H", "W", "W", "H", "A2"],
236
+ };
237
+ export const _harmonicMinorModes = {
238
+ harmonicMinor,
239
+ locrianNatural6,
240
+ ionianSharp5,
241
+ dorianSharp4,
242
+ phrygianDominant,
243
+ lydianSharp2,
244
+ superLocrianDoubleFlat7,
245
+ };
246
+ export const harmonicMinorModes = _harmonicMinorModes;
@@ -0,0 +1,12 @@
1
+ import type { ChordCollection } from "../../types/note-collections";
2
+ export declare const _majorVariants: {
3
+ readonly major: ChordCollection;
4
+ readonly major6: ChordCollection;
5
+ readonly major7: ChordCollection;
6
+ readonly major9: ChordCollection;
7
+ readonly majorAdd9: ChordCollection;
8
+ readonly major6Add9: ChordCollection;
9
+ };
10
+ export type MajorVariantKey = keyof typeof _majorVariants;
11
+ export declare const majorVariants: Record<MajorVariantKey, ChordCollection>;
12
+ //# sourceMappingURL=major-variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"major-variants.d.ts","sourceRoot":"","sources":["../../../../src/src/data/note-collections/major-variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AA0HpE,eAAO,MAAM,cAAc;;;;;;;CAOjB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,cAAc,CAAC;AAE1D,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,eAAe,EAAE,eAAe,CACnD,CAAC"}
@@ -0,0 +1,123 @@
1
+ const major = {
2
+ category: "chord",
3
+ primaryName: "M",
4
+ names: ["M", "maj", "Major", "Major Triad", "Δ"],
5
+ intervals: ["1", "3", "5"],
6
+ integers: [0, 4, 7],
7
+ type: ["major", "chord", "arpeggio", "triad"],
8
+ characteristics: [
9
+ "stable",
10
+ "happy",
11
+ "bright",
12
+ "the most basic major chord",
13
+ ],
14
+ pattern: ["major third", "minor third"],
15
+ patternShort: ["M3", "m3"],
16
+ };
17
+ const major6 = {
18
+ category: "chord",
19
+ primaryName: "6",
20
+ names: ["6", "M6", "maj6", "Major 6th", "Major Sixth"],
21
+ intervals: ["1", "3", "5", "6"],
22
+ integers: [0, 4, 7, 9],
23
+ type: ["major", "chord", "arpeggio", "tetrad"],
24
+ characteristics: [
25
+ "stable",
26
+ "happy",
27
+ "bright",
28
+ "sweet",
29
+ "melodic",
30
+ "less tension than a major 7th",
31
+ "common in early jazz and pop",
32
+ ],
33
+ pattern: ["major third", "minor third", "major second"],
34
+ patternShort: ["M3", "m3", "M2"],
35
+ };
36
+ const major7 = {
37
+ category: "chord",
38
+ primaryName: "M7",
39
+ names: ["M7", "maj7", "Major 7th", "Major Seventh", "Δ7"],
40
+ intervals: ["1", "3", "5", "7"],
41
+ integers: [0, 4, 7, 11],
42
+ type: ["major", "chord", "arpeggio", "tetrad"],
43
+ characteristics: [
44
+ "stable",
45
+ "happy",
46
+ "bright",
47
+ "sophisticated",
48
+ "lush",
49
+ "jazzy and sophisticated",
50
+ ],
51
+ pattern: ["major third", "minor third", "major third"],
52
+ patternShort: ["M3", "m3", "M3"],
53
+ };
54
+ const major9 = {
55
+ category: "chord",
56
+ primaryName: "M9",
57
+ names: ["M9", "maj9", "Major 9th", "Major Ninth", "Δ9"],
58
+ intervals: ["1", "3", "5", "7", "9"],
59
+ integers: [0, 4, 7, 11, 14],
60
+ type: ["major", "chord", "arpeggio", "pentad"],
61
+ characteristics: [
62
+ "stable",
63
+ "happy",
64
+ "bright",
65
+ "colorful",
66
+ "rich",
67
+ "airy",
68
+ "adds a layer of complexity and color",
69
+ ],
70
+ pattern: ["major third", "minor third", "major third", "minor third"],
71
+ patternShort: ["M3", "m3", "M3", "m3"],
72
+ };
73
+ const majorAdd9 = {
74
+ category: "chord",
75
+ primaryName: "add9",
76
+ names: ["add9", "maj(add9)", "M(add9)", "Major add 9"],
77
+ intervals: ["1", "3", "5", "9"],
78
+ integers: [0, 4, 7, 14],
79
+ type: ["major", "chord", "arpeggio", "tetrad"],
80
+ characteristics: [
81
+ "stable",
82
+ "happy",
83
+ "bright",
84
+ "colorful",
85
+ "open",
86
+ "airy",
87
+ "different from a major 9th as it lacks the 7th",
88
+ ],
89
+ pattern: ["major third", "minor third", "perfect fifth"],
90
+ patternShort: ["M3", "m3", "P5"],
91
+ };
92
+ const major6Add9 = {
93
+ category: "chord",
94
+ primaryName: "6/9",
95
+ names: ["6/9", "M6/9", "maj6/9", "Major 6/9", "6add9", "Major add 6 add 9"],
96
+ intervals: ["1", "3", "5", "6", "9"],
97
+ integers: [0, 4, 7, 9, 14],
98
+ type: ["major", "chord", "arpeggio", "pentad"],
99
+ characteristics: [
100
+ "stable",
101
+ "happy",
102
+ "bright",
103
+ "sweet",
104
+ "melodic",
105
+ "colorful",
106
+ "rich",
107
+ "open",
108
+ "very lush and rich",
109
+ "alternative to a major 7th chord",
110
+ "popular in jazz piano voicings",
111
+ ],
112
+ pattern: ["major third", "minor third", "major second", "perfect fourth"],
113
+ patternShort: ["M3", "m3", "M2", "P4"],
114
+ };
115
+ export const _majorVariants = {
116
+ major,
117
+ major6,
118
+ major7,
119
+ major9,
120
+ majorAdd9,
121
+ major6Add9,
122
+ };
123
+ export const majorVariants = _majorVariants;
@@ -0,0 +1,13 @@
1
+ import type { ModalScaleCollection } from "../../types/note-collections";
2
+ export declare const _melodicMinorModes: {
3
+ readonly melodicMinor: ModalScaleCollection;
4
+ readonly dorianFlat2: ModalScaleCollection;
5
+ readonly lydianAugmented: ModalScaleCollection;
6
+ readonly lydianDominant: ModalScaleCollection;
7
+ readonly mixolydianFlat6: ModalScaleCollection;
8
+ readonly aeolianFlat5: ModalScaleCollection;
9
+ readonly altered: ModalScaleCollection;
10
+ };
11
+ export type MelodicMinorModeKey = keyof typeof _melodicMinorModes;
12
+ export declare const melodicMinorModes: Record<MelodicMinorModeKey, ModalScaleCollection>;
13
+ //# sourceMappingURL=melodic-minor-modes.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"melodic-minor-modes.d.ts","sourceRoot":"","sources":["../../../../src/src/data/note-collections/melodic-minor-modes.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,oBAAoB,EAAE,MAAM,8BAA8B,CAAC;AA6MzE,eAAO,MAAM,kBAAkB;;;;;;;;CAQrB,CAAC;AAEX,MAAM,MAAM,mBAAmB,GAAG,MAAM,OAAO,kBAAkB,CAAC;AAElE,eAAO,MAAM,iBAAiB,EAAE,MAAM,CACpC,mBAAmB,EACnB,oBAAoB,CACA,CAAC"}
@@ -0,0 +1,206 @@
1
+ const melodicMinor = {
2
+ category: "scale",
3
+ rotation: 0,
4
+ parentScale: "melodicMinor",
5
+ primaryName: "Melodic Minor",
6
+ names: [
7
+ "Melodic Minor",
8
+ "Jazz Minor",
9
+ "Ascending Melodic Minor Scale",
10
+ "Jazz Minor Scale",
11
+ "Minor Ionian",
12
+ "Ionian ♭3",
13
+ "Ionian Flat Third",
14
+ "Major Scale with Minor Third",
15
+ "Dorian Major 7",
16
+ ],
17
+ intervals: ["1", "2", "♭3", "4", "5", "6", "7", "8"],
18
+ integers: [0, 2, 3, 5, 7, 9, 11],
19
+ type: ["melodic minor mode", "minor", "mode", "scale", "heptatonic"],
20
+ characteristics: [
21
+ "minor tonality",
22
+ "minor scale start, major scale finish",
23
+ "jazz and classical music",
24
+ "classical: raised 6th and 7th degrees when ascending",
25
+ "classical: natural minor / aeolian mode when descending",
26
+ "jazz: raised 6th and 7th degrees in both directions",
27
+ "classical and jazz harmony",
28
+ "a staple of jazz improvisation",
29
+ "first mode of melodic minor",
30
+ ],
31
+ pattern: ["whole", "half", "whole", "whole", "whole", "whole", "half"],
32
+ patternShort: ["W", "H", "W", "W", "W", "W", "H"],
33
+ };
34
+ const dorianFlat2 = {
35
+ category: "scale",
36
+ rotation: 1,
37
+ parentScale: "melodicMinor",
38
+ primaryName: "Dorian ♭2",
39
+ names: [
40
+ "Dorian ♭2",
41
+ "Dorian Flat Second",
42
+ "Phrygian ♮6",
43
+ "Phrygian Natural Sixth",
44
+ "Phrygian Raised Sixth",
45
+ ],
46
+ intervals: ["1", "♭2", "♭3", "4", "5", "6", "♭7", "8"],
47
+ integers: [0, 1, 3, 5, 7, 9, 10],
48
+ type: ["melodic minor mode", "minor", "mode", "scale", "heptatonic"],
49
+ characteristics: [
50
+ "exotic",
51
+ "mysterious",
52
+ "used in jazz improvisation",
53
+ "dark but hopeful",
54
+ "exotic and mysterious sound",
55
+ "second mode of melodic minor",
56
+ ],
57
+ pattern: ["half", "whole", "whole", "whole", "whole", "half", "whole"],
58
+ patternShort: ["H", "W", "W", "W", "W", "H", "W"],
59
+ };
60
+ const lydianAugmented = {
61
+ category: "scale",
62
+ rotation: 2,
63
+ parentScale: "melodicMinor",
64
+ primaryName: "Lydian Augmented",
65
+ names: ["Lydian Augmented", "Lydian ♯5", "Lydian Sharp Fifth"],
66
+ intervals: ["1", "2", "3", "♯4", "♯5", "6", "7", "8"],
67
+ integers: [0, 2, 4, 6, 8, 9, 11],
68
+ type: [
69
+ "melodic minor mode",
70
+ "augmented",
71
+ "mode",
72
+ "scale",
73
+ "heptatonic",
74
+ ],
75
+ characteristics: [
76
+ "dreamy",
77
+ "unsettling",
78
+ "ethereal",
79
+ "sci-fi",
80
+ "can be used over major chords",
81
+ "used over major 7th sharp 5 chords",
82
+ "third mode of melodic minor",
83
+ ],
84
+ pattern: ["whole", "whole", "whole", "whole", "half", "whole", "half"],
85
+ patternShort: ["W", "W", "W", "W", "H", "W", "H"],
86
+ };
87
+ const lydianDominant = {
88
+ category: "scale",
89
+ rotation: 3,
90
+ parentScale: "melodicMinor",
91
+ primaryName: "Lydian Dominant",
92
+ names: [
93
+ "Lydian Dominant",
94
+ "Acoustic Scale",
95
+ "Overtone Scale",
96
+ "Lydian ♭7",
97
+ "Lydian Flat Seventh",
98
+ "Mixolydian ♯4",
99
+ "Mixolydian Sharp Fourth",
100
+ "Mixolydian Augmented Fourth",
101
+ ],
102
+ intervals: ["1", "2", "3", "♯4", "5", "6", "♭7", "8"],
103
+ integers: [0, 2, 4, 6, 7, 9, 10],
104
+ type: ["melodic minor mode", "dominant", "mode", "scale", "heptatonic"],
105
+ characteristics: [
106
+ "bright",
107
+ "dominant tonality",
108
+ "quirky",
109
+ "bluesy",
110
+ "jazzy",
111
+ "used in jazz for non-resolving dominant chords",
112
+ "fourth mode of melodic minor",
113
+ ],
114
+ pattern: ["whole", "whole", "whole", "half", "whole", "half", "whole"],
115
+ patternShort: ["W", "W", "W", "H", "W", "H", "W"],
116
+ };
117
+ const mixolydianFlat6 = {
118
+ category: "scale",
119
+ rotation: 4,
120
+ parentScale: "melodicMinor",
121
+ primaryName: "Mixolydian ♭6",
122
+ names: [
123
+ "Mixolydian ♭6",
124
+ "Mixolydian Flat Sixth",
125
+ "Aeolian Dominant",
126
+ "Aeolian ♯3",
127
+ "Aeolian Sharp Third",
128
+ "Descending Melodic Major",
129
+ "Hindu Scale",
130
+ ],
131
+ intervals: ["1", "2", "3", "4", "5", "♭6", "♭7", "8"],
132
+ integers: [0, 2, 4, 5, 7, 8, 10],
133
+ type: ["melodic minor mode", "dominant", "mode", "scale", "heptatonic"],
134
+ characteristics: [
135
+ "bluesy",
136
+ "dark",
137
+ "tense",
138
+ "often used over dominant chords resolving to a minor chord",
139
+ "fifth mode of melodic minor",
140
+ ],
141
+ pattern: ["whole", "whole", "half", "whole", "half", "whole", "whole"],
142
+ patternShort: ["W", "W", "H", "W", "H", "W", "W"],
143
+ };
144
+ const aeolianFlat5 = {
145
+ category: "scale",
146
+ rotation: 5,
147
+ parentScale: "melodicMinor",
148
+ primaryName: "Aeolian ♭5",
149
+ names: [
150
+ "Aeolian ♭5",
151
+ "Aeolian Flat Fifth",
152
+ "Locrian ♮2",
153
+ "Locrian Natural Second",
154
+ "Locrian Raised Second",
155
+ "Half-Diminished Scale",
156
+ ],
157
+ intervals: ["1", "2", "♭3", "4", "♭5", "♭6", "♭7", "8"],
158
+ integers: [0, 2, 3, 5, 6, 8, 10],
159
+ type: ["melodic minor mode", "minor", "mode", "scale", "heptatonic"],
160
+ characteristics: [
161
+ "dark",
162
+ "tense",
163
+ "jazz and fusion genres",
164
+ "half-diminished",
165
+ "used over half-diminished chords",
166
+ "sixth mode of melodic minor",
167
+ ],
168
+ pattern: ["whole", "half", "whole", "half", "whole", "whole", "whole"],
169
+ patternShort: ["W", "H", "W", "H", "W", "W", "W"],
170
+ };
171
+ const altered = {
172
+ category: "scale",
173
+ rotation: 6,
174
+ parentScale: "melodicMinor",
175
+ primaryName: "Altered Scale",
176
+ names: [
177
+ "Altered Scale",
178
+ "Super Locrian Scale",
179
+ "Altered Dominant Scale",
180
+ "Locrian ♭4",
181
+ "Locrian Flat Fourth",
182
+ ],
183
+ intervals: ["1", "♭2", "♭3", "♭4", "♭5", "♭6", "♭7", "8"],
184
+ integers: [0, 1, 3, 4, 6, 8, 10],
185
+ type: ["melodic minor mode", "dominant", "mode", "scale", "heptatonic"],
186
+ characteristics: [
187
+ "tense",
188
+ "dissonant",
189
+ "jazzy",
190
+ "maximum tension over a dominant chord",
191
+ "contains many altered extensions (♭9, ♯9, ♭5, ♯5)",
192
+ "seventh mode of melodic minor",
193
+ ],
194
+ pattern: ["half", "whole", "half", "whole", "whole", "whole", "whole"],
195
+ patternShort: ["H", "W", "H", "W", "W", "W", "W"],
196
+ };
197
+ export const _melodicMinorModes = {
198
+ melodicMinor,
199
+ dorianFlat2,
200
+ lydianAugmented,
201
+ lydianDominant,
202
+ mixolydianFlat6,
203
+ aeolianFlat5,
204
+ altered,
205
+ };
206
+ export const melodicMinorModes = _melodicMinorModes;
@@ -0,0 +1,13 @@
1
+ import type { ChordCollection } from "../../types/note-collections";
2
+ export declare const _minorVariants: {
3
+ readonly minor: ChordCollection;
4
+ readonly minor6: ChordCollection;
5
+ readonly minor7: ChordCollection;
6
+ readonly minorMajor7: ChordCollection;
7
+ readonly minor9: ChordCollection;
8
+ readonly minorAdd9: ChordCollection;
9
+ readonly minor6Add9: ChordCollection;
10
+ };
11
+ export type MinorVariantKey = keyof typeof _minorVariants;
12
+ export declare const minorVariants: Record<MinorVariantKey, ChordCollection>;
13
+ //# sourceMappingURL=minor-variants.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"minor-variants.d.ts","sourceRoot":"","sources":["../../../../src/src/data/note-collections/minor-variants.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,8BAA8B,CAAC;AAqHpE,eAAO,MAAM,cAAc;;;;;;;;CAQjB,CAAC;AAEX,MAAM,MAAM,eAAe,GAAG,MAAM,OAAO,cAAc,CAAC;AAE1D,eAAO,MAAM,aAAa,EAAE,MAAM,CAAC,eAAe,EAAE,eAAe,CACnD,CAAC"}