refactor pattern context to use offset.

This commit is contained in:
Vixalie 2025-03-06 14:56:03 +08:00
parent b92dad0346
commit f8a0724e67

View File

@ -52,7 +52,7 @@ export interface ControlPoint {
export class Pulse {
order: number;
id: number;
duration: number;
offset: number;
width: number;
maniac: boolean;
frequency: number;
@ -63,7 +63,7 @@ export class Pulse {
constructor(order: number, width: number, frequency: number) {
this.id = v4();
this.order = order;
this.duration = 25;
this.offset = 0;
this.width = width;
this.maniac = false;
this.frequency = frequency;
@ -114,9 +114,9 @@ export function createNewPulse(pattern: Pattern): Pulse {
export function totalDuration(pattern: Pattern): number {
return reduce(
pattern.smoothRepeat ? pattern.pulses : pattern.pulses.slice(0, -1),
(former, pulse) => former + pulse.duration,
0,
pattern.pulses,
(former, pulse) => former + pulse.offset,
pattern.smoothRepeat ? 100 : 0,
);
}
@ -126,7 +126,7 @@ export const PatternsAtom = atomFamily((keyword: string) =>
const patterns = await invoke<Pattern[]>('list_patterns', { keyword });
return patterns;
} catch (e) {
console.error('[retreiving pattern list]', e);
console.error('[retrieving pattern list]', e);
}
return [];
}),