Update pattern filtering logic and add faderPattern test case
This commit is contained in:
@@ -378,7 +378,7 @@ function abletonTransformer(data: ProjectRawData, exporterParams: ExporterParams
|
||||
data.groupPatterns
|
||||
.filter(
|
||||
(pattern) =>
|
||||
pattern.events.length > 0 &&
|
||||
getPatternSources(pattern).length > 0 &&
|
||||
!referencedPatterns.has(getPatternKey(pattern.group, pattern.patternNumber)),
|
||||
)
|
||||
.toSorted((a, b) => {
|
||||
|
||||
@@ -80,6 +80,30 @@ function pattern(
|
||||
};
|
||||
}
|
||||
|
||||
function faderPattern(group: Group, patternNumber: number): GroupPattern {
|
||||
return {
|
||||
group,
|
||||
patternNumber,
|
||||
bars: 1,
|
||||
recordCount: 1,
|
||||
events: [
|
||||
{
|
||||
type: 'fader',
|
||||
kind: PatternEventKind.Fader,
|
||||
position: 0,
|
||||
source: 0,
|
||||
flags: 0,
|
||||
rawData: new Uint8Array(8),
|
||||
parameter: FaderParam.LPF,
|
||||
reserved: 0,
|
||||
rawValue: 0,
|
||||
value: 0,
|
||||
},
|
||||
],
|
||||
notes: {},
|
||||
};
|
||||
}
|
||||
|
||||
function scene(
|
||||
number: number,
|
||||
patternNumbers: Record<Group, number>,
|
||||
@@ -111,6 +135,7 @@ function project(): ProjectRawData {
|
||||
pattern('a', 3, 1, 1, 64),
|
||||
pattern('c', 3, 1, 0, 67),
|
||||
pattern('b', 1, 1, 0, 38),
|
||||
faderPattern('d', 2),
|
||||
],
|
||||
scenes: [
|
||||
scene(1, { a: 1, b: 2, c: 0, d: 0 }, 3, 4),
|
||||
|
||||
Reference in New Issue
Block a user