Secure your code as it's written. Use Snyk Code to scan source code in minutes - no build needed - and fix issues immediately.
function trBy (i, p) {
if (p === null) return null
const f = i[1] + p[1]
if (p.length === 2) return pcPitch(f)
const o = i[2] + p[2]
if (p.length === 3) return notePitch(f, o)
return ivlPitch(f, o)
}
return (n) => tr(t, ivlPitch(n, 0))
}
function trBy(i, p) {
if (p === null) return null;
var f = i[1] + p[1];
if (p.length === 2) return tonalPitches.pcPitch(f);
var o = i[2] + p[2];
if (p.length === 3) return tonalPitches.notePitch(f, o);
return tonalPitches.ivlPitch(f, o);
}
function substr (a, b) {
if (a.length !== b.length) return null
return isPitchClass(a)
? ivlPitch(b[1] - a[1])
: ivlPitch(b[1] - a[1], b[2] - a[2])
}
var relative = function relative(rel, key) {
var r = asKey(rel);
if (hasTonic(r)) return null;
var k = asKey(key);
if (!hasTonic(k)) return null;
var i = tonalPitches.ivlPitch(modeNum(r) - modeNum(k), 0);
var tonic = tonalDistances.transpose(k.tonic, i);
return build(tonic, rel);
};
function substr (a, b) {
if (a.length !== b.length) return null
return isPitchClass(a)
? ivlPitch(b[1] - a[1])
: ivlPitch(b[1] - a[1], b[2] - a[2])
}