Merge branch 'main' of github.com:Bubobubobubobubo/Topos
This commit is contained in:
@ -18,7 +18,7 @@ declare global {
|
|||||||
repeatEven(amount: number): T;
|
repeatEven(amount: number): T;
|
||||||
repeatOdd(amount: number): T;
|
repeatOdd(amount: number): T;
|
||||||
beat(division: number): T;
|
beat(division: number): T;
|
||||||
dur(durations: number[]): T;
|
dur(...durations: number[]): T;
|
||||||
b(division: number): T;
|
b(division: number): T;
|
||||||
bar(): T;
|
bar(): T;
|
||||||
pick(): T;
|
pick(): T;
|
||||||
@ -170,13 +170,12 @@ export const makeArrayExtensions = (api: UserAPI) => {
|
|||||||
};
|
};
|
||||||
Array.prototype.b = Array.prototype.beat;
|
Array.prototype.b = Array.prototype.beat;
|
||||||
|
|
||||||
Array.prototype.dur = function (...durations) {
|
Array.prototype.dur = function (...durations: number[]) {
|
||||||
const timepos = api.app.clock.pulses_since_origin;
|
const timepos = api.app.clock.pulses_since_origin;
|
||||||
const ppqn = api.ppqn();
|
const ppqn = api.ppqn();
|
||||||
const adjustedDurations = this.map(
|
const adjustedDurations: number[] = this.map(
|
||||||
(_, index) => durations[index % durations.length]
|
(_, index) => durations[index % durations.length]
|
||||||
);
|
);
|
||||||
// @ts-ignore
|
|
||||||
const totalDurationInPulses = adjustedDurations.reduce(
|
const totalDurationInPulses = adjustedDurations.reduce(
|
||||||
// @ts-ignore
|
// @ts-ignore
|
||||||
(acc, duration) => acc + duration * ppqn,
|
(acc, duration) => acc + duration * ppqn,
|
||||||
|
|||||||
Reference in New Issue
Block a user