{"_id":"@musodojo/music-theory-data","_rev":"62-fe82445fae78ded43fe26084fde763b4","name":"@musodojo/music-theory-data","dist-tags":{"latest":"43.0.0"},"versions":{"14.0.0":{"name":"@musodojo/music-theory-data","version":"14.0.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@14.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"dist":{"shasum":"1bae58d8ed50e3d5c83fa7aa1810db88a9e29fac","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-14.0.0.tgz","fileCount":30,"integrity":"sha512-JJE9SS2A7vR2DJlo8acWZKXIkX8rV/WM+C2wHu8PMXkput3/IZCR74XSvyXGMG9enmDUREimercYDkF16duAhw==","signatures":[{"sig":"MEYCIQCZ4XAGzyNZR4jlyW6mi29/htWw2Qhcng1RufCN2R+c6wIhANMGl6HCDbCBAsgEqHjYXtH7TN0EecKSNbvgtvi8aa2z","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83809},"main":"mod.ts","type":"module","scripts":{"test":"echo \"Error: no test specified\" && exit 1"},"_npmUser":{"name":"conordowdall","email":"conordowdallmail@gmail.com"},"_npmVersion":"11.5.1","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"24.7.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_14.0.0_1758217505029_0.16864915128595648","host":"s3://npm-registry-packages-npm-production"}},"14.0.1":{"name":"@musodojo/music-theory-data","version":"14.0.1","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@14.0.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"dist":{"shasum":"6d9e624c24e326e00e37645e0732db28c436370c","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-14.0.1.tgz","fileCount":30,"integrity":"sha512-ez4otLb3N+IC0cSRgtbB0hdGNUnEnuXIesRDKYzHYLggb4y0TfucvShDfqRnGj5lDej81sxUhi491objqVWc7Q==","signatures":[{"sig":"MEUCIQDjAXw+THbzZcm6NbuU1s/Km/yXr5fkcJALi/UCWj21KgIgYsOg8O95N/QaVJxRW513ocYvi72Q/0Sov46nO+Nl6Oo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83735},"main":"src/mod.ts","type":"module","_npmUser":{"name":"conordowdall","email":"conordowdallmail@gmail.com"},"_npmVersion":"11.5.1","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"24.7.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_14.0.1_1758218168441_0.3458905440171427","host":"s3://npm-registry-packages-npm-production"}},"14.0.2":{"name":"@musodojo/music-theory-data","version":"14.0.2","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@14.0.2","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"dist":{"shasum":"34e2be1b1ee9d13cbbf84d6532b9dae9f2a3d5b6","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-14.0.2.tgz","fileCount":30,"integrity":"sha512-acIUdXA0H9VnoguUmLUVkThQY7aPga8jy2qhsuMHiIAJDGJPQCM5hvEJJrS7leBhXRAZeZd7fe7V5jDEozf2CA==","signatures":[{"sig":"MEYCIQCjtxLZmX1j5rtUjSx+eok10p2oFzfnSF/tuVkNLH3rbQIhALk6/YmtDPguaIeqJkVKyC4PVqKxQy2010KvWaoKnnbL","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":83734},"main":"src/mod.ts","type":"module","gitHead":"2e3c69cfbc506b596b84741801abeb1d12ffa0a6","_npmUser":{"name":"conordowdall","email":"conordowdallmail@gmail.com"},"_npmVersion":"11.6.0","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"24.9.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_14.0.2_1758880561386_0.4151000204996338","host":"s3://npm-registry-packages-npm-production"}},"15.0.0":{"name":"@musodojo/music-theory-data","version":"15.0.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@15.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"dist":{"shasum":"6efbac64fce2c2037222c41441c27a2ba1b99c73","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-15.0.0.tgz","fileCount":34,"integrity":"sha512-meijFjhyOsDO1xB0NOXvauq8pyN3Ejl8Nmx1pkQ0FWFQqE6222Zq4fmReeH05UYI5XasGxry5C5qa5rx0FSp+g==","signatures":[{"sig":"MEUCIDn3Ftxs8FortvGdloXx8UEbzYGTFf4JSa+2PUc1A6BzAiEA1TG05kMK7LCEi5j5zfuiyhHssrX9s1ij9IAfnWToLXg=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93228},"main":"src/mod.ts","type":"module","gitHead":"f0dc5c4008a86c28ff657de1614ae5119a37e3b4","_npmUser":{"name":"conordowdall","email":"conordowdallmail@gmail.com"},"_npmVersion":"11.6.0","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"24.9.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_15.0.0_1759071616782_0.4942937509904777","host":"s3://npm-registry-packages-npm-production"}},"15.1.0":{"name":"@musodojo/music-theory-data","version":"15.1.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@15.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"dist":{"shasum":"6f231d316e034159ab48cd44c6d29c64f8a75003","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-15.1.0.tgz","fileCount":34,"integrity":"sha512-I/kHeY58BsyZg2TO2EGnX2AkG1EIEBolvvKzgCF3hJP2y+onzb3+26A8J26HEHCY9lYZW9C7h3qhU7yeb/VB2g==","signatures":[{"sig":"MEUCIC8hVk/ofVks6LJv/v9G6WQyhRfu70loGm75+YSmyb2MAiEA4MIvc6jFDSNdX+lD95N2AVdCND4phFGQBQjmANffv0E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":92911},"main":"src/mod.ts","type":"module","gitHead":"aa46c2b142d3e8dd28f87de4b68cbba265e1cfda","_npmUser":{"name":"conordowdall","email":"conordowdallmail@gmail.com"},"_npmVersion":"11.6.0","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"24.9.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_15.1.0_1759431601723_0.31527323562582077","host":"s3://npm-registry-packages-npm-production"}},"15.4.0":{"name":"@musodojo/music-theory-data","version":"15.4.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@15.4.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"6060c75e87805b7e420feb17c26135e8edbb74cf","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-15.4.0.tgz","fileCount":34,"integrity":"sha512-Jc6lF4r6WJrfIK5/iUQYVOSVbEhLOjAsfTGe468kmgYi6VxK8ou5LbJpNZTrinhYal5iumSYstWLanHDTjWUSQ==","signatures":[{"sig":"MEUCIEBcppTQezSCQr931SuWO/n80pSHiuUrjlaLHOyBjgqAAiEAlujrdByvihU7HcLOoh/EGEY5bOTIy/GkpKjZK8nDf9k=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"unpackedSize":93109},"main":"src/mod.ts","type":"module","gitHead":"3f86d2fbd767aa2e874b70cd2907d1f2b3fa0710","_npmUser":{"name":"conordowdall","email":"conordowdallmail@gmail.com"},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.0","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"24.9.0","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_15.4.0_1759950293437_0.984186767092776","host":"s3://npm-registry-packages-npm-production"}},"16.0.6":{"name":"@musodojo/music-theory-data","version":"16.0.6","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@16.0.6","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"73b92eb90a9a2c660a9bef64565bad0daf8bd380","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-16.0.6.tgz","fileCount":34,"integrity":"sha512-Htld5qtWQc3wXNvyrV9kbQeb83vREFsbypidOPPnTLv/WIiN1DDYLtid/NCumHhWDP3cVk/wqsdDAAwvkyBxXA==","signatures":[{"sig":"MEYCIQCMjrY6WL37fIPWEfGZ1W9V9j//Nl+SRM+/w15AoM1FMAIhALsppqnJIvkP3wNh5D8YQQxsmb5SVKVZPzVydvllbkfN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@16.0.6","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":100982},"main":"src/mod.ts","type":"module","gitHead":"de328e6702262b83634d808a9003a3a58451640c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_16.0.6_1760278082873_0.9460212593443482","host":"s3://npm-registry-packages-npm-production"}},"16.0.7":{"name":"@musodojo/music-theory-data","version":"16.0.7","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@16.0.7","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"9f36343202b37cd95be4e2e2c2ea66fd7c224659","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-16.0.7.tgz","fileCount":34,"integrity":"sha512-MTn5Bsl4g+ouI3YUTvuQ17l9kEMWChMPjYncl9ey8Osfyv8lSCPT69gMBltexMtBR3hQcLkki2T5lcbWROHq/g==","signatures":[{"sig":"MEQCIHayjmt79fAzER0d5mLNv7wB+Qut5wCzx54fZ21RZr3oAiBOOfAiFMyW67+HGlQwO8Xjhsez+z/8H1SpczZwzsP60Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@16.0.7","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":104315},"main":"src/mod.ts","type":"module","gitHead":"f3f3ec1a7507645392dbaca534dfb4b979c88c05","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_16.0.7_1760281724929_0.40321661982211476","host":"s3://npm-registry-packages-npm-production"}},"16.1.0":{"name":"@musodojo/music-theory-data","version":"16.1.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@16.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"3cac3e8388d5dac4528abb03387501d4b7af6e95","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-16.1.0.tgz","fileCount":34,"integrity":"sha512-CGZ0dC7MqBJa5osMBnJkPVkbVNCv9ExtN/NNJrEd3gAGSRs3iml89zOU18IupG62Fx/pY66P/DSes+m8a5yMYQ==","signatures":[{"sig":"MEUCIFNSnDLk7RaHy33YFceAfT+cxYYSSr/vFRLH/sz2jvY+AiEA0ak+VkdEIVPsz4DJFEx3QsoR8DrmZb7Al6kfhLSSxIc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@16.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":104984},"main":"src/mod.ts","type":"module","gitHead":"105bdffc9c241a4f983f9529591ca55dfe3d3b1a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_16.1.0_1760468096453_0.9579662883663016","host":"s3://npm-registry-packages-npm-production"}},"16.1.1":{"name":"@musodojo/music-theory-data","version":"16.1.1","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@16.1.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"985709a466fed142f49eb1e3102e500782c60da3","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-16.1.1.tgz","fileCount":34,"integrity":"sha512-pW/dqp8yoHLJANtwEUec23ozwglis9+0e+Ios0mAfqm1aQoy9F7S/acWEr1LFb0P8ULm+FaIIBcPh0pHF2trbQ==","signatures":[{"sig":"MEUCIEoYzAU3wJGjig6xAuotcyQlYs8mRX81us9FvnmnQREaAiEA4VbChToP6lLBRfbBjGPvyN/Rygo6z1PXMgCdgVnQuLc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@16.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105364},"main":"src/mod.ts","type":"module","gitHead":"0df878105f567ceaeb6b90a098155cf04b069332","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_16.1.1_1760469039633_0.7454914252927902","host":"s3://npm-registry-packages-npm-production"}},"16.1.2":{"name":"@musodojo/music-theory-data","version":"16.1.2","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@16.1.2","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"1b63636128c03e95bc83d45c6f620e42cb5bc705","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-16.1.2.tgz","fileCount":34,"integrity":"sha512-XDOyLNBWIIDYbYoEAuUWAw7zysYjBaEghe91Ap64Kzrk2HrSP1ItIAtQGbcLI4chzVRn6ZzBDlYWask0qJtZWg==","signatures":[{"sig":"MEUCIEYS7pzvmwE9YXnIrcz0x2lxC44kIBiXmb+dEyqBtVKMAiEA7VdQ5GRyX6fpEq6d3gZFd1eCk1gegQSCZ78RLReHU1E=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@16.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105470},"main":"src/mod.ts","type":"module","gitHead":"c3a56f8c6d36a7ab5fd1309cf9ef2c656cc942ad","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_16.1.2_1760529290266_0.18140771200101424","host":"s3://npm-registry-packages-npm-production"}},"17.0.0":{"name":"@musodojo/music-theory-data","version":"17.0.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@17.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"b9bd48f73b756f51013b7ee8b7940001d243c644","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-17.0.0.tgz","fileCount":34,"integrity":"sha512-l6n70XffQYZpaPa7rik4GQwxjIOYGYEPLrhQ71pEKI6UCvgT+lCJuS/FF7eWTG/qemvxcw+2uQu374XwVY2anQ==","signatures":[{"sig":"MEUCIFzz/8aBHcs7myl0whFYlCM2sGc+n04VZTgDPaK8Ut5sAiEA/rFHlfRI2lh7qrGHdtEtiakJB7ssgxlLJtx5liAtdIE=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@17.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":105721},"main":"src/mod.ts","type":"module","gitHead":"6a620d00be801d8fdbbac9be6044e23bb7486a8d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_17.0.0_1760536518148_0.29280067641807306","host":"s3://npm-registry-packages-npm-production"}},"18.0.0":{"name":"@musodojo/music-theory-data","version":"18.0.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@18.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"9b5b08b678b574a6a972241981f52ca3df3e8d8f","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-18.0.0.tgz","fileCount":34,"integrity":"sha512-28e3HQuSHmh+s6MN/h3aLvD3et+dgq3UoCjfCpJLbD754AYVPSaLuTV9avNen/YFyLoK+XJuh3tnQnQUkNIsAw==","signatures":[{"sig":"MEQCIBPPIHzJ60VufaxV/JVUSfJTq9b0GIXW19vS+4gkxHMtAiBL1hC9PBl3+LXyhuE8+DUrYmOFQoBBebBoe0bu2ohlXA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@18.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":107977},"main":"src/mod.ts","type":"module","gitHead":"e1cc4f26014447907e38272e0cf4043e2ba8565c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_18.0.0_1760637723036_0.5825687928063237","host":"s3://npm-registry-packages-npm-production"}},"19.0.1":{"name":"@musodojo/music-theory-data","version":"19.0.1","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@19.0.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"e85a5e1e91f56c9d12179765fcd49320c55df5b1","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-19.0.1.tgz","fileCount":34,"integrity":"sha512-2mqxvBzYYnNMiEbPGILbCBASwOjr7tB1sKkjyJ5QWwkNHiTQEJrCJAsuWDPTvPJoXUbtIFIL6x8blcQcjOFnkA==","signatures":[{"sig":"MEUCIQCCtcqrdiIsCJ0pqq27ngcyClLlCviH9Bw/AUN7bmokDwIgS8ghxdcqhPW0QZY5cHreiGAE3IHFHH+hdqcYbZjp1Jk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@19.0.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106988},"main":"src/mod.ts","type":"module","gitHead":"8ae362f1f134ae79f0760547e4eb8a8b0f14a7ca","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_19.0.1_1760717450512_0.9463148504964563","host":"s3://npm-registry-packages-npm-production"}},"19.0.2":{"name":"@musodojo/music-theory-data","version":"19.0.2","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@19.0.2","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"eab5fb966be999d7524f593efb14ef1163dca48c","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-19.0.2.tgz","fileCount":34,"integrity":"sha512-xaRRyvpfLUuKqUdKYHeVFp95/JEp5DeQPkbvd8B4r+B6DPADf9sZUyheiNsRuUDAMmo7ObAY/AY3zCzc3Z8f1w==","signatures":[{"sig":"MEQCIAY5LhEybWNAh8xYyMRynNxpfZW10fI0mrXSJ+9y0+JeAiBGTQn7qYUa2RfL09RvBt0l/XS/fVpjKQOcgJ1zLszh5A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@19.0.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":107275},"main":"src/mod.ts","type":"module","gitHead":"a4f2a53f4b4aa9501c7276657c087b1bd7def3c1","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_19.0.2_1760719202679_0.648751248380987","host":"s3://npm-registry-packages-npm-production"}},"19.0.3":{"name":"@musodojo/music-theory-data","version":"19.0.3","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@19.0.3","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"f8d3988780002065a292eb5e17e01895cc666c81","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-19.0.3.tgz","fileCount":34,"integrity":"sha512-FOQEFI0tvVtbQktaGVeWPKJeVw4nt2jLnu49KHZZtxuuu4AUV/qfVu2pCwE2/kn6za2VFDDKfZ14Dpj7jq2BWw==","signatures":[{"sig":"MEQCID+C+uNgYjUjzAwk337wStSluDeXOvvtcKGE04FAUpraAiBGL+CyieX+QdL0m9B0T3rKWz7FfUMXNZ+u2euLB4gtLA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@19.0.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":107274},"main":"src/mod.ts","type":"module","gitHead":"cf64846f7ccdc2dc7677fb32135b3d150e77a90c","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_19.0.3_1760719808816_0.20800454346200659","host":"s3://npm-registry-packages-npm-production"}},"20.0.0":{"name":"@musodojo/music-theory-data","version":"20.0.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"af4c6d4b82d6c1ab0310985b87ad4399e1c382a7","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.0.0.tgz","fileCount":33,"integrity":"sha512-EkoVf1FMSA0tiqqhhQe3Y0hwa+0Il5IgV1RrTR+bhG7f9x1H6byBFrQ0ySWh8Wecy+E7s3otZdsClPdEY5IRTA==","signatures":[{"sig":"MEYCIQCsBO1ZZcsLlFy49DwmBeo/+0zZcqAxge+uCdYxfY7v2QIhAPsMgbnKc+Fy2MjwQ48la5tFReUoexIrLAnM2MveGFUG","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":106304},"main":"src/mod.ts","type":"module","gitHead":"4a635b0fa4781e083599d45c66d316f8baa0115d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.0.0_1760817315998_0.5587276149444711","host":"s3://npm-registry-packages-npm-production"}},"20.1.0":{"name":"@musodojo/music-theory-data","version":"20.1.0","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"cce3022a7c9f98f4ac89b24cdc572764f3893a7e","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.1.0.tgz","fileCount":33,"integrity":"sha512-pE+70v7wgqzqo0zgTsrtRsL1xx7d3XmymQWZBTP3CcqXLAfelxk4ikXxD4xnNnf8RHRJiWejuI47JpJB2yWLyA==","signatures":[{"sig":"MEYCIQCoKR21cFxkEUy8AItBSQwhRoa2BIpfSOrikgNw/No3QQIhAPDd8KUMZ0O/VxyQ4qBDu5+kjz3OwzIH9HJNQLrns7p6","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":107796},"main":"src/mod.ts","type":"module","gitHead":"47885bf6ffe9db6a43eac7e1d70a4cd82aa7b18d","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.1.0_1760899282310_0.5649093230847706","host":"s3://npm-registry-packages-npm-production"}},"20.1.1":{"name":"@musodojo/music-theory-data","version":"20.1.1","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.1.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"68edc0fa9d931b61eb995a28422154c1013de8fe","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.1.1.tgz","fileCount":33,"integrity":"sha512-MKNyPFZqgZwcM4zjtXOPsWuxfqp1rVIoW0tiXehQiOME25VtnB3YbFwFIaqhUyChoqZs1Ecp10A/a0zSfr0GLw==","signatures":[{"sig":"MEUCIQCm1rMTJPGOJE8SC95JpPf5J7H9kk9A3PsW2j1x1zeuxQIgDluL3HBJgHxm61dTWHWUYB9KwOd4u85G3iT3F4DEAjI=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":108187},"main":"src/mod.ts","type":"module","gitHead":"a25076e408e45146546915f595fe0a8a229604e6","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.1.1_1760899578296_0.5668923632910814","host":"s3://npm-registry-packages-npm-production"}},"20.1.2":{"name":"@musodojo/music-theory-data","version":"20.1.2","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.1.2","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"de5530c00ca3d27ea7a893c60af29891264e098e","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.1.2.tgz","fileCount":33,"integrity":"sha512-1otE6UvNVjyfVkjFP8Rzy5bRbzVh8fSJD15ABtMEn4rQMA1aNfS5h6/zC7FOTMSdMzL0BxPPu31LiWxvgNo41Q==","signatures":[{"sig":"MEUCICAq41Kdcn+lNfPh5wrOvyMJ56Ha9A3afexlNlKiNJgMAiEAjkJ8kEYgwaAP2yeCAQXJsjBATlT9KbbmwmvSvtjRjcQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.1.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":108375},"main":"src/mod.ts","type":"module","gitHead":"176219bb2a47dc0ffc84b2e30f06714705f342d3","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.1.2_1761249765052_0.3518248729451927","host":"s3://npm-registry-packages-npm-production"}},"20.1.3":{"name":"@musodojo/music-theory-data","version":"20.1.3","keywords":["music","theory"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.1.3","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"d7794d03baa864d4233ed0c149d558375c44a6cd","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.1.3.tgz","fileCount":33,"integrity":"sha512-dnjgfn+pdARlFDzl45sjvce6WByalch5N0A8MRRQxTxWrxPZ189JWwFMTtoJVP805HpaxOsiaDLIMc4nBmZV9g==","signatures":[{"sig":"MEYCIQDXiifo9HM/I4OxhG3cYD9E3c5k4+PGt+teEMopTVNw/gIhAN6pYE6KN6be1xlVF7/c1hcwTQd7fFFsn8sl1QescFWK","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.1.3","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":108384},"main":"src/mod.ts","type":"module","gitHead":"043298ced985278be73e751d25cd4d743ec6b152","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for modes, scales, chords, and more.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.1.3_1761304310952_0.8455920747853074","host":"s3://npm-registry-packages-npm-production"}},"20.2.0":{"name":"@musodojo/music-theory-data","version":"20.2.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.2.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"5513a2152a4c56411478f9385afcd4412d23167f","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.2.0.tgz","fileCount":34,"integrity":"sha512-ZfZGxlhKOmoGOOJphGAtLNLTBaTFgNProo3kTMVYPk7oKJMb5BNwQM6MXvB/Uxg97/3cHUNPjIEcvZQv8lrw3w==","signatures":[{"sig":"MEUCIBXWtNr2uXB4gfsbbjn8S9vO+D5HhI1UGjByUeQMILRoAiEAv1ugI5g/AyYeyF5l0KrHklxIWZQS9SfFqWVZyC92hjc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":110608},"main":"src/mod.ts","type":"module","gitHead":"555c390ba7a8fb307c876fd6d37f642e31b41a23","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.2.0_1762275699146_0.9714376124023762","host":"s3://npm-registry-packages-npm-production"}},"20.2.1":{"name":"@musodojo/music-theory-data","version":"20.2.1","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.2.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"02da0753e0a674cc8080bdadb0fc890c8c430854","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.2.1.tgz","fileCount":34,"integrity":"sha512-DuGv5ssytibkciWNaT/mJ8l1/3XHUidRv3VH36FkHKwpefY7RyTakaYeamsXwW9Z1rt6K4HZqt/8e/iJVmjdXA==","signatures":[{"sig":"MEQCIBOXa/+2Z9PRrvZIfNlG/xg1cT8Ycf6+3OVXqU00mc4aAiB2L5jw+3Us69BMvyIAiqWCaSWOqrJyVXYkfHx+DQko3A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.2.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":110067},"main":"src/mod.ts","type":"module","gitHead":"ac97ac854d8dfc6a0c5aad872ecc11cc2a93c485","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.2.1_1763217501271_0.7673425747437213","host":"s3://npm-registry-packages-npm-production"}},"20.3.0":{"name":"@musodojo/music-theory-data","version":"20.3.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.3.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"d204fe3e9a056947bce0a88add1fbcf3116952c4","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.3.0.tgz","fileCount":34,"integrity":"sha512-HWODbJqJckOJ5qFhWghlGcMSjxIcMgL4u6+LwpBEHA9O+g4NY5ajukHhh3zloX1k8LySrh1O1UpxjqlQhTzkfA==","signatures":[{"sig":"MEQCIFGYtZiOhmmOuDlQiqDJ4PSRIVinsUdI3PBUXEG6w5QIAiB3Cu/2wC9cmYu2k7Wa+2FcKTna12msCSKmq3DvTLjq7Q==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":110067},"main":"src/mod.ts","type":"module","gitHead":"6c9e635491f331e2f04f99946b2fa18517630cbc","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.3","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"20.19.5","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.3.0_1764078866914_0.39099878288727474","host":"s3://npm-registry-packages-npm-production"}},"20.4.0":{"name":"@musodojo/music-theory-data","version":"20.4.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.4.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"c0f3ad7a329ac832198ff9b1e66d4948cb83f5c8","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.4.0.tgz","fileCount":34,"integrity":"sha512-TI3fVYTbCVwb+CThg76SkQOQOIhRxqhastol6VjFjE1wJnCtrFoSCrkiQirjp6AXkOt/bcIA4hWU7FwT4ecRBQ==","signatures":[{"sig":"MEUCIAw9pSs6Kv/BCc70LEJ+H3ayowigNQlHcZD/fEFzP2edAiEAgya0kw0STfVAhQvn5nbFRWGScxp4w2J7qaLzQUJi0ns=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":110067},"main":"src/mod.ts","type":"module","gitHead":"6e02f3f1af1fe7bd834469c9aa3dec4df2c0522a","_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"25.2.1","_hasShrinkwrap":false,"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.4.0_1764078913310_0.20778104434439593","host":"s3://npm-registry-packages-npm-production"}},"20.6.1":{"name":"@musodojo/music-theory-data","version":"20.6.1","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.6.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"fa90da13ca12aaee1c3a5f87bb206baa2bb98c6a","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.6.1.tgz","fileCount":249,"integrity":"sha512-GpTAIi5tNaQM/GpOP4mOaNU3QA024nTfSOwZ5cpvUonbTQcbKfx4Vkp0Oh8ueQ8bqnI3h3ZEQhC976EssYLKfQ==","signatures":[{"sig":"MEYCIQCL/d5WzfB/8FeemycboPe33psuM6YR/RpwZMkHVmlflgIhAIfSrvVIODF+0EzmUMynwjQHWNBGCtxieKdtiXFiRbMf","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.6.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":340398},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"da151f5133666f6444c09fe60787aeb738540ed3","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.6.1_1770894812154_0.49498283656009745","host":"s3://npm-registry-packages-npm-production"}},"20.6.2":{"name":"@musodojo/music-theory-data","version":"20.6.2","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@20.6.2","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"8ac656e06850a3ebef1246591f15bcb1e306fdf2","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-20.6.2.tgz","fileCount":249,"integrity":"sha512-qtvD1i0z4YXppoD93KSjjQ2LEbiTWu+w2oVwoS09Mz3rau03e1yDavwYzlJ1/OwIyxtLXuFuNfxjjj4JF9nbyw==","signatures":[{"sig":"MEQCIH62SinrETYof9KkzLWSXlp2iyqc9cX3toNe7QzSBYbMAiB5SxvDFZOp7e/MPQrLX2T0AfbDofolw20m7ltV6bUxCg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@20.6.2","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":340398},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"91e4ccadc78362e314d2a7375ce6a1f9de981630","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_20.6.2_1770898688423_0.8566302521851892","host":"s3://npm-registry-packages-npm-production"}},"21.0.0":{"name":"@musodojo/music-theory-data","version":"21.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@21.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"fb7618e60d2f744630aef92c1a602fdb3f8124a4","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-21.0.0.tgz","fileCount":249,"integrity":"sha512-KCyh5bkIOE2vJ2eJU36zeqpa9rq+j/ruvB/4FnWeqyCD55keKxwnl6IHSmYrDbmn2muqLWUtQ6sf8wMUA1wZtg==","signatures":[{"sig":"MEYCIQDhROLnWYjksy7F0bhQt+4SuEu523Aj8r9fAw5ST8x55QIhAJkOSLcIMmUC2anD+CjV9wTkfjtFg8Aup02dbxuabyvV","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@21.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":346101},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"876dabcaacf0c583a55d75e3b55a7c31b11e7999","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_21.0.0_1770925176433_0.9077466471198856","host":"s3://npm-registry-packages-npm-production"}},"21.1.0":{"name":"@musodojo/music-theory-data","version":"21.1.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@21.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"0476bae59e86e43a5fad5aa8ae85cf098da9ba17","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-21.1.0.tgz","fileCount":249,"integrity":"sha512-2V4xcHTQD9aZootWsvH2tF/Jt6T4bdHKOfEXcpWaSOjJAeRYt/nVvpDvCgd5s/wJRVLJVw+1kyl1kVm4nhgiYA==","signatures":[{"sig":"MEYCIQDcnFXO/j2KOBehr1WuqLfdL4rj1ax62HAq+ljHW+DtLgIhAJdrJBK60M2XFInQNXfN3snRjV0Dfq//vksSkB9OCxid","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@21.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":351864},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"e70422beb2055144353f82298246623424fd39f3","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_21.1.0_1771707787925_0.44212273958972315","host":"s3://npm-registry-packages-npm-production"}},"21.1.1":{"name":"@musodojo/music-theory-data","version":"21.1.1","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@21.1.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"84ed0b4cb2826824c0705ab2bf89dd4cb138624c","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-21.1.1.tgz","fileCount":249,"integrity":"sha512-RNsct8NsQ5/PJNVM3lhePUl4rA8jN04szVeDF28rd+jKJN5UHnWnJLBznr1FRKpe/4Mg7cF5vwiiWLwy0bjKuw==","signatures":[{"sig":"MEUCIQDw7/hGTycJjvrqxb3kylHC0a0OODf7KbxqRV2eyIGMLAIgOdJ/3zCmiERxbWjAcD2HONyNonuIzUZ0CMJqvjJgIkw=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@21.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":400796},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"e6fac3dd14c283379f70183c54eb76c0b612157e","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_21.1.1_1771778422631_0.11222212792615527","host":"s3://npm-registry-packages-npm-production"}},"22.0.0":{"name":"@musodojo/music-theory-data","version":"22.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@22.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"8ce6ed83ced487b12ded3c74a045a1ea05dde032","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-22.0.0.tgz","fileCount":249,"integrity":"sha512-nmwyCvTfBoA2Rlg8nScaNgv+3lvVMB7Z1SFHQpGmrCVXVWROviqI4CxWqrwcBTSQFWEVRzgVCVDqBwE3BHCXAA==","signatures":[{"sig":"MEYCIQCUEgGAUrukAKvJDrCVYAt4HJq+1oLaAJ2VxHf6RfRlWQIhAK+YbNF1/awnarvt18veJUHCoXBA/Vc+gPPY9QHA6FZN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@22.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":410049},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"9487da22f1861257883c4ed5d4e00614190ea64b","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.6.2","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_22.0.0_1771959925739_0.41419624750320994","host":"s3://npm-registry-packages-npm-production"}},"23.0.0":{"name":"@musodojo/music-theory-data","version":"23.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@23.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"17fb1753503f3eeef9bd6f9bae3774ee69774a6d","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-23.0.0.tgz","fileCount":249,"integrity":"sha512-ldaS2/vRxCiBfeuU4CfMACfGgueismhcVjNkPh1FgA0MFiRBBgvdzG8mJXSAxa54XNJVLtcyJzzG445Fv8uPJw==","signatures":[{"sig":"MEQCIH7kX30raRYD2BFH9yqL/YRxaEec5lOVXA8+3FuBBkZIAiA/l1/6IVEpCn1WoK87q32DoSVEDXpMKQJHpH5uHFRffg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@23.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":409771},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"db5e1bb29e8f3318e1ca498ca9932469cd2eaffe","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.8.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_23.0.0_1772133996176_0.5840507311624739","host":"s3://npm-registry-packages-npm-production"}},"24.0.0":{"name":"@musodojo/music-theory-data","version":"24.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@24.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"cd03c7e480727139cfbae3dbcfa4076ada4cd6a8","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-24.0.0.tgz","fileCount":265,"integrity":"sha512-z1WHhco+M8l4MVYbFkI9iAS/3DwSFxNXeWPlBfWMWnSCBanPXjyjQN5aTGZsgknw15d//NPIQ8Gebl/OlR9QcQ==","signatures":[{"sig":"MEYCIQD1nS51YSp0BZ1lkia9U3tslJjELM9Wc9lsYuYfvCHQNgIhAK3GokaBfsqp7/U/PIYTHUa357jFwvK6vjpBBnGc4CU0","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@24.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":441661},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"c3ea05c32c88388a9d3dadaf094acb22453e047d","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.8.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.13.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_24.0.0_1772379463782_0.42953744943599537","host":"s3://npm-registry-packages-npm-production"}},"25.0.0":{"name":"@musodojo/music-theory-data","version":"25.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@25.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"8f6a1b0174a15d4f124cf67a7aeae87e8251d5ad","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-25.0.0.tgz","fileCount":267,"integrity":"sha512-AAv48I8lyMgmq0rfRGMi3133+9UKWZxFFAAsDNlpvTjQyoUbFWo1yGNGZ3GN3rkgqF+fcJXVHaRy+YdmFp+2Bg==","signatures":[{"sig":"MEYCIQCh7X0vJO3S5+wKt2ZjrHs0JYo7/A0ENQBdwN+RrYi7xAIhAP71iFUKC2nQMuz2O1uLG7onn82JzdimeFmkiaYzBJ2J","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@25.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":455304},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"92a13354bf5068829ec27144d16f920062c6254c","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.9.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_25.0.0_1772893468931_0.7499513064815342","host":"s3://npm-registry-packages-npm-production"}},"26.0.0":{"name":"@musodojo/music-theory-data","version":"26.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"2e046840318be38a4521ff0c920a0a917bb02f52","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.0.0.tgz","fileCount":273,"integrity":"sha512-u0AfLnMJeLsXSQZRPNOhE3IdXtvhLvFupYVWwFxlJ78hIZigqW1wUGKbtPZWlrjT+3wWnraiLh94X9spI77cMA==","signatures":[{"sig":"MEUCIAIMVpj5qUqBGkrtCTlipzHyuolyqtrH1BKDx+DAMQkIAiEAll7Bm9p192KwkLzGzHGRF2gKL8LCVY54a/fACBFtDYU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":484810},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"ed8c887e4b24e01d7456d68009684d8b6462c087","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.9.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.0.0_1772981701799_0.2962198804510303","host":"s3://npm-registry-packages-npm-production"}},"26.1.0":{"name":"@musodojo/music-theory-data","version":"26.1.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"77c6be9b05b3a00b68db53f96b2a2e7d1bb2845c","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.1.0.tgz","fileCount":273,"integrity":"sha512-sLCvPI4ImLrFpv+9CQS4dtO8zi6Lo4JLeK4lYj5dc0q1irHVoHUyU7Rt+b67wYRd/dbI25EOSmjKAvQ/HASmHw==","signatures":[{"sig":"MEUCIDLF63PpUoZ00zf/MUN/eiwwWFYFJu6TWELJC3dK+0QuAiEA7k8gZ2L4vz1GcajgPX7ZcBQ9YV7aXdQRuqb3v0jOdlc=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":486222},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"c2b154c31fd6391d55f343ffb296c9beba8be74f","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.1.0_1776005420450_0.7237160199372163","host":"s3://npm-registry-packages-npm-production"}},"26.1.1":{"name":"@musodojo/music-theory-data","version":"26.1.1","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.1.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"6c4cfa2a629092f85648c5f10d559a39534a1186","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.1.1.tgz","fileCount":273,"integrity":"sha512-vAaUoKciER7boEbBf9tGIAttDjhxB2WDow9oBQ3+e35t3WIaIXyI845dEpeEg7IRqcwCWS0YJkhDrPcgWr7Ddw==","signatures":[{"sig":"MEQCICscv46+Bru0x0KE4nfpFNGYV6Jgt6RdB8iNkkhi7YGrAiASCpaGcq+00ef+mEh6StPLA4DC7FRsKBP1EJ4x/YBd8A==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.1.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":486178},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"aad4e24261916abf9f30d6b3d20ccf21710ebc46","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.1.1_1776007302435_0.5968559129416058","host":"s3://npm-registry-packages-npm-production"}},"26.2.0":{"name":"@musodojo/music-theory-data","version":"26.2.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.2.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"4edcd738b0675183971c86c6352b52827cf76d63","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.2.0.tgz","fileCount":317,"integrity":"sha512-9lolrE0OkrwkpLMr7toUL1XWYx3VpT1ETnDH33/y3j5m+BJPbAMymba6cRdXM9Yefo/lLvBFIbChVGXFokYeaw==","signatures":[{"sig":"MEQCIEG95DmPaIM+ub1vTSo/HpP1+/dbhRAWrP8c9u+toxhiAiAiA2RITcjaaPxoH0ZWYSaJHqjOmRwNYLtc+9FLcIWjGQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":536203},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"b12ec3eaf47d1b582f79f335ebe218989668c355","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.12.1","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.2.0_1776849859667_0.7027344210662143","host":"s3://npm-registry-packages-npm-production"}},"26.3.0":{"name":"@musodojo/music-theory-data","version":"26.3.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.3.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"ee009d0e079e84b7f15384c7d65482737c8d82a9","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.3.0.tgz","fileCount":317,"integrity":"sha512-KDYrylikOIzTG0iE///O2lO19DC3oRa6hEzGjIBsbu6NOXF4inZOP8ttKQIYt9sSqA6alzJWmWGkjPssLm8ZbA==","signatures":[{"sig":"MEYCIQDQm+BsKZQI5AdL9Xl+brkN620Ao4jv1J1DmjvxIhEwtAIhAPYqY49p4wmQRWLUPUXlKbahjzVowwk6llZulESHEQZN","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.3.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":538283},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"9b9de17b181ec2331c7bfcd19397607a8c1b65bd","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.3.0_1776953352286_0.44271108150031546","host":"s3://npm-registry-packages-npm-production"}},"26.4.0":{"name":"@musodojo/music-theory-data","version":"26.4.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.4.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"6558eb8a2f3918d6b96b3464e91747090cc7003d","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.4.0.tgz","fileCount":355,"integrity":"sha512-2zc99EEl9WGq7FDNOjIN+D+eylHEPgvwwM78RjjwjtCHfdExWkAOoplfGwFb8bP+m0TXlKyHaBy2UnTb7VRqYg==","signatures":[{"sig":"MEUCIBnc+P1rOVYXYlNpIjtA5xj4kFDNU9FcuZS/yE5yIuxtAiEAzoEXpBSCcBfKUDepD71bk9uIMvtVBIyTfxz/c0QyVM4=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.4.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":610562},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"194f98af7d33b0434a8eafee34f8815e5122f4d4","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.12.1","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.4.0_1777393999358_0.15580595464947344","host":"s3://npm-registry-packages-npm-production"}},"26.4.1":{"name":"@musodojo/music-theory-data","version":"26.4.1","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.4.1","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"21463ce3312e0c2ebdfdf1d2ac57e112c205fdac","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.4.1.tgz","fileCount":355,"integrity":"sha512-szc14Z7IkKv5fUNYQwQOnpaPeH+uwwlHRylZILYd70q5Ubf09vi5YtebMg4pqUf47+GAE5zC3cFgz0mAj32/SA==","signatures":[{"sig":"MEQCIEFI2w1GaOhvI6sy2FM0Dk1k7nLHvS4PHOO54jGiyvhHAiAS2tMOo6FUJ8dW2wb9PLr4Ty0UkLWnmeuY59RT6HoyVA==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.4.1","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":610562},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"71e53015cce3a96a9edf06cdfa839fa6d579fc07","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.12.1","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.4.1_1777400094706_0.3459595841176575","host":"s3://npm-registry-packages-npm-production"}},"26.5.0":{"name":"@musodojo/music-theory-data","version":"26.5.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@26.5.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"10356e768e2f01917b6489691916ab2cc919c6a2","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-26.5.0.tgz","fileCount":355,"integrity":"sha512-PHHijoC0YuiqlEdz7vMfAQuy6RGgpnh66ulUFAueUTIs3N1D6DHnmJwlPa/Vw45aeydVmBvgqJjRFd+i43MW7g==","signatures":[{"sig":"MEUCIHA6mpXQt/8/7eu52X1NV4UJizaaE1k2yJSNIuSpw+7jAiEAyBo4yNIl/qeUx65n9utZS01WPALFeQCZ8vOeaD2nQYA=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@26.5.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":617912},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"7385aa3e3c7f61494dc3fd1fa514936b70159eba","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.12.1","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_26.5.0_1777402263208_0.8810178713866414","host":"s3://npm-registry-packages-npm-production"}},"27.0.0":{"name":"@musodojo/music-theory-data","version":"27.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@27.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"2bd13548affa3c1316a8af20989f3d372a4a5e9a","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-27.0.0.tgz","fileCount":375,"integrity":"sha512-KykXF1tKqhALYmHkNziaTSpxASpFgMYjg7A8Ni+MnFAVOCev5Uc6bmgVqlw+DRPnkkMcMOn+EiAP1gZBjY9/zA==","signatures":[{"sig":"MEYCIQCLBrEKjpLy5jWpuyu2JPOoNex82hrHTrmqcBDzvYj+1QIhAKD6XGIEYAEldW2Jjr0oYFUeACG/l8HfD0LLsFe6yTfy","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@27.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":645721},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"ff3f7ca65e4fc20eab28ba12fb144db9b8004dbd","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_27.0.0_1777657183534_0.7928291892504657","host":"s3://npm-registry-packages-npm-production"}},"28.0.0":{"name":"@musodojo/music-theory-data","version":"28.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@28.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"b307518734d3281205a00ec3c9371084772ba6b2","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-28.0.0.tgz","fileCount":351,"integrity":"sha512-aOdeNoA4TdY49c/3S1X8NaNqZmXq0eDVvUAoru34UhiKRULlRgmFyjX7MdGws9tS3gnLalGddCt1f4HS22MQCw==","signatures":[{"sig":"MEUCIFhlkH0F4gag/Zhr8+NBdIo+n8yL/mXiWWVB/YYEKNx6AiEAyd84rpVr185uDTOh1nbfiW0TVPnafmpyPOaVb0S9ktU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@28.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":604414},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"5130b5e2312041ec5bd2415a40955d44ae195248","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_28.0.0_1778010470777_0.11659719017832226","host":"s3://npm-registry-packages-npm-production"}},"29.0.0":{"name":"@musodojo/music-theory-data","version":"29.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@29.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"f9dec3a46b79fc1ba8d6618c373fefec63890030","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-29.0.0.tgz","fileCount":351,"integrity":"sha512-ko9ELBSzePh65nw1KrmvOP+ybxNfmfJ3iJef4+Q9jCJi2hKqbMxUpmTsAcJjLSHErPDqQjOqDAZC3Kaj/6280Q==","signatures":[{"sig":"MEUCIEzEkfV8BSBtH4b68iBxygyDEP/J99jIoFcoO2USIm2jAiEAgUuetn7xt/hsq4JvQJR/SUMgUhS/Ct3M541W8m/LK30=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@29.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":608408},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"4d15fa1f322d455a61e936aa925474523b7adb5d","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_29.0.0_1778087852802_0.8860742755876536","host":"s3://npm-registry-packages-npm-production"}},"30.0.0":{"name":"@musodojo/music-theory-data","version":"30.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@30.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"029e51c9b2cd73fb47d7b80a884035b957928ac3","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-30.0.0.tgz","fileCount":351,"integrity":"sha512-RDUfaIb9SCZ3dBwDNLg8zCtIAmdVxbeW8LhBddxDneiPAQZx9klyfaF/nJm/SBQDHvtMwgIfdwHIAZyao/b4ww==","signatures":[{"sig":"MEUCIFZYJqLgMtafUDh7fxr8zGz7r/HYgflJZ9AIWd4RpdGYAiEArdMD+LiIzL0zi8yH7YbCdjrWV94RqOAHuxg//8CZMNU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@30.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":618987},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"322b88d7c6135f36ff68b703e33a2e7ff6e356e4","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_30.0.0_1778094940232_0.8183887762290014","host":"s3://npm-registry-packages-npm-production"}},"31.0.0":{"name":"@musodojo/music-theory-data","version":"31.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@31.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"7f9257262bde71a5f40e30c0457c3b864c87763b","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-31.0.0.tgz","fileCount":351,"integrity":"sha512-YKfBnedoTUC3UYfHyMCiD9v8CAH0W3EUHKwEPqwZIJPvOLO8/8KPCQ8/t78zdk4M9EpkgKA9nvfuHUYjE1rDWw==","signatures":[{"sig":"MEUCIDLRwlX6mPziaNvfYjMnlPioqbgxKj4Ho01f1Sn1b0p7AiEAjBgZ+v+Ik/8/hxRnAS3H2OgtN7kKNxoZ24e6hhWxNmo=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@31.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":617626},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"a9e77b6cdcb8f31df7b1021629327a401067a3f9","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_31.0.0_1778138268278_0.27017033820469205","host":"s3://npm-registry-packages-npm-production"}},"31.1.0":{"name":"@musodojo/music-theory-data","version":"31.1.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@31.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"58aa86ddd449c78414d872bad60f36c89dc59bdb","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-31.1.0.tgz","fileCount":351,"integrity":"sha512-7ewHT3a3O2xcaWIHQLMm4zzWom6TW/USBYDEhqRNkZQV1o+lG09G5pjPBpZawzRJl1fhLIraUKqv0inh0FvJrQ==","signatures":[{"sig":"MEYCIQC0cDLPOzAzWik8Z8zKYdzLvszZyE+9c/qVtf5GSRoALAIhAJ/toN9RLoHgUk2EIgMpzzzvDDjq1bQiJuX67MgUGR2U","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@31.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":626236},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"73300e228b60ace353425dd15b816fdc39698cc9","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.11.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.14.1","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_31.1.0_1778139596295_0.684969456730139","host":"s3://npm-registry-packages-npm-production"}},"32.0.0":{"name":"@musodojo/music-theory-data","version":"32.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@32.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"c92589ec55e465dd119d064407b7a51935b4d83a","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-32.0.0.tgz","fileCount":351,"integrity":"sha512-kA5Oe9rGf1ukBt9KIbUd2qHDl4pmvXa/oavtISXLUjif5RQ3xOC9NoGLSmg6CGsh4szmWYCkjYY5UpwGpFuL8g==","signatures":[{"sig":"MEYCIQDlupI5KAqrMm6GY2OwZSOYpyfNlqAT9WCQfqtxCqVIkwIhAPOSrzbYpCb1tXRpyr77ov06xSkeZ3684PunVtJtK3XQ","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@32.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":626262},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"bb8cf5dd75ed22431ca9dddea80b71216653fed0","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.12.1","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.15.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_32.0.0_1778843909970_0.014627842183807083","host":"s3://npm-registry-packages-npm-production"}},"33.0.0":{"name":"@musodojo/music-theory-data","version":"33.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@33.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"e7805726b3149357a3243eff7851f7c71c1ce4ad","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-33.0.0.tgz","fileCount":359,"integrity":"sha512-Rs8zqbP3qySvOLwS4qTfhAkN1SnmOWe+eM546qgHkRWjwfp3wc+m6Dm0Vj2igqWIZ2iMQYmgtKizALK8OJEA4A==","signatures":[{"sig":"MEQCIB8J9WZM1wzuq6O0/Pte/fYgeR+/ygowc0oUs4RN6sSWAiAfFH++a/FSe08SGcNgPDfvrL6h29blWdY5zOcTzglafg==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@33.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":706908},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"00c0343492d9f2b4645d1bcac09bea7167efe134","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_33.0.0_1783261788862_0.9752664867923495","host":"s3://npm-registry-packages-npm-production"}},"34.0.0":{"name":"@musodojo/music-theory-data","version":"34.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@34.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"1c1587ae688acbdf99b8b706821ead57dd51d592","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-34.0.0.tgz","fileCount":359,"integrity":"sha512-Jo5hrWwqGnB0GmlI3XjD5cqfUKzWodRXJ1AwdP4jLdLtdGoS3x9D0lRysSgUFIqbn1Nq5x7dflu5BFzNVOEKEg==","signatures":[{"sig":"MEYCIQD8zkO0Jww0zTO329Aro2YsOumWyKWJiIjCMzlT4qbXGQIhAJaS0pWW90X3FtG5uTZuPyGF561sXJ+zvCE4wxEs4ACW","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@34.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":707246},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"7cb00e25c7e30c432c1c36e32bb02a1f1abf6b2d","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_34.0.0_1783263557398_0.08896089398742624","host":"s3://npm-registry-packages-npm-production"}},"35.0.0":{"name":"@musodojo/music-theory-data","version":"35.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@35.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"d26e025be38e7f30039ab036ffec6722d0111404","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-35.0.0.tgz","fileCount":359,"integrity":"sha512-9E9kBcL+1Jz55IIE4PWcZdXPqagnHFl4+18BKUh3cRXxmBvEVO3mOdqZZEznoSbPJ3kQWHqIedYR5uq/veH0Qg==","signatures":[{"sig":"MEYCIQCkAMY21d4f/PwJE1njz/1F49gDEV+0R7T61Fxzh8EKDQIhANS6s+zaNsaB6YOnzkXRkfY2qQgb0xXMGlfybfwKgaEU","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@35.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":716276},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"da01cfe83d0a3394e7fc0bbc5a09f3a9fb9bb80d","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_35.0.0_1783280611225_0.9349758131407258","host":"s3://npm-registry-packages-npm-production"}},"36.1.0":{"name":"@musodojo/music-theory-data","version":"36.1.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@36.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"41b2e201fe73eb680fb69501cf9570a401b5d86a","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-36.1.0.tgz","fileCount":371,"integrity":"sha512-1BOdyuRhdSJO4IxkI9unfLjKozXkRtr6oOknnqFgJCNULb7AqjelVS4W74/7xGNO+PQ0lag8HodKw8dGzKYGBQ==","signatures":[{"sig":"MEYCIQD5Y75L3GBiZRUgl4nAYhQVocC1cOnVd/nqWcqGrNa4mwIhAP03tcIMQ0EXMS3FgGp76rie1EHBj8/44DYyd6Src3V/","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@36.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":761590},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"c576ef7b6f78d173e0b920210e0f989c50bbf3cf","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_36.1.0_1783443842716_0.8927265862016946","host":"s3://npm-registry-packages-npm-production"}},"37.0.0":{"name":"@musodojo/music-theory-data","version":"37.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@37.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"f5e3e789cf66117865f60384c1ea456e26f59faa","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-37.0.0.tgz","fileCount":371,"integrity":"sha512-HcmbDRalBSj3BztXBNXgn2LfK9WFcotRP/hndXFfpt9bgOVCI5yWIeh4sZo/XeZu1u6SiwoLvj0suNp4GrBwRw==","signatures":[{"sig":"MEUCIQD0xtRysIt+wZXpScZ3SNQBBRNAkq/OeGGESKh5e8ExUQIgEjnExxa4vhIwDzddSGD3jz/SzQof2GOb/pf9+x74xDk=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@37.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":762486},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"fb9064d3c00ade38742d9107e69f8dca5e8c0d14","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_37.0.0_1783949891658_0.304167819548643","host":"s3://npm-registry-packages-npm-production"}},"37.1.0":{"name":"@musodojo/music-theory-data","version":"37.1.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@37.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"f4adce1179a3c89d5551e18a896becb90177019e","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-37.1.0.tgz","fileCount":371,"integrity":"sha512-6tz8JKMvz8zkm1OC5m/0K0j3RwOpICkHRdowcQf3O39EUSHs/Gyoa7LGRsjfuh5r5DNks5CWF2rBz9ogid1Azw==","signatures":[{"sig":"MEYCIQCLvaFyB2MULiEaPw4N9M4ohht3lSnYGRp4i6LEMhAbYAIhALKUjaKaGSqEpITlJA+z9K+dCF9byjXtIjA3PzTc1utI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@37.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":762796},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"6e92b722cf4938c3243bc88be4c527e54fe57133","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_37.1.0_1783956577171_0.02048483397100309","host":"s3://npm-registry-packages-npm-production"}},"37.2.0":{"name":"@musodojo/music-theory-data","version":"37.2.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@37.2.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"b214cf3801aabb07b4edb86daf33a28280f6bc58","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-37.2.0.tgz","fileCount":371,"integrity":"sha512-4nx6HGJxfOK6zG0nuth9WmP9qz0rQz6H96G1MZutLEsu+MLydpmele5zvIfLXTuXQebw92jK4BmqHmkIJUjTvw==","signatures":[{"sig":"MEUCIQCQ7imyI4Tki/X8/nUX2aeWaw/WhpBxteR6JDm96l9xTgIgRNgSeJCg8t6FL8bx2LHv6sc2c/9+Mv/4zeXOrLgZRxQ=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@37.2.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":763266},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"fa7410e60d076fa65f6e09f415a9cd67d20b83b3","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_37.2.0_1784193914315_0.735741289160625","host":"s3://npm-registry-packages-npm-production"}},"38.0.0":{"name":"@musodojo/music-theory-data","version":"38.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@38.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"562cb2cb9931b5995faf906a84810ed214f822de","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-38.0.0.tgz","fileCount":371,"integrity":"sha512-IKb64lckLoEmE6JqKRTLSRLMrjmeVRtMd4waTww2ifAJsvc6zliM8fN4Swh9AshJ60y2ZoEoSkZnTawvwrMnbQ==","signatures":[{"sig":"MEQCIHySuda2bwvuonpO/XdQPbKCIUmfCi2eDVHcVKm8A4btAiAPkdV0juekGoGbOGVMQ+mZqS8ZvUHVM9YeqkK/CvS5/w==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@38.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":764558},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"963ddf3f941fc74dc244d8b45b4ca70bb3f33da6","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_38.0.0_1784199346577_0.4750923561157896","host":"s3://npm-registry-packages-npm-production"}},"39.0.0":{"name":"@musodojo/music-theory-data","version":"39.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@39.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"505ac91c089b92e8cf366a96ff05d8c18ed34277","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-39.0.0.tgz","fileCount":407,"integrity":"sha512-Bos2Cv8pGhF3zS352JHPLWSk6MfWC+cR1/rfcukVGpxz/+5nh9AgdcuL63nsE1G3tT5LvN85I2IF0kI5LRMGVw==","signatures":[{"sig":"MEYCIQDxNLLRYdETfYrJil9o+wbIZNavfRJd8/6F6+ffGMtR+wIhANbT53Z4p7IoeHEyRZqjR6vzuXYbjkbiBvE9JYI+KszB","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@39.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":812336},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"2160447354cdc19b3d04a89c885c79070005d4ff","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_39.0.0_1784209325720_0.9537576606832032","host":"s3://npm-registry-packages-npm-production"}},"40.0.0":{"name":"@musodojo/music-theory-data","version":"40.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@40.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"20e3a881d5f748f1c565abca159a8f463fcd0dd5","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-40.0.0.tgz","fileCount":407,"integrity":"sha512-iwFRKu26FONBiRCGdQW2mgItx+9u6OyMXuvGB2JprlSzD+FHPnE1EfZyAv0EQECvxkOTWenq590xRYI6d8boCg==","signatures":[{"sig":"MEYCIQCy/xD4ZnivoaLn4I59ZhUjQPLiklbjGtm4GcQYR2r7yQIhALhChcI/qlKVR1tHiQLvs96lReCzjELUrHQJN1RRZQQI","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@40.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":819450},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"21972ec7393f428e49e8c172d18be9efae9da8bb","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_40.0.0_1784281195966_0.07854287668144155","host":"s3://npm-registry-packages-npm-production"}},"41.1.0":{"name":"@musodojo/music-theory-data","version":"41.1.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@41.1.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"a353b6bcf25d8efdddf1e994c9c27ef81208f1b4","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-41.1.0.tgz","fileCount":407,"integrity":"sha512-9cGBKG689/IoAn4cc7F+UP01d2YK5IQdRlQ7bi7F8m1cUMrmn8qW6SIUiTRevAkPTPFyR7US53DLCvzV578BgQ==","signatures":[{"sig":"MEQCICCFrD5y8QDFdeJkJM/p+qlQGEh2Cq0j+SZz0P1xfGpTAiAuCM3yyKnAop14byULH0UeRg55peBUYaK8dBVj57GosQ==","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@41.1.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":933375},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"ee82869653611041f0f780ba5f89c459e583a9ad","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_41.1.0_1784466921370_0.3340077045250289","host":"s3://npm-registry-packages-npm-production"}},"42.0.0":{"name":"@musodojo/music-theory-data","version":"42.0.0","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","_id":"@musodojo/music-theory-data@42.0.0","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"homepage":"https://github.com/conor-dowdall/music-theory-data#readme","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"dist":{"shasum":"eb9732470992edfdc8342ed36325d0ccc118a735","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-42.0.0.tgz","fileCount":427,"integrity":"sha512-g6AheToB9CkrYENJr9Q62iMD6pL42sroHOuhuW0qhjkAVY8lk+pcPCB0txl6nNQpmRoYD/xoI2dcfsrpiWykdA==","signatures":[{"sig":"MEUCIQDetxHNkSL2Rsjyo+zyY3wl/hIEd2RCTRRcQEJ4OZx2BgIgLSgMjQ0uFSO8XvMa2FRZsikTpTBHrzq/mhk1jW7KIMU=","keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U"}],"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@42.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"unpackedSize":977248},"main":"./script/src/mod.js","types":"./script/src/mod.d.ts","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"gitHead":"163282c4feecf24728ebbe840c9174f3a005ac45","scripts":{"test":"node test_runner.js"},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"repository":{"url":"git+https://github.com/conor-dowdall/music-theory-data.git","type":"git"},"_npmVersion":"11.16.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","directories":{},"_nodeVersion":"24.18.0","_hasShrinkwrap":false,"devDependencies":{"picocolors":"^1.0.0","@types/node":"^20.9.0","@deno/shim-deno":"~0.18.0"},"_npmOperationalInternal":{"tmp":"tmp/music-theory-data_42.0.0_1784470395112_0.31685389822570365","host":"s3://npm-registry-packages-npm-production"}},"43.0.0":{"name":"@musodojo/music-theory-data","version":"43.0.0","description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"author":{"name":"Conor Dowdall"},"repository":{"type":"git","url":"git+https://github.com/conor-dowdall/music-theory-data.git"},"license":"CC0-1.0","bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"main":"./script/src/mod.js","module":"./esm/src/mod.js","exports":{".":{"import":"./esm/src/mod.js","require":"./script/src/mod.js"}},"scripts":{"test":"node test_runner.js"},"devDependencies":{"@types/node":"^20.9.0","picocolors":"^1.0.0","@deno/shim-deno":"~0.18.0"},"gitHead":"a23083c49664c46105ed5126b3f0fa462e308a79","types":"./script/src/mod.d.ts","_id":"@musodojo/music-theory-data@43.0.0","homepage":"https://github.com/conor-dowdall/music-theory-data#readme","_nodeVersion":"24.18.0","_npmVersion":"11.16.0","dist":{"integrity":"sha512-UKy66K0C1kV55uFMgaMtIujmZ8SWqSCc6cy5AswVUTspCWVGVCu2bee+DZlF3MkSIg29Gz004DEAfJu8SnNTNQ==","shasum":"bd4226b28304ae0219534172fe9551a8fc58371f","tarball":"https://registry.npmjs.org/@musodojo/music-theory-data/-/music-theory-data-43.0.0.tgz","fileCount":427,"unpackedSize":982524,"attestations":{"url":"https://registry.npmjs.org/-/npm/v1/attestations/@musodojo%2fmusic-theory-data@43.0.0","provenance":{"predicateType":"https://slsa.dev/provenance/v1"}},"signatures":[{"keyid":"SHA256:DhQ8wR5APBvFHLF/+Tc+AYvPOdTpcIDqOhxsBHRwC7U","sig":"MEQCIDF2kuioJFi40PJwj6aY1EoCIDj7ebHj6PFc+b+dHHBuAiB7ToGMx3COfiALY1hfQ8fL8xKkbgOkAaHSurTKSdL/9g=="}]},"_npmUser":{"name":"GitHub Actions","email":"npm-oidc-no-reply@github.com","trustedPublisher":{"id":"github","oidcConfigId":"oidc:bfa4dee2-efc3-48a2-ba7d-2de664cd27a7"}},"directories":{},"maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"_npmOperationalInternal":{"host":"s3://npm-registry-packages-npm-production","tmp":"tmp/music-theory-data_43.0.0_1784484939736_0.9496754676698418"},"_hasShrinkwrap":false}},"time":{"created":"2025-09-18T17:45:04.950Z","modified":"2026-07-19T18:15:40.178Z","14.0.0":"2025-09-18T17:45:05.220Z","14.0.1":"2025-09-18T17:56:08.638Z","14.0.2":"2025-09-26T09:56:01.591Z","15.0.0":"2025-09-28T15:00:16.985Z","15.1.0":"2025-10-02T19:00:01.936Z","15.4.0":"2025-10-08T19:04:53.637Z","16.0.6":"2025-10-12T14:08:03.047Z","16.0.7":"2025-10-12T15:08:45.132Z","16.1.0":"2025-10-14T18:54:56.680Z","16.1.1":"2025-10-14T19:10:39.859Z","16.1.2":"2025-10-15T11:54:50.470Z","17.0.0":"2025-10-15T13:55:18.346Z","18.0.0":"2025-10-16T18:02:03.244Z","19.0.1":"2025-10-17T16:10:50.702Z","19.0.2":"2025-10-17T16:40:02.862Z","19.0.3":"2025-10-17T16:50:08.988Z","20.0.0":"2025-10-18T19:55:16.204Z","20.1.0":"2025-10-19T18:41:22.493Z","20.1.1":"2025-10-19T18:46:18.510Z","20.1.2":"2025-10-23T20:02:45.274Z","20.1.3":"2025-10-24T11:11:51.136Z","20.2.0":"2025-11-04T17:01:39.355Z","20.2.1":"2025-11-15T14:38:21.546Z","20.3.0":"2025-11-25T13:54:27.086Z","20.4.0":"2025-11-25T13:55:13.511Z","20.6.1":"2026-02-12T11:13:32.306Z","20.6.2":"2026-02-12T12:18:08.570Z","21.0.0":"2026-02-12T19:39:36.601Z","21.1.0":"2026-02-21T21:03:08.128Z","21.1.1":"2026-02-22T16:40:22.789Z","22.0.0":"2026-02-24T19:05:25.888Z","23.0.0":"2026-02-26T19:26:36.333Z","24.0.0":"2026-03-01T15:37:43.958Z","25.0.0":"2026-03-07T14:24:29.078Z","26.0.0":"2026-03-08T14:55:01.951Z","26.1.0":"2026-04-12T14:50:20.605Z","26.1.1":"2026-04-12T15:21:42.592Z","26.2.0":"2026-04-22T09:24:19.822Z","26.3.0":"2026-04-23T14:09:12.411Z","26.4.0":"2026-04-28T16:33:19.508Z","26.4.1":"2026-04-28T18:14:54.847Z","26.5.0":"2026-04-28T18:51:03.419Z","27.0.0":"2026-05-01T17:39:43.717Z","28.0.0":"2026-05-05T19:47:50.942Z","29.0.0":"2026-05-06T17:17:32.971Z","30.0.0":"2026-05-06T19:15:40.378Z","31.0.0":"2026-05-07T07:17:48.448Z","31.1.0":"2026-05-07T07:39:56.436Z","32.0.0":"2026-05-15T11:18:30.163Z","33.0.0":"2026-07-05T14:29:48.999Z","34.0.0":"2026-07-05T14:59:17.586Z","35.0.0":"2026-07-05T19:43:31.354Z","36.1.0":"2026-07-07T17:04:02.898Z","37.0.0":"2026-07-13T13:38:11.812Z","37.1.0":"2026-07-13T15:29:37.374Z","37.2.0":"2026-07-16T09:25:14.465Z","38.0.0":"2026-07-16T10:55:46.729Z","39.0.0":"2026-07-16T13:42:05.874Z","40.0.0":"2026-07-17T09:39:56.169Z","41.1.0":"2026-07-19T13:15:21.507Z","42.0.0":"2026-07-19T14:13:15.262Z","43.0.0":"2026-07-19T18:15:39.878Z"},"bugs":{"url":"https://github.com/conor-dowdall/music-theory-data/issues"},"author":{"name":"Conor Dowdall"},"license":"CC0-1.0","homepage":"https://github.com/conor-dowdall/music-theory-data#readme","keywords":["music","theory","enharmonic","scale","mode","chord","arpeggio"],"repository":{"type":"git","url":"git+https://github.com/conor-dowdall/music-theory-data.git"},"description":"The musician-friendly TypeScript library for scales, modes, chords, and arpeggios.","maintainers":[{"name":"conordowdall","email":"conordowdallmail@gmail.com"}],"readme":"# Muso Dojo | Music Theory Data\n\nTyped music-theory data and app helpers for TypeScript and JavaScript.\n\nUse this package when you are building a music app and need reliable theory\nbuilding blocks: note names, intervals, scales, modes, chords, chord\nprogressions, string-instrument tunings, MIDI helpers, and UI-friendly labels.\n\nThis is not an audio engine, notation renderer, sequencer, or symbolic score\nformat. It is the theory-data layer you can build those experiences on top of.\n\n## Is This Useful For My App?\n\nThis package is a good fit if you need to:\n\n- turn a root and scale/chord key into notes, intervals, chord names, or roman\n  numerals\n- browse or search a catalog of scales, modes, chords, dyads, and single-note\n  collections\n- render compact labels such as `C`, `F♯ø7`, or `B♭ Major`\n- offer selectable 12-slot display layers for fretboards, keyboards, grids, or\n  note-color interfaces\n- resolve common chord progressions into roman symbols or concrete chord names\n- work with typed note names, intervals, chromatic indexes, MIDI note labels,\n  note colors, and string-instrument tunings\n\nIf you mostly need playback, engraving, MusicXML/MIDI-file parsing, or advanced\ncomposition algorithms, this package is probably only one piece of your stack.\n\n## Installation\n\n```bash\ndeno add jsr:@musodojo/music-theory-data\n```\n\n```bash\nnpm install @musodojo/music-theory-data\n```\n\n```ts\nimport {\n  chordProgression,\n  noteCollection,\n  rootAndNoteCollection,\n} from \"@musodojo/music-theory-data\";\n```\n\n## Core Idea\n\nMost app workflows start with two values:\n\n```ts\nconst rootNote = \"C\";\nconst noteCollectionKey = \"ionian\";\n```\n\nFrom those, the `rootAndNoteCollection` focus object gives you the common\nderived values an app usually needs.\n\n```ts\nimport { rootAndNoteCollection } from \"@musodojo/music-theory-data\";\n\nconst identity = rootAndNoteCollection.getIdentity({\n  rootNote: \"C\",\n  noteCollectionKey: \"major\",\n});\n\nconsole.log(identity.label);\n// \"C\"\n\nconsole.log(rootAndNoteCollection.getNoteNames(\"F\", \"ionian\"));\n// [\"F\", \"G\", \"A\", \"B♭\", \"C\", \"D\", \"E\", \"F\"]\n\nconsole.log(rootAndNoteCollection.getIntervals(\"C\", \"dominant9\"));\n// [\"1\", \"3\", \"5\", \"♭7\", \"9\"]\n\nconsole.log(rootAndNoteCollection.getRomanTriads(\"C\", \"ionian\"));\n// [\"I\", \"ii\", \"iii\", \"IV\", \"V\", \"vi\", \"vii°\"]\n```\n\nDirect functions such as `getNoteNamesForRootAndNoteCollectionKey` are also\nexported. The focus object is there so new developers have one obvious place to\nstart.\n\nOther focused entry points cover the two next most common workflows:\n\n```ts\nimport { chordProgression, noteCollection } from \"@musodojo/music-theory-data\";\n\nconsole.log(noteCollection.getIntervals(\"major\"));\n// [\"1\", \"3\", \"5\"]\n\nconsole.log(chordProgression.getChordNames(\"C\", \"oneSixFourFive\"));\n// [\"C\", \"Am\", \"F\", \"G\"]\n```\n\n| Starting point                  | Use                     | Example                            |\n| ------------------------------- | ----------------------- | ---------------------------------- |\n| Root + note collection key      | `rootAndNoteCollection` | `getNoteNames(\"F\", \"ionian\")`      |\n| Note collection key/search      | `noteCollection`        | `find({ query: \"minor triad\" })`   |\n| Chord progression key or object | `chordProgression`      | `getRomanSymbols(\"autumnLeavesA\")` |\n\n## What Is Included?\n\n| Area                        | Useful exports                                                                  |\n| --------------------------- | ------------------------------------------------------------------------------- |\n| Root + collection workflows | `rootAndNoteCollection`, `getIdentityForRootAndNoteCollection`                  |\n| Scale/chord catalog         | `noteCollection`, `noteCollections`, `groupedNoteCollections`                   |\n| UI display layers           | `rootAndNoteCollection.displayLayers`                                           |\n| Chord progressions          | `chordProgression`, `chordProgressions`, `getChordProgressionRomanSymbols`      |\n| Theory labels               | `noteNames`, `rootNotes`, `intervalToIntegerMap`, chord classification          |\n| Parsing and normalization   | `normalizeNoteNameString`, `normalizeRootNoteString`, `normalizeIntervalString` |\n| MIDI and colors             | `isMidiNoteNumber`, `getNoteColorIndex`, `colorCollections`                     |\n| String instruments          | `stringInstruments`, `stringInstrumentTunings`, tuning key guards               |\n| Meter-neutral rhythm        | `beatSubdivisions`, `getBeatSubdivisionStep`                                    |\n\nFor the full exported API, use the\n[JSR API documentation](https://jsr.io/@musodojo/music-theory-data/doc). The\n`tests/` directory is also a good source of practical examples.\n\n## Browsing The Catalog\n\n`noteCollections` is the central catalog of built-in note, dyad, scale, mode,\narpeggio, and chord pitch collections.\n\n```ts\nimport {\n  noteCollection,\n  noteCollections,\n  searchNoteCollections,\n} from \"@musodojo/music-theory-data\";\n\nconsole.log(noteCollections.ionian.primaryName);\n// \"Major\"\n\nconsole.log(noteCollection.find({ query: \"minor triad\" })?.primaryName);\n// \"m\"\n\nconsole.log(noteCollections.ionian.intervals);\n// [\"1\", \"2\", \"3\", \"4\", \"5\", \"6\", \"7\", \"8\"]\n\nconst dominantArpeggios = searchNoteCollections({\n  query: \"dominant\",\n  type: \"arpeggio\",\n});\n\nconsole.log(dominantArpeggios.map((collection) => collection.primaryName));\n// [\"7\", \"9\", \"11\", \"13\", \"aug7\"]\n```\n\nCollections include structured metadata such as category, display names,\nintervals, integer semitone values, type tags, characteristics, and interval\npatterns.\n\nCatalogs that need stable iteration expose ordered key arrays such as\n`colorCollectionKeys`, `noteCollectionGroupKeys`, `stringInstrumentKeys`, and\n`stringInstrumentTuningKeys`. Matching runtime guards safely validate unknown\npersisted values without accepting inherited JavaScript property names.\n\n### Addressing Collection Tones\n\nUse a tone sequence when an app needs authored interval identity, compound\nsemitone distance, and normalized pitch class together:\n\n```ts\nconst sequence = noteCollection.getToneSequence(\"dominant9\");\nconsole.log(sequence.tones.at(-1));\n// { collectionIndex: 4, semitones: 14, pitchClass: 2, interval: \"9\", ... }\n\nconsole.log(noteCollection.getToneAtPosition(\"major\", -1));\n// The fifth one cycle below: { collectionIndex: 2, cycle: -1, resolvedSemitones: -5, ... }\n```\n\nPositions are signed cyclic addresses over authored tones. They are not\nguaranteed to form an ascending pitch sequence: an authored extension can\noverlap the following cycle. `createNoteCollectionToneSequence()` provides the\nsame derivation for custom `NoteCollection` values.\n\nChord collections additionally expose stable musical classification, separate\nfrom application-specific labels such as “Common” or “More”:\n\n```ts\nimport {\n  getChordCollectionClassification,\n  getChordCollectionKeysByClassification,\n} from \"@musodojo/music-theory-data\";\n\nconsole.log(getChordCollectionClassification(\"augmented7\"));\n// { family: \"augmented\", structure: \"seventh\" }\n\nconsole.log(getChordCollectionKeysByClassification({\n  family: \"dominant\",\n  structure: \"extended\",\n}));\n// [\"dominant9\", \"dominant11\", \"dominant13\"]\n```\n\nThe supported modal harmony systems are compiled from the interval data for\nIonian, harmonic minor, and melodic minor. Canonical APIs return chord\ncollection keys; suffix and rooted-name APIs render those identities through the\nchord catalog:\n\n```ts\nimport {\n  noteCollection,\n  rootAndNoteCollection,\n} from \"@musodojo/music-theory-data\";\n\nconsole.log(noteCollection.getTriadChordCollectionKeys(\"ionian\"));\n// [\"major\", \"minor\", \"minor\", \"major\", \"major\", \"minor\", \"diminishedTriad\"]\n\nconsole.log(noteCollection.getTriadChordSuffixes(\"ionian\"));\n// [\"\", \"m\", \"m\", \"\", \"\", \"m\", \"°\"]\n\nconsole.log(rootAndNoteCollection.getTriadChordNames(\"C\", \"ionian\"));\n// [\"C\", \"Dm\", \"Em\", \"F\", \"G\", \"Am\", \"B°\"]\n```\n\nCollection titles and rooted chord symbols are intentionally separate. The\nmajor-triad collection keeps its catalog title `M`, while its rooted symbol has\nan empty suffix, so `getChordNameForRootAndChordCollectionKey(\"A\", \"major\")`\nreturns `\"A\"` rather than `\"AM\"`. Roman rendering remains independent as well:\nthe same collection renders as `I`, `IV`, or `V` according to scale degree.\n\n## UI Display Layers\n\n`rootAndNoteCollection.displayLayers` is designed for interfaces that let users\nchoose how to label the same 12 pitch-class slots: note names, intervals,\nextensions, chord names, or roman numerals.\n\n```ts\nimport { rootAndNoteCollection } from \"@musodojo/music-theory-data\";\n\nconst options = {\n  fillChromatic: true,\n  rotateToRootInteger0: true,\n} as const;\n\nconst noteNames = rootAndNoteCollection.displayLayers.noteNames.get(\n  \"C\",\n  \"ionian\",\n  options,\n);\n\nconsole.log(noteNames);\n// [\"C\", \"D♭\", \"D\", \"E♭\", \"E\", \"F\", \"G♭\", \"G\", \"A♭\", \"A\", \"B♭\", \"B\"]\n\nconsole.log(Object.keys(rootAndNoteCollection.displayLayers));\n// [\"noteNames\", \"intervals\", \"extensions\", \"compoundIntervals\", \"triads\", \"seventhChords\", \"romanTriads\", \"romanSeventhChords\"]\n```\n\nEach entry includes metadata for app UI, including `name`, `shortName`,\n`description`, `outputPreview`, `sampleOutput`, and availability.\n\n## Chord Progressions\n\nProgression structures contain only a non-empty sequence of relative chord\nevents. Catalog names and categories are stored separately in progression\ndefinitions.\n\n```ts\nimport {\n  chordProgression,\n  chordProgressionDefinitions,\n  getChordProgressionChordNames,\n  getChordProgressionRomanSymbols,\n} from \"@musodojo/music-theory-data\";\n\nconsole.log(chordProgression.getRomanSymbols(\"oneSixFourFive\"));\n// [\"I\", \"vi\", \"IV\", \"V\"]\n\nconsole.log(chordProgression.getRomanSymbolsByBar(\"oneOneFiveFive\"));\n// [[\"I\"], [\"I\"], [\"V\"], [\"V\"]]\n\nconsole.log(chordProgression.getRomanSymbolsByBar(\"majorTwoFiveOne\"));\n// [[\"iim7\"], [\"V7\"], [\"IM7\"], [\"IM7\"]]\n\nconsole.log(chordProgressionDefinitions.oneSixFourFive);\n// { name: \"I | vi | IV | V\", category: \"commonLoops\", progression: { chords: [...] } }\n\nconst resolved = chordProgression.resolve(\"C\", \"oneSixFourFive\");\nconsole.log(resolved.events[1]);\n// {\n//   eventIndex: 1,\n//   chord: { degree: \"6\", chordCollectionKey: \"minor\", durationInBars: 1 },\n//   reference: { rootNote: \"A\", practicalRootNote: \"A\", ... },\n//   directRomanSymbol: \"vi\",\n//   romanSymbol: \"vi\",\n//   startInBars: 1,\n//   durationInBars: 1,\n// }\n\nconst timing = chordProgression.getTiming(\"oneFourOneFiveSplitReturn\");\nconsole.log(timing.bars[6].segments);\n// Two half-bar segments linked to authored events 6 and 7.\n\nconst parsed = chordProgression.parse(persistedValue);\nif (!parsed.success) console.log(parsed.issues);\n\nconst parsedDefinition = chordProgression.parseDefinition(savedCatalogEntry);\nif (!parsedDefinition.success) console.log(parsedDefinition.issues);\n\nconsole.log(chordProgression.normalizeRootDegree(\"b3\"));\n// \"♭3\"\n\nconsole.log(getChordProgressionChordNames(\"C\", \"oneSixFourFive\"));\n// [\"C\", \"Am\", \"F\", \"G\"]\n\nconsole.log(getChordProgressionRomanSymbols(\"autumnLeavesA\"));\n// [\"ivm7\", \"♭VII7\", \"♭IIIM7\", \"♭VIM7\", \"iiø7\", \"V7\", \"i\"]\n```\n\nUse `getChordProgressionDirectRomanSymbols` when you want symbols derived only\nfrom degree and chord quality. Use `getChordProgressionRomanSymbols` when you\nwant authored analysis labels, such as secondary-function symbols, where they\nexist. `getChordProgressionRomanSymbolsByBar` expands sustained chords across\nbars while preserving multiple changes within a bar as a nested array. An app\ncan then choose its own bar and within-bar separators. Built-in structural names\nuse the conventional `|` bar line and ordinary spaces within a bar; recognizable\ncatalog names such as `Major ii–V–I` remain concise names.\n\nUse `chordProgression.resolve()` when an app needs chord references, Roman\nsymbols, authored events, and bar timing together. Its `events` are the\ncanonical ordered timeline; each bar contains positioned segments linked back to\nthose events by `eventIndex`. Use `chordProgression.getTiming()` when rooted\nchord data is not needed. `requiredBarDivision` reports the smallest equal\nsubdivision needed by the authored durations. The model remains independent of\ntempo, beats, notation, and playback.\n\nEqual beat subdivisions are similarly meter-neutral. For example,\n`getBeatSubdivisionStep(\"3-per-beat\")` returns the exact ratio\n`{ numerator: 1, denominator: 3 }`; the package does not decide whether those\nsteps are triplets, compound-meter pulses, swing, or UI density choices.\n\nPersisted progression data can be checked with `chordProgression.parse()` or\n`validateChordProgression()`. Diagnostics identify invalid chord events by\n`chordIndex`. Incomplete final bars remain valid; `chordProgression.getTiming()`\nreports them through `endsOnBarBoundary` so each application can apply its own\npolicy. Timelines above 100,000 bars are rejected because the resolved model\nmaterializes its bar segments. Use `chordProgression.parseDefinition()` when\npersisted data includes a catalog name, optional category, and nested\nprogression structure.\n\n## Package Links\n\n- [JSR package](https://jsr.io/@musodojo/music-theory-data)\n- [npm package](https://www.npmjs.com/package/@musodojo/music-theory-data)\n- [GitHub Discussions](https://github.com/conor-dowdall/music-theory-data/discussions)\n- [GitHub Issues](https://github.com/conor-dowdall/music-theory-data/issues)\n","readmeFilename":"README.md"}