@tremolo-ui/functions 0.0.11 → 0.1.0-alpha.0
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/cjs/components/NumberInput/types/midi.d.ts +8 -3
- package/dist/cjs/components/NumberInput/types/midi.d.ts.map +1 -1
- package/dist/cjs/components/Slider/types/midi.d.ts +8 -3
- package/dist/cjs/components/Slider/types/midi.d.ts.map +1 -1
- package/dist/cjs/index.js +12 -4
- package/dist/cjs/index.js.map +1 -1
- package/dist/cjs/types/midi.d.ts +8 -3
- package/dist/cjs/types/midi.d.ts.map +1 -1
- package/dist/esm/components/NumberInput/types/midi.d.ts +8 -3
- package/dist/esm/components/NumberInput/types/midi.d.ts.map +1 -1
- package/dist/esm/components/Slider/types/midi.d.ts +8 -3
- package/dist/esm/components/Slider/types/midi.d.ts.map +1 -1
- package/dist/esm/index.js +11 -4
- package/dist/esm/index.js.map +1 -1
- package/dist/esm/types/midi.d.ts +8 -3
- package/dist/esm/types/midi.d.ts.map +1 -1
- package/package.json +1 -1
- package/src/midi.ts +13 -5
|
@@ -9,11 +9,11 @@ export type WhiteKey = (typeof whiteKeys)[number];
|
|
|
9
9
|
/**
|
|
10
10
|
* @category MIDI
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const noteKeys: readonly ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export type
|
|
16
|
+
export type NoteKey = (typeof noteKeys)[number];
|
|
17
17
|
/**
|
|
18
18
|
* @category MIDI
|
|
19
19
|
*/
|
|
@@ -31,7 +31,12 @@ export declare function noteNumber(noteName: string): number;
|
|
|
31
31
|
* Convert noteNumber to noteName
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export declare function noteName(noteNumber: number):
|
|
34
|
+
export declare function noteName(noteNumber: number): `${NoteKey}${number}`;
|
|
35
|
+
/**
|
|
36
|
+
* Convert noteNumber to noteKey
|
|
37
|
+
* @category MIDI
|
|
38
|
+
*/
|
|
39
|
+
export declare function noteKey(noteNumber: number): NoteKey;
|
|
35
40
|
/**
|
|
36
41
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
37
42
|
* @category MIDI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,4EAaX,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,CAIlE;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
|
|
@@ -9,11 +9,11 @@ export type WhiteKey = (typeof whiteKeys)[number];
|
|
|
9
9
|
/**
|
|
10
10
|
* @category MIDI
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const noteKeys: readonly ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export type
|
|
16
|
+
export type NoteKey = (typeof noteKeys)[number];
|
|
17
17
|
/**
|
|
18
18
|
* @category MIDI
|
|
19
19
|
*/
|
|
@@ -31,7 +31,12 @@ export declare function noteNumber(noteName: string): number;
|
|
|
31
31
|
* Convert noteNumber to noteName
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export declare function noteName(noteNumber: number):
|
|
34
|
+
export declare function noteName(noteNumber: number): `${NoteKey}${number}`;
|
|
35
|
+
/**
|
|
36
|
+
* Convert noteNumber to noteKey
|
|
37
|
+
* @category MIDI
|
|
38
|
+
*/
|
|
39
|
+
export declare function noteKey(noteNumber: number): NoteKey;
|
|
35
40
|
/**
|
|
36
41
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
37
42
|
* @category MIDI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,4EAaX,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,CAIlE;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
|
package/dist/cjs/index.js
CHANGED
|
@@ -163,7 +163,7 @@ const whiteKeys = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
|
|
|
163
163
|
/**
|
|
164
164
|
* @category MIDI
|
|
165
165
|
*/
|
|
166
|
-
const
|
|
166
|
+
const noteKeys = [
|
|
167
167
|
'C',
|
|
168
168
|
'C#',
|
|
169
169
|
'D',
|
|
@@ -197,7 +197,7 @@ function parseNoteName(noteName) {
|
|
|
197
197
|
*/
|
|
198
198
|
function noteNumber(noteName) {
|
|
199
199
|
const { letter, accidental, octave } = parseNoteName(noteName);
|
|
200
|
-
const noteIndex =
|
|
200
|
+
const noteIndex = noteKeys.indexOf(letter.toLocaleUpperCase());
|
|
201
201
|
const accidentalValue = (accidental[0] == 'b' ? -1 : 1) * accidental.length;
|
|
202
202
|
return noteIndex + 12 * (Number(octave) + 1) + accidentalValue;
|
|
203
203
|
}
|
|
@@ -208,7 +208,14 @@ function noteNumber(noteName) {
|
|
|
208
208
|
function noteName(noteNumber) {
|
|
209
209
|
const noteIndex = mod(noteNumber, 12);
|
|
210
210
|
const octave = Math.floor(noteNumber / 12) - 1;
|
|
211
|
-
return
|
|
211
|
+
return `${noteKeys[noteIndex]}${octave}`;
|
|
212
|
+
}
|
|
213
|
+
/**
|
|
214
|
+
* Convert noteNumber to noteKey
|
|
215
|
+
* @category MIDI
|
|
216
|
+
*/
|
|
217
|
+
function noteKey(noteNumber) {
|
|
218
|
+
return noteKeys[mod(noteNumber, 12)];
|
|
212
219
|
}
|
|
213
220
|
/**
|
|
214
221
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
@@ -259,8 +266,9 @@ exports.isWhiteKey = isWhiteKey;
|
|
|
259
266
|
exports.mapValue = mapValue;
|
|
260
267
|
exports.mod = mod;
|
|
261
268
|
exports.normalizeValue = normalizeValue;
|
|
269
|
+
exports.noteKey = noteKey;
|
|
270
|
+
exports.noteKeys = noteKeys;
|
|
262
271
|
exports.noteName = noteName;
|
|
263
|
-
exports.noteNames = noteNames;
|
|
264
272
|
exports.noteNumber = noteNumber;
|
|
265
273
|
exports.noteToFrequency = noteToFrequency;
|
|
266
274
|
exports.parseNoteName = parseNoteName;
|
package/dist/cjs/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/math.ts","../../../src/util.ts","../../../src/midi.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/math.ts","../../../src/util.ts","../../../src/midi.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
|
package/dist/cjs/types/midi.d.ts
CHANGED
|
@@ -9,11 +9,11 @@ export type WhiteKey = (typeof whiteKeys)[number];
|
|
|
9
9
|
/**
|
|
10
10
|
* @category MIDI
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const noteKeys: readonly ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export type
|
|
16
|
+
export type NoteKey = (typeof noteKeys)[number];
|
|
17
17
|
/**
|
|
18
18
|
* @category MIDI
|
|
19
19
|
*/
|
|
@@ -31,7 +31,12 @@ export declare function noteNumber(noteName: string): number;
|
|
|
31
31
|
* Convert noteNumber to noteName
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export declare function noteName(noteNumber: number):
|
|
34
|
+
export declare function noteName(noteNumber: number): `${NoteKey}${number}`;
|
|
35
|
+
/**
|
|
36
|
+
* Convert noteNumber to noteKey
|
|
37
|
+
* @category MIDI
|
|
38
|
+
*/
|
|
39
|
+
export declare function noteKey(noteNumber: number): NoteKey;
|
|
35
40
|
/**
|
|
36
41
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
37
42
|
* @category MIDI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,4EAaX,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,CAIlE;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
|
|
@@ -9,11 +9,11 @@ export type WhiteKey = (typeof whiteKeys)[number];
|
|
|
9
9
|
/**
|
|
10
10
|
* @category MIDI
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const noteKeys: readonly ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export type
|
|
16
|
+
export type NoteKey = (typeof noteKeys)[number];
|
|
17
17
|
/**
|
|
18
18
|
* @category MIDI
|
|
19
19
|
*/
|
|
@@ -31,7 +31,12 @@ export declare function noteNumber(noteName: string): number;
|
|
|
31
31
|
* Convert noteNumber to noteName
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export declare function noteName(noteNumber: number):
|
|
34
|
+
export declare function noteName(noteNumber: number): `${NoteKey}${number}`;
|
|
35
|
+
/**
|
|
36
|
+
* Convert noteNumber to noteKey
|
|
37
|
+
* @category MIDI
|
|
38
|
+
*/
|
|
39
|
+
export declare function noteKey(noteNumber: number): NoteKey;
|
|
35
40
|
/**
|
|
36
41
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
37
42
|
* @category MIDI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,4EAaX,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,CAIlE;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
|
|
@@ -9,11 +9,11 @@ export type WhiteKey = (typeof whiteKeys)[number];
|
|
|
9
9
|
/**
|
|
10
10
|
* @category MIDI
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const noteKeys: readonly ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export type
|
|
16
|
+
export type NoteKey = (typeof noteKeys)[number];
|
|
17
17
|
/**
|
|
18
18
|
* @category MIDI
|
|
19
19
|
*/
|
|
@@ -31,7 +31,12 @@ export declare function noteNumber(noteName: string): number;
|
|
|
31
31
|
* Convert noteNumber to noteName
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export declare function noteName(noteNumber: number):
|
|
34
|
+
export declare function noteName(noteNumber: number): `${NoteKey}${number}`;
|
|
35
|
+
/**
|
|
36
|
+
* Convert noteNumber to noteKey
|
|
37
|
+
* @category MIDI
|
|
38
|
+
*/
|
|
39
|
+
export declare function noteKey(noteNumber: number): NoteKey;
|
|
35
40
|
/**
|
|
36
41
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
37
42
|
* @category MIDI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,4EAaX,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,CAIlE;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
|
package/dist/esm/index.js
CHANGED
|
@@ -161,7 +161,7 @@ const whiteKeys = ['A', 'B', 'C', 'D', 'E', 'F', 'G'];
|
|
|
161
161
|
/**
|
|
162
162
|
* @category MIDI
|
|
163
163
|
*/
|
|
164
|
-
const
|
|
164
|
+
const noteKeys = [
|
|
165
165
|
'C',
|
|
166
166
|
'C#',
|
|
167
167
|
'D',
|
|
@@ -195,7 +195,7 @@ function parseNoteName(noteName) {
|
|
|
195
195
|
*/
|
|
196
196
|
function noteNumber(noteName) {
|
|
197
197
|
const { letter, accidental, octave } = parseNoteName(noteName);
|
|
198
|
-
const noteIndex =
|
|
198
|
+
const noteIndex = noteKeys.indexOf(letter.toLocaleUpperCase());
|
|
199
199
|
const accidentalValue = (accidental[0] == 'b' ? -1 : 1) * accidental.length;
|
|
200
200
|
return noteIndex + 12 * (Number(octave) + 1) + accidentalValue;
|
|
201
201
|
}
|
|
@@ -206,7 +206,14 @@ function noteNumber(noteName) {
|
|
|
206
206
|
function noteName(noteNumber) {
|
|
207
207
|
const noteIndex = mod(noteNumber, 12);
|
|
208
208
|
const octave = Math.floor(noteNumber / 12) - 1;
|
|
209
|
-
return
|
|
209
|
+
return `${noteKeys[noteIndex]}${octave}`;
|
|
210
|
+
}
|
|
211
|
+
/**
|
|
212
|
+
* Convert noteNumber to noteKey
|
|
213
|
+
* @category MIDI
|
|
214
|
+
*/
|
|
215
|
+
function noteKey(noteNumber) {
|
|
216
|
+
return noteKeys[mod(noteNumber, 12)];
|
|
210
217
|
}
|
|
211
218
|
/**
|
|
212
219
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
@@ -245,5 +252,5 @@ function noteToFrequency(note, detune = 0, a4 = 440) {
|
|
|
245
252
|
return (a4 / 32) * 2 ** ((n - 9 + detune / 100) / 12);
|
|
246
253
|
}
|
|
247
254
|
|
|
248
|
-
export { clamp, dbToGain, decimalPart, degree, gainToDb, integerPart, isBlackKey, isEmpty, isWhiteKey, mapValue, mod, normalizeValue,
|
|
255
|
+
export { clamp, dbToGain, decimalPart, degree, gainToDb, integerPart, isBlackKey, isEmpty, isWhiteKey, mapValue, mod, normalizeValue, noteKey, noteKeys, noteName, noteNumber, noteToFrequency, parseNoteName, radian, rawValue, scaleNames, skewWithCenterValue, stepValue, styleHelper, toFixed, whiteKeys, xor };
|
|
249
256
|
//# sourceMappingURL=index.js.map
|
package/dist/esm/index.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sources":["../../../src/math.ts","../../../src/util.ts","../../../src/midi.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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
|
|
1
|
+
{"version":3,"file":"index.js","sources":["../../../src/math.ts","../../../src/util.ts","../../../src/midi.ts"],"sourcesContent":[null,null,null],"names":[],"mappings":"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"}
|
package/dist/esm/types/midi.d.ts
CHANGED
|
@@ -9,11 +9,11 @@ export type WhiteKey = (typeof whiteKeys)[number];
|
|
|
9
9
|
/**
|
|
10
10
|
* @category MIDI
|
|
11
11
|
*/
|
|
12
|
-
export declare const
|
|
12
|
+
export declare const noteKeys: readonly ["C", "C#", "D", "D#", "E", "F", "F#", "G", "G#", "A", "A#", "B"];
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export type
|
|
16
|
+
export type NoteKey = (typeof noteKeys)[number];
|
|
17
17
|
/**
|
|
18
18
|
* @category MIDI
|
|
19
19
|
*/
|
|
@@ -31,7 +31,12 @@ export declare function noteNumber(noteName: string): number;
|
|
|
31
31
|
* Convert noteNumber to noteName
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export declare function noteName(noteNumber: number):
|
|
34
|
+
export declare function noteName(noteNumber: number): `${NoteKey}${number}`;
|
|
35
|
+
/**
|
|
36
|
+
* Convert noteNumber to noteKey
|
|
37
|
+
* @category MIDI
|
|
38
|
+
*/
|
|
39
|
+
export declare function noteKey(noteNumber: number): NoteKey;
|
|
35
40
|
/**
|
|
36
41
|
* @param note noteNumber: 0 ~ 127 or noteName e.g. 'C3'
|
|
37
42
|
* @category MIDI
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,
|
|
1
|
+
{"version":3,"file":"midi.d.ts","sourceRoot":"","sources":["../../../src/midi.ts"],"names":[],"mappings":"AAEA;;GAEG;AACH,eAAO,MAAM,SAAS,8CAA+C,CAAA;AAErE;;GAEG;AACH,MAAM,MAAM,QAAQ,GAAG,CAAC,OAAO,SAAS,CAAC,CAAC,MAAM,CAAC,CAAA;AAEjD;;GAEG;AACH,eAAO,MAAM,QAAQ,4EAaX,CAAA;AAEV;;GAEG;AACH,MAAM,MAAM,OAAO,GAAG,CAAC,OAAO,QAAQ,CAAC,CAAC,MAAM,CAAC,CAAA;AAE/C;;GAEG;AACH,wBAAgB,aAAa,CAAC,QAAQ,EAAE,MAAM;YAKJ,QAAQ;gBACpB,GAAG,GAAG,IAAI,GAAG,GAAG,GAAG,IAAI,GAAG,EAAE;;EAGzD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,QAAQ,EAAE,MAAM,UAK1C;AAED;;;GAGG;AACH,wBAAgB,QAAQ,CAAC,UAAU,EAAE,MAAM,GAAG,GAAG,OAAO,GAAG,MAAM,EAAE,CAIlE;AAED;;;GAGG;AACH,wBAAgB,OAAO,CAAC,UAAU,EAAE,MAAM,GAAG,OAAO,CAEnD;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAW/C;AAED;;;GAGG;AACH,wBAAgB,UAAU,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,WAE/C;AAED;;GAEG;AACH,eAAO,MAAM,UAAU,UAAoD,CAAA;AAE3E;;;;;;GAMG;AACH,wBAAgB,eAAe,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,EAAE,MAAM,SAAI,EAAE,EAAE,SAAM,UAG1E"}
|
package/package.json
CHANGED
package/src/midi.ts
CHANGED
|
@@ -13,7 +13,7 @@ export type WhiteKey = (typeof whiteKeys)[number]
|
|
|
13
13
|
/**
|
|
14
14
|
* @category MIDI
|
|
15
15
|
*/
|
|
16
|
-
export const
|
|
16
|
+
export const noteKeys = [
|
|
17
17
|
'C',
|
|
18
18
|
'C#',
|
|
19
19
|
'D',
|
|
@@ -31,7 +31,7 @@ export const noteNames = [
|
|
|
31
31
|
/**
|
|
32
32
|
* @category MIDI
|
|
33
33
|
*/
|
|
34
|
-
export type
|
|
34
|
+
export type NoteKey = (typeof noteKeys)[number]
|
|
35
35
|
|
|
36
36
|
/**
|
|
37
37
|
* @category MIDI
|
|
@@ -53,7 +53,7 @@ export function parseNoteName(noteName: string) {
|
|
|
53
53
|
*/
|
|
54
54
|
export function noteNumber(noteName: string) {
|
|
55
55
|
const { letter, accidental, octave } = parseNoteName(noteName)
|
|
56
|
-
const noteIndex =
|
|
56
|
+
const noteIndex = noteKeys.indexOf(letter.toLocaleUpperCase() as NoteKey)
|
|
57
57
|
const accidentalValue = (accidental[0] == 'b' ? -1 : 1) * accidental.length
|
|
58
58
|
return noteIndex + 12 * (Number(octave) + 1) + accidentalValue
|
|
59
59
|
}
|
|
@@ -62,10 +62,18 @@ export function noteNumber(noteName: string) {
|
|
|
62
62
|
* Convert noteNumber to noteName
|
|
63
63
|
* @category MIDI
|
|
64
64
|
*/
|
|
65
|
-
export function noteName(noteNumber: number) {
|
|
65
|
+
export function noteName(noteNumber: number): `${NoteKey}${number}` {
|
|
66
66
|
const noteIndex = mod(noteNumber, 12)
|
|
67
67
|
const octave = Math.floor(noteNumber / 12) - 1
|
|
68
|
-
return
|
|
68
|
+
return `${noteKeys[noteIndex]}${octave}`
|
|
69
|
+
}
|
|
70
|
+
|
|
71
|
+
/**
|
|
72
|
+
* Convert noteNumber to noteKey
|
|
73
|
+
* @category MIDI
|
|
74
|
+
*/
|
|
75
|
+
export function noteKey(noteNumber: number): NoteKey {
|
|
76
|
+
return noteKeys[mod(noteNumber, 12)]
|
|
69
77
|
}
|
|
70
78
|
|
|
71
79
|
/**
|