zds-pickers 4.2.1 → 4.4.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/index.es.js CHANGED
@@ -1,41 +1,35 @@
1
1
  import e, { Children as t, Fragment as n, createElement as r, forwardRef as i, isValidElement as a, useCallback as o, useEffect as s, useLayoutEffect as c, useMemo as l, useRef as u, useState as d } from "react";
2
- import f from "classnames";
3
- import p from "soundfont-player";
4
- import { Fragment as m, jsx as h, jsxs as g } from "react/jsx-runtime";
5
- import _, { components as v } from "react-select";
6
- import { drag as y } from "d3-drag";
7
- import { scaleLinear as b } from "d3-scale";
8
- import { select as x } from "d3-selection";
9
- import { SvgLoader as S, SvgProxy as C } from "react-svgmt";
10
- import w from "react-dom";
11
- import { emptyMapping as T, getStockNames as E, getUserMappingNames as D } from "zds-mappings";
2
+ import { Midi as f, Note as p } from "tonal";
3
+ import m from "classnames";
4
+ import h from "soundfont-player";
5
+ import { Fragment as g, jsx as _, jsxs as v } from "react/jsx-runtime";
6
+ import y, { components as b } from "react-select";
7
+ import { drag as x } from "d3-drag";
8
+ import { scaleLinear as S } from "d3-scale";
9
+ import { select as C } from "d3-selection";
10
+ import { SvgLoader as w, SvgProxy as T } from "react-svgmt";
11
+ import E from "react-dom";
12
+ import { emptyMapping as D, getStockNames as O, getUserMappingNames as k } from "zds-mappings";
12
13
  //#region \0rolldown/runtime.js
13
- var ee = Object.create, O = Object.defineProperty, k = Object.getOwnPropertyDescriptor, te = Object.getOwnPropertyNames, A = Object.getPrototypeOf, j = Object.prototype.hasOwnProperty, M = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), N = (e, t) => {
14
- let n = {};
15
- for (var r in e) O(n, r, {
16
- get: e[r],
17
- enumerable: !0
18
- });
19
- return t || O(n, Symbol.toStringTag, { value: "Module" }), n;
20
- }, P = (e, t, n, r) => {
21
- if (t && typeof t == "object" || typeof t == "function") for (var i = te(t), a = 0, o = i.length, s; a < o; a++) s = i[a], !j.call(e, s) && s !== n && O(e, s, {
14
+ var A = Object.create, j = Object.defineProperty, M = Object.getOwnPropertyDescriptor, N = Object.getOwnPropertyNames, P = Object.getPrototypeOf, F = Object.prototype.hasOwnProperty, I = (e, t) => () => (t || (e((t = { exports: {} }).exports, t), e = null), t.exports), L = (e, t, n, r) => {
15
+ if (t && typeof t == "object" || typeof t == "function") for (var i = N(t), a = 0, o = i.length, s; a < o; a++) s = i[a], !F.call(e, s) && s !== n && j(e, s, {
22
16
  get: ((e) => t[e]).bind(null, s),
23
- enumerable: !(r = k(t, s)) || r.enumerable
17
+ enumerable: !(r = M(t, s)) || r.enumerable
24
18
  });
25
19
  return e;
26
- }, F = (e, t, n) => (n = e == null ? {} : ee(A(e)), P(t || !e || !e.__esModule || !j.call(e, "default") ? O(n, "default", {
20
+ }, R = (e, t, n) => (n = e == null ? {} : A(P(e)), L(t || !e || !e.__esModule || !F.call(e, "default") ? j(n, "default", {
27
21
  value: e,
28
22
  enumerable: !0
29
- }) : n, e)), I = (e) => Array.from(Array(e).keys()), L = (e, t = 127, n = 0) => {
23
+ }) : n, e)), z = (e) => Array.from(Array(e).keys()), B = (e, t = 127, n = 0) => {
30
24
  let r = typeof e == "string" ? Number.parseInt(e, 10) : e;
31
25
  return (Number.isNaN(r) || r === null) && (r = n), r >= n ? r <= t ? r : t : n;
32
- }, ne = (e, t) => (n) => n?.find((n) => n?.[e] === t), re = (...e) => (t) => Object.entries(t).filter(([t]) => !e.flat().map(String).includes(t)).reduce((e, [t, n]) => Object.assign(e, { [t]: n }), {}), R = (...e) => (t) => Object.entries(t).filter(([t]) => e.flat().map(String).includes(t)).reduce((e, [t, n]) => Object.assign(e, { [t]: n }), {}), ie = (e, t) => (n) => ({
26
+ }, ee = (e, t) => (n) => n?.find((n) => n?.[e] === t), V = (...e) => (t) => Object.entries(t).filter(([t]) => !e.flat().map(String).includes(t)).reduce((e, [t, n]) => Object.assign(e, { [t]: n }), {}), te = (...e) => (t) => Object.entries(t).filter(([t]) => e.flat().map(String).includes(t)).reduce((e, [t, n]) => Object.assign(e, { [t]: n }), {}), ne = (e, t) => (n) => ({
33
27
  ...n,
34
28
  [e]: t
35
- }), ae = (/* @__PURE__ */ "Bank Select.Modulation Wheel.Breath Controller..Foot Control.Portamento Time.Data Entry Slider.Volume.Balance..Pan.Expression.Effect Control 1.Effect Control 2...................Controller 0.Controller 1.Controller 2.Controller 3.Controller 4.Controller 5.Controller 6.Controller 7.Controller 8.Controller 9.Controller 10.Controller 11.Controller 12.Controller 13.Controller 14.Controller 15.Controller 16.Controller 17.Controller 18.Controller 19.Controller 20.Controller 21.Controller 22.Controller 23.Controller 24.Controller 25.Controller 26.Controller 27.Controller 28.Controller 29.Controller 30.Controller 31.Sustain.Portamento.Sostenuto.Soft Pedal.Legato Pedal.Sustain 2.Sound Variation.Resonance/Timbre.Sound Release Time.Sound Attack Time.Frequency Cutoff.Sound Control 6.Sound Control 7.Sound Control 8.Sound Control 9.Sound Control 10.Decay or General 1.Hi-Pass or General 2.General 3.General 4.Portamento Amount.......Reverb Level.Tremolo Depth.Chorus Level.Detune.Phaser Depth.Data Entry +1.Data Entry -1.Non-registered LSB.Non-registered MSB.Registered msb.Registered lsb.........Shift 1.Shift 2.Shift 3.Shift 4.Shift 5.Shift 6.....All Sound Off.All Controllers Off.Local Mode.All Notes Off.Omni Mode Off.Omni Mode On.Mono Mode On.Poly Mode".split(".")).map((e, t) => ({
29
+ }), H = (/* @__PURE__ */ "Bank Select.Modulation Wheel.Breath Controller..Foot Control.Portamento Time.Data Entry Slider.Volume.Balance..Pan.Expression.Effect Control 1.Effect Control 2...................Controller 0.Controller 1.Controller 2.Controller 3.Controller 4.Controller 5.Controller 6.Controller 7.Controller 8.Controller 9.Controller 10.Controller 11.Controller 12.Controller 13.Controller 14.Controller 15.Controller 16.Controller 17.Controller 18.Controller 19.Controller 20.Controller 21.Controller 22.Controller 23.Controller 24.Controller 25.Controller 26.Controller 27.Controller 28.Controller 29.Controller 30.Controller 31.Sustain.Portamento.Sostenuto.Soft Pedal.Legato Pedal.Sustain 2.Sound Variation.Resonance/Timbre.Sound Release Time.Sound Attack Time.Frequency Cutoff.Sound Control 6.Sound Control 7.Sound Control 8.Sound Control 9.Sound Control 10.Decay or General 1.Hi-Pass or General 2.General 3.General 4.Portamento Amount.......Reverb Level.Tremolo Depth.Chorus Level.Detune.Phaser Depth.Data Entry +1.Data Entry -1.Non-registered LSB.Non-registered MSB.Registered msb.Registered lsb.........Shift 1.Shift 2.Shift 3.Shift 4.Shift 5.Shift 6.....All Sound Off.All Controllers Off.Local Mode.All Notes Off.Omni Mode Off.Omni Mode On.Mono Mode On.Poly Mode".split(".")).map((e, t) => ({
36
30
  label: String(e).length ? `${t} - ${e}` : String(t),
37
31
  value: t
38
- })), z = {
32
+ })), U = {
39
33
  noteOff: 8,
40
34
  noteOn: 9,
41
35
  aftertouch: 10,
@@ -43,1815 +37,51 @@ var ee = Object.create, O = Object.defineProperty, k = Object.getOwnPropertyDesc
43
37
  programChange: 12,
44
38
  channelPressure: 13,
45
39
  pitchWheel: 14
46
- }, oe = 15, se = 240, B = [
40
+ }, re = 15, W = 240, ie = [
47
41
  {
48
- value: z.noteOn,
42
+ value: U.noteOn,
49
43
  label: "Note On"
50
44
  },
51
45
  {
52
- value: z.noteOff,
46
+ value: U.noteOff,
53
47
  label: "Note Stack"
54
48
  },
55
49
  {
56
- value: z.controlChange,
50
+ value: U.controlChange,
57
51
  label: "Control Change"
58
52
  },
59
53
  {
60
- value: z.programChange,
54
+ value: U.programChange,
61
55
  label: "Program Change"
62
56
  },
63
57
  {
64
- value: z.aftertouch,
58
+ value: U.aftertouch,
65
59
  label: "Aftertouch"
66
60
  },
67
61
  {
68
- value: z.channelPressure,
62
+ value: U.channelPressure,
69
63
  label: "Channel Pressure"
70
64
  },
71
65
  {
72
- value: z.pitchWheel,
66
+ value: U.pitchWheel,
73
67
  label: "Pitch Wheel"
74
68
  }
75
- ], ce = (e) => B.filter(({ value: t }) => t === e)[0]?.label || "???", le = (e, t) => e | t << 4, ue = (e) => ({
69
+ ], ae = (e) => ie.filter(({ value: t }) => t === e)[0]?.label || "???", oe = (e, t) => e | t << 4, se = (e) => ({
76
70
  status: (e & 240) >> 4 | 8,
77
71
  channel: e & 15
78
- }), de = 0, fe = 1, pe = 2, me = 3, he = 4, ge = 5, _e = 6, ve = 7, ye = {
79
- [de]: "Linear, no change",
80
- [fe]: "A little less sensitive",
81
- [pe]: "Even less sensitive",
82
- [me]: "Least sensitive",
83
- [he]: "A little sensitive",
84
- [ge]: "Moderately sensitive",
85
- [_e]: "Most sensitive",
86
- [ve]: "Always maxed out"
87
- }, be = Object.keys(ye).map(Number).map((e) => ({
72
+ }), ce = 0, G = 1, le = 2, ue = 3, de = 4, fe = 5, pe = 6, me = 7, he = {
73
+ [ce]: "Linear, no change",
74
+ [G]: "A little less sensitive",
75
+ [le]: "Even less sensitive",
76
+ [ue]: "Least sensitive",
77
+ [de]: "A little sensitive",
78
+ [fe]: "Moderately sensitive",
79
+ [pe]: "Most sensitive",
80
+ [me]: "Always maxed out"
81
+ }, K = Object.keys(he).map(Number).map((e) => ({
88
82
  value: e,
89
- label: ye[e]
90
- })), V = ({ children: e }) => r(n, null, e);
91
- //#endregion
92
- //#region node_modules/@tonaljs/pitch/dist/index.mjs
93
- function xe(e) {
94
- return !!(typeof e == "object" && e && "name" in e && typeof e.name == "string");
95
- }
96
- function Se(e) {
97
- return !!(typeof e == "object" && e && "step" in e && typeof e.step == "number" && "alt" in e && typeof e.alt == "number" && !isNaN(e.step) && !isNaN(e.alt));
98
- }
99
- var Ce = [
100
- 0,
101
- 2,
102
- 4,
103
- -1,
104
- 1,
105
- 3,
106
- 5
107
- ], we = Ce.map((e) => Math.floor(e * 7 / 12));
108
- function Te(e) {
109
- let { step: t, alt: n, oct: r, dir: i = 1 } = e, a = Ce[t] + 7 * n;
110
- if (r === void 0) return [i * a];
111
- let o = r - we[t] - 4 * n;
112
- return [i * a, i * o];
113
- }
114
- var Ee = [
115
- 3,
116
- 0,
117
- 4,
118
- 1,
119
- 5,
120
- 2,
121
- 6
122
- ];
123
- function De(e) {
124
- let [t, n, r] = e, i = Ee[Oe(t)], a = Math.floor((t + 1) / 7);
125
- return n === void 0 ? {
126
- step: i,
127
- alt: a,
128
- dir: r
129
- } : {
130
- step: i,
131
- alt: a,
132
- oct: n + 4 * a + we[i],
133
- dir: r
134
- };
135
- }
136
- function Oe(e) {
137
- let t = (e + 1) % 7;
138
- return t < 0 ? 7 + t : t;
139
- }
140
- //#endregion
141
- //#region node_modules/@tonaljs/pitch-interval/dist/index.mjs
142
- var ke = (e, t) => Array(Math.abs(t) + 1).join(e), Ae = Object.freeze({
143
- empty: !0,
144
- name: "",
145
- num: NaN,
146
- q: "",
147
- type: "",
148
- step: NaN,
149
- alt: NaN,
150
- dir: NaN,
151
- simple: NaN,
152
- semitones: NaN,
153
- chroma: NaN,
154
- coord: [],
155
- oct: NaN
156
- }), je = /* @__PURE__ */ RegExp("^([-+]?\\d+)(d{1,4}|m|M|P|A{1,4})|(AA|A|P|M|m|d|dd)([-+]?\\d+)$");
157
- function Me(e) {
158
- let t = je.exec(`${e}`);
159
- return t === null ? ["", ""] : t[1] ? [t[1], t[2]] : [t[4], t[3]];
160
- }
161
- var Ne = {};
162
- function H(e) {
163
- return typeof e == "string" ? Ne[e] || (Ne[e] = Ie(e)) : Se(e) ? H(ze(e)) : xe(e) ? H(e.name) : Ae;
164
- }
165
- var Pe = [
166
- 0,
167
- 2,
168
- 4,
169
- 5,
170
- 7,
171
- 9,
172
- 11
173
- ], Fe = "PMMPPMM";
174
- function Ie(e) {
175
- let t = Me(e);
176
- if (t[0] === "") return Ae;
177
- let n = +t[0], r = t[1], i = (Math.abs(n) - 1) % 7, a = Fe[i];
178
- if (a === "M" && r === "P") return Ae;
179
- let o = a === "M" ? "majorable" : "perfectable", s = "" + n + r, c = n < 0 ? -1 : 1, l = n === 8 || n === -8 ? n : c * (i + 1), u = Re(o, r), d = Math.floor((Math.abs(n) - 1) / 7);
180
- return {
181
- empty: !1,
182
- name: s,
183
- num: n,
184
- q: r,
185
- step: i,
186
- alt: u,
187
- dir: c,
188
- type: o,
189
- simple: l,
190
- semitones: c * (Pe[i] + u + 12 * d),
191
- chroma: (c * (Pe[i] + u) % 12 + 12) % 12,
192
- coord: Te({
193
- step: i,
194
- alt: u,
195
- oct: d,
196
- dir: c
197
- }),
198
- oct: d
199
- };
200
- }
201
- function Le(e, t) {
202
- let [n, r = 0] = e, i = n * 7 + r * 12 < 0;
203
- return H(De(t || i ? [
204
- -n,
205
- -r,
206
- -1
207
- ] : [
208
- n,
209
- r,
210
- 1
211
- ]));
212
- }
213
- function Re(e, t) {
214
- return t === "M" && e === "majorable" || t === "P" && e === "perfectable" ? 0 : t === "m" && e === "majorable" ? -1 : /^A+$/.test(t) ? t.length : /^d+$/.test(t) ? -1 * (e === "perfectable" ? t.length : t.length + 1) : 0;
215
- }
216
- function ze(e) {
217
- let { step: t, alt: n, oct: r = 0, dir: i } = e;
218
- if (!i) return "";
219
- let a = t + 1 + 7 * r, o = a === 0 ? t + 1 : a, s = i < 0 ? "-" : "", c = Fe[t] === "M" ? "majorable" : "perfectable";
220
- return s + o + Be(c, n);
221
- }
222
- function Be(e, t) {
223
- return t === 0 ? e === "majorable" ? "M" : "P" : t === -1 && e === "majorable" ? "m" : t > 0 ? ke("A", t) : ke("d", e === "perfectable" ? t : t + 1);
224
- }
225
- //#endregion
226
- //#region node_modules/@tonaljs/pitch-note/dist/index.mjs
227
- var Ve = (e, t) => Array(Math.abs(t) + 1).join(e), He = Object.freeze({
228
- empty: !0,
229
- name: "",
230
- letter: "",
231
- acc: "",
232
- pc: "",
233
- step: NaN,
234
- alt: NaN,
235
- chroma: NaN,
236
- height: NaN,
237
- coord: [],
238
- midi: null,
239
- freq: null
240
- }), Ue = /* @__PURE__ */ new Map(), We = (e) => "CDEFGAB".charAt(e), Ge = (e) => e < 0 ? Ve("b", -e) : Ve("#", e), Ke = (e) => e[0] === "b" ? -e.length : e.length;
241
- function U(e) {
242
- let t = JSON.stringify(e), n = Ue.get(t);
243
- if (n) return n;
244
- let r = typeof e == "string" ? Qe(e) : Se(e) ? U($e(e)) : xe(e) ? U(e.name) : He;
245
- return Ue.set(t, r), r;
246
- }
247
- var qe = /^([a-gA-G]?)(#{1,}|b{1,}|x{1,}|)(-?\d*)\s*(.*)$/;
248
- function Je(e) {
249
- let t = qe.exec(e);
250
- return t ? [
251
- t[1].toUpperCase(),
252
- t[2].replace(/x/g, "##"),
253
- t[3],
254
- t[4]
255
- ] : [
256
- "",
257
- "",
258
- "",
259
- ""
260
- ];
261
- }
262
- function Ye(e) {
263
- return U(De(e));
264
- }
265
- var Xe = (e, t) => (e % t + t) % t, Ze = [
266
- 0,
267
- 2,
268
- 4,
269
- 5,
270
- 7,
271
- 9,
272
- 11
273
- ];
274
- function Qe(e) {
275
- let t = Je(e);
276
- if (t[0] === "" || t[3] !== "") return He;
277
- let n = t[0], r = t[1], i = t[2], a = (n.charCodeAt(0) + 3) % 7, o = Ke(r), s = i.length ? +i : void 0, c = Te({
278
- step: a,
279
- alt: o,
280
- oct: s
281
- }), l = n + r + i, u = n + r, d = (Ze[a] + o + 120) % 12, f = s === void 0 ? Xe(Ze[a] + o, 12) - 1188 : Ze[a] + o + 12 * (s + 1), p = f >= 0 && f <= 127 ? f : null;
282
- return {
283
- empty: !1,
284
- acc: r,
285
- alt: o,
286
- chroma: d,
287
- coord: c,
288
- freq: s === void 0 ? null : 2 ** ((f - 69) / 12) * 440,
289
- height: f,
290
- letter: n,
291
- midi: p,
292
- name: l,
293
- oct: s,
294
- pc: u,
295
- step: a
296
- };
297
- }
298
- function $e(e) {
299
- let { step: t, alt: n, oct: r } = e, i = We(t);
300
- if (!i) return "";
301
- let a = i + Ge(n);
302
- return r || r === 0 ? a + r : a;
303
- }
304
- //#endregion
305
- //#region node_modules/@tonaljs/pitch-distance/dist/index.mjs
306
- function W(e, t) {
307
- let n = U(e), r = Array.isArray(t) ? t : H(t).coord;
308
- if (n.empty || !r || r.length < 2) return "";
309
- let i = n.coord;
310
- return Ye(i.length === 1 ? [i[0] + r[0]] : [i[0] + r[0], i[1] + r[1]]).name;
311
- }
312
- function et(e, t) {
313
- let n = e.length;
314
- return (r) => {
315
- if (!t) return "";
316
- let i = r < 0 ? (n - -r % n) % n : r % n;
317
- return W(W(t, [0, Math.floor(r / n)]), e[i]);
318
- };
319
- }
320
- function tt(e, t) {
321
- let n = U(e), r = U(t);
322
- if (n.empty || r.empty) return "";
323
- let i = n.coord, a = r.coord, o = a[0] - i[0], s = i.length === 2 && a.length === 2 ? a[1] - i[1] : -Math.floor(o * 7 / 12), c = r.height === n.height && r.midi !== null && n.oct === r.oct && n.step > r.step;
324
- return Le([o, s], c).name;
325
- }
326
- //#endregion
327
- //#region node_modules/@tonaljs/collection/dist/index.mjs
328
- function nt(e, t) {
329
- let n = t.length, r = (e % n + n) % n;
330
- return t.slice(r, n).concat(t.slice(0, r));
331
- }
332
- function rt(e) {
333
- return e.filter((e) => e === 0 || e);
334
- }
335
- //#endregion
336
- //#region node_modules/@tonaljs/pcset/dist/index.mjs
337
- var G = {
338
- empty: !0,
339
- name: "",
340
- setNum: 0,
341
- chroma: "000000000000",
342
- normalized: "000000000000",
343
- intervals: []
344
- }, it = (e) => Number(e).toString(2).padStart(12, "0"), at = (e) => parseInt(e, 2), ot = /^[01]{12}$/;
345
- function st(e) {
346
- return ot.test(e);
347
- }
348
- var ct = (e) => typeof e == "number" && e >= 0 && e <= 4095, lt = (e) => e && st(e.chroma), ut = { [G.chroma]: G };
349
- function dt(e) {
350
- let t = st(e) ? e : ct(e) ? it(e) : Array.isArray(e) ? yt(e) : lt(e) ? e.chroma : G.chroma;
351
- return ut[t] = ut[t] || vt(t);
352
- }
353
- var ft = [
354
- "1P",
355
- "2m",
356
- "2M",
357
- "3m",
358
- "3M",
359
- "4P",
360
- "5d",
361
- "5P",
362
- "6m",
363
- "6M",
364
- "7m",
365
- "7M"
366
- ];
367
- function pt(e) {
368
- let t = [];
369
- for (let n = 0; n < 12; n++) e.charAt(n) === "1" && t.push(ft[n]);
370
- return t;
371
- }
372
- function mt(e, t = !0) {
373
- let n = dt(e).chroma.split("");
374
- return rt(n.map((e, r) => {
375
- let i = nt(r, n);
376
- return t && i[0] === "0" ? null : i.join("");
377
- }));
378
- }
379
- function ht(e) {
380
- let t = dt(e).setNum;
381
- return (e) => {
382
- let n = dt(e).setNum;
383
- return t && t !== n && (n & t) === n;
384
- };
385
- }
386
- function gt(e) {
387
- let t = dt(e).setNum;
388
- return (e) => {
389
- let n = dt(e).setNum;
390
- return t && t !== n && (n | t) === n;
391
- };
392
- }
393
- function _t(e) {
394
- let t = e.split("");
395
- return t.map((e, n) => nt(n, t).join(""));
396
- }
397
- function vt(e) {
398
- let t = at(e), n = _t(e).map(at).filter((e) => e >= 2048).sort()[0];
399
- return {
400
- empty: !1,
401
- name: "",
402
- setNum: t,
403
- chroma: e,
404
- normalized: it(n),
405
- intervals: pt(e)
406
- };
407
- }
408
- function yt(e) {
409
- if (e.length === 0) return G.chroma;
410
- let t, n = [
411
- 0,
412
- 0,
413
- 0,
414
- 0,
415
- 0,
416
- 0,
417
- 0,
418
- 0,
419
- 0,
420
- 0,
421
- 0,
422
- 0
423
- ];
424
- for (let r = 0; r < e.length; r++) t = U(e[r]), t.empty && (t = H(e[r])), t.empty || (n[t.chroma] = 1);
425
- return n.join("");
426
- }
427
- //#endregion
428
- //#region node_modules/@tonaljs/chord-type/dist/index.mjs
429
- var bt = [
430
- [
431
- "1P 3M 5P",
432
- "major",
433
- "M ^ maj"
434
- ],
435
- [
436
- "1P 3M 5P 7M",
437
- "major seventh",
438
- "maj7 Δ ma7 M7 Maj7 ^7"
439
- ],
440
- [
441
- "1P 3M 5P 7M 9M",
442
- "major ninth",
443
- "maj9 Δ9 ^9"
444
- ],
445
- [
446
- "1P 3M 5P 7M 9M 13M",
447
- "major thirteenth",
448
- "maj13 Maj13 ^13"
449
- ],
450
- [
451
- "1P 3M 5P 6M",
452
- "sixth",
453
- "6 add6 add13 M6"
454
- ],
455
- [
456
- "1P 3M 5P 6M 9M",
457
- "sixth added ninth",
458
- "6add9 6/9 69 M69"
459
- ],
460
- [
461
- "1P 3M 6m 7M",
462
- "major seventh flat sixth",
463
- "M7b6 ^7b6"
464
- ],
465
- [
466
- "1P 3M 5P 7M 11A",
467
- "major seventh sharp eleventh",
468
- "maj#4 Δ#4 Δ#11 M7#11 ^7#11 maj7#11"
469
- ],
470
- [
471
- "1P 3m 5P",
472
- "minor",
473
- "m min -"
474
- ],
475
- [
476
- "1P 3m 5P 7m",
477
- "minor seventh",
478
- "m7 min7 mi7 -7"
479
- ],
480
- [
481
- "1P 3m 5P 7M",
482
- "minor/major seventh",
483
- "m/ma7 m/maj7 mM7 mMaj7 m/M7 -Δ7 mΔ -^7 -maj7"
484
- ],
485
- [
486
- "1P 3m 5P 6M",
487
- "minor sixth",
488
- "m6 -6"
489
- ],
490
- [
491
- "1P 3m 5P 7m 9M",
492
- "minor ninth",
493
- "m9 -9"
494
- ],
495
- [
496
- "1P 3m 5P 7M 9M",
497
- "minor/major ninth",
498
- "mM9 mMaj9 -^9"
499
- ],
500
- [
501
- "1P 3m 5P 7m 9M 11P",
502
- "minor eleventh",
503
- "m11 -11"
504
- ],
505
- [
506
- "1P 3m 5P 7m 9M 13M",
507
- "minor thirteenth",
508
- "m13 -13"
509
- ],
510
- [
511
- "1P 3m 5d",
512
- "diminished",
513
- "dim ° o"
514
- ],
515
- [
516
- "1P 3m 5d 7d",
517
- "diminished seventh",
518
- "dim7 °7 o7"
519
- ],
520
- [
521
- "1P 3m 5d 7m",
522
- "half-diminished",
523
- "m7b5 ø -7b5 h7 h"
524
- ],
525
- [
526
- "1P 3M 5P 7m",
527
- "dominant seventh",
528
- "7 dom"
529
- ],
530
- [
531
- "1P 3M 5P 7m 9M",
532
- "dominant ninth",
533
- "9"
534
- ],
535
- [
536
- "1P 3M 5P 7m 9M 13M",
537
- "dominant thirteenth",
538
- "13"
539
- ],
540
- [
541
- "1P 3M 5P 7m 11A",
542
- "lydian dominant seventh",
543
- "7#11 7#4"
544
- ],
545
- [
546
- "1P 3M 5P 7m 9m",
547
- "dominant flat ninth",
548
- "7b9"
549
- ],
550
- [
551
- "1P 3M 5P 7m 9A",
552
- "dominant sharp ninth",
553
- "7#9"
554
- ],
555
- [
556
- "1P 3M 7m 9m",
557
- "altered",
558
- "alt7"
559
- ],
560
- [
561
- "1P 4P 5P",
562
- "suspended fourth",
563
- "sus4 sus"
564
- ],
565
- [
566
- "1P 2M 5P",
567
- "suspended second",
568
- "sus2"
569
- ],
570
- [
571
- "1P 4P 5P 7m",
572
- "suspended fourth seventh",
573
- "7sus4 7sus"
574
- ],
575
- [
576
- "1P 5P 7m 9M 11P",
577
- "eleventh",
578
- "11"
579
- ],
580
- [
581
- "1P 4P 5P 7m 9m",
582
- "suspended fourth flat ninth",
583
- "b9sus phryg 7b9sus 7b9sus4"
584
- ],
585
- [
586
- "1P 5P",
587
- "fifth",
588
- "5"
589
- ],
590
- [
591
- "1P 3M 5A",
592
- "augmented",
593
- "aug + +5 ^#5"
594
- ],
595
- [
596
- "1P 3m 5A",
597
- "minor augmented",
598
- "m#5 -#5 m+"
599
- ],
600
- [
601
- "1P 3M 5A 7M",
602
- "augmented seventh",
603
- "maj7#5 maj7+5 +maj7 ^7#5"
604
- ],
605
- [
606
- "1P 3M 5P 7M 9M 11A",
607
- "major sharp eleventh (lydian)",
608
- "maj9#11 Δ9#11 ^9#11"
609
- ],
610
- [
611
- "1P 2M 4P 5P",
612
- "",
613
- "sus24 sus4add9"
614
- ],
615
- [
616
- "1P 3M 5A 7M 9M",
617
- "",
618
- "maj9#5 Maj9#5"
619
- ],
620
- [
621
- "1P 3M 5A 7m",
622
- "",
623
- "7#5 +7 7+ 7aug aug7"
624
- ],
625
- [
626
- "1P 3M 5A 7m 9A",
627
- "",
628
- "7#5#9 7#9#5 7alt"
629
- ],
630
- [
631
- "1P 3M 5A 7m 9M",
632
- "",
633
- "9#5 9+"
634
- ],
635
- [
636
- "1P 3M 5A 7m 9M 11A",
637
- "",
638
- "9#5#11"
639
- ],
640
- [
641
- "1P 3M 5A 7m 9m",
642
- "",
643
- "7#5b9 7b9#5"
644
- ],
645
- [
646
- "1P 3M 5A 7m 9m 11A",
647
- "",
648
- "7#5b9#11"
649
- ],
650
- [
651
- "1P 3M 5A 9A",
652
- "",
653
- "+add#9"
654
- ],
655
- [
656
- "1P 3M 5A 9M",
657
- "",
658
- "M#5add9 +add9"
659
- ],
660
- [
661
- "1P 3M 5P 6M 11A",
662
- "",
663
- "M6#11 M6b5 6#11 6b5"
664
- ],
665
- [
666
- "1P 3M 5P 6M 7M 9M",
667
- "",
668
- "M7add13"
669
- ],
670
- [
671
- "1P 3M 5P 6M 9M 11A",
672
- "",
673
- "69#11"
674
- ],
675
- [
676
- "1P 3m 5P 6M 9M",
677
- "",
678
- "m69 -69"
679
- ],
680
- [
681
- "1P 3M 5P 6m 7m",
682
- "",
683
- "7b6"
684
- ],
685
- [
686
- "1P 3M 5P 7M 9A 11A",
687
- "",
688
- "maj7#9#11"
689
- ],
690
- [
691
- "1P 3M 5P 7M 9M 11A 13M",
692
- "",
693
- "M13#11 maj13#11 M13+4 M13#4"
694
- ],
695
- [
696
- "1P 3M 5P 7M 9m",
697
- "",
698
- "M7b9"
699
- ],
700
- [
701
- "1P 3M 5P 7m 11A 13m",
702
- "",
703
- "7#11b13 7b5b13"
704
- ],
705
- [
706
- "1P 3M 5P 7m 13M",
707
- "",
708
- "7add6 67 7add13"
709
- ],
710
- [
711
- "1P 3M 5P 7m 9A 11A",
712
- "",
713
- "7#9#11 7b5#9 7#9b5"
714
- ],
715
- [
716
- "1P 3M 5P 7m 9A 11A 13M",
717
- "",
718
- "13#9#11"
719
- ],
720
- [
721
- "1P 3M 5P 7m 9A 11A 13m",
722
- "",
723
- "7#9#11b13"
724
- ],
725
- [
726
- "1P 3M 5P 7m 9A 13M",
727
- "",
728
- "13#9"
729
- ],
730
- [
731
- "1P 3M 5P 7m 9A 13m",
732
- "",
733
- "7#9b13"
734
- ],
735
- [
736
- "1P 3M 5P 7m 9M 11A",
737
- "",
738
- "9#11 9+4 9#4"
739
- ],
740
- [
741
- "1P 3M 5P 7m 9M 11A 13M",
742
- "",
743
- "13#11 13+4 13#4"
744
- ],
745
- [
746
- "1P 3M 5P 7m 9M 11A 13m",
747
- "",
748
- "9#11b13 9b5b13"
749
- ],
750
- [
751
- "1P 3M 5P 7m 9m 11A",
752
- "",
753
- "7b9#11 7b5b9 7b9b5"
754
- ],
755
- [
756
- "1P 3M 5P 7m 9m 11A 13M",
757
- "",
758
- "13b9#11"
759
- ],
760
- [
761
- "1P 3M 5P 7m 9m 11A 13m",
762
- "",
763
- "7b9b13#11 7b9#11b13 7b5b9b13"
764
- ],
765
- [
766
- "1P 3M 5P 7m 9m 13M",
767
- "",
768
- "13b9"
769
- ],
770
- [
771
- "1P 3M 5P 7m 9m 13m",
772
- "",
773
- "7b9b13"
774
- ],
775
- [
776
- "1P 3M 5P 7m 9m 9A",
777
- "",
778
- "7b9#9"
779
- ],
780
- [
781
- "1P 3M 5P 9M",
782
- "",
783
- "Madd9 2 add9 add2"
784
- ],
785
- [
786
- "1P 3M 5P 9m",
787
- "",
788
- "Maddb9"
789
- ],
790
- [
791
- "1P 3M 5d",
792
- "",
793
- "Mb5"
794
- ],
795
- [
796
- "1P 3M 5d 6M 7m 9M",
797
- "",
798
- "13b5"
799
- ],
800
- [
801
- "1P 3M 5d 7M",
802
- "",
803
- "M7b5"
804
- ],
805
- [
806
- "1P 3M 5d 7M 9M",
807
- "",
808
- "M9b5"
809
- ],
810
- [
811
- "1P 3M 5d 7m",
812
- "",
813
- "7b5"
814
- ],
815
- [
816
- "1P 3M 5d 7m 9M",
817
- "",
818
- "9b5"
819
- ],
820
- [
821
- "1P 3M 7m",
822
- "",
823
- "7no5"
824
- ],
825
- [
826
- "1P 3M 7m 13m",
827
- "",
828
- "7b13"
829
- ],
830
- [
831
- "1P 3M 7m 9M",
832
- "",
833
- "9no5"
834
- ],
835
- [
836
- "1P 3M 7m 9M 13M",
837
- "",
838
- "13no5"
839
- ],
840
- [
841
- "1P 3M 7m 9M 13m",
842
- "",
843
- "9b13"
844
- ],
845
- [
846
- "1P 3m 4P 5P",
847
- "",
848
- "madd4"
849
- ],
850
- [
851
- "1P 3m 5P 6m 7M",
852
- "",
853
- "mMaj7b6"
854
- ],
855
- [
856
- "1P 3m 5P 6m 7M 9M",
857
- "",
858
- "mMaj9b6"
859
- ],
860
- [
861
- "1P 3m 5P 7m 11P",
862
- "",
863
- "m7add11 m7add4"
864
- ],
865
- [
866
- "1P 3m 5P 9M",
867
- "",
868
- "madd9"
869
- ],
870
- [
871
- "1P 3m 5d 6M 7M",
872
- "",
873
- "o7M7"
874
- ],
875
- [
876
- "1P 3m 5d 7M",
877
- "",
878
- "oM7"
879
- ],
880
- [
881
- "1P 3m 6m 7M",
882
- "",
883
- "mb6M7"
884
- ],
885
- [
886
- "1P 3m 6m 7m",
887
- "",
888
- "m7#5"
889
- ],
890
- [
891
- "1P 3m 6m 7m 9M",
892
- "",
893
- "m9#5"
894
- ],
895
- [
896
- "1P 3m 5A 7m 9M 11P",
897
- "",
898
- "m11A"
899
- ],
900
- [
901
- "1P 3m 6m 9m",
902
- "",
903
- "mb6b9"
904
- ],
905
- [
906
- "1P 2M 3m 5d 7m",
907
- "",
908
- "m9b5"
909
- ],
910
- [
911
- "1P 4P 5A 7M",
912
- "",
913
- "M7#5sus4"
914
- ],
915
- [
916
- "1P 4P 5A 7M 9M",
917
- "",
918
- "M9#5sus4"
919
- ],
920
- [
921
- "1P 4P 5A 7m",
922
- "",
923
- "7#5sus4"
924
- ],
925
- [
926
- "1P 4P 5P 7M",
927
- "",
928
- "M7sus4"
929
- ],
930
- [
931
- "1P 4P 5P 7M 9M",
932
- "",
933
- "M9sus4"
934
- ],
935
- [
936
- "1P 4P 5P 7m 9M",
937
- "",
938
- "9sus4 9sus"
939
- ],
940
- [
941
- "1P 4P 5P 7m 9M 13M",
942
- "",
943
- "13sus4 13sus"
944
- ],
945
- [
946
- "1P 4P 5P 7m 9m 13m",
947
- "",
948
- "7sus4b9b13 7b9b13sus4"
949
- ],
950
- [
951
- "1P 4P 7m 10m",
952
- "",
953
- "4 quartal"
954
- ],
955
- [
956
- "1P 5P 7m 9m 11P",
957
- "",
958
- "11b9"
959
- ]
960
- ], xt = {
961
- ...G,
962
- name: "",
963
- quality: "Unknown",
964
- intervals: [],
965
- aliases: []
966
- }, St = [], Ct = {};
967
- function wt(e) {
968
- return Ct[e] || xt;
969
- }
970
- function Tt() {
971
- return St.slice();
972
- }
973
- function Et(e, t, n) {
974
- let r = Ot(e), i = {
975
- ...dt(e),
976
- name: n || "",
977
- quality: r,
978
- intervals: e,
979
- aliases: t
980
- };
981
- St.push(i), i.name && (Ct[i.name] = i), Ct[i.setNum] = i, Ct[i.chroma] = i, i.aliases.forEach((e) => Dt(i, e));
982
- }
983
- function Dt(e, t) {
984
- Ct[t] = e;
985
- }
986
- function Ot(e) {
987
- let t = (t) => e.indexOf(t) !== -1;
988
- return t("5A") ? "Augmented" : t("3M") ? "Major" : t("5d") ? "Diminished" : t("3m") ? "Minor" : "Unknown";
989
- }
990
- bt.forEach(([e, t, n]) => Et(e.split(" "), n.split(" "), t)), St.sort((e, t) => e.setNum - t.setNum);
991
- //#endregion
992
- //#region node_modules/@tonaljs/chord-detect/dist/index.mjs
993
- var kt = (e) => {
994
- let t = e.reduce((e, t) => {
995
- let n = U(t).chroma;
996
- return n !== void 0 && (e[n] = e[n] || U(t).name), e;
997
- }, {});
998
- return (e) => t[e];
999
- };
1000
- function At(e, t = {}) {
1001
- let n = e.map((e) => U(e).pc).filter((e) => e);
1002
- return U.length === 0 ? [] : zt(n, 1, t).filter((e) => e.weight).sort((e, t) => t.weight - e.weight).map((e) => e.name);
1003
- }
1004
- var jt = {
1005
- anyThirds: 384,
1006
- perfectFifth: 16,
1007
- nonPerfectFifths: 40,
1008
- anySeventh: 3
1009
- }, Mt = (e) => (t) => !!(t & e), Nt = Mt(jt.anyThirds), Pt = Mt(jt.perfectFifth), Ft = Mt(jt.anySeventh), It = Mt(jt.nonPerfectFifths);
1010
- function Lt(e) {
1011
- let t = parseInt(e.chroma, 2);
1012
- return Nt(t) && Pt(t) && Ft(t);
1013
- }
1014
- function Rt(e) {
1015
- let t = parseInt(e, 2);
1016
- return It(t) ? e : (t | 16).toString(2);
1017
- }
1018
- function zt(e, t, n) {
1019
- let r = e[0], i = U(r).chroma, a = kt(e), o = mt(e, !1), s = [];
1020
- return o.forEach((e, o) => {
1021
- let c = n.assumePerfectFifth && Rt(e);
1022
- Tt().filter((t) => n.assumePerfectFifth && Lt(t) ? t.chroma === c : t.chroma === e).forEach((e) => {
1023
- let n = e.aliases[0], c = a(o);
1024
- o === i ? s.push({
1025
- weight: 1 * t,
1026
- name: `${c}${n}`
1027
- }) : s.push({
1028
- weight: .5 * t,
1029
- name: `${c}${n}/${r}`
1030
- });
1031
- });
1032
- }), s;
1033
- }
1034
- "P m M m M P d P m M m M".split(" ");
1035
- var Bt = Vt((e, t) => [e[0] - t[0], e[1] - t[1]]);
1036
- function Vt(e) {
1037
- return (t, n) => {
1038
- let r = H(t).coord, i = H(n).coord;
1039
- if (r && i) return Le(e(r, i)).name;
1040
- };
1041
- }
1042
- //#endregion
1043
- //#region node_modules/@tonaljs/scale-type/dist/index.mjs
1044
- var Ht = [
1045
- [
1046
- "1P 2M 3M 5P 6M",
1047
- "major pentatonic",
1048
- "pentatonic"
1049
- ],
1050
- [
1051
- "1P 2M 3M 4P 5P 6M 7M",
1052
- "major",
1053
- "ionian"
1054
- ],
1055
- [
1056
- "1P 2M 3m 4P 5P 6m 7m",
1057
- "minor",
1058
- "aeolian"
1059
- ],
1060
- ["1P 2M 3m 3M 5P 6M", "major blues"],
1061
- [
1062
- "1P 3m 4P 5d 5P 7m",
1063
- "minor blues",
1064
- "blues"
1065
- ],
1066
- ["1P 2M 3m 4P 5P 6M 7M", "melodic minor"],
1067
- ["1P 2M 3m 4P 5P 6m 7M", "harmonic minor"],
1068
- ["1P 2M 3M 4P 5P 6M 7m 7M", "bebop"],
1069
- [
1070
- "1P 2M 3m 4P 5d 6m 6M 7M",
1071
- "diminished",
1072
- "whole-half diminished"
1073
- ],
1074
- ["1P 2M 3m 4P 5P 6M 7m", "dorian"],
1075
- ["1P 2M 3M 4A 5P 6M 7M", "lydian"],
1076
- [
1077
- "1P 2M 3M 4P 5P 6M 7m",
1078
- "mixolydian",
1079
- "dominant"
1080
- ],
1081
- ["1P 2m 3m 4P 5P 6m 7m", "phrygian"],
1082
- ["1P 2m 3m 4P 5d 6m 7m", "locrian"],
1083
- ["1P 3M 4P 5P 7M", "ionian pentatonic"],
1084
- [
1085
- "1P 3M 4P 5P 7m",
1086
- "mixolydian pentatonic",
1087
- "indian"
1088
- ],
1089
- ["1P 2M 4P 5P 6M", "ritusen"],
1090
- ["1P 2M 4P 5P 7m", "egyptian"],
1091
- ["1P 3M 4P 5d 7m", "neopolitan major pentatonic"],
1092
- ["1P 3m 4P 5P 6m", "vietnamese 1"],
1093
- ["1P 2m 3m 5P 6m", "pelog"],
1094
- ["1P 2m 4P 5P 6m", "kumoijoshi"],
1095
- ["1P 2M 3m 5P 6m", "hirajoshi"],
1096
- ["1P 2m 4P 5d 7m", "iwato"],
1097
- ["1P 2m 4P 5P 7m", "in-sen"],
1098
- [
1099
- "1P 3M 4A 5P 7M",
1100
- "lydian pentatonic",
1101
- "chinese"
1102
- ],
1103
- ["1P 3m 4P 6m 7m", "malkos raga"],
1104
- [
1105
- "1P 3m 4P 5d 7m",
1106
- "locrian pentatonic",
1107
- "minor seven flat five pentatonic"
1108
- ],
1109
- [
1110
- "1P 3m 4P 5P 7m",
1111
- "minor pentatonic",
1112
- "vietnamese 2"
1113
- ],
1114
- ["1P 3m 4P 5P 6M", "minor six pentatonic"],
1115
- [
1116
- "1P 2M 3m 5P 6M",
1117
- "flat three pentatonic",
1118
- "kumoi"
1119
- ],
1120
- ["1P 2M 3M 5P 6m", "flat six pentatonic"],
1121
- ["1P 2m 3M 5P 6M", "scriabin"],
1122
- ["1P 3M 5d 6m 7m", "whole tone pentatonic"],
1123
- ["1P 3M 4A 5A 7M", "lydian #5P pentatonic"],
1124
- ["1P 3M 4A 5P 7m", "lydian dominant pentatonic"],
1125
- ["1P 3m 4P 5P 7M", "minor #7M pentatonic"],
1126
- ["1P 3m 4d 5d 7m", "super locrian pentatonic"],
1127
- ["1P 2M 3m 4P 5P 7M", "minor hexatonic"],
1128
- ["1P 2A 3M 5P 5A 7M", "augmented"],
1129
- ["1P 2M 4P 5P 6M 7m", "piongio"],
1130
- ["1P 2m 3M 4A 6M 7m", "prometheus neopolitan"],
1131
- ["1P 2M 3M 4A 6M 7m", "prometheus"],
1132
- ["1P 2m 3M 5d 6m 7m", "mystery #1"],
1133
- ["1P 2m 3M 4P 5A 6M", "six tone symmetric"],
1134
- [
1135
- "1P 2M 3M 4A 5A 6A",
1136
- "whole tone",
1137
- "messiaen's mode #1"
1138
- ],
1139
- ["1P 2m 4P 4A 5P 7M", "messiaen's mode #5"],
1140
- [
1141
- "1P 2M 3M 4P 5d 6m 7m",
1142
- "locrian major",
1143
- "arabian"
1144
- ],
1145
- ["1P 2m 3M 4A 5P 6m 7M", "double harmonic lydian"],
1146
- [
1147
- "1P 2m 2A 3M 4A 6m 7m",
1148
- "altered",
1149
- "super locrian",
1150
- "diminished whole tone",
1151
- "pomeroy"
1152
- ],
1153
- [
1154
- "1P 2M 3m 4P 5d 6m 7m",
1155
- "locrian #2",
1156
- "half-diminished",
1157
- "aeolian b5"
1158
- ],
1159
- [
1160
- "1P 2M 3M 4P 5P 6m 7m",
1161
- "mixolydian b6",
1162
- "melodic minor fifth mode",
1163
- "hindu"
1164
- ],
1165
- [
1166
- "1P 2M 3M 4A 5P 6M 7m",
1167
- "lydian dominant",
1168
- "lydian b7",
1169
- "overtone"
1170
- ],
1171
- ["1P 2M 3M 4A 5A 6M 7M", "lydian augmented"],
1172
- [
1173
- "1P 2m 3m 4P 5P 6M 7m",
1174
- "dorian b2",
1175
- "phrygian #6",
1176
- "melodic minor second mode"
1177
- ],
1178
- [
1179
- "1P 2m 3m 4d 5d 6m 7d",
1180
- "ultralocrian",
1181
- "superlocrian bb7",
1182
- "superlocrian diminished"
1183
- ],
1184
- [
1185
- "1P 2m 3m 4P 5d 6M 7m",
1186
- "locrian 6",
1187
- "locrian natural 6",
1188
- "locrian sharp 6"
1189
- ],
1190
- ["1P 2A 3M 4P 5P 5A 7M", "augmented heptatonic"],
1191
- [
1192
- "1P 2M 3m 4A 5P 6M 7m",
1193
- "dorian #4",
1194
- "ukrainian dorian",
1195
- "romanian minor",
1196
- "altered dorian"
1197
- ],
1198
- ["1P 2M 3m 4A 5P 6M 7M", "lydian diminished"],
1199
- ["1P 2M 3M 4A 5A 7m 7M", "leading whole tone"],
1200
- ["1P 2M 3M 4A 5P 6m 7m", "lydian minor"],
1201
- [
1202
- "1P 2m 3M 4P 5P 6m 7m",
1203
- "phrygian dominant",
1204
- "spanish",
1205
- "phrygian major"
1206
- ],
1207
- ["1P 2m 3m 4P 5P 6m 7M", "balinese"],
1208
- ["1P 2m 3m 4P 5P 6M 7M", "neopolitan major"],
1209
- ["1P 2M 3M 4P 5P 6m 7M", "harmonic major"],
1210
- [
1211
- "1P 2m 3M 4P 5P 6m 7M",
1212
- "double harmonic major",
1213
- "gypsy"
1214
- ],
1215
- ["1P 2M 3m 4A 5P 6m 7M", "hungarian minor"],
1216
- ["1P 2A 3M 4A 5P 6M 7m", "hungarian major"],
1217
- ["1P 2m 3M 4P 5d 6M 7m", "oriental"],
1218
- ["1P 2m 3m 3M 4A 5P 7m", "flamenco"],
1219
- ["1P 2m 3m 4A 5P 6m 7M", "todi raga"],
1220
- ["1P 2m 3M 4P 5d 6m 7M", "persian"],
1221
- ["1P 2m 3M 5d 6m 7m 7M", "enigmatic"],
1222
- [
1223
- "1P 2M 3M 4P 5A 6M 7M",
1224
- "major augmented",
1225
- "major #5",
1226
- "ionian augmented",
1227
- "ionian #5"
1228
- ],
1229
- ["1P 2A 3M 4A 5P 6M 7M", "lydian #9"],
1230
- ["1P 2m 2M 4P 4A 5P 6m 7M", "messiaen's mode #4"],
1231
- ["1P 2m 3M 4P 4A 5P 6m 7M", "purvi raga"],
1232
- ["1P 2m 3m 3M 4P 5P 6m 7m", "spanish heptatonic"],
1233
- ["1P 2M 3m 3M 4P 5P 6M 7m", "bebop minor"],
1234
- ["1P 2M 3M 4P 5P 5A 6M 7M", "bebop major"],
1235
- ["1P 2m 3m 4P 5d 5P 6m 7m", "bebop locrian"],
1236
- ["1P 2M 3m 4P 5P 6m 7m 7M", "minor bebop"],
1237
- ["1P 2M 3M 4P 5d 5P 6M 7M", "ichikosucho"],
1238
- ["1P 2M 3m 4P 5P 6m 6M 7M", "minor six diminished"],
1239
- [
1240
- "1P 2m 3m 3M 4A 5P 6M 7m",
1241
- "half-whole diminished",
1242
- "dominant diminished",
1243
- "messiaen's mode #2"
1244
- ],
1245
- ["1P 3m 3M 4P 5P 6M 7m 7M", "kafi raga"],
1246
- ["1P 2M 3M 4P 4A 5A 6A 7M", "messiaen's mode #6"],
1247
- ["1P 2M 3m 3M 4P 5d 5P 6M 7m", "composite blues"],
1248
- ["1P 2M 3m 3M 4A 5P 6m 7m 7M", "messiaen's mode #3"],
1249
- ["1P 2m 2M 3m 4P 4A 5P 6m 6M 7M", "messiaen's mode #7"],
1250
- ["1P 2m 2M 3m 3M 4P 5d 5P 6m 6M 7m 7M", "chromatic"]
1251
- ], Ut = {
1252
- ...G,
1253
- intervals: [],
1254
- aliases: []
1255
- }, Wt = [], Gt = {};
1256
- function Kt(e) {
1257
- return Gt[e] || Ut;
1258
- }
1259
- function qt() {
1260
- return Wt.slice();
1261
- }
1262
- function Jt(e, t, n = []) {
1263
- let r = {
1264
- ...dt(e),
1265
- name: t,
1266
- intervals: e,
1267
- aliases: n
1268
- };
1269
- return Wt.push(r), Gt[r.name] = r, Gt[r.setNum] = r, Gt[r.chroma] = r, r.aliases.forEach((e) => Yt(r, e)), r;
1270
- }
1271
- function Yt(e, t) {
1272
- Gt[t] = e;
1273
- }
1274
- Ht.forEach(([e, t, ...n]) => Jt(e.split(" "), t, n));
1275
- //#endregion
1276
- //#region node_modules/@tonaljs/chord/dist/index.mjs
1277
- var Xt = {
1278
- empty: !0,
1279
- name: "",
1280
- symbol: "",
1281
- root: "",
1282
- bass: "",
1283
- rootDegree: 0,
1284
- type: "",
1285
- tonic: null,
1286
- setNum: NaN,
1287
- quality: "Unknown",
1288
- chroma: "",
1289
- normalized: "",
1290
- aliases: [],
1291
- notes: [],
1292
- intervals: []
1293
- };
1294
- function Zt(e) {
1295
- let [t, n, r, i] = Je(e);
1296
- return t === "" ? Qt("", e) : t === "A" && i === "ug" ? Qt("", "aug") : Qt(t + n, r + i);
1297
- }
1298
- function Qt(e, t) {
1299
- let n = t.split("/");
1300
- if (n.length === 1) return [
1301
- e,
1302
- n[0],
1303
- ""
1304
- ];
1305
- let [r, i, a, o] = Je(n[1]);
1306
- return r !== "" && a === "" && o === "" ? [
1307
- e,
1308
- n[0],
1309
- r + i
1310
- ] : [
1311
- e,
1312
- t,
1313
- ""
1314
- ];
1315
- }
1316
- function K(e) {
1317
- if (Array.isArray(e)) return $t(e[1] || "", e[0], e[2]);
1318
- if (e === "") return Xt;
1319
- {
1320
- let [t, n, r] = Zt(e), i = $t(n, t, r);
1321
- return i.empty ? $t(e) : i;
1322
- }
1323
- }
1324
- function $t(e, t, n) {
1325
- let r = wt(e), i = U(t || ""), a = U(n || "");
1326
- if (r.empty || t && i.empty || n && a.empty) return Xt;
1327
- let o = tt(i.pc, a.pc), s = r.intervals.indexOf(o), c = s >= 0, l = c ? a : U(""), u = s === -1 ? NaN : s + 1, d = a.pc && a.pc !== i.pc, f = Array.from(r.intervals);
1328
- if (c) for (let e = 1; e < u; e++) {
1329
- let e = f[0][0], t = f[0][1], n = parseInt(e, 10) + 7;
1330
- f.push(`${n}${t}`), f.shift();
1331
- }
1332
- else if (d) {
1333
- let e = Bt(tt(i.pc, a.pc), "8P");
1334
- e && f.unshift(e);
1335
- }
1336
- let p = i.empty ? [] : f.map((e) => W(i.pc, e));
1337
- e = r.aliases.indexOf(e) === -1 ? r.aliases[0] : e;
1338
- let m = `${i.empty ? "" : i.pc}${e}${c && u > 1 ? "/" + l.pc : d ? "/" + a.pc : ""}`, h = `${t ? i.pc + " " : ""}${r.name}${c && u > 1 ? " over " + l.pc : d ? " over " + a.pc : ""}`;
1339
- return {
1340
- ...r,
1341
- name: h,
1342
- symbol: m,
1343
- tonic: i.pc,
1344
- type: r.name,
1345
- root: l.pc,
1346
- bass: d ? a.pc : "",
1347
- intervals: f,
1348
- rootDegree: u,
1349
- notes: p
1350
- };
1351
- }
1352
- var en = K;
1353
- function tn(e, t) {
1354
- let [n, r, i] = Zt(e);
1355
- if (!n) return e;
1356
- let a = W(i, t), o = a ? "/" + a : "";
1357
- return W(n, t) + r + o;
1358
- }
1359
- function nn(e) {
1360
- let t = gt(K(e).chroma);
1361
- return qt().filter((e) => t(e.chroma)).map((e) => e.name);
1362
- }
1363
- function rn(e) {
1364
- let t = K(e), n = gt(t.chroma);
1365
- return Tt().filter((e) => n(e.chroma)).map((e) => t.tonic + e.aliases[0]);
1366
- }
1367
- function an(e) {
1368
- let t = K(e), n = ht(t.chroma);
1369
- return Tt().filter((e) => n(e.chroma)).map((e) => t.tonic + e.aliases[0]);
1370
- }
1371
- function on(e, t) {
1372
- let n = K(e), r = t || n.tonic;
1373
- return !r || n.empty ? [] : n.intervals.map((e) => W(r, e));
1374
- }
1375
- function sn(e, t) {
1376
- let n = K(e), r = t || n.tonic, i = et(n.intervals, r);
1377
- return (e) => e ? i(e > 0 ? e - 1 : e) : "";
1378
- }
1379
- function cn(e, t) {
1380
- let n = K(e), r = t || n.tonic;
1381
- return et(n.intervals, r);
1382
- }
1383
- var ln = {
1384
- getChord: $t,
1385
- get: K,
1386
- detect: At,
1387
- chordScales: nn,
1388
- extended: rn,
1389
- reduced: an,
1390
- tokenize: Zt,
1391
- transpose: tn,
1392
- degrees: sn,
1393
- steps: cn,
1394
- notes: on,
1395
- chord: en
1396
- }, un = [
1397
- [
1398
- .125,
1399
- "dl",
1400
- [
1401
- "large",
1402
- "duplex longa",
1403
- "maxima",
1404
- "octuple",
1405
- "octuple whole"
1406
- ]
1407
- ],
1408
- [
1409
- .25,
1410
- "l",
1411
- ["long", "longa"]
1412
- ],
1413
- [
1414
- .5,
1415
- "d",
1416
- [
1417
- "double whole",
1418
- "double",
1419
- "breve"
1420
- ]
1421
- ],
1422
- [
1423
- 1,
1424
- "w",
1425
- ["whole", "semibreve"]
1426
- ],
1427
- [
1428
- 2,
1429
- "h",
1430
- ["half", "minim"]
1431
- ],
1432
- [
1433
- 4,
1434
- "q",
1435
- ["quarter", "crotchet"]
1436
- ],
1437
- [
1438
- 8,
1439
- "e",
1440
- ["eighth", "quaver"]
1441
- ],
1442
- [
1443
- 16,
1444
- "s",
1445
- ["sixteenth", "semiquaver"]
1446
- ],
1447
- [
1448
- 32,
1449
- "t",
1450
- ["thirty-second", "demisemiquaver"]
1451
- ],
1452
- [
1453
- 64,
1454
- "sf",
1455
- ["sixty-fourth", "hemidemisemiquaver"]
1456
- ],
1457
- [
1458
- 128,
1459
- "h",
1460
- ["hundred twenty-eighth"]
1461
- ],
1462
- [
1463
- 256,
1464
- "th",
1465
- ["two hundred fifty-sixth"]
1466
- ]
1467
- ], dn = [];
1468
- un.forEach(([e, t, n]) => fn(e, t, n));
1469
- function fn(e, t, n) {
1470
- dn.push({
1471
- empty: !1,
1472
- dots: "",
1473
- name: "",
1474
- value: 1 / e,
1475
- fraction: e < 1 ? [1 / e, 1] : [1, e],
1476
- shorthand: t,
1477
- names: n
1478
- });
1479
- }
1480
- //#endregion
1481
- //#region node_modules/@tonaljs/midi/dist/index.mjs
1482
- var pn = /* @__PURE__ */ N({
1483
- chroma: () => Sn,
1484
- default: () => kn,
1485
- freqToMidi: () => yn,
1486
- isMidi: () => mn,
1487
- midiToFreq: () => gn,
1488
- midiToNoteName: () => q,
1489
- pcset: () => Tn,
1490
- pcsetDegrees: () => On,
1491
- pcsetNearest: () => En,
1492
- pcsetSteps: () => Dn,
1493
- toMidi: () => hn
1494
- });
1495
- function mn(e) {
1496
- return +e >= 0 && +e <= 127;
1497
- }
1498
- function hn(e) {
1499
- if (mn(e)) return +e;
1500
- let t = U(e);
1501
- return t.empty ? null : t.midi;
1502
- }
1503
- function gn(e, t = 440) {
1504
- return 2 ** ((e - 69) / 12) * t;
1505
- }
1506
- var _n = Math.log(2), vn = Math.log(440);
1507
- function yn(e) {
1508
- let t = 12 * (Math.log(e) - vn) / _n + 69;
1509
- return Math.round(t * 100) / 100;
1510
- }
1511
- var bn = "C C# D D# E F F# G G# A A# B".split(" "), xn = "C Db D Eb E F Gb G Ab A Bb B".split(" ");
1512
- function q(e, t = {}) {
1513
- if (isNaN(e) || e === -Infinity || e === Infinity) return "";
1514
- e = Math.round(e);
1515
- let n = (t.sharps === !0 ? bn : xn)[e % 12];
1516
- return t.pitchClass ? n : n + (Math.floor(e / 12) - 1);
1517
- }
1518
- function Sn(e) {
1519
- return e % 12;
1520
- }
1521
- function Cn(e) {
1522
- return e.split("").reduce((e, t, n) => (n < 12 && t === "1" && e.push(n), e), []);
1523
- }
1524
- function wn(e) {
1525
- return e.map(Sn).sort((e, t) => e - t).filter((e, t, n) => t === 0 || e !== n[t - 1]);
1526
- }
1527
- function Tn(e) {
1528
- return Array.isArray(e) ? wn(e) : Cn(e);
1529
- }
1530
- function En(e) {
1531
- let t = Tn(e);
1532
- return (e) => {
1533
- let n = Sn(e);
1534
- for (let r = 0; r < 12; r++) {
1535
- if (t.includes(n + r)) return e + r;
1536
- if (t.includes(n - r)) return e - r;
1537
- }
1538
- };
1539
- }
1540
- function Dn(e, t) {
1541
- let n = Tn(e), r = n.length;
1542
- return (e) => {
1543
- let i = e < 0 ? (r - -e % r) % r : e % r, a = Math.floor(e / r);
1544
- return n[i] + a * 12 + t;
1545
- };
1546
- }
1547
- function On(e, t) {
1548
- let n = Dn(e, t);
1549
- return (e) => {
1550
- if (e !== 0) return n(e > 0 ? e - 1 : e);
1551
- };
1552
- }
1553
- var kn = {
1554
- chroma: Sn,
1555
- freqToMidi: yn,
1556
- isMidi: mn,
1557
- midiToFreq: gn,
1558
- midiToNoteName: q,
1559
- pcsetNearest: En,
1560
- pcset: Tn,
1561
- pcsetDegrees: On,
1562
- pcsetSteps: Dn,
1563
- toMidi: hn
1564
- }, An = [
1565
- "C",
1566
- "D",
1567
- "E",
1568
- "F",
1569
- "G",
1570
- "A",
1571
- "B"
1572
- ], jn = (e) => e.name, Mn = (e) => e.map(U).filter((e) => !e.empty);
1573
- function Nn(e) {
1574
- return e === void 0 ? An.slice() : Array.isArray(e) ? Mn(e).map(jn) : [];
1575
- }
1576
- var J = U, Pn = (e) => J(e).name, Fn = (e) => J(e).pc, In = (e) => J(e).acc, Ln = (e) => J(e).oct, Rn = (e) => J(e).midi, zn = (e) => J(e).freq, Bn = (e) => J(e).chroma;
1577
- function Vn(e) {
1578
- return q(e);
1579
- }
1580
- function Hn(e) {
1581
- return q(yn(e));
1582
- }
1583
- function Un(e) {
1584
- return q(yn(e), { sharps: !0 });
1585
- }
1586
- function Wn(e) {
1587
- return q(e, { sharps: !0 });
1588
- }
1589
- var Gn = tt, Kn = W, qn = W, Jn = (e) => (t) => Kn(t, e), Yn = Jn, Xn = (e) => (t) => Kn(e, t), Zn = Xn;
1590
- function Qn(e, t) {
1591
- return Kn(e, [t, 0]);
1592
- }
1593
- var $n = Qn;
1594
- function er(e, t) {
1595
- return Kn(e, [0, t]);
1596
- }
1597
- var tr = (e, t) => e.height - t.height, nr = (e, t) => t.height - e.height;
1598
- function rr(e, t) {
1599
- return t ||= tr, Mn(e).sort(t).map(jn);
1600
- }
1601
- function ir(e) {
1602
- return rr(e, tr).filter((e, t, n) => t === 0 || e !== n[t - 1]);
1603
- }
1604
- var ar = (e) => {
1605
- let t = J(e);
1606
- return t.empty ? "" : q(t.midi || t.chroma, {
1607
- sharps: t.alt > 0,
1608
- pitchClass: t.midi === null
1609
- });
1610
- };
1611
- function or(e, t) {
1612
- let n = J(e);
1613
- if (n.empty) return "";
1614
- let r = J(t || q(n.midi || n.chroma, {
1615
- sharps: n.alt < 0,
1616
- pitchClass: !0
1617
- }));
1618
- if (r.empty || r.chroma !== n.chroma) return "";
1619
- if (n.oct === void 0) return r.pc;
1620
- let i = n.chroma - n.alt, a = r.chroma - r.alt, o = i > 11 || a < 0 ? -1 : +(i < 0 || a > 11), s = n.oct + o;
1621
- return r.pc + s;
1622
- }
1623
- var sr = {
1624
- names: Nn,
1625
- get: J,
1626
- name: Pn,
1627
- pitchClass: Fn,
1628
- accidentals: In,
1629
- octave: Ln,
1630
- midi: Rn,
1631
- ascending: tr,
1632
- descending: nr,
1633
- distance: Gn,
1634
- sortedNames: rr,
1635
- sortedUniqNames: ir,
1636
- fromMidi: Vn,
1637
- fromMidiSharps: Wn,
1638
- freq: zn,
1639
- fromFreq: Hn,
1640
- fromFreqSharps: Un,
1641
- chroma: Bn,
1642
- transpose: Kn,
1643
- tr: qn,
1644
- transposeBy: Jn,
1645
- trBy: Yn,
1646
- transposeFrom: Xn,
1647
- trFrom: Zn,
1648
- transposeFifths: Qn,
1649
- transposeOctaves: er,
1650
- trFifths: $n,
1651
- simplify: ar,
1652
- enharmonic: or
1653
- }, cr = "I II III IV V VI VII";
1654
- cr.split(" "), cr.toLowerCase().split(" ");
1655
- //#endregion
1656
- //#region node_modules/@tonaljs/key/dist/index.mjs
1657
- var Y = Object.freeze([]), lr = {
1658
- type: "major",
1659
- tonic: "",
1660
- alteration: 0,
1661
- keySignature: ""
1662
- }, ur = {
1663
- tonic: "",
1664
- grades: Y,
1665
- intervals: Y,
1666
- scale: Y,
1667
- triads: Y,
1668
- chords: Y,
1669
- chordsHarmonicFunction: Y,
1670
- chordScales: Y,
1671
- secondaryDominants: Y,
1672
- secondaryDominantSupertonics: Y,
1673
- substituteDominantsMinorRelative: Y,
1674
- substituteDominants: Y,
1675
- substituteDominantSupertonics: Y,
1676
- secondaryDominantsMinorRelative: Y
1677
- };
1678
- ({
1679
- ...lr,
1680
- ...ur
1681
- }), { ...lr }, "I II III IV V VI VII".split(" "), " m m m dim".split(" "), "maj7 m7 m7 maj7 7 m7 m7b5".split(" "), "T SD T SD D T D".split(" "), "major,dorian,phrygian,lydian,mixolydian,minor,locrian".split(","), "I II bIII IV V bVI bVII".split(" "), "m dim m m ".split(" "), "m7 m7b5 maj7 m7 m7 maj7 7".split(" "), "T SD T SD D SD SD".split(" "), "minor,locrian,major,dorian,phrygian,lydian,mixolydian".split(","), "I II bIII IV V bVI VII".split(" "), "m dim aug m dim".split(" "), "mMaj7 m7b5 +maj7 m7 7 maj7 o7".split(" "), "T SD T SD D SD D".split(" "), "harmonic minor,locrian 6,major augmented,lydian diminished,phrygian dominant,lydian #9,ultralocrian".split(","), "I II bIII IV V VI VII".split(" "), "m m aug dim dim".split(" "), "m6 m7 +maj7 7 7 m7b5 m7b5".split(" "), "T SD T SD D ".split(" "), "melodic minor,dorian b2,lydian augmented,lydian dominant,mixolydian b6,locrian #2,altered".split(",");
1682
- //#endregion
1683
- //#region node_modules/@tonaljs/mode/dist/index.mjs
1684
- var dr = [
1685
- [
1686
- 0,
1687
- 2773,
1688
- 0,
1689
- "ionian",
1690
- "",
1691
- "Maj7",
1692
- "major"
1693
- ],
1694
- [
1695
- 1,
1696
- 2902,
1697
- 2,
1698
- "dorian",
1699
- "m",
1700
- "m7"
1701
- ],
1702
- [
1703
- 2,
1704
- 3418,
1705
- 4,
1706
- "phrygian",
1707
- "m",
1708
- "m7"
1709
- ],
1710
- [
1711
- 3,
1712
- 2741,
1713
- -1,
1714
- "lydian",
1715
- "",
1716
- "Maj7"
1717
- ],
1718
- [
1719
- 4,
1720
- 2774,
1721
- 1,
1722
- "mixolydian",
1723
- "",
1724
- "7"
1725
- ],
1726
- [
1727
- 5,
1728
- 2906,
1729
- 3,
1730
- "aeolian",
1731
- "m",
1732
- "m7",
1733
- "minor"
1734
- ],
1735
- [
1736
- 6,
1737
- 3434,
1738
- 5,
1739
- "locrian",
1740
- "dim",
1741
- "m7b5"
1742
- ]
1743
- ];
1744
- ({ ...G });
1745
- var fr = dr.map(mr), pr = {};
1746
- fr.forEach((e) => {
1747
- pr[e.name] = e, e.aliases.forEach((t) => {
1748
- pr[t] = e;
1749
- });
1750
- });
1751
- function mr(e) {
1752
- let [t, n, r, i, a, o, s] = e, c = s ? [s] : [], l = Number(n).toString(2);
1753
- return {
1754
- empty: !1,
1755
- intervals: Kt(i).intervals,
1756
- modeNum: t,
1757
- chroma: l,
1758
- normalized: l,
1759
- name: i,
1760
- setNum: n,
1761
- alt: r,
1762
- triad: a,
1763
- seventh: o,
1764
- aliases: c
1765
- };
1766
- }
1767
- dr.map((e) => e[4]), dr.map((e) => e[5]);
1768
- var hr = { topNoteDiff: (e, t) => {
1769
- if (!t || !t.length) return e[0];
1770
- let n = (e) => sr.midi(e[e.length - 1]) || 0, r = (e) => Math.abs(n(t) - n(e));
1771
- return e.sort((e, t) => r(e) - r(t))[0];
1772
- } }, gr = {
1773
- M: [
1774
- "1P 3M 5P",
1775
- "3M 5P 8P",
1776
- "5P 8P 10M"
1777
- ],
1778
- m: [
1779
- "1P 3m 5P",
1780
- "3m 5P 8P",
1781
- "5P 8P 10m"
1782
- ],
1783
- o: [
1784
- "1P 3m 5d",
1785
- "3m 5d 8P",
1786
- "5d 8P 10m"
1787
- ],
1788
- aug: [
1789
- "1P 3m 5A",
1790
- "3m 5A 8P",
1791
- "5A 8P 10m"
1792
- ]
1793
- }, _r = {
1794
- m7: ["3m 5P 7m 9M", "7m 9M 10m 12P"],
1795
- 7: ["3M 6M 7m 9M", "7m 9M 10M 13M"],
1796
- "^7": ["3M 5P 7M 9M", "7M 9M 10M 12P"],
1797
- 69: ["3M 5P 6A 9M"],
1798
- m7b5: ["3m 5d 7m 8P", "7m 8P 10m 12d"],
1799
- "7b9": ["3M 6m 7m 9m", "7m 9m 10M 13m"],
1800
- "7b13": ["3M 6m 7m 9m", "7m 9m 10M 13m"],
1801
- o7: ["1P 3m 5d 6M", "5d 6M 8P 10m"],
1802
- "7#11": ["7m 9M 11A 13A"],
1803
- "7#9": ["3M 7m 9A"],
1804
- mM7: ["3m 5P 7M 9M", "7M 9M 10m 12P"],
1805
- m6: ["3m 5P 6M 9M", "6M 9M 10m 12P"]
1806
- }, vr = {
1807
- M: [
1808
- "1P 3M 5P",
1809
- "3M 5P 8P",
1810
- "5P 8P 10M"
1811
- ],
1812
- m: [
1813
- "1P 3m 5P",
1814
- "3m 5P 8P",
1815
- "5P 8P 10m"
1816
- ],
1817
- o: [
1818
- "1P 3m 5d",
1819
- "3m 5d 8P",
1820
- "5d 8P 10m"
1821
- ],
1822
- aug: [
1823
- "1P 3m 5A",
1824
- "3m 5A 8P",
1825
- "5A 8P 10m"
1826
- ],
1827
- m7: ["3m 5P 7m 9M", "7m 9M 10m 12P"],
1828
- 7: ["3M 6M 7m 9M", "7m 9M 10M 13M"],
1829
- "^7": ["3M 5P 7M 9M", "7M 9M 10M 12P"],
1830
- 69: ["3M 5P 6A 9M"],
1831
- m7b5: ["3m 5d 7m 8P", "7m 8P 10m 12d"],
1832
- "7b9": ["3M 6m 7m 9m", "7m 9m 10M 13m"],
1833
- "7b13": ["3M 6m 7m 9m", "7m 9m 10M 13m"],
1834
- o7: ["1P 3m 5d 6M", "5d 6M 8P 10m"],
1835
- "7#11": ["7m 9M 11A 13A"],
1836
- "7#9": ["3M 7m 9A"],
1837
- mM7: ["3m 5P 7M 9M", "7M 9M 10m 12P"],
1838
- m6: ["3m 5P 6M 9M", "6M 9M 10m 12P"]
1839
- }, yr = _r;
1840
- function br(e, t = yr) {
1841
- if (t[e]) return t[e];
1842
- let { aliases: n } = ln.get("C" + e), r = Object.keys(t).find((e) => n.includes(e)) || "";
1843
- if (r !== void 0) return t[r];
1844
- }
1845
- ({
1846
- lookup: br,
1847
- lefthand: _r,
1848
- triads: gr,
1849
- all: vr,
1850
- defaultDictionary: yr
1851
- }).all, hr.topNoteDiff;
1852
- //#endregion
1853
- //#region node_modules/just-range/index.js
1854
- var xr = /* @__PURE__ */ M(((e, t) => {
83
+ label: he[e]
84
+ })), ge = ({ children: e }) => r(n, null, e), { midiToNoteName: _e } = f, ve = (e) => e.replace(/([A-G])b/g, "$1♭").replace(/([A-G])#/g, "$1♯"), ye = (e, t) => t?.[(e % 12 + 12) % 12] ?? ve(p.pitchClass(p.fromMidi(e) ?? "")), be = (e) => ve(_e(e, { sharps: !1 })), xe = /* @__PURE__ */ I(((e, t) => {
1855
85
  t.exports = n;
1856
86
  function n(e, t, n) {
1857
87
  if (e != null && typeof e != "number") throw Error("start must be a number or null");
@@ -1861,7 +91,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
1861
91
  for (var r = [], i = e < t; i ? e < t : e > t; e += n) r.push(e);
1862
92
  return r;
1863
93
  }
1864
- })), Sr = /* @__PURE__ */ M(((e) => {
94
+ })), Se = /* @__PURE__ */ I(((e) => {
1865
95
  var t = typeof Symbol == "function" && Symbol.for, n = t ? Symbol.for("react.element") : 60103, r = t ? Symbol.for("react.portal") : 60106, i = t ? Symbol.for("react.fragment") : 60107, a = t ? Symbol.for("react.strict_mode") : 60108, o = t ? Symbol.for("react.profiler") : 60114, s = t ? Symbol.for("react.provider") : 60109, c = t ? Symbol.for("react.context") : 60110, l = t ? Symbol.for("react.async_mode") : 60111, u = t ? Symbol.for("react.concurrent_mode") : 60111, d = t ? Symbol.for("react.forward_ref") : 60112, f = t ? Symbol.for("react.suspense") : 60113, p = t ? Symbol.for("react.suspense_list") : 60120, m = t ? Symbol.for("react.memo") : 60115, h = t ? Symbol.for("react.lazy") : 60116, g = t ? Symbol.for("react.block") : 60121, _ = t ? Symbol.for("react.fundamental") : 60117, v = t ? Symbol.for("react.responder") : 60118, y = t ? Symbol.for("react.scope") : 60119;
1866
96
  function b(e) {
1867
97
  if (typeof e == "object" && e) {
@@ -1917,7 +147,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
1917
147
  }, e.isValidElementType = function(e) {
1918
148
  return typeof e == "string" || typeof e == "function" || e === i || e === u || e === o || e === a || e === f || e === p || typeof e == "object" && !!e && (e.$$typeof === h || e.$$typeof === m || e.$$typeof === s || e.$$typeof === c || e.$$typeof === d || e.$$typeof === _ || e.$$typeof === v || e.$$typeof === y || e.$$typeof === g);
1919
149
  }, e.typeOf = b;
1920
- })), Cr = /* @__PURE__ */ M(((e) => {
150
+ })), Ce = /* @__PURE__ */ I(((e) => {
1921
151
  process.env.NODE_ENV !== "production" && (function() {
1922
152
  var t = typeof Symbol == "function" && Symbol.for, n = t ? Symbol.for("react.element") : 60103, r = t ? Symbol.for("react.portal") : 60106, i = t ? Symbol.for("react.fragment") : 60107, a = t ? Symbol.for("react.strict_mode") : 60108, o = t ? Symbol.for("react.profiler") : 60114, s = t ? Symbol.for("react.provider") : 60109, c = t ? Symbol.for("react.context") : 60110, l = t ? Symbol.for("react.async_mode") : 60111, u = t ? Symbol.for("react.concurrent_mode") : 60111, d = t ? Symbol.for("react.forward_ref") : 60112, f = t ? Symbol.for("react.suspense") : 60113, p = t ? Symbol.for("react.suspense_list") : 60120, m = t ? Symbol.for("react.memo") : 60115, h = t ? Symbol.for("react.lazy") : 60116, g = t ? Symbol.for("react.block") : 60121, _ = t ? Symbol.for("react.fundamental") : 60117, v = t ? Symbol.for("react.responder") : 60118, y = t ? Symbol.for("react.scope") : 60119;
1923
153
  function b(e) {
@@ -1951,51 +181,51 @@ var xr = /* @__PURE__ */ M(((e, t) => {
1951
181
  }
1952
182
  }
1953
183
  }
1954
- var S = l, C = u, w = c, T = s, E = n, D = d, ee = i, O = h, k = m, te = r, A = o, j = a, M = f, N = !1;
1955
- function P(e) {
1956
- return N || (N = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), F(e) || x(e) === l;
184
+ var S = l, C = u, w = c, T = s, E = n, D = d, O = i, k = h, A = m, j = r, M = o, N = a, P = f, F = !1;
185
+ function I(e) {
186
+ return F || (F = !0, console.warn("The ReactIs.isAsyncMode() alias has been deprecated, and will be removed in React 17+. Update your code to use ReactIs.isConcurrentMode() instead. It has the exact same API.")), L(e) || x(e) === l;
1957
187
  }
1958
- function F(e) {
188
+ function L(e) {
1959
189
  return x(e) === u;
1960
190
  }
1961
- function I(e) {
191
+ function R(e) {
1962
192
  return x(e) === c;
1963
193
  }
1964
- function L(e) {
194
+ function z(e) {
1965
195
  return x(e) === s;
1966
196
  }
1967
- function ne(e) {
197
+ function B(e) {
1968
198
  return typeof e == "object" && !!e && e.$$typeof === n;
1969
199
  }
1970
- function re(e) {
200
+ function ee(e) {
1971
201
  return x(e) === d;
1972
202
  }
1973
- function R(e) {
203
+ function V(e) {
1974
204
  return x(e) === i;
1975
205
  }
1976
- function ie(e) {
206
+ function te(e) {
1977
207
  return x(e) === h;
1978
208
  }
1979
- function ae(e) {
209
+ function ne(e) {
1980
210
  return x(e) === m;
1981
211
  }
1982
- function z(e) {
212
+ function H(e) {
1983
213
  return x(e) === r;
1984
214
  }
1985
- function oe(e) {
215
+ function U(e) {
1986
216
  return x(e) === o;
1987
217
  }
1988
- function se(e) {
218
+ function re(e) {
1989
219
  return x(e) === a;
1990
220
  }
1991
- function B(e) {
221
+ function W(e) {
1992
222
  return x(e) === f;
1993
223
  }
1994
- e.AsyncMode = S, e.ConcurrentMode = C, e.ContextConsumer = w, e.ContextProvider = T, e.Element = E, e.ForwardRef = D, e.Fragment = ee, e.Lazy = O, e.Memo = k, e.Portal = te, e.Profiler = A, e.StrictMode = j, e.Suspense = M, e.isAsyncMode = P, e.isConcurrentMode = F, e.isContextConsumer = I, e.isContextProvider = L, e.isElement = ne, e.isForwardRef = re, e.isFragment = R, e.isLazy = ie, e.isMemo = ae, e.isPortal = z, e.isProfiler = oe, e.isStrictMode = se, e.isSuspense = B, e.isValidElementType = b, e.typeOf = x;
224
+ e.AsyncMode = S, e.ConcurrentMode = C, e.ContextConsumer = w, e.ContextProvider = T, e.Element = E, e.ForwardRef = D, e.Fragment = O, e.Lazy = k, e.Memo = A, e.Portal = j, e.Profiler = M, e.StrictMode = N, e.Suspense = P, e.isAsyncMode = I, e.isConcurrentMode = L, e.isContextConsumer = R, e.isContextProvider = z, e.isElement = B, e.isForwardRef = ee, e.isFragment = V, e.isLazy = te, e.isMemo = ne, e.isPortal = H, e.isProfiler = U, e.isStrictMode = re, e.isSuspense = W, e.isValidElementType = b, e.typeOf = x;
1995
225
  })();
1996
- })), wr = /* @__PURE__ */ M(((e, t) => {
1997
- t.exports = process.env.NODE_ENV === "production" ? Sr() : Cr();
1998
- })), Tr = /* @__PURE__ */ M(((e, t) => {
226
+ })), we = /* @__PURE__ */ I(((e, t) => {
227
+ t.exports = process.env.NODE_ENV === "production" ? Se() : Ce();
228
+ })), Te = /* @__PURE__ */ I(((e, t) => {
1999
229
  var n = Object.getOwnPropertySymbols, r = Object.prototype.hasOwnProperty, i = Object.prototype.propertyIsEnumerable;
2000
230
  function a(e) {
2001
231
  if (e == null) throw TypeError("Object.assign cannot be called with null or undefined");
@@ -2028,14 +258,14 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2028
258
  }
2029
259
  return s;
2030
260
  };
2031
- })), Er = /* @__PURE__ */ M(((e, t) => {
261
+ })), q = /* @__PURE__ */ I(((e, t) => {
2032
262
  t.exports = "SECRET_DO_NOT_PASS_THIS_OR_YOU_WILL_BE_FIRED";
2033
- })), Dr = /* @__PURE__ */ M(((e, t) => {
263
+ })), Ee = /* @__PURE__ */ I(((e, t) => {
2034
264
  t.exports = Function.call.bind(Object.prototype.hasOwnProperty);
2035
- })), Or = /* @__PURE__ */ M(((e, t) => {
265
+ })), De = /* @__PURE__ */ I(((e, t) => {
2036
266
  var n = function() {};
2037
267
  if (process.env.NODE_ENV !== "production") {
2038
- var r = Er(), i = {}, a = Dr();
268
+ var r = q(), i = {}, a = Ee();
2039
269
  n = function(e) {
2040
270
  var t = "Warning: " + e;
2041
271
  typeof console < "u" && console.error(t);
@@ -2068,8 +298,8 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2068
298
  o.resetWarningCache = function() {
2069
299
  process.env.NODE_ENV !== "production" && (i = {});
2070
300
  }, t.exports = o;
2071
- })), kr = /* @__PURE__ */ M(((e, t) => {
2072
- var n = wr(), r = Tr(), i = Er(), a = Dr(), o = Or(), s = function() {};
301
+ })), Oe = /* @__PURE__ */ I(((e, t) => {
302
+ var n = we(), r = Te(), i = q(), a = Ee(), o = De(), s = function() {};
2073
303
  process.env.NODE_ENV !== "production" && (s = function(e) {
2074
304
  var t = "Warning: " + e;
2075
305
  typeof console < "u" && console.error(t);
@@ -2104,8 +334,8 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2104
334
  objectOf: w,
2105
335
  oneOf: C,
2106
336
  oneOfType: T,
2107
- shape: ee,
2108
- exact: O
337
+ shape: O,
338
+ exact: k
2109
339
  };
2110
340
  function m(e, t) {
2111
341
  return e === t ? e !== 0 || 1 / e == 1 / t : e !== e && t !== t;
@@ -2135,8 +365,8 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2135
365
  function _(e) {
2136
366
  function t(t, n, r, i, a, o) {
2137
367
  var s = t[n];
2138
- if (A(s) !== e) {
2139
- var c = j(s);
368
+ if (M(s) !== e) {
369
+ var c = N(s);
2140
370
  return new h("Invalid " + i + " `" + a + "` of type " + ("`" + c + "` supplied to `" + r + "`, expected ") + ("`" + e + "`."), { expectedType: e });
2141
371
  }
2142
372
  return null;
@@ -2151,7 +381,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2151
381
  if (typeof e != "function") return new h("Property `" + o + "` of component `" + r + "` has invalid PropType notation inside arrayOf.");
2152
382
  var s = t[n];
2153
383
  if (!Array.isArray(s)) {
2154
- var c = A(s);
384
+ var c = M(s);
2155
385
  return new h("Invalid " + a + " `" + o + "` of type " + ("`" + c + "` supplied to `" + r + "`, expected an array."));
2156
386
  }
2157
387
  for (var l = 0; l < s.length; l++) {
@@ -2166,7 +396,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2166
396
  function t(t, n, r, i, a) {
2167
397
  var o = t[n];
2168
398
  if (!e(o)) {
2169
- var s = A(o);
399
+ var s = M(o);
2170
400
  return new h("Invalid " + i + " `" + a + "` of type " + ("`" + s + "` supplied to `" + r + "`, expected a single ReactElement."));
2171
401
  }
2172
402
  return null;
@@ -2177,7 +407,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2177
407
  function e(e, t, r, i, a) {
2178
408
  var o = e[t];
2179
409
  if (!n.isValidElementType(o)) {
2180
- var s = A(o);
410
+ var s = M(o);
2181
411
  return new h("Invalid " + i + " `" + a + "` of type " + ("`" + s + "` supplied to `" + r + "`, expected a single ReactElement type."));
2182
412
  }
2183
413
  return null;
@@ -2187,7 +417,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2187
417
  function S(e) {
2188
418
  function t(t, n, r, i, a) {
2189
419
  if (!(t[n] instanceof e)) {
2190
- var o = e.name || f, s = N(t[n]);
420
+ var o = e.name || f, s = F(t[n]);
2191
421
  return new h("Invalid " + i + " `" + a + "` of type " + ("`" + s + "` supplied to `" + r + "`, expected ") + ("instance of `" + o + "`."));
2192
422
  }
2193
423
  return null;
@@ -2199,7 +429,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2199
429
  function t(t, n, r, i, a) {
2200
430
  for (var o = t[n], s = 0; s < e.length; s++) if (m(o, e[s])) return null;
2201
431
  var c = JSON.stringify(e, function(e, t) {
2202
- return j(t) === "symbol" ? String(t) : t;
432
+ return N(t) === "symbol" ? String(t) : t;
2203
433
  });
2204
434
  return new h("Invalid " + i + " `" + a + "` of value `" + String(o) + "` " + ("supplied to `" + r + "`, expected one of " + c + "."));
2205
435
  }
@@ -2208,7 +438,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2208
438
  function w(e) {
2209
439
  function t(t, n, r, o, s) {
2210
440
  if (typeof e != "function") return new h("Property `" + s + "` of component `" + r + "` has invalid PropType notation inside objectOf.");
2211
- var c = t[n], l = A(c);
441
+ var c = t[n], l = M(c);
2212
442
  if (l !== "object") return new h("Invalid " + o + " `" + s + "` of type " + ("`" + l + "` supplied to `" + r + "`, expected an object."));
2213
443
  for (var u in c) if (a(c, u)) {
2214
444
  var d = e(c, u, r, o, s + "." + u, i);
@@ -2222,7 +452,7 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2222
452
  if (!Array.isArray(e)) return process.env.NODE_ENV !== "production" && s("Invalid argument supplied to oneOfType, expected an instance of array."), c;
2223
453
  for (var t = 0; t < e.length; t++) {
2224
454
  var n = e[t];
2225
- if (typeof n != "function") return s("Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + M(n) + " at index " + t + "."), c;
455
+ if (typeof n != "function") return s("Invalid argument supplied to oneOfType. Expected an array of check functions, but received " + P(n) + " at index " + t + "."), c;
2226
456
  }
2227
457
  function r(t, n, r, o, s) {
2228
458
  for (var c = [], l = 0; l < e.length; l++) {
@@ -2237,20 +467,20 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2237
467
  }
2238
468
  function E() {
2239
469
  function e(e, t, n, r, i) {
2240
- return k(e[t]) ? null : new h("Invalid " + r + " `" + i + "` supplied to " + ("`" + n + "`, expected a ReactNode."));
470
+ return A(e[t]) ? null : new h("Invalid " + r + " `" + i + "` supplied to " + ("`" + n + "`, expected a ReactNode."));
2241
471
  }
2242
472
  return g(e);
2243
473
  }
2244
474
  function D(e, t, n, r, i) {
2245
475
  return new h((e || "React class") + ": " + t + " type `" + n + "." + r + "` is invalid; it must be a function, usually from the `prop-types` package, but received `" + i + "`.");
2246
476
  }
2247
- function ee(e) {
477
+ function O(e) {
2248
478
  function t(t, n, r, a, o) {
2249
- var s = t[n], c = A(s);
479
+ var s = t[n], c = M(s);
2250
480
  if (c !== "object") return new h("Invalid " + a + " `" + o + "` of type `" + c + "` " + ("supplied to `" + r + "`, expected `object`."));
2251
481
  for (var l in e) {
2252
482
  var u = e[l];
2253
- if (typeof u != "function") return D(r, a, o, l, j(u));
483
+ if (typeof u != "function") return D(r, a, o, l, N(u));
2254
484
  var d = u(s, l, r, a, o + "." + l, i);
2255
485
  if (d) return d;
2256
486
  }
@@ -2258,13 +488,13 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2258
488
  }
2259
489
  return g(t);
2260
490
  }
2261
- function O(e) {
491
+ function k(e) {
2262
492
  function t(t, n, o, s, c) {
2263
- var l = t[n], u = A(l);
493
+ var l = t[n], u = M(l);
2264
494
  if (u !== "object") return new h("Invalid " + s + " `" + c + "` of type `" + u + "` " + ("supplied to `" + o + "`, expected `object`."));
2265
495
  for (var d in r({}, t[n], e)) {
2266
496
  var f = e[d];
2267
- if (a(e, d) && typeof f != "function") return D(o, s, c, d, j(f));
497
+ if (a(e, d) && typeof f != "function") return D(o, s, c, d, N(f));
2268
498
  if (!f) return new h("Invalid " + s + " `" + c + "` key `" + d + "` supplied to `" + o + "`.\nBad object: " + JSON.stringify(t[n], null, " ") + "\nValid keys: " + JSON.stringify(Object.keys(e), null, " "));
2269
499
  var p = f(l, d, o, s, c + "." + d, i);
2270
500
  if (p) return p;
@@ -2273,47 +503,47 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2273
503
  }
2274
504
  return g(t);
2275
505
  }
2276
- function k(t) {
506
+ function A(t) {
2277
507
  switch (typeof t) {
2278
508
  case "number":
2279
509
  case "string":
2280
510
  case "undefined": return !0;
2281
511
  case "boolean": return !t;
2282
512
  case "object":
2283
- if (Array.isArray(t)) return t.every(k);
513
+ if (Array.isArray(t)) return t.every(A);
2284
514
  if (t === null || e(t)) return !0;
2285
515
  var n = d(t);
2286
516
  if (n) {
2287
517
  var r = n.call(t), i;
2288
518
  if (n !== t.entries) {
2289
- for (; !(i = r.next()).done;) if (!k(i.value)) return !1;
519
+ for (; !(i = r.next()).done;) if (!A(i.value)) return !1;
2290
520
  } else for (; !(i = r.next()).done;) {
2291
521
  var a = i.value;
2292
- if (a && !k(a[1])) return !1;
522
+ if (a && !A(a[1])) return !1;
2293
523
  }
2294
524
  } else return !1;
2295
525
  return !0;
2296
526
  default: return !1;
2297
527
  }
2298
528
  }
2299
- function te(e, t) {
529
+ function j(e, t) {
2300
530
  return e === "symbol" ? !0 : t ? t["@@toStringTag"] === "Symbol" || typeof Symbol == "function" && t instanceof Symbol : !1;
2301
531
  }
2302
- function A(e) {
532
+ function M(e) {
2303
533
  var t = typeof e;
2304
- return Array.isArray(e) ? "array" : e instanceof RegExp ? "object" : te(t, e) ? "symbol" : t;
534
+ return Array.isArray(e) ? "array" : e instanceof RegExp ? "object" : j(t, e) ? "symbol" : t;
2305
535
  }
2306
- function j(e) {
536
+ function N(e) {
2307
537
  if (e == null) return "" + e;
2308
- var t = A(e);
538
+ var t = M(e);
2309
539
  if (t === "object") {
2310
540
  if (e instanceof Date) return "date";
2311
541
  if (e instanceof RegExp) return "regexp";
2312
542
  }
2313
543
  return t;
2314
544
  }
2315
- function M(e) {
2316
- var t = j(e);
545
+ function P(e) {
546
+ var t = N(e);
2317
547
  switch (t) {
2318
548
  case "array":
2319
549
  case "object": return "an " + t;
@@ -2323,13 +553,13 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2323
553
  default: return t;
2324
554
  }
2325
555
  }
2326
- function N(e) {
556
+ function F(e) {
2327
557
  return !e.constructor || !e.constructor.name ? f : e.constructor.name;
2328
558
  }
2329
559
  return p.checkPropTypes = o, p.resetWarningCache = o.resetWarningCache, p.PropTypes = p, p;
2330
560
  };
2331
- })), Ar = /* @__PURE__ */ M(((e, t) => {
2332
- var n = Er();
561
+ })), ke = /* @__PURE__ */ I(((e, t) => {
562
+ var n = q();
2333
563
  function r() {}
2334
564
  function i() {}
2335
565
  i.resetWarningCache = r, t.exports = function() {
@@ -2368,12 +598,12 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2368
598
  };
2369
599
  return a.PropTypes = a, a;
2370
600
  };
2371
- })), jr = /* @__PURE__ */ M(((e, t) => {
601
+ })), Ae = /* @__PURE__ */ I(((e, t) => {
2372
602
  if (process.env.NODE_ENV !== "production") {
2373
- var n = wr();
2374
- t.exports = kr()(n.isElement, !0);
2375
- } else t.exports = Ar()();
2376
- })), Mr = /* @__PURE__ */ M(((e, t) => {
603
+ var n = we();
604
+ t.exports = Oe()(n.isElement, !0);
605
+ } else t.exports = ke()();
606
+ })), je = /* @__PURE__ */ I(((e, t) => {
2377
607
  var n = "__lodash_hash_undefined__", r = /[\\^$.*+?()[\]{}|]/g, i = /^\[object .+?Constructor\]$/, a = typeof global == "object" && global && global.Object === Object && global, o = typeof self == "object" && self && self.Object === Object && self, s = a || o || Function("return this")();
2378
608
  function c(e, t, n) {
2379
609
  switch (n.length) {
@@ -2432,109 +662,109 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2432
662
  var b = Array.prototype, x = Function.prototype, S = Object.prototype, C = s["__core-js_shared__"], w = function() {
2433
663
  var e = /[^.]+$/.exec(C && C.keys && C.keys.IE_PROTO || "");
2434
664
  return e ? "Symbol(src)_1." + e : "";
2435
- }(), T = x.toString, E = S.hasOwnProperty, D = S.toString, ee = RegExp("^" + T.call(E).replace(r, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"), O = s.Symbol, k = S.propertyIsEnumerable, te = b.splice, A = O ? O.isConcatSpreadable : void 0, j = Math.max, M = xe(s, "Map"), N = xe(Object, "create");
2436
- function P(e) {
665
+ }(), T = x.toString, E = S.hasOwnProperty, D = S.toString, O = RegExp("^" + T.call(E).replace(r, "\\$&").replace(/hasOwnProperty|(function).*?(?=\\\()| for .+?(?=\\\])/g, "$1.*?") + "$"), k = s.Symbol, A = S.propertyIsEnumerable, j = b.splice, M = k ? k.isConcatSpreadable : void 0, N = Math.max, P = ge(s, "Map"), F = ge(Object, "create");
666
+ function I(e) {
2437
667
  var t = -1, n = e ? e.length : 0;
2438
668
  for (this.clear(); ++t < n;) {
2439
669
  var r = e[t];
2440
670
  this.set(r[0], r[1]);
2441
671
  }
2442
672
  }
2443
- function F() {
2444
- this.__data__ = N ? N(null) : {};
673
+ function L() {
674
+ this.__data__ = F ? F(null) : {};
2445
675
  }
2446
- function I(e) {
676
+ function R(e) {
2447
677
  return this.has(e) && delete this.__data__[e];
2448
678
  }
2449
- function L(e) {
679
+ function z(e) {
2450
680
  var t = this.__data__;
2451
- if (N) {
681
+ if (F) {
2452
682
  var r = t[e];
2453
683
  return r === n ? void 0 : r;
2454
684
  }
2455
685
  return E.call(t, e) ? t[e] : void 0;
2456
686
  }
2457
- function ne(e) {
687
+ function B(e) {
2458
688
  var t = this.__data__;
2459
- return N ? t[e] !== void 0 : E.call(t, e);
689
+ return F ? t[e] !== void 0 : E.call(t, e);
2460
690
  }
2461
- function re(e, t) {
691
+ function ee(e, t) {
2462
692
  var r = this.__data__;
2463
- return r[e] = N && t === void 0 ? n : t, this;
693
+ return r[e] = F && t === void 0 ? n : t, this;
2464
694
  }
2465
- P.prototype.clear = F, P.prototype.delete = I, P.prototype.get = L, P.prototype.has = ne, P.prototype.set = re;
2466
- function R(e) {
695
+ I.prototype.clear = L, I.prototype.delete = R, I.prototype.get = z, I.prototype.has = B, I.prototype.set = ee;
696
+ function V(e) {
2467
697
  var t = -1, n = e ? e.length : 0;
2468
698
  for (this.clear(); ++t < n;) {
2469
699
  var r = e[t];
2470
700
  this.set(r[0], r[1]);
2471
701
  }
2472
702
  }
2473
- function ie() {
703
+ function te() {
2474
704
  this.__data__ = [];
2475
705
  }
2476
- function ae(e) {
2477
- var t = this.__data__, n = ge(t, e);
2478
- return n < 0 ? !1 : (n == t.length - 1 ? t.pop() : te.call(t, n, 1), !0);
706
+ function ne(e) {
707
+ var t = this.__data__, n = de(t, e);
708
+ return n < 0 ? !1 : (n == t.length - 1 ? t.pop() : j.call(t, n, 1), !0);
2479
709
  }
2480
- function z(e) {
2481
- var t = this.__data__, n = ge(t, e);
710
+ function H(e) {
711
+ var t = this.__data__, n = de(t, e);
2482
712
  return n < 0 ? void 0 : t[n][1];
2483
713
  }
2484
- function oe(e) {
2485
- return ge(this.__data__, e) > -1;
714
+ function U(e) {
715
+ return de(this.__data__, e) > -1;
2486
716
  }
2487
- function se(e, t) {
2488
- var n = this.__data__, r = ge(n, e);
717
+ function re(e, t) {
718
+ var n = this.__data__, r = de(n, e);
2489
719
  return r < 0 ? n.push([e, t]) : n[r][1] = t, this;
2490
720
  }
2491
- R.prototype.clear = ie, R.prototype.delete = ae, R.prototype.get = z, R.prototype.has = oe, R.prototype.set = se;
2492
- function B(e) {
721
+ V.prototype.clear = te, V.prototype.delete = ne, V.prototype.get = H, V.prototype.has = U, V.prototype.set = re;
722
+ function W(e) {
2493
723
  var t = -1, n = e ? e.length : 0;
2494
724
  for (this.clear(); ++t < n;) {
2495
725
  var r = e[t];
2496
726
  this.set(r[0], r[1]);
2497
727
  }
2498
728
  }
2499
- function ce() {
729
+ function ie() {
2500
730
  this.__data__ = {
2501
- hash: new P(),
2502
- map: new (M || R)(),
2503
- string: new P()
731
+ hash: new I(),
732
+ map: new (P || V)(),
733
+ string: new I()
2504
734
  };
2505
735
  }
2506
- function le(e) {
2507
- return V(this, e).delete(e);
736
+ function ae(e) {
737
+ return K(this, e).delete(e);
2508
738
  }
2509
- function ue(e) {
2510
- return V(this, e).get(e);
739
+ function oe(e) {
740
+ return K(this, e).get(e);
2511
741
  }
2512
- function de(e) {
2513
- return V(this, e).has(e);
742
+ function se(e) {
743
+ return K(this, e).has(e);
2514
744
  }
2515
- function fe(e, t) {
2516
- return V(this, e).set(e, t), this;
745
+ function ce(e, t) {
746
+ return K(this, e).set(e, t), this;
2517
747
  }
2518
- B.prototype.clear = ce, B.prototype.delete = le, B.prototype.get = ue, B.prototype.has = de, B.prototype.set = fe;
2519
- function pe(e) {
748
+ W.prototype.clear = ie, W.prototype.delete = ae, W.prototype.get = oe, W.prototype.has = se, W.prototype.set = ce;
749
+ function G(e) {
2520
750
  var t = -1, n = e ? e.length : 0;
2521
- for (this.__data__ = new B(); ++t < n;) this.add(e[t]);
751
+ for (this.__data__ = new W(); ++t < n;) this.add(e[t]);
2522
752
  }
2523
- function me(e) {
753
+ function le(e) {
2524
754
  return this.__data__.set(e, n), this;
2525
755
  }
2526
- function he(e) {
756
+ function ue(e) {
2527
757
  return this.__data__.has(e);
2528
758
  }
2529
- pe.prototype.add = pe.prototype.push = me, pe.prototype.has = he;
2530
- function ge(e, t) {
2531
- for (var n = e.length; n--;) if (De(e[n][0], t)) return n;
759
+ G.prototype.add = G.prototype.push = le, G.prototype.has = ue;
760
+ function de(e, t) {
761
+ for (var n = e.length; n--;) if (Se(e[n][0], t)) return n;
2532
762
  return -1;
2533
763
  }
2534
- function _e(e, t, n, r) {
764
+ function fe(e, t, n, r) {
2535
765
  var i = -1, a = l, o = !0, s = e.length, c = [], f = t.length;
2536
766
  if (!s) return c;
2537
- n && (t = d(t, g(n))), r ? (a = u, o = !1) : t.length >= 200 && (a = _, o = !1, t = new pe(t));
767
+ n && (t = d(t, g(n))), r ? (a = u, o = !1) : t.length >= 200 && (a = _, o = !1, t = new G(t));
2538
768
  outer: for (; ++i < s;) {
2539
769
  var p = e[i], m = n ? n(p) : p;
2540
770
  if (p = r || p !== 0 ? p : 0, o && m === m) {
@@ -2544,44 +774,44 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2544
774
  }
2545
775
  return c;
2546
776
  }
2547
- function ve(e, t, n, r, i) {
777
+ function pe(e, t, n, r, i) {
2548
778
  var a = -1, o = e.length;
2549
- for (n ||= Se, i ||= []; ++a < o;) {
779
+ for (n ||= _e, i ||= []; ++a < o;) {
2550
780
  var s = e[a];
2551
- t > 0 && n(s) ? t > 1 ? ve(s, t - 1, n, r, i) : f(i, s) : r || (i[i.length] = s);
781
+ t > 0 && n(s) ? t > 1 ? pe(s, t - 1, n, r, i) : f(i, s) : r || (i[i.length] = s);
2552
782
  }
2553
783
  return i;
2554
784
  }
2555
- function ye(e) {
2556
- return !H(e) || we(e) ? !1 : (Me(e) || y(e) ? ee : i).test(Te(e));
785
+ function me(e) {
786
+ return !Oe(e) || ye(e) ? !1 : (Ee(e) || y(e) ? O : i).test(be(e));
2557
787
  }
2558
- function be(e, t) {
2559
- return t = j(t === void 0 ? e.length - 1 : t, 0), function() {
2560
- for (var n = arguments, r = -1, i = j(n.length - t, 0), a = Array(i); ++r < i;) a[r] = n[t + r];
788
+ function he(e, t) {
789
+ return t = N(t === void 0 ? e.length - 1 : t, 0), function() {
790
+ for (var n = arguments, r = -1, i = N(n.length - t, 0), a = Array(i); ++r < i;) a[r] = n[t + r];
2561
791
  r = -1;
2562
792
  for (var o = Array(t + 1); ++r < t;) o[r] = n[r];
2563
793
  return o[t] = a, c(e, this, o);
2564
794
  };
2565
795
  }
2566
- function V(e, t) {
796
+ function K(e, t) {
2567
797
  var n = e.__data__;
2568
- return Ce(t) ? n[typeof t == "string" ? "string" : "hash"] : n.map;
798
+ return ve(t) ? n[typeof t == "string" ? "string" : "hash"] : n.map;
2569
799
  }
2570
- function xe(e, t) {
800
+ function ge(e, t) {
2571
801
  var n = v(e, t);
2572
- return ye(n) ? n : void 0;
802
+ return me(n) ? n : void 0;
2573
803
  }
2574
- function Se(e) {
2575
- return ke(e) || Oe(e) || !!(A && e && e[A]);
804
+ function _e(e) {
805
+ return we(e) || Ce(e) || !!(M && e && e[M]);
2576
806
  }
2577
- function Ce(e) {
807
+ function ve(e) {
2578
808
  var t = typeof e;
2579
809
  return t == "string" || t == "number" || t == "symbol" || t == "boolean" ? e !== "__proto__" : e === null;
2580
810
  }
2581
- function we(e) {
811
+ function ye(e) {
2582
812
  return !!w && w in e;
2583
813
  }
2584
- function Te(e) {
814
+ function be(e) {
2585
815
  if (e != null) {
2586
816
  try {
2587
817
  return T.call(e);
@@ -2592,39 +822,39 @@ var xr = /* @__PURE__ */ M(((e, t) => {
2592
822
  }
2593
823
  return "";
2594
824
  }
2595
- var Ee = be(function(e, t) {
2596
- return je(e) ? _e(e, ve(t, 1, je, !0)) : [];
825
+ var xe = he(function(e, t) {
826
+ return q(e) ? fe(e, pe(t, 1, q, !0)) : [];
2597
827
  });
2598
- function De(e, t) {
828
+ function Se(e, t) {
2599
829
  return e === t || e !== e && t !== t;
2600
830
  }
2601
- function Oe(e) {
2602
- return je(e) && E.call(e, "callee") && (!k.call(e, "callee") || D.call(e) == "[object Arguments]");
831
+ function Ce(e) {
832
+ return q(e) && E.call(e, "callee") && (!A.call(e, "callee") || D.call(e) == "[object Arguments]");
2603
833
  }
2604
- var ke = Array.isArray;
2605
- function Ae(e) {
2606
- return e != null && Ne(e.length) && !Me(e);
834
+ var we = Array.isArray;
835
+ function Te(e) {
836
+ return e != null && De(e.length) && !Ee(e);
2607
837
  }
2608
- function je(e) {
2609
- return Pe(e) && Ae(e);
838
+ function q(e) {
839
+ return ke(e) && Te(e);
2610
840
  }
2611
- function Me(e) {
2612
- var t = H(e) ? D.call(e) : "";
841
+ function Ee(e) {
842
+ var t = Oe(e) ? D.call(e) : "";
2613
843
  return t == "[object Function]" || t == "[object GeneratorFunction]";
2614
844
  }
2615
- function Ne(e) {
845
+ function De(e) {
2616
846
  return typeof e == "number" && e > -1 && e % 1 == 0 && e <= 9007199254740991;
2617
847
  }
2618
- function H(e) {
848
+ function Oe(e) {
2619
849
  var t = typeof e;
2620
850
  return !!e && (t == "object" || t == "function");
2621
851
  }
2622
- function Pe(e) {
852
+ function ke(e) {
2623
853
  return !!e && typeof e == "object";
2624
854
  }
2625
- t.exports = Ee;
2626
- })), Nr = /* @__PURE__ */ F(xr()), X = /* @__PURE__ */ F(jr()), Pr = /* @__PURE__ */ F(Mr());
2627
- function Fr(e, t) {
855
+ t.exports = xe;
856
+ })), Me = /* @__PURE__ */ R(xe()), J = /* @__PURE__ */ R(Ae()), Ne = /* @__PURE__ */ R(je());
857
+ function Pe(e, t) {
2628
858
  var n = e == null ? null : typeof Symbol < "u" && e[Symbol.iterator] || e["@@iterator"];
2629
859
  if (n != null) {
2630
860
  var r, i, a, o, s = [], c = !0, l = !1;
@@ -2645,54 +875,54 @@ function Fr(e, t) {
2645
875
  return s;
2646
876
  }
2647
877
  }
2648
- function Ir(e, t) {
878
+ function Fe(e, t) {
2649
879
  if (!(e instanceof t)) throw TypeError("Cannot call a class as a function");
2650
880
  }
2651
- function Lr(e, t) {
881
+ function Ie(e, t) {
2652
882
  for (var n = 0; n < t.length; n++) {
2653
883
  var r = t[n];
2654
- r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, ei(r.key), r);
884
+ r.enumerable = r.enumerable || !1, r.configurable = !0, "value" in r && (r.writable = !0), Object.defineProperty(e, $e(r.key), r);
2655
885
  }
2656
886
  }
2657
- function Rr(e, t, n) {
2658
- return t && Lr(e.prototype, t), n && Lr(e, n), Object.defineProperty(e, "prototype", { writable: !1 }), e;
887
+ function Le(e, t, n) {
888
+ return t && Ie(e.prototype, t), n && Ie(e, n), Object.defineProperty(e, "prototype", { writable: !1 }), e;
2659
889
  }
2660
- function Z(e, t, n) {
2661
- return t = ei(t), t in e ? Object.defineProperty(e, t, {
890
+ function Y(e, t, n) {
891
+ return t = $e(t), t in e ? Object.defineProperty(e, t, {
2662
892
  value: n,
2663
893
  enumerable: !0,
2664
894
  configurable: !0,
2665
895
  writable: !0
2666
896
  }) : e[t] = n, e;
2667
897
  }
2668
- function zr() {
2669
- return zr = Object.assign ? Object.assign.bind() : function(e) {
898
+ function Re() {
899
+ return Re = Object.assign ? Object.assign.bind() : function(e) {
2670
900
  for (var t = 1; t < arguments.length; t++) {
2671
901
  var n = arguments[t];
2672
902
  for (var r in n) Object.prototype.hasOwnProperty.call(n, r) && (e[r] = n[r]);
2673
903
  }
2674
904
  return e;
2675
- }, zr.apply(this, arguments);
905
+ }, Re.apply(this, arguments);
2676
906
  }
2677
- function Br(e, t) {
907
+ function ze(e, t) {
2678
908
  if (typeof t != "function" && t !== null) throw TypeError("Super expression must either be null or a function");
2679
909
  e.prototype = Object.create(t && t.prototype, { constructor: {
2680
910
  value: e,
2681
911
  writable: !0,
2682
912
  configurable: !0
2683
- } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && Hr(e, t);
913
+ } }), Object.defineProperty(e, "prototype", { writable: !1 }), t && Ve(e, t);
2684
914
  }
2685
- function Vr(e) {
2686
- return Vr = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) {
915
+ function Be(e) {
916
+ return Be = Object.setPrototypeOf ? Object.getPrototypeOf.bind() : function(e) {
2687
917
  return e.__proto__ || Object.getPrototypeOf(e);
2688
- }, Vr(e);
918
+ }, Be(e);
2689
919
  }
2690
- function Hr(e, t) {
2691
- return Hr = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) {
920
+ function Ve(e, t) {
921
+ return Ve = Object.setPrototypeOf ? Object.setPrototypeOf.bind() : function(e, t) {
2692
922
  return e.__proto__ = t, e;
2693
- }, Hr(e, t);
923
+ }, Ve(e, t);
2694
924
  }
2695
- function Ur() {
925
+ function He() {
2696
926
  if (typeof Reflect > "u" || !Reflect.construct || Reflect.construct.sham) return !1;
2697
927
  if (typeof Proxy == "function") return !0;
2698
928
  try {
@@ -2701,64 +931,64 @@ function Ur() {
2701
931
  return !1;
2702
932
  }
2703
933
  }
2704
- function Wr(e, t) {
934
+ function Ue(e, t) {
2705
935
  if (e == null) return {};
2706
936
  var n = {}, r = Object.keys(e), i, a;
2707
937
  for (a = 0; a < r.length; a++) i = r[a], !(t.indexOf(i) >= 0) && (n[i] = e[i]);
2708
938
  return n;
2709
939
  }
2710
- function Gr(e, t) {
940
+ function We(e, t) {
2711
941
  if (e == null) return {};
2712
- var n = Wr(e, t), r, i;
942
+ var n = Ue(e, t), r, i;
2713
943
  if (Object.getOwnPropertySymbols) {
2714
944
  var a = Object.getOwnPropertySymbols(e);
2715
945
  for (i = 0; i < a.length; i++) r = a[i], !(t.indexOf(r) >= 0) && Object.prototype.propertyIsEnumerable.call(e, r) && (n[r] = e[r]);
2716
946
  }
2717
947
  return n;
2718
948
  }
2719
- function Q(e) {
949
+ function X(e) {
2720
950
  if (e === void 0) throw ReferenceError("this hasn't been initialised - super() hasn't been called");
2721
951
  return e;
2722
952
  }
2723
- function Kr(e, t) {
953
+ function Ge(e, t) {
2724
954
  if (t && (typeof t == "object" || typeof t == "function")) return t;
2725
955
  if (t !== void 0) throw TypeError("Derived constructors may only return object or undefined");
2726
- return Q(e);
956
+ return X(e);
2727
957
  }
2728
- function qr(e) {
2729
- var t = Ur();
958
+ function Ke(e) {
959
+ var t = He();
2730
960
  return function() {
2731
- var n = Vr(e), r;
961
+ var n = Be(e), r;
2732
962
  if (t) {
2733
- var i = Vr(this).constructor;
963
+ var i = Be(this).constructor;
2734
964
  r = Reflect.construct(n, arguments, i);
2735
965
  } else r = n.apply(this, arguments);
2736
- return Kr(this, r);
966
+ return Ge(this, r);
2737
967
  };
2738
968
  }
2739
- function Jr(e, t) {
2740
- return Yr(e) || Fr(e, t) || Xr(e, t) || Qr();
969
+ function qe(e, t) {
970
+ return Je(e) || Pe(e, t) || Ye(e, t) || Ze();
2741
971
  }
2742
- function Yr(e) {
972
+ function Je(e) {
2743
973
  if (Array.isArray(e)) return e;
2744
974
  }
2745
- function Xr(e, t) {
975
+ function Ye(e, t) {
2746
976
  if (e) {
2747
- if (typeof e == "string") return Zr(e, t);
977
+ if (typeof e == "string") return Xe(e, t);
2748
978
  var n = Object.prototype.toString.call(e).slice(8, -1);
2749
979
  if (n === "Object" && e.constructor && (n = e.constructor.name), n === "Map" || n === "Set") return Array.from(e);
2750
- if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Zr(e, t);
980
+ if (n === "Arguments" || /^(?:Ui|I)nt(?:8|16|32)(?:Clamped)?Array$/.test(n)) return Xe(e, t);
2751
981
  }
2752
982
  }
2753
- function Zr(e, t) {
983
+ function Xe(e, t) {
2754
984
  (t == null || t > e.length) && (t = e.length);
2755
985
  for (var n = 0, r = Array(t); n < t; n++) r[n] = e[n];
2756
986
  return r;
2757
987
  }
2758
- function Qr() {
988
+ function Ze() {
2759
989
  throw TypeError("Invalid attempt to destructure non-iterable instance.\nIn order to be iterable, non-array objects must have a [Symbol.iterator]() method.");
2760
990
  }
2761
- function $r(e, t) {
991
+ function Qe(e, t) {
2762
992
  if (typeof e != "object" || !e) return e;
2763
993
  var n = e[Symbol.toPrimitive];
2764
994
  if (n !== void 0) {
@@ -2768,11 +998,11 @@ function $r(e, t) {
2768
998
  }
2769
999
  return (t === "string" ? String : Number)(e);
2770
1000
  }
2771
- function ei(e) {
2772
- var t = $r(e, "string");
1001
+ function $e(e) {
1002
+ var t = Qe(e, "string");
2773
1003
  return typeof t == "symbol" ? t : String(t);
2774
1004
  }
2775
- var ti = [
1005
+ var et = [
2776
1006
  "C",
2777
1007
  "Db",
2778
1008
  "D",
@@ -2785,13 +1015,13 @@ var ti = [
2785
1015
  "A",
2786
1016
  "Bb",
2787
1017
  "B"
2788
- ], ni = [
1018
+ ], tt = [
2789
1019
  "Db",
2790
1020
  "Eb",
2791
1021
  "Gb",
2792
1022
  "Ab",
2793
1023
  "Bb"
2794
- ], ri = {
1024
+ ], nt = {
2795
1025
  C: 0,
2796
1026
  "C#": 1,
2797
1027
  Db: 1,
@@ -2809,62 +1039,62 @@ var ti = [
2809
1039
  "A#": 10,
2810
1040
  Bb: 10,
2811
1041
  B: 11
2812
- }, ii = 12, ai = ii, oi = 127, si = /([a-g])([#b]?)(\d+)/, ci = 12;
2813
- function li(e) {
1042
+ }, rt = 12, it = rt, at = 127, ot = /([a-g])([#b]?)(\d+)/, st = 12;
1043
+ function ct(e) {
2814
1044
  if (!e) throw Error("Invalid note argument");
2815
- var t = si.exec(e.toLowerCase());
1045
+ var t = ot.exec(e.toLowerCase());
2816
1046
  if (!t) throw Error("Invalid note argument");
2817
- var n = Jr(t, 4), r = n[1], i = n[2], a = n[3], o = ri[`${r.toUpperCase()}${i}`];
1047
+ var n = qe(t, 4), r = n[1], i = n[2], a = n[3], o = nt[`${r.toUpperCase()}${i}`];
2818
1048
  if (o == null) throw Error("Invalid note argument");
2819
- return ii + o + ci * parseInt(a, 10);
1049
+ return rt + o + st * parseInt(a, 10);
2820
1050
  }
2821
- function ui(e) {
2822
- var t = (e - ii) % ci, n = Math.floor((e - ii) / ci), r = ti[t];
1051
+ function lt(e) {
1052
+ var t = (e - rt) % st, n = Math.floor((e - rt) / st), r = et[t];
2823
1053
  return {
2824
1054
  note: `${r}${n}`,
2825
1055
  pitchName: r,
2826
1056
  octave: n,
2827
1057
  midiNumber: e,
2828
- isAccidental: ni.includes(r)
1058
+ isAccidental: tt.includes(r)
2829
1059
  };
2830
1060
  }
2831
- function di() {
2832
- return (0, Nr.default)(ai, oi + 1).reduce(function(e, t) {
2833
- return e[t] = ui(t), e;
1061
+ function ut() {
1062
+ return (0, Me.default)(it, at + 1).reduce(function(e, t) {
1063
+ return e[t] = lt(t), e;
2834
1064
  }, {});
2835
1065
  }
2836
- var fi = di();
2837
- function pi(e) {
2838
- var t = fi[e];
1066
+ var dt = ut();
1067
+ function ft(e) {
1068
+ var t = dt[e];
2839
1069
  if (!t) throw Error("Invalid MIDI number");
2840
1070
  return t;
2841
1071
  }
2842
- var mi = {
2843
- fromNote: li,
2844
- getAttributes: pi,
2845
- MIN_MIDI_NUMBER: ai,
2846
- MAX_MIDI_NUMBER: oi,
2847
- NATURAL_MIDI_NUMBERS: (0, Nr.default)(ai, oi + 1).filter(function(e) {
2848
- return !pi(e).isAccidental;
1072
+ var pt = {
1073
+ fromNote: ct,
1074
+ getAttributes: ft,
1075
+ MIN_MIDI_NUMBER: it,
1076
+ MAX_MIDI_NUMBER: at,
1077
+ NATURAL_MIDI_NUMBERS: (0, Me.default)(it, at + 1).filter(function(e) {
1078
+ return !ft(e).isAccidental;
2849
1079
  })
2850
- }, hi = 60, gi = /*#__PURE__*/ function(t) {
2851
- Br(r, t);
2852
- var n = qr(r);
1080
+ }, mt = 60, ht = /*#__PURE__*/ function(t) {
1081
+ ze(r, t);
1082
+ var n = Ke(r);
2853
1083
  function r() {
2854
1084
  var e;
2855
- Ir(this, r);
1085
+ Fe(this, r);
2856
1086
  var t = [...arguments];
2857
- return e = n.call.apply(n, [this].concat(t)), Z(Q(e), "onPlayNoteInput", function() {
1087
+ return e = n.call.apply(n, [this].concat(t)), Y(X(e), "onPlayNoteInput", function() {
2858
1088
  e.props.onPlayNoteInput(e.props.midiNumber);
2859
- }), Z(Q(e), "onStopNoteInput", function() {
1089
+ }), Y(X(e), "onStopNoteInput", function() {
2860
1090
  e.props.onStopNoteInput(e.props.midiNumber), e.props.onKeyMouseLeave && e.props.onKeyMouseLeave(e.props.midiNumber);
2861
1091
  }), e;
2862
1092
  }
2863
- return Rr(r, [
1093
+ return Le(r, [
2864
1094
  {
2865
1095
  key: "getAbsoluteKeyPosition",
2866
1096
  value: function(e) {
2867
- var t = 7, n = mi.getAttributes(e), r = n.octave, i = n.pitchName;
1097
+ var t = 7, n = pt.getAttributes(e), r = n.octave, i = n.pitchName;
2868
1098
  return this.props.pitchPositions[i] + t * r;
2869
1099
  }
2870
1100
  },
@@ -2877,19 +1107,19 @@ var mi = {
2877
1107
  {
2878
1108
  key: "render",
2879
1109
  value: function() {
2880
- var t = this, n = this.props, r = n.naturalKeyWidth, i = n.accidentalWidthRatio, a = n.midiNumber, o = n.gliss, s = n.useTouchEvents, c = n.accidental, l = n.active, u = n.selected, d = n.disabled, p = n.children, m = _i(this.getRelativeKeyPosition(a) * r), h = _i(c ? i * r : r);
1110
+ var t = this, n = this.props, r = n.naturalKeyWidth, i = n.accidentalWidthRatio, a = n.midiNumber, o = n.gliss, s = n.useTouchEvents, c = n.accidental, l = n.active, u = n.selected, d = n.disabled, f = n.children, p = gt(this.getRelativeKeyPosition(a) * r), h = gt(c ? i * r : r);
2881
1111
  return /*#__PURE__*/ e.createElement("div", {
2882
1112
  "data-midinumber": a,
2883
- className: f("ReactPiano__Key", {
1113
+ className: m("ReactPiano__Key", {
2884
1114
  "ReactPiano__Key--accidental": c,
2885
1115
  "ReactPiano__Key--natural": !c,
2886
1116
  "ReactPiano__Key--disabled": d,
2887
1117
  "ReactPiano__Key--active": l,
2888
1118
  "ReactPiano__Key--selected": u,
2889
- "ReactPiano__Key--middleC": a === hi
1119
+ "ReactPiano__Key--middleC": a === mt
2890
1120
  }),
2891
1121
  style: {
2892
- left: m,
1122
+ left: p,
2893
1123
  width: h
2894
1124
  },
2895
1125
  onDoubleClick: function() {
@@ -2902,7 +1132,7 @@ var mi = {
2902
1132
  onMouseEnter: function() {
2903
1133
  t.props.onKeyMouseEnter && t.props.onKeyMouseEnter({
2904
1134
  accidental: c,
2905
- left: m,
1135
+ left: p,
2906
1136
  midiNumber: a,
2907
1137
  width: h
2908
1138
  }), o && t.onPlayNoteInput();
@@ -2911,28 +1141,28 @@ var mi = {
2911
1141
  onTouchStart: s ? this.onPlayNoteInput : null,
2912
1142
  onTouchCancel: s ? this.onStopNoteInput : null,
2913
1143
  onTouchEnd: s ? this.onStopNoteInput : null
2914
- }, /*#__PURE__*/ e.createElement("div", { className: "ReactPiano__NoteLabelContainer" }, p));
1144
+ }, /*#__PURE__*/ e.createElement("div", { className: "ReactPiano__NoteLabelContainer" }, f));
2915
1145
  }
2916
1146
  }
2917
1147
  ]), r;
2918
1148
  }(e.Component);
2919
- Z(gi, "propTypes", {
2920
- midiNumber: X.default.number.isRequired,
2921
- naturalKeyWidth: X.default.number.isRequired,
2922
- gliss: X.default.bool.isRequired,
2923
- useTouchEvents: X.default.bool.isRequired,
2924
- accidental: X.default.bool.isRequired,
2925
- active: X.default.bool.isRequired,
2926
- selected: X.default.bool,
2927
- disabled: X.default.bool.isRequired,
2928
- onKeyMouseEnter: X.default.func,
2929
- onKeyMouseLeave: X.default.func,
2930
- onPlayNoteInput: X.default.func.isRequired,
2931
- onStopNoteInput: X.default.func.isRequired,
2932
- accidentalWidthRatio: X.default.number.isRequired,
2933
- pitchPositions: X.default.object.isRequired,
2934
- children: X.default.node
2935
- }), Z(gi, "defaultProps", {
1149
+ Y(ht, "propTypes", {
1150
+ midiNumber: J.default.number.isRequired,
1151
+ naturalKeyWidth: J.default.number.isRequired,
1152
+ gliss: J.default.bool.isRequired,
1153
+ useTouchEvents: J.default.bool.isRequired,
1154
+ accidental: J.default.bool.isRequired,
1155
+ active: J.default.bool.isRequired,
1156
+ selected: J.default.bool,
1157
+ disabled: J.default.bool.isRequired,
1158
+ onKeyMouseEnter: J.default.func,
1159
+ onKeyMouseLeave: J.default.func,
1160
+ onPlayNoteInput: J.default.func.isRequired,
1161
+ onStopNoteInput: J.default.func.isRequired,
1162
+ accidentalWidthRatio: J.default.number.isRequired,
1163
+ pitchPositions: J.default.object.isRequired,
1164
+ children: J.default.node
1165
+ }), Y(ht, "defaultProps", {
2936
1166
  accidentalWidthRatio: .65,
2937
1167
  selected: !1,
2938
1168
  onKeyMouseEnter: void 0,
@@ -2952,27 +1182,27 @@ Z(gi, "propTypes", {
2952
1182
  B: 6
2953
1183
  }
2954
1184
  });
2955
- function _i(e) {
1185
+ function gt(e) {
2956
1186
  return `${e * 100}%`;
2957
1187
  }
2958
- var vi = /*#__PURE__*/ function(t) {
2959
- Br(r, t);
2960
- var n = qr(r);
1188
+ var _t = /*#__PURE__*/ function(t) {
1189
+ ze(r, t);
1190
+ var n = Ke(r);
2961
1191
  function r() {
2962
- return Ir(this, r), n.apply(this, arguments);
1192
+ return Fe(this, r), n.apply(this, arguments);
2963
1193
  }
2964
- return Rr(r, [
1194
+ return Le(r, [
2965
1195
  {
2966
1196
  key: "getMidiNumbers",
2967
1197
  value: function() {
2968
- return (0, Nr.default)(this.props.noteRange.first, this.props.noteRange.last + 1);
1198
+ return (0, Me.default)(this.props.noteRange.first, this.props.noteRange.last + 1);
2969
1199
  }
2970
1200
  },
2971
1201
  {
2972
1202
  key: "getNaturalKeyCount",
2973
1203
  value: function() {
2974
1204
  return this.getMidiNumbers().filter(function(e) {
2975
- return !mi.getAttributes(e).isAccidental;
1205
+ return !pt.getAttributes(e).isAccidental;
2976
1206
  }).length;
2977
1207
  }
2978
1208
  },
@@ -2999,16 +1229,16 @@ var vi = /*#__PURE__*/ function(t) {
2999
1229
  value: function() {
3000
1230
  var t = this, n = this.getNaturalKeyWidth();
3001
1231
  return /*#__PURE__*/ e.createElement("div", {
3002
- className: f("ReactPiano__Keyboard", this.props.className),
1232
+ className: m("ReactPiano__Keyboard", this.props.className),
3003
1233
  style: {
3004
1234
  width: this.getWidth(),
3005
1235
  height: this.getHeight()
3006
1236
  }
3007
1237
  }, this.getMidiNumbers().map(function(r) {
3008
- var i = mi.getAttributes(r);
1238
+ var i = pt.getAttributes(r);
3009
1239
  i.note;
3010
1240
  var a = i.isAccidental, o = !t.props.disabled && t.props.activeNotes.includes(r), s = t.props.selectedNotes && t.props.selectedNotes.includes(r);
3011
- return /*#__PURE__*/ e.createElement(gi, {
1241
+ return /*#__PURE__*/ e.createElement(ht, {
3012
1242
  accidental: a,
3013
1243
  active: o,
3014
1244
  selected: s,
@@ -3035,22 +1265,22 @@ var vi = /*#__PURE__*/ function(t) {
3035
1265
  }
3036
1266
  ]), r;
3037
1267
  }(e.Component);
3038
- Z(vi, "propTypes", {
3039
- noteRange: bi,
3040
- activeNotes: X.default.arrayOf(X.default.number),
3041
- selectedNotes: X.default.arrayOf(X.default.number),
3042
- onKeyMouseEnter: X.default.func,
3043
- onKeyMouseLeave: X.default.func,
3044
- onPlayNoteInput: X.default.func.isRequired,
3045
- onStopNoteInput: X.default.func.isRequired,
3046
- renderNoteLabel: X.default.func.isRequired,
3047
- keyWidthToHeight: X.default.number.isRequired,
3048
- className: X.default.string,
3049
- disabled: X.default.bool,
3050
- gliss: X.default.bool,
3051
- useTouchEvents: X.default.bool,
3052
- width: X.default.number
3053
- }), Z(vi, "defaultProps", {
1268
+ Y(_t, "propTypes", {
1269
+ noteRange: yt,
1270
+ activeNotes: J.default.arrayOf(J.default.number),
1271
+ selectedNotes: J.default.arrayOf(J.default.number),
1272
+ onKeyMouseEnter: J.default.func,
1273
+ onKeyMouseLeave: J.default.func,
1274
+ onPlayNoteInput: J.default.func.isRequired,
1275
+ onStopNoteInput: J.default.func.isRequired,
1276
+ renderNoteLabel: J.default.func.isRequired,
1277
+ keyWidthToHeight: J.default.number.isRequired,
1278
+ className: J.default.string,
1279
+ disabled: J.default.bool,
1280
+ gliss: J.default.bool,
1281
+ useTouchEvents: J.default.bool,
1282
+ width: J.default.number
1283
+ }), Y(_t, "defaultProps", {
3054
1284
  disabled: !1,
3055
1285
  gliss: !1,
3056
1286
  keyWidthToHeight: .33,
@@ -3059,66 +1289,66 @@ Z(vi, "propTypes", {
3059
1289
  renderNoteLabel: function() {},
3060
1290
  useTouchEvents: !1
3061
1291
  });
3062
- function yi(e) {
3063
- return typeof e == "number" && mi.NATURAL_MIDI_NUMBERS.includes(e);
1292
+ function vt(e) {
1293
+ return typeof e == "number" && pt.NATURAL_MIDI_NUMBERS.includes(e);
3064
1294
  }
3065
- function bi(e, t, n) {
1295
+ function yt(e, t, n) {
3066
1296
  var r = e[t], i = r.first, a = r.last;
3067
1297
  if (!i || !a) return /* @__PURE__ */ Error(`Invalid prop ${t} supplied to ${n}. ${t} must be an object with .first and .last values.`);
3068
- if (!yi(i) || !yi(a)) return /* @__PURE__ */ Error(`Invalid prop ${t} supplied to ${n}. ${t} values must be valid MIDI numbers, and should not be accidentals (sharp or flat notes).`);
1298
+ if (!vt(i) || !vt(a)) return /* @__PURE__ */ Error(`Invalid prop ${t} supplied to ${n}. ${t} values must be valid MIDI numbers, and should not be accidentals (sharp or flat notes).`);
3069
1299
  if (i >= a) return /* @__PURE__ */ Error(`Invalid prop ${t} supplied to ${n}. ${t}.first must be smaller than ${t}.last.`);
3070
1300
  }
3071
- var xi = /*#__PURE__*/ function(t) {
3072
- Br(r, t);
3073
- var n = qr(r);
1301
+ var bt = /*#__PURE__*/ function(t) {
1302
+ ze(r, t);
1303
+ var n = Ke(r);
3074
1304
  function r() {
3075
1305
  var e;
3076
- Ir(this, r);
1306
+ Fe(this, r);
3077
1307
  var t = [...arguments];
3078
- return e = n.call.apply(n, [this].concat(t)), Z(Q(e), "state", {
1308
+ return e = n.call.apply(n, [this].concat(t)), Y(X(e), "state", {
3079
1309
  isMouseDown: !1,
3080
1310
  useTouchEvents: !1
3081
- }), Z(Q(e), "handleNoteChanges", function(t) {
1311
+ }), Y(X(e), "handleNoteChanges", function(t) {
3082
1312
  var n = t.prevActiveNotes, r = t.nextActiveNotes;
3083
1313
  if (!e.props.disabled) {
3084
- var i = (0, Pr.default)(n, r);
3085
- (0, Pr.default)(r, n).forEach(function(t) {
1314
+ var i = (0, Ne.default)(n, r);
1315
+ (0, Ne.default)(r, n).forEach(function(t) {
3086
1316
  e.props.playNote(t);
3087
1317
  }), i.forEach(function(t) {
3088
1318
  e.props.stopNote(t);
3089
1319
  });
3090
1320
  }
3091
- }), Z(Q(e), "getMidiNumberForKey", function(t) {
1321
+ }), Y(X(e), "getMidiNumberForKey", function(t) {
3092
1322
  if (!e.props.keyboardShortcuts) return null;
3093
1323
  var n = e.props.keyboardShortcuts.find(function(e) {
3094
1324
  return e.key === t;
3095
1325
  });
3096
1326
  return n && n.midiNumber;
3097
- }), Z(Q(e), "getKeyForMidiNumber", function(t) {
1327
+ }), Y(X(e), "getKeyForMidiNumber", function(t) {
3098
1328
  if (!e.props.keyboardShortcuts) return null;
3099
1329
  var n = e.props.keyboardShortcuts.find(function(e) {
3100
1330
  return e.midiNumber === t;
3101
1331
  });
3102
1332
  return n && n.key;
3103
- }), Z(Q(e), "onKeyDown", function(t) {
1333
+ }), Y(X(e), "onKeyDown", function(t) {
3104
1334
  if (!(t.ctrlKey || t.metaKey || t.shiftKey)) {
3105
1335
  var n = e.getMidiNumberForKey(t.key);
3106
1336
  n && e.onPlayNoteInput(n);
3107
1337
  }
3108
- }), Z(Q(e), "onKeyUp", function(t) {
1338
+ }), Y(X(e), "onKeyUp", function(t) {
3109
1339
  var n = e.getMidiNumberForKey(t.key);
3110
1340
  n && e.onStopNoteInput(n);
3111
- }), Z(Q(e), "onPlayNoteInput", function(t) {
1341
+ }), Y(X(e), "onPlayNoteInput", function(t) {
3112
1342
  e.props.disabled || e.props.onPlayNoteInput(t, e.props.activeNotes);
3113
- }), Z(Q(e), "onStopNoteInput", function(t) {
1343
+ }), Y(X(e), "onStopNoteInput", function(t) {
3114
1344
  e.props.disabled || e.props.onStopNoteInput(t, e.props.activeNotes);
3115
- }), Z(Q(e), "onMouseDown", function() {
1345
+ }), Y(X(e), "onMouseDown", function() {
3116
1346
  e.setState({ isMouseDown: !0 });
3117
- }), Z(Q(e), "onMouseUp", function() {
1347
+ }), Y(X(e), "onMouseUp", function() {
3118
1348
  e.setState({ isMouseDown: !1 });
3119
- }), Z(Q(e), "onTouchStart", function() {
1349
+ }), Y(X(e), "onTouchStart", function() {
3120
1350
  e.setState({ useTouchEvents: !0 });
3121
- }), Z(Q(e), "renderNoteLabel", function(t) {
1351
+ }), Y(X(e), "renderNoteLabel", function(t) {
3122
1352
  var n = t.midiNumber, r = t.isActive, i = t.isAccidental, a = e.getKeyForMidiNumber(n);
3123
1353
  return e.props.renderNoteLabel({
3124
1354
  keyboardShortcut: a,
@@ -3128,7 +1358,7 @@ var xi = /*#__PURE__*/ function(t) {
3128
1358
  });
3129
1359
  }), e;
3130
1360
  }
3131
- return Rr(r, [
1361
+ return Le(r, [
3132
1362
  {
3133
1363
  key: "componentDidMount",
3134
1364
  value: function() {
@@ -3162,7 +1392,7 @@ var xi = /*#__PURE__*/ function(t) {
3162
1392
  onMouseUp: this.onMouseUp,
3163
1393
  onTouchStart: this.onTouchStart,
3164
1394
  "data-testid": "container"
3165
- }, /*#__PURE__*/ e.createElement(vi, {
1395
+ }, /*#__PURE__*/ e.createElement(_t, {
3166
1396
  activeNotes: this.props.activeNotes,
3167
1397
  selectedNotes: this.props.selectedNotes,
3168
1398
  className: this.props.className,
@@ -3184,58 +1414,58 @@ var xi = /*#__PURE__*/ function(t) {
3184
1414
  }
3185
1415
  ]), r;
3186
1416
  }(e.Component);
3187
- Z(xi, "propTypes", {
3188
- noteRange: X.default.object.isRequired,
3189
- activeNotes: X.default.arrayOf(X.default.number.isRequired).isRequired,
3190
- selectedNotes: X.default.arrayOf(X.default.number),
3191
- playNote: X.default.func.isRequired,
3192
- stopNote: X.default.func.isRequired,
3193
- onClick: X.default.func,
3194
- onDoubleClick: X.default.func,
3195
- onKeyMouseEnter: X.default.func,
3196
- onKeyMouseLeave: X.default.func,
3197
- onPlayNoteInput: X.default.func.isRequired,
3198
- onStopNoteInput: X.default.func.isRequired,
3199
- renderNoteLabel: X.default.func.isRequired,
3200
- className: X.default.string,
3201
- disabled: X.default.bool,
3202
- width: X.default.number,
3203
- keyWidthToHeight: X.default.number,
3204
- keyboardShortcuts: X.default.arrayOf(X.default.shape({
3205
- key: X.default.string.isRequired,
3206
- midiNumber: X.default.number.isRequired
1417
+ Y(bt, "propTypes", {
1418
+ noteRange: J.default.object.isRequired,
1419
+ activeNotes: J.default.arrayOf(J.default.number.isRequired).isRequired,
1420
+ selectedNotes: J.default.arrayOf(J.default.number),
1421
+ playNote: J.default.func.isRequired,
1422
+ stopNote: J.default.func.isRequired,
1423
+ onClick: J.default.func,
1424
+ onDoubleClick: J.default.func,
1425
+ onKeyMouseEnter: J.default.func,
1426
+ onKeyMouseLeave: J.default.func,
1427
+ onPlayNoteInput: J.default.func.isRequired,
1428
+ onStopNoteInput: J.default.func.isRequired,
1429
+ renderNoteLabel: J.default.func.isRequired,
1430
+ className: J.default.string,
1431
+ disabled: J.default.bool,
1432
+ width: J.default.number,
1433
+ keyWidthToHeight: J.default.number,
1434
+ keyboardShortcuts: J.default.arrayOf(J.default.shape({
1435
+ key: J.default.string.isRequired,
1436
+ midiNumber: J.default.number.isRequired
3207
1437
  }))
3208
- }), Z(xi, "defaultProps", {
1438
+ }), Y(bt, "defaultProps", {
3209
1439
  onKeyMouseEnter: void 0,
3210
1440
  onKeyMouseLeave: void 0,
3211
1441
  renderNoteLabel: function(t) {
3212
1442
  var n = t.keyboardShortcut;
3213
1443
  t.midiNumber;
3214
1444
  var r = t.isActive, i = t.isAccidental;
3215
- return n ? /*#__PURE__*/ e.createElement("div", { className: f("ReactPiano__NoteLabel", {
1445
+ return n ? /*#__PURE__*/ e.createElement("div", { className: m("ReactPiano__NoteLabel", {
3216
1446
  "ReactPiano__NoteLabel--active": r,
3217
1447
  "ReactPiano__NoteLabel--accidental": i,
3218
1448
  "ReactPiano__NoteLabel--natural": !i
3219
1449
  }) }, n) : null;
3220
1450
  }
3221
1451
  });
3222
- var Si = [
1452
+ var xt = [
3223
1453
  "activeNotes",
3224
1454
  "selectedNotes",
3225
1455
  "onPlayNoteInput",
3226
1456
  "onStopNoteInput"
3227
- ], Ci = /*#__PURE__*/ function(t) {
3228
- Br(r, t);
3229
- var n = qr(r);
1457
+ ], St = /*#__PURE__*/ function(t) {
1458
+ ze(r, t);
1459
+ var n = Ke(r);
3230
1460
  function r() {
3231
1461
  var e;
3232
- Ir(this, r);
1462
+ Fe(this, r);
3233
1463
  var t = [...arguments];
3234
- return e = n.call.apply(n, [this].concat(t)), Z(Q(e), "state", { activeNotes: e.props.activeNotes || [] }), Z(Q(e), "handlePlayNoteInput", function(t) {
1464
+ return e = n.call.apply(n, [this].concat(t)), Y(X(e), "state", { activeNotes: e.props.activeNotes || [] }), Y(X(e), "handlePlayNoteInput", function(t) {
3235
1465
  e.setState(function(n) {
3236
1466
  return e.props.onPlayNoteInput && e.props.onPlayNoteInput(t, { prevActiveNotes: n.activeNotes }), n.activeNotes.includes(t) ? null : { activeNotes: n.activeNotes.concat(t) };
3237
1467
  });
3238
- }), Z(Q(e), "handleStopNoteInput", function(t) {
1468
+ }), Y(X(e), "handleStopNoteInput", function(t) {
3239
1469
  e.setState(function(n) {
3240
1470
  return e.props.onStopNoteInput && e.props.onStopNoteInput(t, { prevActiveNotes: e.state.activeNotes }), { activeNotes: n.activeNotes.filter(function(e) {
3241
1471
  return t !== e;
@@ -3243,7 +1473,7 @@ var Si = [
3243
1473
  });
3244
1474
  }), e;
3245
1475
  }
3246
- return Rr(r, [{
1476
+ return Le(r, [{
3247
1477
  key: "componentDidUpdate",
3248
1478
  value: function(e) {
3249
1479
  e.activeNotes !== this.props.activeNotes && this.state.activeNotes !== this.props.activeNotes && this.setState({ activeNotes: this.props.activeNotes || [] });
@@ -3255,8 +1485,8 @@ var Si = [
3255
1485
  t.activeNotes;
3256
1486
  var n = t.selectedNotes;
3257
1487
  t.onPlayNoteInput, t.onStopNoteInput;
3258
- var r = Gr(t, Si);
3259
- return /*#__PURE__*/ e.createElement(xi, zr({
1488
+ var r = We(t, xt);
1489
+ return /*#__PURE__*/ e.createElement(bt, Re({
3260
1490
  activeNotes: this.state.activeNotes,
3261
1491
  selectedNotes: n,
3262
1492
  onPlayNoteInput: this.handlePlayNoteInput,
@@ -3267,31 +1497,31 @@ var Si = [
3267
1497
  }(e.Component);
3268
1498
  //#endregion
3269
1499
  //#region lib/soundfonts/acoustic_grand_piano-mp3.js
3270
- if (Z(Ci, "propTypes", {
3271
- noteRange: X.default.object.isRequired,
3272
- activeNotes: X.default.arrayOf(X.default.number.isRequired),
3273
- selectedNotes: X.default.arrayOf(X.default.number),
3274
- playNote: X.default.func.isRequired,
3275
- stopNote: X.default.func.isRequired,
3276
- onPlayNoteInput: X.default.func,
3277
- onStopNoteInput: X.default.func,
3278
- renderNoteLabel: X.default.func,
3279
- className: X.default.string,
3280
- disabled: X.default.bool,
3281
- width: X.default.number,
3282
- keyWidthToHeight: X.default.number,
3283
- keyboardShortcuts: X.default.arrayOf(X.default.shape({
3284
- key: X.default.string.isRequired,
3285
- midiNumber: X.default.number.isRequired
1500
+ if (Y(St, "propTypes", {
1501
+ noteRange: J.default.object.isRequired,
1502
+ activeNotes: J.default.arrayOf(J.default.number.isRequired),
1503
+ selectedNotes: J.default.arrayOf(J.default.number),
1504
+ playNote: J.default.func.isRequired,
1505
+ stopNote: J.default.func.isRequired,
1506
+ onPlayNoteInput: J.default.func,
1507
+ onStopNoteInput: J.default.func,
1508
+ renderNoteLabel: J.default.func,
1509
+ className: J.default.string,
1510
+ disabled: J.default.bool,
1511
+ width: J.default.number,
1512
+ keyWidthToHeight: J.default.number,
1513
+ keyboardShortcuts: J.default.arrayOf(J.default.shape({
1514
+ key: J.default.string.isRequired,
1515
+ midiNumber: J.default.number.isRequired
3286
1516
  }))
3287
- }), typeof window < "u" && window.MIDI) var wi = window.MIDI;
3288
- else if (typeof globalThis < "u" && globalThis.MIDI) var wi = globalThis.MIDI;
3289
- else if (typeof global < "u" && global.MIDI) var wi = global.MIDI;
1517
+ }), typeof window < "u" && window.MIDI) var Z = window.MIDI;
1518
+ else if (typeof globalThis < "u" && globalThis.MIDI) var Z = globalThis.MIDI;
1519
+ else if (typeof global < "u" && global.MIDI) var Z = global.MIDI;
3290
1520
  else {
3291
- var wi = { Soundfont: {} };
3292
- typeof window < "u" && (window.MIDI = wi), typeof globalThis < "u" && (globalThis.MIDI = wi), typeof global < "u" && (global.MIDI = wi);
1521
+ var Z = { Soundfont: {} };
1522
+ typeof window < "u" && (window.MIDI = Z), typeof globalThis < "u" && (globalThis.MIDI = Z), typeof global < "u" && (global.MIDI = Z);
3293
1523
  }
3294
- wi.Soundfont === void 0 && (wi.Soundfont = {}), wi.Soundfont.acoustic_grand_piano = {
1524
+ Z.Soundfont === void 0 && (Z.Soundfont = {}), Z.Soundfont.acoustic_grand_piano = {
3295
1525
  A0: "data:audio/mp3;base64,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",
3296
1526
  Bb0: "data:audio/mp3;base64,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",
3297
1527
  B0: "data:audio/mp3;base64,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",
@@ -3381,9 +1611,12 @@ wi.Soundfont === void 0 && (wi.Soundfont = {}), wi.Soundfont.acoustic_grand_pian
3381
1611
  B7: "data:audio/mp3;base64,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VVVVVVVVVVVVVVVVVVVVVVX/+xBk4wfwJwDGqeAADgAADSAAAAEAqAUhBYAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTih/AoAUcowAAMAAANIAAAAQCYBx0FhAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOCH8BEAxwBAAAgAAA0gAAABAGwFGqYAACgAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk4g/wMQHGqeIADAAADSAAAAEAXAceBIQAMAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGToh/CPAUWAYAAIAAANIAAAAQB8BxykhAA4AAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOMH8DQCRikjAAgAAA0gAAABAIQHHKCIACgAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk44fwNQLHKSIIDAAADSAAAAEAkAUYpIAAMAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAH+AAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVU=",
3382
1612
  C8: "data:audio/mp3;base64,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AAEAbAcWBYgAKAAANIAAAASqqqqqqqqqqqqqqqqqqqqqqqqqqqqAAACUqChAIMEM1FVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGThD/AkAMapYAAKAAANIAAAAQBQBRwFgAAwAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVYAAAGILCkxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOMH8C4BRingAA4AAA0gAAABAJQFGqQAACgAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk4Y/wKwHGqSEADAAADSAAAAEAOAMcBIAAKAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTkh/AyAcfBIQAIAAANIAAAAQDkBxYFiAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOIP8DAAyMFAAAoAAA0gAAABAFQHHgSEACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk4ofwIwDHKMAACgAADSAAAAEAnAcdBIQAKAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTjh/AqAcepIQAMAAANIAAAAQC8CR8DCAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZOCH8CgBR6jAAAwAAA0gAAABACADGgAAACgAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVMQU1FMy4xMDBVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVUxBTUUzLjEwMFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVTEFNRTMuMTAwVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVf/7EGTdj/AAAGkAAAAIAAANIAAAAQAAAaQAAAAgAAA0gAAABFVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVV//sQZN2P8AAAaQAAAAgAAA0gAAABAAABpAAAACAAADSAAAAEVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVX/+xBk3Y/wAABpAAAACAAADSAAAAEAAAGkAAAAIAAANIAAAARVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVVQ=="
3383
1613
  }, typeof window < "u" && (window.MIDI || (window.MIDI = { Soundfont: {} })), typeof globalThis < "u" && !globalThis.MIDI && (globalThis.MIDI = typeof window < "u" && window.MIDI ? window.MIDI : { Soundfont: {} });
3384
- var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "string" ? Number.parseInt(e, 10) : e), Di = (e) => ({
1614
+ var Ct = (e) => e != null && !Number.isNaN(e), wt = (e) => {
1615
+ let t = typeof e == "string" ? Number.parseInt(e, 10) : e;
1616
+ return p.fromMidi(t);
1617
+ }, Tt = (e) => ({
3385
1618
  play: (t, n) => {
3386
- let r = e[Ei(t)];
1619
+ let r = e[wt(t)];
3387
1620
  if (!r) return { stop: () => {} };
3388
1621
  let i = new Audio(r);
3389
1622
  return i.volume = (n ?? 127) / 127, i.play(), { stop: () => {
@@ -3391,24 +1624,24 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3391
1624
  } };
3392
1625
  },
3393
1626
  stop: () => []
3394
- }), Oi = (e, t, n, r, i) => {
1627
+ }), Et = (e, t, n, r, i) => {
3395
1628
  let a = window.MIDI?.Soundfont?.[t];
3396
- return a ? Promise.resolve(Di(a)) : (console.warn(`[zds-pickers] Bundled soundfont "${t}" not found; falling back to remote load.`), Ti(i) ? p.instrument(e, t, {
1629
+ return a ? Promise.resolve(Tt(a)) : (console.warn(`[zds-pickers] Bundled soundfont "${t}" not found; falling back to remote load.`), Ct(i) ? h.instrument(e, t, {
3397
1630
  format: n,
3398
1631
  soundfont: r,
3399
1632
  nameToUrl: (e, t, n) => `${i}/${t}/${e}-${n}.js`
3400
- }) : p.instrument(e, t, {
1633
+ }) : h.instrument(e, t, {
3401
1634
  format: n,
3402
1635
  soundfont: r
3403
1636
  }));
3404
- }, ki = (e) => {
3405
- let { audioContext: t, format: n, hostname: r, instrumentName: i, onChange: a, render: c, soundfont: l } = e, [u, f] = d(!0), [m, h] = d({}), [g, _] = d(null), v = o((e) => {
1637
+ }, Dt = (e) => {
1638
+ let { audioContext: t, format: n, hostname: r, instrumentName: i, onChange: a, render: c, soundfont: l } = e, [u, f] = d(!0), [p, m] = d({}), [g, _] = d(null), v = o((e) => {
3406
1639
  if (_(null), f(!0), !i) {
3407
1640
  f(!1);
3408
1641
  return;
3409
1642
  }
3410
- if (Ti(r)) {
3411
- p.instrument(t, e, {
1643
+ if (Ct(r)) {
1644
+ h.instrument(t, e, {
3412
1645
  format: n,
3413
1646
  soundfont: l,
3414
1647
  nameToUrl: (e, t, n) => `${r}/${t}/${e}-${n}.js`
@@ -3419,7 +1652,7 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3419
1652
  });
3420
1653
  return;
3421
1654
  }
3422
- Oi(t, e, n, l, r).then((e) => {
1655
+ Et(t, e, n, l, r).then((e) => {
3423
1656
  _(e);
3424
1657
  }).catch((t) => {
3425
1658
  console.error(`[zds-pickers] Failed to load soundfont "${e}":`, t), f(!1);
@@ -3434,13 +1667,13 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3434
1667
  return s(() => {
3435
1668
  i && v(i);
3436
1669
  }, [i, v]), s(() => {
3437
- Ti(i) && f(!g);
1670
+ Ct(i) && f(!g);
3438
1671
  }, [g, i]), c({
3439
1672
  isLoading: u,
3440
1673
  playNote: (e) => {
3441
1674
  g && t.resume().then(() => {
3442
1675
  let t = g.play(String(e));
3443
- h((n) => ({
1676
+ m((n) => ({
3444
1677
  ...n,
3445
1678
  [e]: t
3446
1679
  }));
@@ -3448,7 +1681,7 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3448
1681
  },
3449
1682
  stopNote: (e) => {
3450
1683
  t.resume().then(() => {
3451
- m[e] && (m[e].stop(), h((t) => {
1684
+ p[e] && (p[e].stop(), m((t) => {
3452
1685
  let { [e]: n, ...r } = t;
3453
1686
  return r;
3454
1687
  }));
@@ -3456,13 +1689,13 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3456
1689
  },
3457
1690
  stopAllNotes: () => {
3458
1691
  t.resume().then(() => {
3459
- let e = Object.values(m);
1692
+ let e = Object.values(p);
3460
1693
  for (let t of e) t && t.stop();
3461
- h({});
1694
+ m({});
3462
1695
  });
3463
1696
  }
3464
1697
  });
3465
- }, Ai = [
1698
+ }, Ot = [
3466
1699
  "C",
3467
1700
  "C#",
3468
1701
  "D",
@@ -3475,9 +1708,9 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3475
1708
  "A",
3476
1709
  "A#",
3477
1710
  "B"
3478
- ], ji = 12 * .7, Mi = new window.AudioContext(), Ni = ({ className: e, octave: t, height: n, renderNoteLabel: r, width: i, ...a }) => {
3479
- let o = (i / ji + 2) / n, s = Rn(Ai[0] + String(t)) || 0, c = Rn(Ai[Ai.length - 1] + String(t)) || 0;
3480
- return /* @__PURE__ */ h("div", { children: /* @__PURE__ */ h(Ci, {
1711
+ ], kt = 12 * .7, At = new window.AudioContext(), jt = ({ className: e, octave: t, height: n, renderNoteLabel: r, width: i, ...a }) => {
1712
+ let o = (i / kt + 2) / n, s = p.midi(Ot[0] + String(t)) || 0, c = p.midi(Ot[Ot.length - 1] + String(t)) || 0;
1713
+ return /* @__PURE__ */ _("div", { children: /* @__PURE__ */ _(St, {
3481
1714
  className: e,
3482
1715
  keyWidthToHeight: o,
3483
1716
  noteRange: {
@@ -3488,14 +1721,14 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3488
1721
  width: i,
3489
1722
  ...a
3490
1723
  }) });
3491
- }, Pi = ({ className: e, format: t, height: n, hostname: r, instrumentName: i, octave: a = 4, onChange: o, onClick: s, onDoubleClick: c, onKeyMouseEnter: l, onKeyMouseLeave: u, renderNoteLabel: d, selectedNotes: f, soundfont: p, Tooltip: m, width: g }) => /* @__PURE__ */ h(ki, {
3492
- audioContext: Mi,
1724
+ }, Mt = ({ className: e, format: t, height: n, hostname: r, instrumentName: i, octave: a = 4, onChange: o, onClick: s, onDoubleClick: c, onKeyMouseEnter: l, onKeyMouseLeave: u, renderNoteLabel: d, selectedNotes: f, soundfont: p, Tooltip: m, width: h }) => /* @__PURE__ */ _(Dt, {
1725
+ audioContext: At,
3493
1726
  format: t,
3494
1727
  hostname: r,
3495
1728
  instrumentName: i,
3496
1729
  onChange: o,
3497
1730
  soundfont: p,
3498
- render: ({ isLoading: t, playNote: r, stopNote: i }) => /* @__PURE__ */ h(Ni, {
1731
+ render: ({ isLoading: t, playNote: r, stopNote: i }) => /* @__PURE__ */ _(jt, {
3499
1732
  disabled: t,
3500
1733
  className: e,
3501
1734
  height: n,
@@ -3509,9 +1742,9 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3509
1742
  selectedNotes: f,
3510
1743
  stopNote: i,
3511
1744
  Tooltip: m,
3512
- width: g
1745
+ width: h
3513
1746
  })
3514
- }), Fi = "__react_svg_text_measurement_id", Ii = [
1747
+ }), Nt = "__react_svg_text_measurement_id", Pt = [
3515
1748
  "font-family",
3516
1749
  "font-feature-settings",
3517
1750
  "font-kerning",
@@ -3523,9 +1756,9 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3523
1756
  "letter-spacing",
3524
1757
  "text-transform",
3525
1758
  "word-spacing"
3526
- ], Li = (e) => Ii.map((t) => e.getPropertyValue(t)).join("|"), Ri = /* @__PURE__ */ new Map(), zi = () => {
3527
- Ri.clear();
3528
- }, Bi = (e, t, n, r) => {
1759
+ ], Ft = (e) => Pt.map((t) => e.getPropertyValue(t)).join("|"), It = /* @__PURE__ */ new Map(), Lt = () => {
1760
+ It.clear();
1761
+ }, Rt = (e, t, n, r) => {
3529
1762
  let { lineHeight: i, spaceWidth: a, wordsWithComputedWidth: o } = t;
3530
1763
  return e.split(/\s+/).reduce((e, t) => {
3531
1764
  let s = o[t], c = e[e.length - 1];
@@ -3540,11 +1773,11 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3540
1773
  }
3541
1774
  return e;
3542
1775
  }, []);
3543
- }, Vi = (e, t, n) => {
1776
+ }, zt = (e, t, n) => {
3544
1777
  if (e && t) {
3545
- let r = Li(e), i = Ri.get(r), a = [...new Set(String(n).split(/\s+/))], o = i?.widths, s = o ? a.filter((e) => !o.has(e)) : a;
1778
+ let r = Ft(e), i = It.get(r), a = [...new Set(String(n).split(/\s+/))], o = i?.widths, s = o ? a.filter((e) => !o.has(e)) : a;
3546
1779
  if (!i || s.length) {
3547
- for (let n of Ii) t.style.setProperty(n, e.getPropertyValue(n), e.getPropertyPriority(n));
1780
+ for (let n of Pt) t.style.setProperty(n, e.getPropertyValue(n), e.getPropertyPriority(n));
3548
1781
  if (!i) {
3549
1782
  t.textContent = "\xA0";
3550
1783
  let e = t?.getComputedTextLength?.() || 8, n = t.getBBox().height;
@@ -3552,7 +1785,7 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3552
1785
  widths: /* @__PURE__ */ new Map(),
3553
1786
  spaceWidth: e,
3554
1787
  lineHeight: n
3555
- }, Ri.set(r, i);
1788
+ }, It.set(r, i);
3556
1789
  }
3557
1790
  for (let e of s) t.textContent = e, i.widths.set(e, t.getBBox().width);
3558
1791
  t.setAttribute("style", "");
@@ -3565,33 +1798,33 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3565
1798
  lineHeight: i.lineHeight
3566
1799
  };
3567
1800
  }
3568
- }, Hi = (e) => {
3569
- let { className: t = "", dx: n = 0, dy: r = 0, maxHeight: i = 1e3, maxWidth: a = 1e3, text: c = "", verticalAnchor: f = "start", x: p = 0, y: _ = 0, transform: v = "", ...y } = e, [b, x] = d(), [S, C] = d([]), [w, T] = d(), E = u({}), D = l(() => {
1801
+ }, Bt = (e) => {
1802
+ let { className: t = "", dx: n = 0, dy: r = 0, maxHeight: i = 1e3, maxWidth: a = 1e3, text: c = "", verticalAnchor: f = "start", x: p = 0, y: m = 0, transform: h = "", ...y } = e, [b, x] = d(), [S, C] = d([]), [w, T] = d(), E = u({}), D = l(() => {
3570
1803
  let e = S.filter(({ showLine: e }) => e);
3571
1804
  return e.length ? e : c.split(/\n/).map((e) => ({
3572
1805
  words: [e],
3573
1806
  width: 0,
3574
1807
  showLine: !0
3575
1808
  }));
3576
- }, [S, c]), ee = o((e) => {
1809
+ }, [S, c]), O = o((e) => {
3577
1810
  T(e === null ? void 0 : window.getComputedStyle(e));
3578
1811
  }, []);
3579
1812
  s(() => {
3580
- let e = document.getElementById(Fi);
1813
+ let e = document.getElementById(Nt);
3581
1814
  if (e === null) {
3582
1815
  let e = document.createElementNS("http://www.w3.org/2000/svg", "svg");
3583
- e.setAttribute("id", Fi), e.setAttribute("aria-hidden", "true"), e.style.position = "fixed", e.style.left = "-9999px", e.style.top = "0";
1816
+ e.setAttribute("id", Nt), e.setAttribute("aria-hidden", "true"), e.style.position = "fixed", e.style.left = "-9999px", e.style.top = "0";
3584
1817
  let t = document.createElementNS("http://www.w3.org/2000/svg", "text");
3585
1818
  e.appendChild(t), document.body.appendChild(e), E.current = t;
3586
1819
  return;
3587
1820
  }
3588
1821
  E.current = e.tagName.toLowerCase() === "text" ? e : e.querySelector("text") ?? e;
3589
1822
  }, []), s(() => {
3590
- let e = Vi(w, E.current, c);
1823
+ let e = zt(w, E.current, c);
3591
1824
  x(e);
3592
1825
  }, [c, w]), s(() => {
3593
1826
  if (a && b) {
3594
- let e = c.split(/\n/).flatMap((e) => Bi(e, b, a, i));
1827
+ let e = c.split(/\n/).flatMap((e) => Rt(e, b, a, i));
3595
1828
  C(e);
3596
1829
  }
3597
1830
  }, [
@@ -3600,7 +1833,7 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3600
1833
  b,
3601
1834
  c
3602
1835
  ]);
3603
- let O = l(() => {
1836
+ let k = l(() => {
3604
1837
  if (b?.lineHeight) switch (f) {
3605
1838
  case "start": return b.lineHeight;
3606
1839
  case "middle": return -((D.length - 1) * b.lineHeight / 2);
@@ -3612,30 +1845,30 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3612
1845
  f,
3613
1846
  b?.lineHeight
3614
1847
  ]);
3615
- return /* @__PURE__ */ h("text", {
1848
+ return /* @__PURE__ */ _("text", {
3616
1849
  className: t,
3617
- ref: ee,
1850
+ ref: O,
3618
1851
  dx: n,
3619
1852
  dy: r,
3620
1853
  x: p,
3621
- y: _,
3622
- transform: v,
1854
+ y: m,
1855
+ transform: h,
3623
1856
  ...y,
3624
- children: /* @__PURE__ */ g(m, { children: [D.map((e, t) => /* @__PURE__ */ h("tspan", {
1857
+ children: /* @__PURE__ */ v(g, { children: [D.map((e, t) => /* @__PURE__ */ _("tspan", {
3625
1858
  dx: p + n,
3626
- dy: t === 0 ? O + r : b?.lineHeight || 0,
1859
+ dy: t === 0 ? k + r : b?.lineHeight || 0,
3627
1860
  x: 0,
3628
1861
  children: e.words.join(" ")
3629
- }, t)), S.length && D.length !== S.length && /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ h("tspan", { children: "..." }), /* @__PURE__ */ h("title", { children: c })] })] })
1862
+ }, t)), S.length && D.length !== S.length && /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ _("tspan", { children: "..." }), /* @__PURE__ */ _("title", { children: c })] })] })
3630
1863
  });
3631
- }, Ui = 255, { IndicatorsContainer: Wi, Placeholder: Gi, ValueContainer: Ki } = v, qi = {
1864
+ }, Vt = 255, { IndicatorsContainer: Ht, Placeholder: Ut, ValueContainer: Wt } = b, Gt = {
3632
1865
  label: "--",
3633
1866
  value: 255
3634
- }, Ji = (e) => {
1867
+ }, Kt = (e) => {
3635
1868
  let { children: t, ...n } = e, r = n.selectProps?.actionButton;
3636
- return /* @__PURE__ */ h(Wi, {
1869
+ return /* @__PURE__ */ _(Ht, {
3637
1870
  ...n,
3638
- children: /* @__PURE__ */ g("div", {
1871
+ children: /* @__PURE__ */ v("div", {
3639
1872
  onMouseDown: (e) => {
3640
1873
  e.stopPropagation(), e.preventDefault();
3641
1874
  },
@@ -3643,21 +1876,21 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3643
1876
  children: [r, t]
3644
1877
  })
3645
1878
  });
3646
- }, Yi = ({ children: e, ...n }) => /* @__PURE__ */ g(Ki, {
1879
+ }, qt = ({ children: e, ...n }) => /* @__PURE__ */ v(Wt, {
3647
1880
  ...n,
3648
- children: [/* @__PURE__ */ h(Gi, {
1881
+ children: [/* @__PURE__ */ _(Ut, {
3649
1882
  ...n,
3650
1883
  innerProps: n.innerProps || {},
3651
1884
  className: n.hasValue || n.selectProps.inputValue ? "shrunk" : "",
3652
1885
  isFocused: n.isFocused ?? !1,
3653
1886
  children: n.selectProps.placeholder
3654
- }), t.map(e, (e) => a(e) && e.type !== Gi ? e : null)]
3655
- }), $ = i((e, t) => {
1887
+ }), t.map(e, (e) => a(e) && e.type !== Ut ? e : null)]
1888
+ }), Q = i((e, t) => {
3656
1889
  let { components: n, disabled: r, label: i, onChange: a, options: s = [], preserveMenuWidth: c, shrinkLabel: u, value: d, ...f } = e, p = o((e) => {
3657
1890
  e && a(e.value);
3658
- }, [a]), m = s.reduce((e, t) => "options" in t ? e.concat(t.options) : e.concat(t), []), v = m.find((e) => d === e.value) || void 0, y = l(() => {
1891
+ }, [a]), m = s.reduce((e, t) => "options" in t ? e.concat(t.options) : e.concat(t), []), h = m.find((e) => d === e.value) || void 0, g = l(() => {
3659
1892
  let e = c ? {
3660
- menu: (e) => re("width")(e),
1893
+ menu: (e) => V("width")(e),
3661
1894
  menuList: (e) => ({
3662
1895
  ...e,
3663
1896
  overflowX: "hidden"
@@ -3687,14 +1920,14 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3687
1920
  })
3688
1921
  } : { ...e };
3689
1922
  }, [c, u]);
3690
- return u ? /* @__PURE__ */ h("div", {
1923
+ return u ? /* @__PURE__ */ _("div", {
3691
1924
  className: "zds-pickers__container",
3692
- children: /* @__PURE__ */ h(_, {
1925
+ children: /* @__PURE__ */ _(y, {
3693
1926
  ...f,
3694
1927
  classNamePrefix: "zds-pickers",
3695
1928
  components: {
3696
- IndicatorsContainer: Ji,
3697
- ValueContainer: Yi,
1929
+ IndicatorsContainer: Kt,
1930
+ ValueContainer: qt,
3698
1931
  ...n
3699
1932
  },
3700
1933
  isDisabled: r,
@@ -3702,119 +1935,119 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3702
1935
  options: m,
3703
1936
  placeholder: i,
3704
1937
  ref: t,
3705
- styles: y,
3706
- value: v
1938
+ styles: g,
1939
+ value: h
3707
1940
  })
3708
- }) : /* @__PURE__ */ g("div", {
1941
+ }) : /* @__PURE__ */ v("div", {
3709
1942
  className: "zds-pickers__container",
3710
- children: [!!i && /* @__PURE__ */ h("span", {
1943
+ children: [!!i && /* @__PURE__ */ _("span", {
3711
1944
  className: "zds-pickers__label",
3712
1945
  children: i
3713
- }), /* @__PURE__ */ h(_, {
1946
+ }), /* @__PURE__ */ _(y, {
3714
1947
  ...f,
3715
1948
  classNamePrefix: "zds-pickers",
3716
1949
  components: {
3717
- IndicatorsContainer: Ji,
1950
+ IndicatorsContainer: Kt,
3718
1951
  ...n
3719
1952
  },
3720
1953
  isDisabled: r,
3721
1954
  onChange: p,
3722
1955
  options: m,
3723
1956
  ref: t,
3724
- styles: y,
3725
- value: v
1957
+ styles: g,
1958
+ value: h
3726
1959
  })]
3727
1960
  });
3728
- }), Xi = i((e, t) => /* @__PURE__ */ h($, {
1961
+ }), Jt = i((e, t) => /* @__PURE__ */ _(Q, {
3729
1962
  ...e,
3730
- options: ae,
1963
+ options: H,
3731
1964
  ref: t
3732
- })), Zi = I(16).map((e) => ({
1965
+ })), Yt = z(16).map((e) => ({
3733
1966
  value: e,
3734
1967
  label: e
3735
- })), Qi = i(({ channels: e, className: t, ...n }, r) => {
1968
+ })), Xt = i(({ channels: e, className: t, ...n }, r) => {
3736
1969
  let [i, a] = d([]), c = o(({ value: t, label: n }, { context: r }) => {
3737
- if (t === "separator") return /* @__PURE__ */ h("span", {
1970
+ if (t === "separator") return /* @__PURE__ */ _("span", {
3738
1971
  className: "zds-mappings-user-mapping",
3739
1972
  children: n
3740
1973
  });
3741
1974
  if (typeof t != "number") return null;
3742
1975
  let i = e[t];
3743
- return i ? /* @__PURE__ */ g("span", {
1976
+ return i ? /* @__PURE__ */ v("span", {
3744
1977
  className: "mapping-entry",
3745
- children: [/* @__PURE__ */ h("b", { children: t !== 255 && /* @__PURE__ */ g(m, { children: [t + 1, r === "value" && " -"] }) }), /* @__PURE__ */ h("span", {
1978
+ children: [/* @__PURE__ */ _("b", { children: t !== 255 && /* @__PURE__ */ v(g, { children: [t + 1, r === "value" && " -"] }) }), /* @__PURE__ */ _("span", {
3746
1979
  className: "mapping-entry-label",
3747
1980
  children: i.label
3748
1981
  })]
3749
- }) : /* @__PURE__ */ g("span", {
1982
+ }) : /* @__PURE__ */ v("span", {
3750
1983
  className: "mapping-entry empty-mapping-entry",
3751
- children: [/* @__PURE__ */ h("b", { children: t !== 255 && /* @__PURE__ */ g(m, { children: [t + 1, r === "value" && " -"] }) }), /* @__PURE__ */ h("span", {
1984
+ children: [/* @__PURE__ */ _("b", { children: t !== 255 && /* @__PURE__ */ v(g, { children: [t + 1, r === "value" && " -"] }) }), /* @__PURE__ */ _("span", {
3752
1985
  className: "mapping-entry-label",
3753
1986
  children: "no mapping"
3754
1987
  })]
3755
1988
  });
3756
1989
  }, [e]);
3757
1990
  return s(() => {
3758
- let t = Zi.sort((t, n) => typeof t.value == "number" && typeof n.value == "number" && e[t.value] && !e[n.value] ? -1 : typeof t.value == "number" && typeof n.value == "number" && !e[t.value] && e[n.value] ? 1 : typeof t.value == "number" && typeof n.value == "number" ? t.value - n.value : 0), n = t.filter(({ value: t }) => typeof t == "number" && !!e[t] || t === 255).length, r = t.some(({ value: e }) => e === "separator");
1991
+ let t = Yt.sort((t, n) => typeof t.value == "number" && typeof n.value == "number" && e[t.value] && !e[n.value] ? -1 : typeof t.value == "number" && typeof n.value == "number" && !e[t.value] && e[n.value] ? 1 : typeof t.value == "number" && typeof n.value == "number" ? t.value - n.value : 0), n = t.filter(({ value: t }) => typeof t == "number" && !!e[t] || t === 255).length, r = t.some(({ value: e }) => e === "separator");
3759
1992
  n && n < 16 && !r && t.splice(n, 0, {
3760
- label: /* @__PURE__ */ h("hr", {}),
1993
+ label: /* @__PURE__ */ _("hr", {}),
3761
1994
  value: "separator"
3762
1995
  }), a(t);
3763
- }, [e]), /* @__PURE__ */ h($, {
1996
+ }, [e]), /* @__PURE__ */ _(Q, {
3764
1997
  ...n,
3765
- className: f(t, "channel-mapping-picker"),
1998
+ className: m(t, "channel-mapping-picker"),
3766
1999
  formatOptionLabel: c,
3767
2000
  options: i,
3768
2001
  ref: r
3769
2002
  });
3770
- }), $i = I(16).map((e) => ({
2003
+ }), Zt = z(16).map((e) => ({
3771
2004
  value: e,
3772
2005
  label: `Channel ${e + 1}`
3773
- })), ea = (e, t) => !t || String(e.label).toLowerCase().includes(t.toLowerCase()), ta = i(({ className: e, value: t = 255, ...n }, r) => {
2006
+ })), Qt = (e, t) => !t || String(e.label).toLowerCase().includes(t.toLowerCase()), $t = i(({ className: e, value: t = 255, ...n }, r) => {
3774
2007
  let i = o((e, { context: n }) => t === void 0 ? "--" : n === "value" ? e.label : Number.parseInt(String(e.value)) + 1, [t]);
3775
- return /* @__PURE__ */ h($, {
2008
+ return /* @__PURE__ */ _(Q, {
3776
2009
  ...n,
3777
- className: f(e, "channel-picker"),
3778
- filterOptions: ea,
2010
+ className: m(e, "channel-picker"),
2011
+ filterOptions: Qt,
3779
2012
  formatOptionLabel: i,
3780
- options: $i,
2013
+ options: Zt,
3781
2014
  value: t,
3782
2015
  ref: r
3783
2016
  });
3784
- }), na = (e) => e.replace(/([A-G])b/g, "$1♭"), ra = /* @__PURE__ */ new Set(["C", "F"]), ia = /* @__PURE__ */ new Set(["E", "B"]), aa = ({ isAccidental: e, isActive: t, midiNumber: n }) => {
3785
- let r = Fn(Vn(n) ?? ""), i = na(r);
3786
- return i ? /* @__PURE__ */ h("div", {
3787
- className: f("ReactPiano__NoteLabel", "ReactPiano__NoteLabel--noteName", {
3788
- "ReactPiano__NoteLabel--active": t,
3789
- "ReactPiano__NoteLabel--accidental": e,
3790
- "ReactPiano__NoteLabel--natural": !e,
3791
- "ReactPiano__NoteLabel--nudgeLeft": !e && ra.has(r),
3792
- "ReactPiano__NoteLabel--nudgeRight": !e && ia.has(r)
2017
+ }), en = /* @__PURE__ */ new Set(["C", "F"]), tn = /* @__PURE__ */ new Set(["E", "B"]), nn = (e) => ({ isAccidental: t, isActive: n, midiNumber: r }) => {
2018
+ let i = p.pitchClass(p.fromMidi(r) ?? ""), a = ye(r, e);
2019
+ return a ? /* @__PURE__ */ _("div", {
2020
+ className: m("ReactPiano__NoteLabel", "ReactPiano__NoteLabel--noteName", {
2021
+ "ReactPiano__NoteLabel--active": n,
2022
+ "ReactPiano__NoteLabel--accidental": t,
2023
+ "ReactPiano__NoteLabel--natural": !t,
2024
+ "ReactPiano__NoteLabel--nudgeLeft": !t && en.has(i),
2025
+ "ReactPiano__NoteLabel--nudgeRight": !t && tn.has(i)
3793
2026
  }),
3794
- children: i
2027
+ children: a
3795
2028
  }) : null;
3796
- }, oa = (e) => {
3797
- let { value: t, onChange: n, disabled: r = !1, height: i = 100, showNoteNames: a = !1, width: s = 300, octave: c = 4, ...l } = e, u = o((e) => {
2029
+ }, rn = (e) => {
2030
+ let { value: t, onChange: n, disabled: r = !1, height: i = 100, noteLabels: a, showNoteNames: s = !1, width: c = 300, octave: u = 4, ...d } = e, f = l(() => nn(a), [a]), p = o((e) => {
3798
2031
  r || n(e);
3799
- }, [r, n]), d = 60 + (c - 4) * 12, f = d + 11, p = t !== 255 && t >= d && t <= f;
3800
- return /* @__PURE__ */ h(Pi, {
3801
- ...l,
3802
- className: a ? "ReactPiano--showNoteNames" : void 0,
3803
- selectedNotes: p ? [t] : [],
2032
+ }, [r, n]), m = 60 + (u - 4) * 12, h = m + 11, g = t !== 255 && t >= m && t <= h;
2033
+ return /* @__PURE__ */ _(Mt, {
2034
+ ...d,
2035
+ className: s ? "ReactPiano--showNoteNames" : void 0,
2036
+ selectedNotes: g ? [t] : [],
3804
2037
  disabled: r,
3805
2038
  height: i,
3806
- renderNoteLabel: a ? aa : void 0,
3807
- width: s,
3808
- octave: c,
3809
- onClick: u,
2039
+ renderNoteLabel: s ? f : void 0,
2040
+ width: c,
2041
+ octave: u,
2042
+ onClick: p,
3810
2043
  instrumentName: "acoustic_grand_piano"
3811
2044
  });
3812
- }, sa = (e) => {
2045
+ }, an = (e) => {
3813
2046
  let [t, n] = d(e);
3814
2047
  return s(() => {
3815
2048
  n(e);
3816
2049
  }, [e]), [t, n];
3817
- }, ca = class extends e.Component {
2050
+ }, on = class extends e.Component {
3818
2051
  static defaultProps = { step: 1 };
3819
2052
  render() {
3820
2053
  let e = this.props, t = {};
@@ -3822,7 +2055,7 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3822
2055
  e.onChange(Number(t.target.value));
3823
2056
  }
3824
2057
  let { value: r, min: i, max: a, step: o, onChange: s, inputRef: c, ...l } = e;
3825
- return /* @__PURE__ */ h("input", {
2058
+ return /* @__PURE__ */ _("input", {
3826
2059
  ref: c,
3827
2060
  value: r,
3828
2061
  step: o,
@@ -3837,23 +2070,23 @@ var Ti = (e) => e != null && !Number.isNaN(e), Ei = (e) => Vn(typeof e == "strin
3837
2070
  };
3838
2071
  //#endregion
3839
2072
  //#region lib/rotaryKnob/utils.ts
3840
- function la(e) {
2073
+ function sn(e) {
3841
2074
  return e * Math.PI / 180;
3842
2075
  }
3843
- function ua(e, t) {
2076
+ function cn(e, t) {
3844
2077
  return e >= 0 && t >= 0 ? 1 : e <= 0 && t >= 0 ? 2 : e <= 0 && t <= 0 ? 3 : e >= 0 && t <= 0 ? 4 : 1;
3845
2078
  }
3846
- function da(e, t) {
2079
+ function ln(e, t) {
3847
2080
  if (e === 0 && t === 0) return 0;
3848
- let n = Math.atan(e / t) * 180 / Math.PI, r = ua(e, t);
2081
+ let n = Math.atan(e / t) * 180 / Math.PI, r = cn(e, t);
3849
2082
  return r === 1 && (n = 90 - n), r === 2 && (n = 90 - n), r === 3 && (n = 270 - n), r === 4 && (n = 270 - n), n;
3850
2083
  }
3851
2084
  //#endregion
3852
2085
  //#region lib/rotaryKnob/helpers/DrawCircle.tsx
3853
- var fa = class extends e.Component {
2086
+ var un = class extends e.Component {
3854
2087
  render() {
3855
2088
  let { r: e, borderColor: t = "black", fillColor: n = "transparent", borderWidth: r = 2, fillOpacity: i = 1, ...a } = this.props;
3856
- return /* @__PURE__ */ h("circle", {
2089
+ return /* @__PURE__ */ _("circle", {
3857
2090
  stroke: t,
3858
2091
  fill: n,
3859
2092
  fillOpacity: i,
@@ -3861,10 +2094,10 @@ var fa = class extends e.Component {
3861
2094
  ...a
3862
2095
  });
3863
2096
  }
3864
- }, pa = class extends e.Component {
2097
+ }, dn = class extends e.Component {
3865
2098
  render() {
3866
2099
  let { width: e = 2, color: t = "black", p1: n, p2: r, ...i } = this.props;
3867
- return /* @__PURE__ */ h("line", {
2100
+ return /* @__PURE__ */ _("line", {
3868
2101
  ...i,
3869
2102
  stroke: t,
3870
2103
  strokeWidth: e,
@@ -3874,7 +2107,7 @@ var fa = class extends e.Component {
3874
2107
  y2: r.y
3875
2108
  });
3876
2109
  }
3877
- }, ma = class extends e.Component {
2110
+ }, fn = class extends e.Component {
3878
2111
  render() {
3879
2112
  let { children: e, ...t } = this.props, n = { overlay: Object.assign({
3880
2113
  width: "100%",
@@ -3887,13 +2120,13 @@ var fa = class extends e.Component {
3887
2120
  boxSizing: "border-box",
3888
2121
  position: "fixed"
3889
2122
  }, this.props.overlayStyle) };
3890
- return w.createPortal(/* @__PURE__ */ h("div", {
2123
+ return E.createPortal(/* @__PURE__ */ _("div", {
3891
2124
  style: n.overlay,
3892
2125
  ...t,
3893
2126
  children: e
3894
2127
  }), document.body);
3895
2128
  }
3896
- }, ha = class extends e.Component {
2129
+ }, pn = class extends e.Component {
3897
2130
  state = {
3898
2131
  centerX: 0,
3899
2132
  centerY: 0,
@@ -3902,7 +2135,7 @@ var fa = class extends e.Component {
3902
2135
  };
3903
2136
  static getDerivedStateFromProps(e, t) {
3904
2137
  if (!e.svgRef) return t;
3905
- let n = e.svgRef.getBoundingClientRect(), r = n.width / 2, i = e.radius * Math.cos(la(e.valueAngle - 90)), a = e.radius * Math.sin(la(e.valueAngle - 90));
2138
+ let n = e.svgRef.getBoundingClientRect(), r = n.width / 2, i = e.radius * Math.cos(sn(e.valueAngle - 90)), a = e.radius * Math.sin(sn(e.valueAngle - 90));
3906
2139
  return {
3907
2140
  ...t,
3908
2141
  centerX: n.left + r,
@@ -3913,7 +2146,7 @@ var fa = class extends e.Component {
3913
2146
  }
3914
2147
  render() {
3915
2148
  let e = this.props.minimumDragDistance <= this.props.radius ? "green" : "grey", t = this.props.minimumDragDistance <= this.props.radius ? "#88E22D" : "#D8D8D8", n = this.props.minimumDragDistance >= this.props.radius;
3916
- return /* @__PURE__ */ h(ma, { children: /* @__PURE__ */ g("svg", {
2149
+ return /* @__PURE__ */ _(fn, { children: /* @__PURE__ */ v("svg", {
3917
2150
  style: {
3918
2151
  position: "absolute",
3919
2152
  top: "0",
@@ -3922,7 +2155,7 @@ var fa = class extends e.Component {
3922
2155
  width: "100%",
3923
2156
  height: "100%",
3924
2157
  children: [
3925
- /* @__PURE__ */ h("defs", { children: /* @__PURE__ */ h("marker", {
2158
+ /* @__PURE__ */ _("defs", { children: /* @__PURE__ */ _("marker", {
3926
2159
  id: "Triangle",
3927
2160
  viewBox: "0 0 10 10",
3928
2161
  refX: "1",
@@ -3930,9 +2163,9 @@ var fa = class extends e.Component {
3930
2163
  markerWidth: "6",
3931
2164
  markerHeight: "6",
3932
2165
  orient: "auto",
3933
- children: /* @__PURE__ */ h("path", { d: "M 0 0 L 10 5 L 0 10 z" })
2166
+ children: /* @__PURE__ */ _("path", { d: "M 0 0 L 10 5 L 0 10 z" })
3934
2167
  }) }),
3935
- /* @__PURE__ */ h(fa, {
2168
+ /* @__PURE__ */ _(un, {
3936
2169
  borderColor: e,
3937
2170
  fillColor: t,
3938
2171
  fillOpacity: .02,
@@ -3940,7 +2173,7 @@ var fa = class extends e.Component {
3940
2173
  cx: this.state.centerX,
3941
2174
  cy: this.state.centerY
3942
2175
  }),
3943
- n && /* @__PURE__ */ h(fa, {
2176
+ n && /* @__PURE__ */ _(un, {
3944
2177
  borderColor: e,
3945
2178
  fillColor: t,
3946
2179
  fillOpacity: 0,
@@ -3948,7 +2181,7 @@ var fa = class extends e.Component {
3948
2181
  cx: this.state.centerX,
3949
2182
  cy: this.state.centerY
3950
2183
  }),
3951
- /* @__PURE__ */ h(pa, {
2184
+ /* @__PURE__ */ _(dn, {
3952
2185
  p1: {
3953
2186
  x: this.state.centerX,
3954
2187
  y: this.state.centerY
@@ -3962,12 +2195,12 @@ var fa = class extends e.Component {
3962
2195
  ]
3963
2196
  }) });
3964
2197
  }
3965
- }, ga = {
2198
+ }, mn = {
3966
2199
  knobX: 71,
3967
2200
  knobY: 71,
3968
2201
  svg: "\n\n<svg width=\"204px\" height=\"204px\" viewBox=\"0 0 204 204\" version=\"1.1\" xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\">\n <!-- Generator: Sketch 47.1 (45422) - http://www.bohemiancoding.com/sketch -->\n <desc>Created with Sketch.</desc>\n <defs>\n <linearGradient x1=\"50%\" y1=\"50%\" x2=\"50%\" y2=\"100%\" id=\"linearGradient-1\">\n <stop stop-color=\"#444040\" stop-opacity=\"0.51098279\" offset=\"0%\"></stop>\n <stop stop-color=\"#131111\" stop-opacity=\"0.893200861\" offset=\"100%\"></stop>\n </linearGradient>\n <circle id=\"path-2\" cx=\"98.0400009\" cy=\"98.0400009\" r=\"98.0400009\"></circle>\n <filter x=\"-3.3%\" y=\"-3.3%\" width=\"106.6%\" height=\"106.6%\" filterUnits=\"objectBoundingBox\" id=\"filter-3\">\n <feMorphology radius=\"0.5\" operator=\"dilate\" in=\"SourceAlpha\" result=\"shadowSpreadOuter1\"></feMorphology>\n <feOffset dx=\"0\" dy=\"0\" in=\"shadowSpreadOuter1\" result=\"shadowOffsetOuter1\"></feOffset>\n <feGaussianBlur stdDeviation=\"2\" in=\"shadowOffsetOuter1\" result=\"shadowBlurOuter1\"></feGaussianBlur>\n <feComposite in=\"shadowBlurOuter1\" in2=\"SourceAlpha\" operator=\"out\" result=\"shadowBlurOuter1\"></feComposite>\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0\" type=\"matrix\" in=\"shadowBlurOuter1\"></feColorMatrix>\n </filter>\n <linearGradient x1=\"50%\" y1=\"0%\" x2=\"50%\" y2=\"100%\" id=\"linearGradient-4\">\n <stop stop-color=\"#FFFFFF\" stop-opacity=\"0.5\" offset=\"0%\"></stop>\n <stop stop-color=\"#000000\" stop-opacity=\"0.5\" offset=\"100%\"></stop>\n </linearGradient>\n <circle id=\"path-5\" cx=\"98\" cy=\"98\" r=\"86\"></circle>\n <filter x=\"-4.1%\" y=\"-3.5%\" width=\"108.1%\" height=\"108.1%\" filterUnits=\"objectBoundingBox\" id=\"filter-6\">\n <feMorphology radius=\"0.5\" operator=\"dilate\" in=\"SourceAlpha\" result=\"shadowSpreadOuter1\"></feMorphology>\n <feOffset dx=\"0\" dy=\"1\" in=\"shadowSpreadOuter1\" result=\"shadowOffsetOuter1\"></feOffset>\n <feGaussianBlur stdDeviation=\"2\" in=\"shadowOffsetOuter1\" result=\"shadowBlurOuter1\"></feGaussianBlur>\n <feComposite in=\"shadowBlurOuter1\" in2=\"SourceAlpha\" operator=\"out\" result=\"shadowBlurOuter1\"></feComposite>\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0\" type=\"matrix\" in=\"shadowBlurOuter1\"></feColorMatrix>\n </filter>\n </defs>\n <g id=\"Page-1\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"s13\" transform=\"translate(4.000000, 4.000000)\">\n <g id=\"container\">\n <g id=\"Oval-2\">\n <use fill=\"black\" fill-opacity=\"1\" filter=\"url(#filter-3)\" xlink:href=\"#path-2\"></use>\n <use stroke=\"#979797\" stroke-width=\"1\" fill=\"url(#linearGradient-1)\" fill-rule=\"evenodd\" xlink:href=\"#path-2\"></use>\n </g>\n <g id=\"Oval-2\">\n <use fill=\"black\" fill-opacity=\"1\" filter=\"url(#filter-6)\" xlink:href=\"#path-5\"></use>\n <use fill=\"\" fill-rule=\"evenodd\" xlink:href=\"#path-5\"></use>\n <use stroke=\"#4A4A4A\" stroke-width=\"1\" fill=\"url(#linearGradient-4)\" fill-rule=\"evenodd\" xlink:href=\"#path-5\"></use>\n </g>\n <g id=\"knob\" transform=\"translate(27.431373, 27.431373)\">\n <circle id=\"Oval-5\" fill=\"#322E2E\" cx=\"71\" cy=\"71\" r=\"71\"></circle>\n\n <!-- Fixed position marks -->\n <!-- 12:00 position mark (less prominent) -->\n <line x1=\"71\" y1=\"15\" x2=\"71\" y2=\"25\" stroke=\"#666666\" stroke-width=\"1\" opacity=\"0.6\"/>\n\n <!-- End position marks (0 and 127) -->\n <!-- 0 position mark (40 degrees from top, clockwise) -->\n <line x1=\"95.5\" y1=\"45.5\" x2=\"88.5\" y2=\"52.5\" stroke=\"#CCCCCC\" stroke-width=\"2\"/>\n\n <!-- 127 position mark (320 degrees from top, clockwise) -->\n <line x1=\"46.5\" y1=\"45.5\" x2=\"53.5\" y2=\"52.5\" stroke=\"#CCCCCC\" stroke-width=\"2\"/>\n\n <!-- Rotating indicator (existing) -->\n <path d=\"M70.0686275,4.17063061 L86.5686275,65.2689929 C81.3642501,66.811221 75.8642501,67.5735686 70.0686275,67.5560356 C64.2730048,67.5385027 58.7730048,66.7761551 53.5686275,65.2689929 L70.0686275,4.17063061 Z\" id=\"Rectangle-Copy\" fill=\"#E6D7D7\" transform=\"translate(70.068627, 35.863481) scale(1, -1) translate(-70.068627, -35.863481) \"></path>\n </g>\n </g>\n </g>\n </g>\n</svg>\n"
3969
- }, _a = (e) => {
3970
- let { centered: t, clampMax: n = 360, clampMin: r = 0, defaultValue: i = 0, disabled: a = !1, format: o = (e) => e.toFixed(0), max: c = 100, min: l = 0, onChange: f = () => {}, onEnd: p = () => {}, onStart: _ = () => {}, preciseMode: v = !0, rotateDegrees: w = 0, skin: T = ga, step: E = 1, style: D, unlockDistance: ee = 100, value: O, ...k } = e, [te, A] = d(O !== void 0), j = u(null), M = u(null), N, P, [F, I] = d({
2202
+ }, hn = (e) => {
2203
+ let { centered: t, clampMax: n = 360, clampMin: r = 0, defaultValue: i = 0, disabled: a = !1, format: o = (e) => e.toFixed(0), max: c = 100, min: l = 0, onChange: f = () => {}, onEnd: p = () => {}, onStart: m = () => {}, preciseMode: h = !0, rotateDegrees: y = 0, skin: b = mn, step: E = 1, style: D, unlockDistance: O = 100, value: k, ...A } = e, [j, M] = d(k !== void 0), N = u(null), P = u(null), F, I, [L, R] = d({
3971
2204
  svgRef: void 0,
3972
2205
  dragging: !1,
3973
2206
  dragDistance: 0,
@@ -3977,60 +2210,60 @@ var fa = class extends e.Component {
3977
2210
  },
3978
2211
  valueAngle: 0,
3979
2212
  uncontrolledValue: 0
3980
- }), L = (e) => e < 0 ? e + 360 : e > 360 ? e - 360 : e, ne = (e) => {
3981
- let t = (R()(e) + w) % 360;
3982
- return L(t);
3983
- }, re = (e) => {
3984
- let t = e - w;
3985
- return R().invert(L(t));
3986
- }, R = () => ((!P || P.min !== l || P.max !== c || P.clampMin !== r || P.clampMax !== n) && (N = w < 270 && w > 90 ? b().domain([l, c]).range([r, n]) : b().domain([c, l]).range([n, r]), N.clamp(!0), P = {
2213
+ }), z = (e) => e < 0 ? e + 360 : e > 360 ? e - 360 : e, B = (e) => {
2214
+ let t = (V()(e) + y) % 360;
2215
+ return z(t);
2216
+ }, ee = (e) => {
2217
+ let t = e - y;
2218
+ return V().invert(z(t));
2219
+ }, V = () => ((!I || I.min !== l || I.max !== c || I.clampMin !== r || I.clampMax !== n) && (F = y < 270 && y > 90 ? S().domain([l, c]).range([r, n]) : S().domain([c, l]).range([n, r]), F.clamp(!0), I = {
3987
2220
  min: l,
3988
2221
  max: c,
3989
2222
  clampMin: r,
3990
2223
  clampMax: n
3991
- }), N);
2224
+ }), F);
3992
2225
  s(() => {
3993
- A(O !== void 0), I((e) => ({
2226
+ M(k !== void 0), R((e) => ({
3994
2227
  ...e,
3995
- uncontrolledValue: O ?? i ?? 0
3996
- })), j.current && (x(j.current).on(".drag", null), a || oe(x(j.current)));
2228
+ uncontrolledValue: k ?? i ?? 0
2229
+ })), N.current && (C(N.current).on(".drag", null), a || U(C(N.current)));
3997
2230
  }, [
3998
- O,
2231
+ k,
3999
2232
  i,
4000
2233
  a
4001
2234
  ]);
4002
- let ie = (e) => {
4003
- F.svgRef || I({
4004
- ...F,
2235
+ let te = (e) => {
2236
+ L.svgRef || R({
2237
+ ...L,
4005
2238
  svgRef: e
4006
2239
  });
4007
- }, ae = (e) => {
4008
- let t = re(e);
4009
- te || I((e) => ({
2240
+ }, ne = (e) => {
2241
+ let t = ee(e);
2242
+ j || R((e) => ({
4010
2243
  ...e,
4011
2244
  uncontrolledValue: t
4012
2245
  })), a || f(t);
4013
- }, z = () => te ? O ?? 0 : F.uncontrolledValue ?? 0, oe = (e) => {
2246
+ }, H = () => j ? k ?? 0 : L.uncontrolledValue ?? 0, U = (e) => {
4014
2247
  if (!e?.node()) return;
4015
2248
  let t = e.node();
4016
2249
  if (!t) return;
4017
2250
  let n = t.getBoundingClientRect(), r = n.width / 2, i = n.height / 2, a, o, s, c = !1;
4018
2251
  function l(l) {
4019
2252
  if (!l?.sourceEvent || !t) return;
4020
- let u = z();
4021
- n = t.getBoundingClientRect(), e.classed("dragging", !0), _(), a = {
2253
+ let u = H();
2254
+ n = t.getBoundingClientRect(), e.classed("dragging", !0), m(), a = {
4022
2255
  x: l.x - r,
4023
2256
  y: l.y - i
4024
- }, o = da(a.x, a.y), s = ne(u), c = !1;
2257
+ }, o = ln(a.x, a.y), s = B(u), c = !1;
4025
2258
  }
4026
2259
  function u(e) {
4027
2260
  let t = {
4028
2261
  x: e.x - r,
4029
2262
  y: e.y - i
4030
2263
  }, n = Math.sqrt(t.x ** 2 + t.y ** 2);
4031
- v ? !c && n >= ee && (a = t, o = da(t.x, t.y), c = !0) : c = !0;
4032
- let l = da(t.x, t.y) - o, u = s + l;
4033
- u = L(u), c && ae(u), I((t) => ({
2264
+ h ? !c && n >= O && (a = t, o = ln(t.x, t.y), c = !0) : c = !0;
2265
+ let l = ln(t.x, t.y) - o, u = s + l;
2266
+ u = z(u), c && ne(u), R((t) => ({
4034
2267
  ...t,
4035
2268
  dragDistance: n,
4036
2269
  mousePos: {
@@ -4041,19 +2274,19 @@ var fa = class extends e.Component {
4041
2274
  }));
4042
2275
  }
4043
2276
  function d() {
4044
- e.classed("dragging", !1), I((e) => ({
2277
+ e.classed("dragging", !1), R((e) => ({
4045
2278
  ...e,
4046
2279
  dragging: !1
4047
- })), p(), M.current?.focus();
2280
+ })), p(), P.current?.focus();
4048
2281
  }
4049
- let f = y().container(() => t).on("start", l).on("drag", u).on("end", d);
2282
+ let f = x().container(() => t).on("start", l).on("drag", u).on("end", d);
4050
2283
  e.call(f);
4051
- }, se = (e) => {
4052
- te || I((t) => ({
2284
+ }, re = (e) => {
2285
+ j || R((t) => ({
4053
2286
  ...t,
4054
2287
  uncontrolledValue: e
4055
2288
  })), a || f(e);
4056
- }, B = z(), ce = ne(B), le = {
2289
+ }, W = H(), ie = B(W), ae = {
4057
2290
  container: Object.assign({}, {
4058
2291
  width: "50px",
4059
2292
  height: "50px",
@@ -4068,57 +2301,57 @@ var fa = class extends e.Component {
4068
2301
  top: "0",
4069
2302
  left: "-100%"
4070
2303
  }
4071
- }, ue = T.updateAttributes, de = ue ? ue.map((t, n) => {
2304
+ }, oe = b.updateAttributes, se = oe ? oe.map((t, n) => {
4072
2305
  let r = null;
4073
- t.content && (r = t.content(e, B));
2306
+ t.content && (r = t.content(e, W));
4074
2307
  let i = {};
4075
- for (let n of t.attrs || []) i[n.name] = n.value(e, B);
4076
- return /* @__PURE__ */ h(C, {
2308
+ for (let n of t.attrs || []) i[n.name] = n.value(e, W);
2309
+ return /* @__PURE__ */ _(T, {
4077
2310
  selector: t.element,
4078
2311
  ...i,
4079
2312
  children: r
4080
2313
  }, n);
4081
2314
  }) : null;
4082
- return /* @__PURE__ */ g(m, { children: [/* @__PURE__ */ g("div", {
4083
- ref: j,
4084
- style: le.container,
4085
- ...k,
4086
- children: [/* @__PURE__ */ h(ca, {
2315
+ return /* @__PURE__ */ v(g, { children: [/* @__PURE__ */ v("div", {
2316
+ ref: N,
2317
+ style: ae.container,
2318
+ ...A,
2319
+ children: [/* @__PURE__ */ _(on, {
4087
2320
  disabled: a,
4088
- inputRef: M,
4089
- style: le.input,
4090
- value: B,
2321
+ inputRef: P,
2322
+ style: ae.input,
2323
+ value: W,
4091
2324
  min: l,
4092
2325
  max: c,
4093
2326
  step: E,
4094
- onChange: se
4095
- }), /* @__PURE__ */ g(S, {
2327
+ onChange: re
2328
+ }), /* @__PURE__ */ v(w, {
4096
2329
  height: "100%",
4097
- svgXML: T.svg,
2330
+ svgXML: b.svg,
4098
2331
  width: "100%",
4099
- onSVGReady: ie,
4100
- children: [/* @__PURE__ */ h(C, {
2332
+ onSVGReady: te,
2333
+ children: [/* @__PURE__ */ _(T, {
4101
2334
  selector: "#knob",
4102
- transform: `$ORIGINAL rotate(${ce}, ${T.knobX}, ${T.knobY})`
4103
- }), de]
2335
+ transform: `$ORIGINAL rotate(${ie}, ${b.knobX}, ${b.knobY})`
2336
+ }), se]
4104
2337
  })]
4105
- }), F.dragging && v && /* @__PURE__ */ h(ha, {
4106
- svgRef: F.svgRef,
4107
- radius: F.dragDistance,
4108
- mousePos: F.mousePos,
4109
- minimumDragDistance: ee,
4110
- valueAngle: F.valueAngle
2338
+ }), L.dragging && h && /* @__PURE__ */ _(pn, {
2339
+ svgRef: L.svgRef,
2340
+ radius: L.dragDistance,
2341
+ mousePos: L.mousePos,
2342
+ minimumDragDistance: O,
2343
+ valueAngle: L.valueAngle
4111
2344
  })] });
4112
- }, va = .5, ya = (e, t, n, r) => {
2345
+ }, gn = .5, _n = (e, t, n, r) => {
4113
2346
  let i = r * Math.PI / 180;
4114
2347
  return [e + n * Math.sin(i), t - n * Math.cos(i)];
4115
- }, ba = (e) => String(Math.round(e * 1e3) / 1e3), xa = ({ value: e, min: t, max: n, centered: r = !1, cx: i = 100, cy: a = 100, r: o = 93, clampMin: s = 40, clampMax: c = 320, rotateDegrees: l = 180 }) => {
2348
+ }, $ = (e) => String(Math.round(e * 1e3) / 1e3), vn = ({ value: e, min: t, max: n, centered: r = !1, cx: i = 100, cy: a = 100, r: o = 93, clampMin: s = 40, clampMax: c = 320, rotateDegrees: l = 180 }) => {
4116
2349
  if (n === t) return "";
4117
2350
  let u = s + Math.min(1, Math.max(0, (e - t) / (n - t))) * (c - s), d = r ? (s + c) / 2 : s, f = u - d;
4118
- if (Math.abs(f) < va) return "";
4119
- let p = (e) => ((e + l) % 360 + 360) % 360, [m, h] = ya(i, a, o, p(d)), [g, _] = ya(i, a, o, p(u)), v = +(Math.abs(f) > 180), y = +(f > 0);
4120
- return `M ${ba(m)} ${ba(h)} A ${ba(o)} ${ba(o)} 0 ${v} ${y} ${ba(g)} ${ba(_)}`;
4121
- }, Sa = 100, Ca = 100, wa = 93, Ta = {
2351
+ if (Math.abs(f) < gn) return "";
2352
+ let p = (e) => ((e + l) % 360 + 360) % 360, [m, h] = _n(i, a, o, p(d)), [g, _] = _n(i, a, o, p(u)), v = +(Math.abs(f) > 180), y = +(f > 0);
2353
+ return `M ${$(m)} ${$(h)} A ${$(o)} ${$(o)} 0 ${v} ${y} ${$(g)} ${$(_)}`;
2354
+ }, yn = 100, bn = 100, xn = 93, Sn = {
4122
2355
  knobX: 71.44,
4123
2356
  knobY: 71.44,
4124
2357
  svg: "\n <svg xmlns=\"http://www.w3.org/2000/svg\" xmlns:xlink=\"http://www.w3.org/1999/xlink\" width=\"207px\" height=\"207px\" viewBox=\"0 0 207 207\" version=\"1.1\">\n <!-- Generator: Sketch 47.1 (45422) - http://www.bohemiancoding.com/sketch -->\n <desc>Created with Sketch.</desc>\n <defs>\n <linearGradient x1=\"50%\" y1=\"50%\" x2=\"50%\" y2=\"100%\" id=\"27c61b0f-392f-962d-de12-cb9da898274b\">\n <stop stop-color=\"#444040\" stop-opacity=\"0.51098279\" offset=\"0%\"/>\n <stop stop-color=\"#131111\" stop-opacity=\"0.893200861\" offset=\"100%\"/>\n </linearGradient>\n <circle id=\"e966567b-3869-4bcd-76b6-2cf084e45390\" cx=\"100.497487\" cy=\"100.497487\" r=\"99.4974874\"/>\n <filter x=\"-3.3%\" y=\"-3.3%\" width=\"106.5%\" height=\"106.5%\" filterUnits=\"objectBoundingBox\" id=\"e2e6829f-0086-96b2-e92a-6f3809b8ac61\">\n <feMorphology radius=\"0.5\" operator=\"dilate\" in=\"SourceAlpha\" result=\"shadowSpreadOuter1\"/>\n <feOffset dx=\"0\" dy=\"0\" in=\"shadowSpreadOuter1\" result=\"shadowOffsetOuter1\"/>\n <feGaussianBlur stdDeviation=\"2\" in=\"shadowOffsetOuter1\" result=\"shadowBlurOuter1\"/>\n <feComposite in=\"shadowBlurOuter1\" in2=\"SourceAlpha\" operator=\"out\" result=\"shadowBlurOuter1\"/>\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0\" type=\"matrix\" in=\"shadowBlurOuter1\"/>\n </filter>\n <linearGradient x1=\"50%\" y1=\"0%\" x2=\"50%\" y2=\"100%\" id=\"0facd5c9-8e04-e83f-4842-8ba16f949942\">\n <stop stop-color=\"#FFFFFF\" stop-opacity=\"0.5\" offset=\"0%\"/>\n <stop stop-color=\"#000000\" stop-opacity=\"0.5\" offset=\"100%\"/>\n </linearGradient>\n <circle id=\"c54189ed-7ea3-956c-f040-f0207548b268\" cx=\"100.432161\" cy=\"100.432161\" r=\"86.4321608\"/>\n <filter x=\"-4.0%\" y=\"-3.5%\" width=\"108.1%\" height=\"108.1%\" filterUnits=\"objectBoundingBox\" id=\"dedf2e7e-f008-c315-f682-e424d670f210\">\n <feMorphology radius=\"0.5\" operator=\"dilate\" in=\"SourceAlpha\" result=\"shadowSpreadOuter1\"/>\n <feOffset dx=\"0\" dy=\"1\" in=\"shadowSpreadOuter1\" result=\"shadowOffsetOuter1\"/>\n <feGaussianBlur stdDeviation=\"2\" in=\"shadowOffsetOuter1\" result=\"shadowBlurOuter1\"/>\n <feComposite in=\"shadowBlurOuter1\" in2=\"SourceAlpha\" operator=\"out\" result=\"shadowBlurOuter1\"/>\n <feColorMatrix values=\"0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0 0.5 0\" type=\"matrix\" in=\"shadowBlurOuter1\"/>\n </filter>\n\n <filter x=\"-5.3%\" y=\"-11.3%\" width=\"110.7%\" height=\"122.6%\" filterUnits=\"objectBoundingBox\" id=\"12f618f7-e258-b597-3ed6-242484ddad8f\">\n <feOffset dx=\"0\" dy=\"0\" in=\"SourceAlpha\" result=\"shadowOffsetOuter1\"/>\n <feGaussianBlur stdDeviation=\"2\" in=\"shadowOffsetOuter1\" result=\"shadowBlurOuter1\"/>\n <feColorMatrix values=\"0 0 0 0 0.915577168 0 0 0 0 0.797591325 0 0 0 0 0.601479722 0 0 0 1 0\" type=\"matrix\" in=\"shadowBlurOuter1\"/>\n </filter>\n <pattern id=\"3cc0e5b8-1f0a-886b-f635-8fcb19212870\" width=\"8.04411765\" height=\"8.04411765\" x=\"21.9558824\" y=\"21.9558824\" patternUnits=\"userSpaceOnUse\">\n <use xlink:href=\"#2b8719c1-286b-ebf8-a488-ac66a6598fc5\" transform=\"scale(0.167585784,0.167585784)\"/>\n </pattern>\n <image id=\"2b8719c1-286b-ebf8-a488-ac66a6598fc5\" width=\"48\" height=\"48\" xlink:href=\"data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAADAAAAAwCAYAAABXAvmHAAAEGWlDQ1BrQ0dDb2xvclNwYWNlR2VuZXJpY1JHQgAAOI2NVV1oHFUUPrtzZyMkzlNsNIV0qD8NJQ2TVjShtLp/3d02bpZJNtoi6GT27s6Yyc44M7v9oU9FUHwx6psUxL+3gCAo9Q/bPrQvlQol2tQgKD60+INQ6Ium65k7M5lpurHeZe58853vnnvuuWfvBei5qliWkRQBFpquLRcy4nOHj4g9K5CEh6AXBqFXUR0rXalMAjZPC3e1W99Dwntf2dXd/p+tt0YdFSBxH2Kz5qgLiI8B8KdVy3YBevqRHz/qWh72Yui3MUDEL3q44WPXw3M+fo1pZuQs4tOIBVVTaoiXEI/MxfhGDPsxsNZfoE1q66ro5aJim3XdoLFw72H+n23BaIXzbcOnz5mfPoTvYVz7KzUl5+FRxEuqkp9G/Ajia219thzg25abkRE/BpDc3pqvphHvRFys2weqvp+krbWKIX7nhDbzLOItiM8358pTwdirqpPFnMF2xLc1WvLyOwTAibpbmvHHcvttU57y5+XqNZrLe3lE/Pq8eUj2fXKfOe3pfOjzhJYtB/yll5SDFcSDiH+hRkH25+L+sdxKEAMZahrlSX8ukqMOWy/jXW2m6M9LDBc31B9LFuv6gVKg/0Szi3KAr1kGq1GMjU/aLbnq6/lRxc4XfJ98hTargX++DbMJBSiYMIe9Ck1YAxFkKEAG3xbYaKmDDgYyFK0UGYpfoWYXG+fAPPI6tJnNwb7ClP7IyF+D+bjOtCpkhz6CFrIa/I6sFtNl8auFXGMTP34sNwI/JhkgEtmDz14ySfaRcTIBInmKPE32kxyyE2Tv+thKbEVePDfW/byMM1Kmm0XdObS7oGD/MypMXFPXrCwOtoYjyyn7BV29/MZfsVzpLDdRtuIZnbpXzvlf+ev8MvYr/Gqk4H/kV/G3csdazLuyTMPsbFhzd1UabQbjFvDRmcWJxR3zcfHkVw9GfpbJmeev9F08WW8uDkaslwX6avlWGU6NRKz0g/SHtCy9J30o/ca9zX3Kfc19zn3BXQKRO8ud477hLnAfc1/G9mrzGlrfexZ5GLdn6ZZrrEohI2wVHhZywjbhUWEy8icMCGNCUdiBlq3r+xafL549HQ5jH+an+1y+LlYBifuxAvRN/lVVVOlwlCkdVm9NOL5BE4wkQ2SMlDZU97hX86EilU/lUmkQUztTE6mx1EEPh7OmdqBtAvv8HdWpbrJS6tJj3n0CWdM6busNzRV3S9KTYhqvNiqWmuroiKgYhshMjmhTh9ptWhsF7970j/SbMrsPE1suR5z7DMC+P/Hs+y7ijrQAlhyAgccjbhjPygfeBTjzhNqy28EdkUh8C+DU9+z2v/oyeH791OncxHOs5y2AtTc7nb/f73TWPkD/qwBnjX8BoJ98VQNcC+8AAAFFSURBVGgF7djbDYMwDAXQBjEMYqyqY1WMxTppLiJIQIA8ariWkp8IPuweO60am67r7MstY8wwjuPH7dMz3uUua63p+/7r9rePIRW/9QmQzCV9ub0YgSIgzhxvQkjFb1EZBAdEKolkfJTqtnb7bv/zOJm58moRE0AzYgFoRawAGhE7gDZEEKAJcQjQgjgFaEBcAtgRUQBmRDSAFZEEYEQkA9gQWQAmRDaABVEEYEAUAx5H4EaGOyw+SMl66mbXzNOD4k6gCPNUY/CFwF1YOn5zRxJJRINqaUbUuZA/79sd3wm3xIdbdS60rXzo2XVCbO60/HxKJgFKKv4CkEziuyKBWAE0InYAbYggQBPiEKAFcQrQgLgEsCOiAMyIaAArIgnAiEgGsCGyAEyIbAALogjAgCgGPI7AX9w6F3JtqHMhnMWLFSrSD9jOnakVHpZYAAAAAElFTkSuQmCC\"/>\n </defs>\n <g id=\"Page-1\" stroke=\"none\" stroke-width=\"1\" fill=\"none\" fill-rule=\"evenodd\">\n <g id=\"s10\" transform=\"translate(3.000000, 3.000000)\">\n <g id=\"container\">\n <g id=\"Oval-2\">\n <use fill=\"black\" fill-opacity=\"1\" filter=\"url(#e2e6829f-0086-96b2-e92a-6f3809b8ac61)\" xlink:href=\"#e966567b-3869-4bcd-76b6-2cf084e45390\"/>\n <use stroke=\"#979797\" stroke-width=\"1\" fill=\"url(#27c61b0f-392f-962d-de12-cb9da898274b)\" fill-rule=\"evenodd\" xlink:href=\"#e966567b-3869-4bcd-76b6-2cf084e45390\"/>\n </g>\n <g id=\"Oval-2\">\n <use fill=\"black\" fill-opacity=\"1\" filter=\"url(#dedf2e7e-f008-c315-f682-e424d670f210)\" xlink:href=\"#c54189ed-7ea3-956c-f040-f0207548b268\"/>\n <use fill=\"\" fill-rule=\"evenodd\" xlink:href=\"#c54189ed-7ea3-956c-f040-f0207548b268\"/>\n <use stroke=\"#4A4A4A\" stroke-width=\"1\" fill=\"url(#0facd5c9-8e04-e83f-4842-8ba16f949942)\" fill-rule=\"evenodd\" xlink:href=\"#c54189ed-7ea3-956c-f040-f0207548b268\"/>\n </g>\n <g id=\"knob\" transform=\"translate(28.574244, 28.574244)\">\n <circle id=\"Oval-5\" fill=\"#322E2E\" cx=\"71.4356094\" cy=\"71.4356094\" r=\"71.4356094\"/>\n\n <!-- Rotating indicator (existing) -->\n <path d=\"M72.4209282,3.63066376 L88.6786876,16.869789 C81.585496,18.1548295 76.1662428,18.7973498 72.4209282,18.7973498 C68.6756135,18.7973498 63.2563604,18.1548295 56.1631688,16.869789 L72.4209282,3.63066376 Z\" id=\"Rectangle\" fill=\"#E6D7D7\" transform=\"translate(72.420928, 11.214007) scale(1, -1) translate(-72.420928, -11.214007) \"/>\n </g>\n\n <!-- Value arc: anchor->value fill in the bezel ring; path data is\n computed per-render via updateAttributes (see below).\n Consumers can restyle it via the knob-value-arc class. -->\n <path id=\"valueArc\" class=\"knob-value-arc\" d=\"\" stroke=\"#35619F\" stroke-width=\"7\" fill=\"none\" opacity=\"0.85\" stroke-linecap=\"round\" pointer-events=\"none\"/>\n\n <!-- Fixed position marks (outside the rotating knob group) -->\n <!-- 12:00 position mark (more prominent) -->\n <line x1=\"100.0098534\" y1=\"15\" x2=\"100.0098534\" y2=\"35\" stroke=\"#CCCCCC\" stroke-width=\"4\" opacity=\"0.9\"/>\n\n <!-- End position marks (0 and 127) -->\n <!-- 0 position mark (40 degrees from top, clockwise) - at outer radius beyond knob edge -->\n <!-- This should be at the bottom-left where the value indicator points when at 0 -->\n <line x1=\"36\" y1=\"164\" x2=\"44\" y2=\"156\" stroke=\"#DDDDDD\" stroke-width=\"4\"/>\n\n <!-- 127 position mark (320 degrees from top, clockwise) - at outer radius beyond knob edge -->\n <!-- This should be at the bottom-right where the value indicator points when at 127 -->\n <line x1=\"164\" y1=\"164\" x2=\"156\" y2=\"156\" stroke=\"#DDDDDD\" stroke-width=\"4\"/>\n <g id=\"label\">\n <g id=\"labeltext\" fill-opacity=\"1\" fill=\"#E6D7D7\">\n <text id=\"534f4e02-5541-3607-0966-af0b025d80e0\" font-family=\"Helvetica\" font-size=\"44\" font-weight=\"normal\" fill=\"#E6D7D7\" class=\"text-7\" filter=\"url(#12f618f7-e258-b597-3ed6-242484ddad8f)\">\n <tspan x=\"45.3246625\" y=\"117.884225\">10.10</tspan>\n </text>\n <text id=\"92ebe866-c281-70c7-7b0e-a373cee013a9\" font-family=\"Helvetica\" font-size=\"44\" font-weight=\"normal\" fill=\"#E6D7D7\" class=\"text-7\">\n <tspan x=\"45.3246625\" y=\"117.884225\">10.10</tspan>\n </text>\n </g>\n <circle id=\"Oval-6\" stroke=\"#979797\" fill-opacity=\"0.730000019\" fill=\"url(#3cc0e5b8-1f0a-886b-f635-8fcb19212870)\" transform=\"translate(100.351759, 100.351759) rotate(-45.000000) translate(-100.351759, -100.351759) \" cx=\"100.351759\" cy=\"100.351759\" r=\"70.3517588\"/>\n </g>\n </g>\n </g>\n </g>\n</svg>\n",
@@ -4136,29 +2369,29 @@ var fa = class extends e.Component {
4136
2369
  element: "#valueArc",
4137
2370
  attrs: [{
4138
2371
  name: "d",
4139
- value: (e, t) => xa({
2372
+ value: (e, t) => vn({
4140
2373
  value: t,
4141
2374
  min: e.min ?? 0,
4142
2375
  max: e.max ?? 127,
4143
2376
  centered: e.centered ?? !1,
4144
- cx: Sa,
4145
- cy: Ca,
4146
- r: wa,
2377
+ cx: yn,
2378
+ cy: bn,
2379
+ r: xn,
4147
2380
  clampMin: e.clampMin ?? 40,
4148
2381
  clampMax: e.clampMax ?? 320,
4149
2382
  rotateDegrees: e.rotateDegrees ?? 180
4150
2383
  })
4151
2384
  }]
4152
2385
  }]
4153
- }, Ea = (e) => {
4154
- let { centered: t = !1, disabled: n = !1, max: r = 127, min: i = 0, onChange: a, value: s = 0, wheelEnabled: c = !1, wheelSensitivity: l = .1, ...u } = e, [d, f] = sa(s), p = (e) => {
2386
+ }, Cn = (e) => {
2387
+ let { centered: t = !1, disabled: n = !1, max: r = 127, min: i = 0, onChange: a, value: s = 0, wheelEnabled: c = !1, wheelSensitivity: l = .1, ...u } = e, [d, f] = an(s), p = (e) => {
4155
2388
  if (n) return;
4156
- let t = L(Number.parseInt(String(e), 10), r, i);
2389
+ let t = B(Number.parseInt(String(e), 10), r, i);
4157
2390
  f(t), a && a(t);
4158
2391
  }, m = o((e) => {
4159
2392
  if (!c || n) return;
4160
2393
  e.preventDefault();
4161
- let t = -e.deltaY * l, o = L(d + t, r, i);
2394
+ let t = -e.deltaY * l, o = B(d + t, r, i);
4162
2395
  f(o), a && a(o);
4163
2396
  }, [
4164
2397
  c,
@@ -4170,7 +2403,7 @@ var fa = class extends e.Component {
4170
2403
  a,
4171
2404
  f
4172
2405
  ]);
4173
- return /* @__PURE__ */ h(_a, {
2406
+ return /* @__PURE__ */ _(hn, {
4174
2407
  centered: t,
4175
2408
  clampMax: 320,
4176
2409
  clampMin: 40,
@@ -4180,7 +2413,7 @@ var fa = class extends e.Component {
4180
2413
  onWheel: c ? m : void 0,
4181
2414
  preciseMode: !1,
4182
2415
  rotateDegrees: 180,
4183
- skin: Ta,
2416
+ skin: Sn,
4184
2417
  style: { opacity: n ? .4 : 1 },
4185
2418
  unlockDistance: 0,
4186
2419
  defaultValue: d,
@@ -4189,9 +2422,9 @@ var fa = class extends e.Component {
4189
2422
  value: d,
4190
2423
  ...u
4191
2424
  });
4192
- }, Da = i((e, t) => {
4193
- let { centered: n, disabled: r, highToLow: i, includeLabel: a, includePicker: o, knobProps: s, label: c, max: u = 127, min: d = 0, onChange: f, shrinkLabel: p, value: m = 0, wheelEnabled: _, wheelSensitivity: v = .1, ...y } = e, b = l(() => {
4194
- let e = I(u - d + 1).map((e) => d + e).map((e) => ({
2425
+ }, wn = i((e, t) => {
2426
+ let { centered: n, disabled: r, highToLow: i, includeLabel: a, includePicker: o, knobProps: s, label: c, max: u = 127, min: d = 0, onChange: f, shrinkLabel: p, value: m = 0, wheelEnabled: h, wheelSensitivity: g = .1, ...y } = e, b = l(() => {
2427
+ let e = z(u - d + 1).map((e) => d + e).map((e) => ({
4195
2428
  value: e,
4196
2429
  label: String(e)
4197
2430
  }));
@@ -4201,18 +2434,18 @@ var fa = class extends e.Component {
4201
2434
  u,
4202
2435
  d
4203
2436
  ]);
4204
- return /* @__PURE__ */ g("div", {
2437
+ return /* @__PURE__ */ v("div", {
4205
2438
  className: "zds-pickers__container",
4206
- children: [!!(!p && c) && /* @__PURE__ */ h("span", {
2439
+ children: [!!(!p && c) && /* @__PURE__ */ _("span", {
4207
2440
  className: "zds-pickers__label",
4208
2441
  children: c
4209
- }), /* @__PURE__ */ g("div", {
2442
+ }), /* @__PURE__ */ v("div", {
4210
2443
  style: {
4211
2444
  display: "inline-flex",
4212
2445
  gap: 10,
4213
2446
  alignItems: "center"
4214
2447
  },
4215
- children: [!!o && /* @__PURE__ */ h($, {
2448
+ children: [!!o && /* @__PURE__ */ _(Q, {
4216
2449
  ...y,
4217
2450
  disabled: r,
4218
2451
  isDisabled: r,
@@ -4220,50 +2453,50 @@ var fa = class extends e.Component {
4220
2453
  options: b,
4221
2454
  ref: t,
4222
2455
  value: m
4223
- }), /* @__PURE__ */ h(Ea, {
2456
+ }), /* @__PURE__ */ _(Cn, {
4224
2457
  centered: n,
4225
2458
  disabled: r,
4226
2459
  max: u,
4227
2460
  min: d,
4228
2461
  onChange: f,
4229
2462
  value: m,
4230
- wheelEnabled: _,
4231
- wheelSensitivity: v,
2463
+ wheelEnabled: h,
2464
+ wheelSensitivity: g,
4232
2465
  ...s
4233
2466
  })]
4234
2467
  })]
4235
2468
  });
4236
- }), Oa = [{
2469
+ }), Tn = [{
4237
2470
  value: 0,
4238
2471
  label: "Momentary"
4239
2472
  }, {
4240
2473
  value: 1,
4241
2474
  label: "Latching"
4242
- }], ka = i((e, t) => /* @__PURE__ */ h($, {
2475
+ }], En = i((e, t) => /* @__PURE__ */ _(Q, {
4243
2476
  ...e,
4244
- options: Oa,
2477
+ options: Tn,
4245
2478
  ref: t
4246
- })), Aa = i(({ allowClearing: e, ...t }, n) => {
4247
- let r = E(), i = D(), a = l(() => [
2479
+ })), Dn = i(({ allowClearing: e, ...t }, n) => {
2480
+ let r = O(), i = k(), a = l(() => [
4248
2481
  ...e ? [{
4249
2482
  value: "No Mapping",
4250
- label: /* @__PURE__ */ h("span", {
2483
+ label: /* @__PURE__ */ _("span", {
4251
2484
  className: "zds-mappings-clear-mapping",
4252
2485
  children: "No Mapping"
4253
2486
  })
4254
2487
  }] : [],
4255
2488
  {
4256
- label: e ? /* @__PURE__ */ h("hr", {}) : "",
2489
+ label: e ? /* @__PURE__ */ _("hr", {}) : "",
4257
2490
  options: i.map((e) => ({
4258
2491
  value: e,
4259
- label: /* @__PURE__ */ h("span", {
2492
+ label: /* @__PURE__ */ _("span", {
4260
2493
  className: "zds-mappings-user-mapping",
4261
2494
  children: e
4262
2495
  })
4263
2496
  }))
4264
2497
  },
4265
2498
  {
4266
- label: i.length || e ? /* @__PURE__ */ h("hr", {}) : "",
2499
+ label: i.length || e ? /* @__PURE__ */ _("hr", {}) : "",
4267
2500
  options: r.map((e) => ({
4268
2501
  label: e,
4269
2502
  value: e
@@ -4274,21 +2507,21 @@ var fa = class extends e.Component {
4274
2507
  r,
4275
2508
  i
4276
2509
  ]);
4277
- return /* @__PURE__ */ h($, {
2510
+ return /* @__PURE__ */ _(Q, {
4278
2511
  ...t,
4279
2512
  options: a,
4280
2513
  ref: n
4281
2514
  });
4282
- }), { midiToNoteName: ja } = pn, Ma = ({ note: e, name: t }) => `${e} ${t.length ? "-" : ""} ${t}`, Na = (e, t) => ({
2515
+ }), On = ({ note: e, name: t }) => `${e} ${t.length ? "-" : ""} ${t}`, kn = (e, t) => ({
4283
2516
  label: e,
4284
2517
  value: t + 1
4285
- }), Pa = i((e, t) => {
4286
- let { channel: n, disabled: r = !1, isMelodicMode: i = !1, mapping: a, onChange: s, value: c, ...u } = e, d = l(() => i ? T().map(({ note: e }) => `${ja(e, { sharps: !1 }).replace("b", "♭").replace("#", "♯")} (#${e})`).map(Na) : (a || T()).map(Ma).map(Na), [i, a]), [f, p] = sa(c), m = o((e) => {
2518
+ }), An = i((e, t) => {
2519
+ let { channel: n, disabled: r = !1, isMelodicMode: i = !1, mapping: a, onChange: s, value: c, ...u } = e, d = l(() => i ? D().map(({ note: e }) => `${be(e)} (#${e})`).map(kn) : (a || D()).map(On).map(kn), [i, a]), [f, p] = an(c), m = o((e) => {
4287
2520
  if (typeof e == "string") return;
4288
- let t = L(e, 128, 0);
2521
+ let t = B(e, 128, 0);
4289
2522
  t > 0 && s(t), p(e);
4290
2523
  }, [s, p]);
4291
- return /* @__PURE__ */ h($, {
2524
+ return /* @__PURE__ */ _(Q, {
4292
2525
  ...u,
4293
2526
  disabled: r,
4294
2527
  onChange: m,
@@ -4296,25 +2529,25 @@ var fa = class extends e.Component {
4296
2529
  ref: t,
4297
2530
  value: f
4298
2531
  });
4299
- }), Fa = 21, Ia = 108, La = 86 * .7, Ra = new window.AudioContext(), za = ({ height: e, width: t, ...n }) => {
4300
- let r = (t / La + 2) / e;
4301
- return /* @__PURE__ */ h("div", { children: /* @__PURE__ */ h(Ci, {
2532
+ }), jn = 21, Mn = 108, Nn = 86 * .7, Pn = new window.AudioContext(), Fn = ({ height: e, width: t, ...n }) => {
2533
+ let r = (t / Nn + 2) / e;
2534
+ return /* @__PURE__ */ _("div", { children: /* @__PURE__ */ _(St, {
4302
2535
  keyWidthToHeight: r,
4303
2536
  noteRange: {
4304
- first: Fa,
4305
- last: Ia
2537
+ first: jn,
2538
+ last: Mn
4306
2539
  },
4307
2540
  width: t,
4308
2541
  ...n
4309
2542
  }) });
4310
- }, Ba = ({ format: e, height: t, hostname: n, instrumentName: r, onChange: i, onClick: a, onDoubleClick: o, onKeyMouseEnter: s, onKeyMouseLeave: c, selectedNotes: l, soundfont: u, width: d }) => /* @__PURE__ */ h(ki, {
4311
- audioContext: Ra,
2543
+ }, In = ({ format: e, height: t, hostname: n, instrumentName: r, onChange: i, onClick: a, onDoubleClick: o, onKeyMouseEnter: s, onKeyMouseLeave: c, selectedNotes: l, soundfont: u, width: d }) => /* @__PURE__ */ _(Dt, {
2544
+ audioContext: Pn,
4312
2545
  format: e,
4313
2546
  hostname: n,
4314
2547
  instrumentName: r,
4315
2548
  onChange: i,
4316
2549
  soundfont: u,
4317
- render: ({ isLoading: e, playNote: n, stopNote: r }) => /* @__PURE__ */ h(za, {
2550
+ render: ({ isLoading: e, playNote: n, stopNote: r }) => /* @__PURE__ */ _(Fn, {
4318
2551
  disabled: e,
4319
2552
  height: t,
4320
2553
  onClick: a,
@@ -4326,7 +2559,7 @@ var fa = class extends e.Component {
4326
2559
  stopNote: r,
4327
2560
  width: d
4328
2561
  })
4329
- }), Va = i(({ labelOff: e = "Normally Off", labelOn: t = "Normally On", ...n }, r) => {
2562
+ }), Ln = i(({ labelOff: e = "Normally Off", labelOn: t = "Normally On", ...n }, r) => {
4330
2563
  let i = [{
4331
2564
  value: 0,
4332
2565
  label: e
@@ -4334,20 +2567,20 @@ var fa = class extends e.Component {
4334
2567
  value: 1,
4335
2568
  label: t
4336
2569
  }];
4337
- return /* @__PURE__ */ h($, {
2570
+ return /* @__PURE__ */ _(Q, {
4338
2571
  ...n,
4339
2572
  options: i,
4340
2573
  ref: r
4341
2574
  });
4342
- }), Ha = (e) => e ? {
2575
+ }), Rn = (e) => e ? {
4343
2576
  width: e.offsetWidth,
4344
2577
  height: e.offsetHeight
4345
2578
  } : {
4346
2579
  width: 0,
4347
2580
  height: 0
4348
- }, Ua = (e) => {
4349
- let [t, n] = d(Ha(e ? e.current : null)), r = o(() => {
4350
- e.current && n(Ha(e.current));
2581
+ }, zn = (e) => {
2582
+ let [t, n] = d(Rn(e ? e.current : null)), r = o(() => {
2583
+ e.current && n(Rn(e.current));
4351
2584
  }, [e]);
4352
2585
  return c(() => {
4353
2586
  if (e.current) {
@@ -4364,32 +2597,32 @@ var fa = class extends e.Component {
4364
2597
  };
4365
2598
  }
4366
2599
  }, [e.current]), t;
4367
- }, Wa = 20, Ga = 15, Ka = Wa, qa = Wa, Ja = (e) => {
4368
- let { Tooltip: t = V, autosize: n, disabled: r, inverted: i, onChange: a, value: o } = e, s = u(null), c = u(null), { height: l, width: d } = Ua(s), f = n && d || 218, p = n && l || 150, m = f - Wa, _ = p - Wa, v = f / 2, y = p / 2, b = { ref: c }, x = be.map(({ value: e, label: t }) => {
4369
- let n = 0, r = 0, a = Ka, o = i ? qa : _, s = m, c = i ? _ : qa, l = v, u = y;
2600
+ }, Bn = 20, Vn = 15, Hn = Bn, Un = Bn, Wn = (e) => {
2601
+ let { Tooltip: t = ge, autosize: n, disabled: r, inverted: i, onChange: a, value: o } = e, s = u(null), c = u(null), { height: l, width: d } = zn(s), f = n && d || 218, p = n && l || 150, m = f - Bn, h = p - Bn, g = f / 2, y = p / 2, b = { ref: c }, x = K.map(({ value: e, label: t }) => {
2602
+ let n = 0, r = 0, a = Hn, o = i ? Un : h, s = m, c = i ? h : Un, l = g, u = y;
4370
2603
  switch (e) {
4371
2604
  case 0:
4372
- n = v, r = y, u += 3;
2605
+ n = g, r = y, u += 3;
4373
2606
  break;
4374
2607
  case 1:
4375
- n = i ? v + f * .13 : v - f * .13, r = y - p * .13, l = i ? v + f * .1 : v - f * .1, u = y - p * .09;
2608
+ n = i ? g + f * .13 : g - f * .13, r = y - p * .13, l = i ? g + f * .1 : g - f * .1, u = y - p * .09;
4376
2609
  break;
4377
2610
  case 2:
4378
- n = i ? v + f * .25 : v - f * .25, r = y - p * .25, l = i ? v + f * .2 : v - f * .2, u = y - p * .17;
2611
+ n = i ? g + f * .25 : g - f * .25, r = y - p * .25, l = i ? g + f * .2 : g - f * .2, u = y - p * .17;
4379
2612
  break;
4380
2613
  case 3:
4381
- n = i ? v + f * .35 : v - f * .35, r = y - p * .35, l = i ? v + f * .28 : v - f * .28, u = y - p * .25;
2614
+ n = i ? g + f * .35 : g - f * .35, r = y - p * .35, l = i ? g + f * .28 : g - f * .28, u = y - p * .25;
4382
2615
  break;
4383
2616
  case 4:
4384
- n = i ? v - f * .13 : v + f * .13, r = y + p * .13, l = i ? v - f * .1 : v + f * .1, u = y + p * .1;
2617
+ n = i ? g - f * .13 : g + f * .13, r = y + p * .13, l = i ? g - f * .1 : g + f * .1, u = y + p * .1;
4385
2618
  break;
4386
2619
  case 5:
4387
- n = i ? v - f * .25 : v + f * .25, r = y + p * .25, l = i ? v - f * .2 : v + f * .2, u = y + p * .18;
2620
+ n = i ? g - f * .25 : g + f * .25, r = y + p * .25, l = i ? g - f * .2 : g + f * .2, u = y + p * .18;
4388
2621
  break;
4389
2622
  case 6:
4390
- n = i ? v - f * .35 : v + f * .35, r = y + p * .35, l = i ? v - f * .28 : v + f * .28, u = y + p * .25;
2623
+ n = i ? g - f * .35 : g + f * .35, r = y + p * .35, l = i ? g - f * .28 : g + f * .28, u = y + p * .25;
4391
2624
  break;
4392
- case 7: a = i ? Ka : m, o = qa, s = a, c = _, n = a, r = y, l = a - 5, u = p - 30;
2625
+ case 7: a = i ? Hn : m, o = Un, s = a, c = h, n = a, r = y, l = a - 5, u = p - 30;
4393
2626
  }
4394
2627
  return {
4395
2628
  value: e,
@@ -4404,13 +2637,13 @@ var fa = class extends e.Component {
4404
2637
  labelY: u
4405
2638
  };
4406
2639
  });
4407
- return /* @__PURE__ */ h("div", {
2640
+ return /* @__PURE__ */ _("div", {
4408
2641
  className: "response-curve-picker",
4409
2642
  ref: s,
4410
- children: /* @__PURE__ */ g("svg", {
2643
+ children: /* @__PURE__ */ v("svg", {
4411
2644
  ...b,
4412
2645
  children: [
4413
- /* @__PURE__ */ h("rect", {
2646
+ /* @__PURE__ */ _("rect", {
4414
2647
  className: "container",
4415
2648
  height: p,
4416
2649
  rx: 3,
@@ -4419,7 +2652,7 @@ var fa = class extends e.Component {
4419
2652
  x: 0,
4420
2653
  y: 0
4421
2654
  }),
4422
- /* @__PURE__ */ h(Hi, {
2655
+ /* @__PURE__ */ _(Bt, {
4423
2656
  className: "axis",
4424
2657
  textAnchor: "middle",
4425
2658
  transform: `translate(6 ${p / 2}) rotate(90)`,
@@ -4427,64 +2660,64 @@ var fa = class extends e.Component {
4427
2660
  y: 0,
4428
2661
  text: "Applied force"
4429
2662
  }),
4430
- /* @__PURE__ */ h(Hi, {
2663
+ /* @__PURE__ */ _(Bt, {
4431
2664
  className: "axis",
4432
2665
  textAnchor: "middle",
4433
- transform: `translate(${f / 2} ${_ + 13})`,
2666
+ transform: `translate(${f / 2} ${h + 13})`,
4434
2667
  x: 0,
4435
2668
  y: 0,
4436
2669
  text: "Output (velocity)"
4437
2670
  }),
4438
- /* @__PURE__ */ h("line", {
2671
+ /* @__PURE__ */ _("line", {
4439
2672
  className: "axis",
4440
- x1: Ka,
4441
- x2: Ka,
4442
- y1: qa,
4443
- y2: _
2673
+ x1: Hn,
2674
+ x2: Hn,
2675
+ y1: Un,
2676
+ y2: h
4444
2677
  }),
4445
- /* @__PURE__ */ h("line", {
2678
+ /* @__PURE__ */ _("line", {
4446
2679
  className: "axis",
4447
- x1: Ka,
2680
+ x1: Hn,
4448
2681
  x2: m,
4449
- y1: _,
4450
- y2: _
2682
+ y1: h,
2683
+ y2: h
4451
2684
  }),
4452
- x.map(({ value: e, label: n, x1: i, y1: s, x2: c, y2: l, c1: u, c2: d, labelX: f, labelY: p }) => /* @__PURE__ */ g("g", { children: [
4453
- /* @__PURE__ */ h("path", {
2685
+ x.map(({ value: e, label: n, x1: i, y1: s, x2: c, y2: l, c1: u, c2: d, labelX: f, labelY: p }) => /* @__PURE__ */ v("g", { children: [
2686
+ /* @__PURE__ */ _("path", {
4454
2687
  className: e === o ? "curve-selected" : "curve",
4455
2688
  d: `M${i} ${s} C ${u} ${d}, ${u} ${d}, ${c} ${l}`
4456
2689
  }),
4457
- /* @__PURE__ */ h(t, {
2690
+ /* @__PURE__ */ _(t, {
4458
2691
  placement: "left",
4459
2692
  title: n,
4460
- children: /* @__PURE__ */ h("rect", {
2693
+ children: /* @__PURE__ */ _("rect", {
4461
2694
  className: e === o ? "button-selected" : "button",
4462
- height: Ga,
2695
+ height: Vn,
4463
2696
  onClick: r ? (e) => e : () => a({ target: { value: Number.parseInt(String(e)) } }),
4464
- transform: `translate(${f + 3} ${p - Ga / 1.05}) rotate(45)`,
4465
- width: Ga
2697
+ transform: `translate(${f + 3} ${p - Vn / 1.05}) rotate(45)`,
2698
+ width: Vn
4466
2699
  })
4467
2700
  }),
4468
- /* @__PURE__ */ g("text", {
2701
+ /* @__PURE__ */ v("text", {
4469
2702
  className: e === o ? "button-selected" : "button",
4470
2703
  transform: `translate(${f} ${p})`,
4471
- children: [e, /* @__PURE__ */ h("title", { children: n })]
2704
+ children: [e, /* @__PURE__ */ _("title", { children: n })]
4472
2705
  })
4473
2706
  ] }, e))
4474
2707
  ]
4475
2708
  })
4476
2709
  });
4477
- }, Ya = i((e, t) => {
4478
- let { Tooltip: n = V, inverted: r = !1, onChange: i, value: a, ...s } = e, c = o(() => {
4479
- let e = ne("value", a)(be);
4480
- return e ? /* @__PURE__ */ h("div", {
2710
+ }, Gn = i((e, t) => {
2711
+ let { Tooltip: n = ge, inverted: r = !1, onChange: i, value: a, ...s } = e, c = o(() => {
2712
+ let e = ee("value", a)(K);
2713
+ return e ? /* @__PURE__ */ _("div", {
4481
2714
  className: "singleValue",
4482
2715
  children: e.label
4483
- }) : /* @__PURE__ */ h("div", {
2716
+ }) : /* @__PURE__ */ _("div", {
4484
2717
  className: "zds-pickers__placeholder",
4485
2718
  children: "Select..."
4486
2719
  });
4487
- }, [a]), l = o(({ setValue: e }) => /* @__PURE__ */ h(Ja, {
2720
+ }, [a]), l = o(({ setValue: e }) => /* @__PURE__ */ _(Wn, {
4488
2721
  autosize: !0,
4489
2722
  inverted: r,
4490
2723
  onChange: ({ target: { value: t } }) => {
@@ -4498,7 +2731,7 @@ var fa = class extends e.Component {
4498
2731
  i,
4499
2732
  a
4500
2733
  ]);
4501
- return /* @__PURE__ */ h($, {
2734
+ return /* @__PURE__ */ _(Q, {
4502
2735
  ...s,
4503
2736
  components: {
4504
2737
  Placeholder: c,
@@ -4509,13 +2742,13 @@ var fa = class extends e.Component {
4509
2742
  ref: t,
4510
2743
  value: a
4511
2744
  });
4512
- }), Xa = i(({ statuses: e, ...t }, n) => /* @__PURE__ */ h($, {
2745
+ }), Kn = i(({ statuses: e, ...t }, n) => /* @__PURE__ */ _(Q, {
4513
2746
  ...t,
4514
2747
  options: e,
4515
2748
  ref: n
4516
- })), Za = i((e, t) => {
2749
+ })), qn = i((e, t) => {
4517
2750
  let { disabled: n, highToLow: r, max: i = 127, min: a = 0, onChange: s, value: c = 0, ...u } = e, d = l(() => {
4518
- let e = I(i - a + 1).map((e) => a + e).map((e) => ({
2751
+ let e = z(i - a + 1).map((e) => a + e).map((e) => ({
4519
2752
  value: e,
4520
2753
  label: e
4521
2754
  }));
@@ -4524,15 +2757,15 @@ var fa = class extends e.Component {
4524
2757
  r,
4525
2758
  i,
4526
2759
  a
4527
- ]), [f, p] = sa(c), m = o((e) => {
4528
- s(L(e, i, a)), p(Number.parseInt(String(e), 10));
2760
+ ]), [f, p] = an(c), m = o((e) => {
2761
+ s(B(e, i, a)), p(Number.parseInt(String(e), 10));
4529
2762
  }, [
4530
2763
  i,
4531
2764
  a,
4532
2765
  s,
4533
2766
  p
4534
2767
  ]);
4535
- return /* @__PURE__ */ h($, {
2768
+ return /* @__PURE__ */ _(Q, {
4536
2769
  ...u,
4537
2770
  disabled: n,
4538
2771
  onChange: m,
@@ -4542,6 +2775,6 @@ var fa = class extends e.Component {
4542
2775
  });
4543
2776
  });
4544
2777
  //#endregion
4545
- export { Xi as CCPicker, Qi as ChannelMappingPicker, ta as ChannelPicker, V as DefaultTooltip, oa as KeyPicker, Ea as Knob, Da as KnobPicker, ka as LatchPicker, oe as MASK_CHANNEL, se as MASK_STATUS, Fi as MEASUREMENT_ELEMENT_ID, Aa as MappingPicker, Pa as NotePicker, Pi as OctavePlayer, Ba as PianoPicker, Va as PolarityPicker, Ja as ResponseCurve, ye as ResponseCurveLabels, Ya as ResponseCurvePicker, $ as Select, Xa as StatusPicker, z as Statuses, Hi as SvgText, Za as ValuePicker, zi as __resetFontMetricsCacheForTests, I as arraySequence, L as assertRange, Vi as calculateWordWidths, Bi as calculateWordsByLines, ae as changeControllerOptions, le as combineStatusWithChannel, ue as extractStatusAndChannel, ne as findObj, ce as getStatusLabel, Ui as noSelection, qi as noSelectionOption, re as omit, R as pick, be as responseCurves, ie as set, B as statusOptions };
2778
+ export { Jt as CCPicker, Xt as ChannelMappingPicker, $t as ChannelPicker, ge as DefaultTooltip, rn as KeyPicker, Cn as Knob, wn as KnobPicker, En as LatchPicker, re as MASK_CHANNEL, W as MASK_STATUS, Nt as MEASUREMENT_ELEMENT_ID, Dn as MappingPicker, An as NotePicker, Mt as OctavePlayer, In as PianoPicker, Ln as PolarityPicker, Wn as ResponseCurve, he as ResponseCurveLabels, Gn as ResponseCurvePicker, Q as Select, Kn as StatusPicker, U as Statuses, Bt as SvgText, qn as ValuePicker, Lt as __resetFontMetricsCacheForTests, z as arraySequence, B as assertRange, zt as calculateWordWidths, Rt as calculateWordsByLines, H as changeControllerOptions, oe as combineStatusWithChannel, se as extractStatusAndChannel, ee as findObj, ve as formatPitchName, ae as getStatusLabel, be as midiNoteLabel, Vt as noSelection, Gt as noSelectionOption, V as omit, te as pick, ye as pitchClassLabel, K as responseCurves, ne as set, ie as statusOptions };
4546
2779
 
4547
2780
  //# sourceMappingURL=index.es.js.map