Update type definitions for scene data and add project group constant
This commit is contained in:
@@ -2,6 +2,7 @@ import JSZip from 'jszip';
|
|||||||
import {
|
import {
|
||||||
Group,
|
Group,
|
||||||
GroupFaderParam,
|
GroupFaderParam,
|
||||||
|
GroupPattern,
|
||||||
Note,
|
Note,
|
||||||
Pad,
|
Pad,
|
||||||
PadCode,
|
PadCode,
|
||||||
@@ -12,7 +13,9 @@ import {
|
|||||||
Scene,
|
Scene,
|
||||||
SceneGroupPatternData,
|
SceneGroupPatternData,
|
||||||
ScenesSettings,
|
ScenesSettings,
|
||||||
|
SongPosition,
|
||||||
Sound,
|
Sound,
|
||||||
|
TimeSignature,
|
||||||
} from '../types/types';
|
} from '../types/types';
|
||||||
import { GROUPS, NOTE_NAMES, PADS, SKU_EP40 } from './constants';
|
import { GROUPS, NOTE_NAMES, PADS, SKU_EP40 } from './constants';
|
||||||
import { parseWavMetadata } from './exporters/utils';
|
import { parseWavMetadata } from './exporters/utils';
|
||||||
@@ -21,21 +24,12 @@ import { TESoundMetadata } from './midi/types';
|
|||||||
import { TarFile } from './untar';
|
import { TarFile } from './untar';
|
||||||
import { calculateSoundLength } from './utils';
|
import { calculateSoundLength } from './utils';
|
||||||
|
|
||||||
type SceneMeta = {
|
type SceneRecord = {
|
||||||
a: number;
|
number: number;
|
||||||
b: number;
|
patternNumbers: Record<Group, number>;
|
||||||
c: number;
|
timeSignature: TimeSignature;
|
||||||
d: number;
|
|
||||||
};
|
};
|
||||||
|
|
||||||
type IntermediateScenes = Record<
|
|
||||||
number,
|
|
||||||
{
|
|
||||||
name: string;
|
|
||||||
groups: Record<string, ParsedPatternData>;
|
|
||||||
}
|
|
||||||
>;
|
|
||||||
|
|
||||||
export type ParsedPatternData = {
|
export type ParsedPatternData = {
|
||||||
bars: number;
|
bars: number;
|
||||||
recordCount: number;
|
recordCount: number;
|
||||||
@@ -60,6 +54,8 @@ const defaultScenesSettings = {
|
|||||||
timeSignature: { numerator: 4, denominator: 4 },
|
timeSignature: { numerator: 4, denominator: 4 },
|
||||||
};
|
};
|
||||||
|
|
||||||
|
const projectGroups: Group[] = ['a', 'b', 'c', 'd'];
|
||||||
|
|
||||||
export function noteNumberToName(noteNumber: number): string {
|
export function noteNumberToName(noteNumber: number): string {
|
||||||
const noteIndex = noteNumber % 12;
|
const noteIndex = noteNumber % 12;
|
||||||
const octave = Math.floor(noteNumber / 12) - 1;
|
const octave = Math.floor(noteNumber / 12) - 1;
|
||||||
|
|||||||
Reference in New Issue
Block a user