UNPKG

@tonaljs/voicing-dictionary

Version:

Collections of chord voicings

1 lines 4.08 kB
{"version":3,"sources":["../index.ts","../data.ts"],"sourcesContent":["import Chord from \"@tonaljs/chord\";\nimport { all, lefthand, triads, VoicingDictionary } from \"./data\";\nexport { all, lefthand, triads } from \"./data\";\n\nexport const defaultDictionary: VoicingDictionary = lefthand;\n\nexport function lookup(\n symbol: string,\n dictionary = defaultDictionary,\n): string[] | undefined {\n if (dictionary[symbol]) {\n return dictionary[symbol];\n }\n const { aliases } = Chord.get(\"C\" + symbol);\n // TODO: find other way to get aliases of symbol\n const match =\n Object.keys(dictionary).find((_symbol) => aliases.includes(_symbol)) || \"\";\n if (match !== undefined) {\n return dictionary[match];\n }\n return undefined;\n}\n\n/** @deprecated */\nexport default {\n lookup,\n lefthand,\n triads,\n all,\n defaultDictionary,\n};\n","export type VoicingDictionary = { [symbol: string]: string[] };\n\nexport const triads: VoicingDictionary = {\n M: [\"1P 3M 5P\", \"3M 5P 8P\", \"5P 8P 10M\"],\n m: [\"1P 3m 5P\", \"3m 5P 8P\", \"5P 8P 10m\"],\n o: [\"1P 3m 5d\", \"3m 5d 8P\", \"5d 8P 10m\"],\n aug: [\"1P 3m 5A\", \"3m 5A 8P\", \"5A 8P 10m\"],\n};\nexport const lefthand: VoicingDictionary = {\n m7: [\"3m 5P 7m 9M\", \"7m 9M 10m 12P\"],\n \"7\": [\"3M 6M 7m 9M\", \"7m 9M 10M 13M\"],\n \"^7\": [\"3M 5P 7M 9M\", \"7M 9M 10M 12P\"],\n \"69\": [\"3M 5P 6A 9M\"],\n m7b5: [\"3m 5d 7m 8P\", \"7m 8P 10m 12d\"],\n \"7b9\": [\"3M 6m 7m 9m\", \"7m 9m 10M 13m\"], // b9 / b13\n \"7b13\": [\"3M 6m 7m 9m\", \"7m 9m 10M 13m\"], // b9 / b13\n o7: [\"1P 3m 5d 6M\", \"5d 6M 8P 10m\"],\n \"7#11\": [\"7m 9M 11A 13A\"],\n \"7#9\": [\"3M 7m 9A\"],\n mM7: [\"3m 5P 7M 9M\", \"7M 9M 10m 12P\"],\n m6: [\"3m 5P 6M 9M\", \"6M 9M 10m 12P\"],\n};\nexport const all: VoicingDictionary = {\n M: [\"1P 3M 5P\", \"3M 5P 8P\", \"5P 8P 10M\"],\n m: [\"1P 3m 5P\", \"3m 5P 8P\", \"5P 8P 10m\"],\n o: [\"1P 3m 5d\", \"3m 5d 8P\", \"5d 8P 10m\"],\n aug: [\"1P 3m 5A\", \"3m 5A 8P\", \"5A 8P 10m\"],\n m7: [\"3m 5P 7m 9M\", \"7m 9M 10m 12P\"],\n \"7\": [\"3M 6M 7m 9M\", \"7m 9M 10M 13M\"],\n \"^7\": [\"3M 5P 7M 9M\", \"7M 9M 10M 12P\"],\n \"69\": [\"3M 5P 6A 9M\"],\n m7b5: [\"3m 5d 7m 8P\", \"7m 8P 10m 12d\"],\n \"7b9\": [\"3M 6m 7m 9m\", \"7m 9m 10M 13m\"], // b9 / b13\n \"7b13\": [\"3M 6m 7m 9m\", \"7m 9m 10M 13m\"], // b9 / b13\n o7: [\"1P 3m 5d 6M\", \"5d 6M 8P 10m\"],\n \"7#11\": [\"7m 9M 11A 13A\"],\n \"7#9\": [\"3M 7m 9A\"],\n mM7: [\"3m 5P 7M 9M\", \"7M 9M 10m 12P\"],\n m6: [\"3m 5P 6M 9M\", \"6M 9M 10m 12P\"],\n};\n"],"mappings":";AAAA,OAAO,WAAW;;;ACEX,IAAM,SAA4B;AAAA,EACvC,GAAG,CAAC,YAAY,YAAY,WAAW;AAAA,EACvC,GAAG,CAAC,YAAY,YAAY,WAAW;AAAA,EACvC,GAAG,CAAC,YAAY,YAAY,WAAW;AAAA,EACvC,KAAK,CAAC,YAAY,YAAY,WAAW;AAC3C;AACO,IAAM,WAA8B;AAAA,EACzC,IAAI,CAAC,eAAe,eAAe;AAAA,EACnC,KAAK,CAAC,eAAe,eAAe;AAAA,EACpC,MAAM,CAAC,eAAe,eAAe;AAAA,EACrC,MAAM,CAAC,aAAa;AAAA,EACpB,MAAM,CAAC,eAAe,eAAe;AAAA,EACrC,OAAO,CAAC,eAAe,eAAe;AAAA;AAAA,EACtC,QAAQ,CAAC,eAAe,eAAe;AAAA;AAAA,EACvC,IAAI,CAAC,eAAe,cAAc;AAAA,EAClC,QAAQ,CAAC,eAAe;AAAA,EACxB,OAAO,CAAC,UAAU;AAAA,EAClB,KAAK,CAAC,eAAe,eAAe;AAAA,EACpC,IAAI,CAAC,eAAe,eAAe;AACrC;AACO,IAAM,MAAyB;AAAA,EACpC,GAAG,CAAC,YAAY,YAAY,WAAW;AAAA,EACvC,GAAG,CAAC,YAAY,YAAY,WAAW;AAAA,EACvC,GAAG,CAAC,YAAY,YAAY,WAAW;AAAA,EACvC,KAAK,CAAC,YAAY,YAAY,WAAW;AAAA,EACzC,IAAI,CAAC,eAAe,eAAe;AAAA,EACnC,KAAK,CAAC,eAAe,eAAe;AAAA,EACpC,MAAM,CAAC,eAAe,eAAe;AAAA,EACrC,MAAM,CAAC,aAAa;AAAA,EACpB,MAAM,CAAC,eAAe,eAAe;AAAA,EACrC,OAAO,CAAC,eAAe,eAAe;AAAA;AAAA,EACtC,QAAQ,CAAC,eAAe,eAAe;AAAA;AAAA,EACvC,IAAI,CAAC,eAAe,cAAc;AAAA,EAClC,QAAQ,CAAC,eAAe;AAAA,EACxB,OAAO,CAAC,UAAU;AAAA,EAClB,KAAK,CAAC,eAAe,eAAe;AAAA,EACpC,IAAI,CAAC,eAAe,eAAe;AACrC;;;ADnCO,IAAM,oBAAuC;AAE7C,SAAS,OACd,QACA,aAAa,mBACS;AACtB,MAAI,WAAW,MAAM,GAAG;AACtB,WAAO,WAAW,MAAM;AAAA,EAC1B;AACA,QAAM,EAAE,QAAQ,IAAI,MAAM,IAAI,MAAM,MAAM;AAE1C,QAAM,QACJ,OAAO,KAAK,UAAU,EAAE,KAAK,CAAC,YAAY,QAAQ,SAAS,OAAO,CAAC,KAAK;AAC1E,MAAI,UAAU,QAAW;AACvB,WAAO,WAAW,KAAK;AAAA,EACzB;AACA,SAAO;AACT;AAGA,IAAO,gBAAQ;AAAA,EACb;AAAA,EACA;AAAA,EACA;AAAA,EACA;AAAA,EACA;AACF;","names":[]}