Add GroupPattern, SongPosition, and update ProjectRawData structure
This commit is contained in:
@@ -123,6 +123,15 @@ export type PatternEvent =
|
||||
| MidiPatternEvent
|
||||
| UnknownPatternEvent;
|
||||
|
||||
export type GroupPattern = {
|
||||
group: Group;
|
||||
patternNumber: number;
|
||||
bars: number;
|
||||
recordCount: number;
|
||||
events: PatternEvent[];
|
||||
notes: Record<number, Note[]>;
|
||||
};
|
||||
|
||||
export type SceneGroupPatternData = {
|
||||
group: Group;
|
||||
patternNumber: number;
|
||||
@@ -132,11 +141,19 @@ export type SceneGroupPatternData = {
|
||||
};
|
||||
|
||||
export type Scene = {
|
||||
number: number;
|
||||
name: string;
|
||||
patternNumbers: Record<Group, number>;
|
||||
timeSignature: TimeSignature;
|
||||
patterns: Pattern[];
|
||||
patternEvents: Partial<Record<Group, SceneGroupPatternData>>;
|
||||
};
|
||||
|
||||
export type SongPosition = {
|
||||
position: number;
|
||||
sceneNumber: number;
|
||||
};
|
||||
|
||||
export type Note = {
|
||||
note: number;
|
||||
position: number;
|
||||
@@ -170,7 +187,9 @@ export type Pad = {
|
||||
|
||||
export type ProjectRawData = {
|
||||
pads: Record<string, Pad[]>;
|
||||
groupPatterns: GroupPattern[];
|
||||
scenes: Scene[];
|
||||
songPositions: SongPosition[];
|
||||
settings: ProjectSettings;
|
||||
effects: Effects;
|
||||
sounds: Sound[];
|
||||
@@ -231,6 +250,7 @@ export type ExporterParams = {
|
||||
allScenes?: boolean; // export all scenes
|
||||
selectedScenes?: string[]; // export only selected scenes (when allScenes is false)
|
||||
customSceneNames?: Record<string, string>;
|
||||
keepUnusedPatterns?: boolean;
|
||||
};
|
||||
|
||||
export type SoundInfo = {
|
||||
|
||||
Reference in New Issue
Block a user