UNPKG

brand-music

Version:

Strongly typed music theory library

168 lines (163 loc) 4.47 kB
import { fromIntMod } from "./chunk-4NNVWJGY.js"; import { fromIntMod as fromIntMod2, invert } from "./chunk-AVZSITO3.js"; import { add, addChecked, all, asInt, clamp, divChecked, divRound, divTrunc, is, isInt, isNonNegativeInt, makeAbs, makeRound, makeTrunc, modded, mul, mulChecked, mulRound, mulTrunc, sub, subChecked } from "./chunk-YLMQSMVX.js"; // src/internal/MidiNoteNumber.ts var min = 0; var max = 127; var hasShape = is(min, max); var mark = (_v) => true; var markNum = (v) => hasShape(v); var markUnknown = (v) => hasShape(v); var from = (v) => v; var fromNum = (v) => markNum(v) ? v : void 0; var fromIntClamp = (v) => from(clamp(min, max)(v)); var fromIntMod3 = (v) => from(modded(min, max)(v)); var fromUnknown = (v) => markUnknown(v) ? v : void 0; var const_ = (v) => v; var MIN = const_(min); var MAX = const_(max); var ALL = all(min, max).map(const_); var C_1 = const_(0); var C4 = const_(60); var G9 = const_(127); // src/internal/PitchInterval.ts var hasShape2 = isInt; var mark2 = (_v) => true; var markNum2 = (v) => hasShape2(v); var markUnknown2 = (v) => hasShape2(v); var from2 = (v) => v; var fromNum2 = (v) => markNum2(v) ? v : void 0; var fromNumRound = (v) => from2(makeRound(v)); var fromNumTrunc = (v) => from2(makeTrunc(v)); var fromUnknown2 = (v) => markUnknown2(v) ? v : void 0; var fromUndefinedable = (v) => v != null ? from2(v) : v; var add2 = (a, b) => from2(add(a, b)); var addChecked2 = (a, b) => fromUndefinedable(addChecked(a, b)); var sub2 = (a, b) => from2(sub(a, b)); var subChecked2 = (a, b) => fromUndefinedable(subChecked(a, b)); var mul2 = (a, b) => from2(mul(a, b)); var mulChecked2 = (a, b) => fromUndefinedable(mulChecked(a, b)); var mulRound2 = (a, b) => from2(mulRound(a, b)); var mulTrunc2 = (a, b) => from2(mulTrunc(a, b)); var divChecked2 = (a, b) => fromUndefinedable(divChecked(a, b)); var divRound2 = (a, b) => from2(divRound(a, b)); var divTrunc2 = (a, b) => from2(divTrunc(a, b)); var octaves = (pi) => pi === 0 ? 0 : makeAbs(makeTrunc(pi / 12)); var direction = (pi) => pi < 0 ? -1 : pi > 0 ? 1 : 0; // src/internal/Semitones.ts var hasShape3 = isNonNegativeInt; var mark3 = (_v) => true; var markNum3 = (v) => hasShape3(v); var markUnknown3 = (v) => hasShape3(v); var from3 = (v) => v; var fromNum3 = (v) => markNum3(v) ? v : void 0; var fromIntAbs = (v) => from3(makeAbs(v)); var fromUnknown3 = (v) => markUnknown3(v) ? v : void 0; var const_2 = (v) => v; var MIN2 = const_2(0); var octaves2 = (st) => st === 0 ? 0 : makeTrunc(st / 12); // src/internal/conversion.ts var icFromPic = (pic) => Math.min(pic, invert(pic)); var icBetweenPc = (a, b) => icFromPic(picBetweenPc(a, b)); var mnnAdd = (value, interval) => add(asInt(value), asInt(interval)); var mnnTransposeChecked = (value, interval) => fromNum(mnnAdd(value, interval)); var mnnTransposeClamped = (value, interval) => fromIntClamp(mnnAdd(value, interval)); var mnnTransposeModded = (value, interval) => fromIntMod3(mnnAdd(value, interval)); var pcTranspose = (value, interval) => fromIntMod(add(asInt(value), asInt(interval))); var pcFromMnn = (mnn) => fromIntMod(asInt(mnn)); var piBetweenMnn = (from4, to) => from2(sub(asInt(to), asInt(from4))); var picBetweenPc = (from4, to) => fromIntMod2(sub(asInt(to), asInt(from4))); var picFromPi = (pi) => fromIntMod2(pi); var picFromSemitones = (semitones) => fromIntMod2(semitones); var stFromPi = (pi) => fromIntAbs(pi); var stBetweenMnn = (a, b) => fromIntAbs(sub(asInt(a), asInt(b))); export { hasShape, mark, markNum, markUnknown, from, fromNum, fromIntClamp, fromIntMod3 as fromIntMod, fromUnknown, MIN, MAX, ALL, C_1, C4, G9, hasShape2, mark2, markNum2, markUnknown2, from2, fromNum2, fromNumRound, fromNumTrunc, fromUnknown2, add2 as add, addChecked2 as addChecked, sub2 as sub, subChecked2 as subChecked, mul2 as mul, mulChecked2 as mulChecked, mulRound2 as mulRound, mulTrunc2 as mulTrunc, divChecked2 as divChecked, divRound2 as divRound, divTrunc2 as divTrunc, octaves, direction, hasShape3, mark3, markNum3, markUnknown3, from3, fromNum3, fromIntAbs, fromUnknown3, MIN2, octaves2, icFromPic, icBetweenPc, mnnTransposeChecked, mnnTransposeClamped, mnnTransposeModded, pcTranspose, pcFromMnn, piBetweenMnn, picBetweenPc, picFromPi, picFromSemitones, stFromPi, stBetweenMnn }; //# sourceMappingURL=chunk-QCIP3WES.js.map