@vue-skuilder/platform-ui 0.1.35 → 0.1.36
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/assets/{About-CYoEhp5l.js → About-eVevEMqh.js} +2 -2
- package/dist/assets/{About-CYoEhp5l.js.map → About-eVevEMqh.js.map} +1 -1
- package/dist/assets/AdminDashboard-C_oJ8NGZ.js +2 -0
- package/dist/assets/{AdminDashboard-DO3Mo6_x.js.map → AdminDashboard-C_oJ8NGZ.js.map} +1 -1
- package/dist/assets/{ClassroomCtrlPanel-DkBMgZJU.js → ClassroomCtrlPanel-DanEeAZ0.js} +2 -2
- package/dist/assets/{ClassroomCtrlPanel-DkBMgZJU.js.map → ClassroomCtrlPanel-DanEeAZ0.js.map} +1 -1
- package/dist/assets/{Classrooms-BRwjFo6r.js → Classrooms-OrG6VOnx.js} +2 -2
- package/dist/assets/{Classrooms-BRwjFo6r.js.map → Classrooms-OrG6VOnx.js.map} +1 -1
- package/dist/assets/{CourseRouter-BrofD0lZ.js → CourseRouter-CK8Xh2h2.js} +2 -2
- package/dist/assets/{CourseRouter-BrofD0lZ.js.map → CourseRouter-CK8Xh2h2.js.map} +1 -1
- package/dist/assets/CourseWare-BTFRjgBR-D750E7i0.css +1 -0
- package/dist/assets/{CourseWare-BTFRjgBR-ca7as3tn.js → CourseWare-BTFRjgBR-OzjKW1B2.js} +3 -3
- package/dist/assets/{CourseWare-BTFRjgBR-ca7as3tn.js.map → CourseWare-BTFRjgBR-OzjKW1B2.js.map} +1 -1
- package/dist/assets/{Courses-DyZS7Cle.js → Courses-DB0JFz1Q.js} +2 -2
- package/dist/assets/{Courses-DyZS7Cle.js.map → Courses-DB0JFz1Q.js.map} +1 -1
- package/dist/assets/EloModeration-BmU0CqZt.js +2 -0
- package/dist/assets/{EloModeration-B8hFSqwy.js.map → EloModeration-BmU0CqZt.js.map} +1 -1
- package/dist/assets/{JoinCode-DOLzN-p-.js → JoinCode-KoSLXpUy.js} +2 -2
- package/dist/assets/{JoinCode-DOLzN-p-.js.map → JoinCode-KoSLXpUy.js.map} +1 -1
- package/dist/assets/{NewCourseDialog-CjeJyyc3.js → NewCourseDialog-BXxQ1cvK.js} +2 -2
- package/dist/assets/{NewCourseDialog-CjeJyyc3.js.map → NewCourseDialog-BXxQ1cvK.js.map} +1 -1
- package/dist/assets/{ReleaseNotes-D9KhPUiR.js → ReleaseNotes-CERYwZro.js} +2 -2
- package/dist/assets/{ReleaseNotes-D9KhPUiR.js.map → ReleaseNotes-CERYwZro.js.map} +1 -1
- package/dist/assets/{RequestPasswordReset-CdzOhOXs.js → RequestPasswordReset-Bc4FHaYS.js} +2 -2
- package/dist/assets/{RequestPasswordReset-CdzOhOXs.js.map → RequestPasswordReset-Bc4FHaYS.js.map} +1 -1
- package/dist/assets/{ResetPassword-Cu62zkXq.js → ResetPassword-CeR_bmOz.js} +2 -2
- package/dist/assets/{ResetPassword-Cu62zkXq.js.map → ResetPassword-CeR_bmOz.js.map} +1 -1
- package/dist/assets/Study-voro05GB.js +2 -0
- package/dist/assets/{Study-DYkoX3oR.js.map → Study-voro05GB.js.map} +1 -1
- package/dist/assets/TagInformation-1urKQaI-.js +2 -0
- package/dist/assets/{TagInformation-PbQDPmpb.js.map → TagInformation-1urKQaI-.js.map} +1 -1
- package/dist/assets/{User-CIFHdgrZ.js → User-26Hebdw-.js} +2 -2
- package/dist/assets/{User-CIFHdgrZ.js.map → User-26Hebdw-.js.map} +1 -1
- package/dist/assets/{UserStats-DSyaFn7j.js → UserStats-DbWUnAPD.js} +2 -2
- package/dist/assets/{UserStats-DSyaFn7j.js.map → UserStats-DbWUnAPD.js.map} +1 -1
- package/dist/assets/{VerifyEmail-DWS9S3tV.js → VerifyEmail-uix17ueS.js} +2 -2
- package/dist/assets/{VerifyEmail-DWS9S3tV.js.map → VerifyEmail-uix17ueS.js.map} +1 -1
- package/dist/assets/{chess-BbHATAzk-DOhLaMTg.js → chess-BbHATAzk-BhFAwbgX.js} +2 -2
- package/dist/assets/chess-BbHATAzk-BhFAwbgX.js.map +1 -0
- package/dist/assets/chess-BbHATAzk-DB7z_kWx.css +1 -0
- package/dist/assets/chess-X1bmWmh3-C7B3mHa1.js +1 -0
- package/dist/assets/common-ui.es-C18SEA_L.js +1 -0
- package/dist/assets/{common-ui.es-ConLKYrk.js → common-ui.es-p3cgaI_b.js} +4 -4
- package/dist/assets/{common-ui.es-ConLKYrk.js.map → common-ui.es-p3cgaI_b.js.map} +1 -1
- package/dist/assets/dist-CszlUrrD.js +1 -0
- package/dist/assets/dist-D2Tzeiyw.js +1 -0
- package/dist/assets/{dist-DKtzwGWn.js → dist-DA7EuQY2.js} +33 -11
- package/dist/assets/dist-DA7EuQY2.js.map +1 -0
- package/dist/assets/{dist-Daq3OiEc.js → dist-DCY40cJ7.js} +3 -3
- package/dist/assets/dist-DCY40cJ7.js.map +1 -0
- package/dist/assets/{edit-ui.es-DNDxRLE6.js → edit-ui.es-BIV0deYk.js} +2 -2
- package/dist/assets/{edit-ui.es-DNDxRLE6.js.map → edit-ui.es-BIV0deYk.js.map} +1 -1
- package/dist/assets/edit-ui.es-BLMFpJm1.js +1 -0
- package/dist/assets/{french-Dk7YG8Td-Bzxo0iir.js → french-Dk7YG8Td-YK4jNZUN.js} +2 -2
- package/dist/assets/{french-Dk7YG8Td-Bzxo0iir.js.map → french-Dk7YG8Td-YK4jNZUN.js.map} +1 -1
- package/dist/assets/french-evUMlbbq-BbJDdRqK.js +1 -0
- package/dist/assets/index-B-cSF0fq.js +4 -0
- package/dist/assets/{index-B4di3I6o.js.map → index-B-cSF0fq.js.map} +1 -1
- package/dist/assets/{math-B4HbgYf6-DW4In8a5.js → math-B4HbgYf6-CLJIZTjv.js} +2 -2
- package/dist/assets/math-B4HbgYf6-CLJIZTjv.js.map +1 -0
- package/dist/assets/math-B4HbgYf6-CZyvKZtp.css +1 -0
- package/dist/assets/math-DYni7rRl-C6a4BDoN.js +1 -0
- package/dist/assets/piano-BN5Btq91-Cdn8kuW5.js +1 -0
- package/dist/assets/{piano-DF1g6yaX-C9jL6jej.js → piano-DF1g6yaX-AR14jqWm.js} +2 -2
- package/dist/assets/piano-DF1g6yaX-AR14jqWm.js.map +1 -0
- package/dist/assets/piano-DF1g6yaX-BLvDAgl1.css +1 -0
- package/dist/assets/{pitch-CgGJFkZ1-B4qiD-od.js → pitch-CgGJFkZ1-DYkp_AV0.js} +2 -2
- package/dist/assets/{pitch-CgGJFkZ1-B4qiD-od.js.map → pitch-CgGJFkZ1-DYkp_AV0.js.map} +1 -1
- package/dist/assets/pitch-Dn0iNqiS-CJ_97iB4.js +1 -0
- package/dist/assets/{server-RYtUROqF.js → server-Bq50faqp.js} +2 -2
- package/dist/assets/{server-RYtUROqF.js.map → server-Bq50faqp.js.map} +1 -1
- package/dist/assets/{sightsing-BFQ7HRig-gi-f6Gjx.js → sightsing-BFQ7HRig-BNrrORP_.js} +2 -2
- package/dist/assets/sightsing-BFQ7HRig-BNrrORP_.js.map +1 -0
- package/dist/assets/sightsing-BFQ7HRig-DkUGf5Yf.css +1 -0
- package/dist/assets/sightsing-CJX3k0Fd-l4fhB1Aj.js +1 -0
- package/dist/assets/typing-BevtfWlp-B7ZMUAQJ.css +1 -0
- package/dist/assets/{typing-BevtfWlp-a9gMsGkx.js → typing-BevtfWlp-Cl6jtRmX.js} +2 -2
- package/dist/assets/typing-BevtfWlp-Cl6jtRmX.js.map +1 -0
- package/dist/assets/typing-k-ojjO7G-CHgxm7Rx.js +1 -0
- package/dist/assets/{word-work-BOnRlZgd-DhZkqecP.js → word-work-BOnRlZgd-CGV2xRx9.js} +2 -2
- package/dist/assets/{word-work-BOnRlZgd-DhZkqecP.js.map → word-work-BOnRlZgd-CGV2xRx9.js.map} +1 -1
- package/dist/assets/word-work-Dd6tIKrt-BjF3-3lq.js +1 -0
- package/dist/index.html +3 -3
- package/dist/sw.js +1 -1
- package/dist/sw.js.map +1 -1
- package/package.json +7 -7
- package/src/dev/Playtest.vue +254 -0
- package/dist/assets/AdminDashboard-DO3Mo6_x.js +0 -2
- package/dist/assets/EloModeration-B8hFSqwy.js +0 -2
- package/dist/assets/Study-DYkoX3oR.js +0 -2
- package/dist/assets/TagInformation-PbQDPmpb.js +0 -2
- package/dist/assets/chess-BbHATAzk-DOhLaMTg.js.map +0 -1
- package/dist/assets/chess-X1bmWmh3-C3HyTLIE.js +0 -1
- package/dist/assets/common-ui.es-BmXCkW19.js +0 -1
- package/dist/assets/dist-DKtzwGWn.js.map +0 -1
- package/dist/assets/dist-Daq3OiEc.js.map +0 -1
- package/dist/assets/dist-EH1RSdAN.js +0 -1
- package/dist/assets/dist-huY4PEit.js +0 -1
- package/dist/assets/edit-ui.es-C6Itr3tP.js +0 -1
- package/dist/assets/french-evUMlbbq-D88z2AaV.js +0 -1
- package/dist/assets/index-B4di3I6o.js +0 -4
- package/dist/assets/math-B4HbgYf6-DW4In8a5.js.map +0 -1
- package/dist/assets/math-DYni7rRl-BLRdDTmX.js +0 -1
- package/dist/assets/piano-BN5Btq91-D1ljSgCc.js +0 -1
- package/dist/assets/piano-DF1g6yaX-C9jL6jej.js.map +0 -1
- package/dist/assets/pitch-Dn0iNqiS-Vbm_Ue9p.js +0 -1
- package/dist/assets/sightsing-BFQ7HRig-gi-f6Gjx.js.map +0 -1
- package/dist/assets/sightsing-CJX3k0Fd-CLDxoSv_.js +0 -1
- package/dist/assets/typing-BevtfWlp-a9gMsGkx.js.map +0 -1
- package/dist/assets/typing-k-ojjO7G-CHVzRXi1.js +0 -1
- package/dist/assets/word-work-Dd6tIKrt-CVY1zayr.js +0 -1
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"piano-DF1g6yaX-AR14jqWm.js","names":["t","n","e","k","T","p","v","o","g","_","l","a","y","r","b","u","f","S","d","m","ee","E","A","w","h","x","c","s","O","C","D","i"],"sources":["../../../courseware/dist/piano-DF1g6yaX.js"],"sourcesContent":["import { a as e, n as t, r as n } from \"./shapes-BQUVJdp5.js\";\nimport { r, t as i } from \"./CourseWare-BTFRjgBR.js\";\nimport { Fragment as a, computed as o, createBlock as s, createCommentVNode as c, createElementBlock as l, createElementVNode as u, createTextVNode as d, createVNode as f, defineComponent as p, normalizeStyle as m, onBeforeUnmount as h, onMounted as g, openBlock as _, ref as v, renderList as y, resolveComponent as b, toDisplayString as x, withCtx as S } from \"vue\";\nimport { Question as C, SkldrMouseTrap as w, alertUser as T, useQuestionView as E, useViewable as ee } from \"@vue-skuilder/common-ui\";\nimport { DataShapeName as D, FieldType as O, Status as k } from \"@vue-skuilder/common\";\nimport A from \"moment\";\nimport './assets/piano.css';//#region ../../node_modules/webmidi/webmidi.min.js\nvar te = /* @__PURE__ */ t(((e, t) => {\n\t(function(e) {\n\t\tfunction WebMidi() {\n\t\t\tif (WebMidi.prototype._singleton) throw Error(\"WebMidi is a singleton, it cannot be instantiated directly.\");\n\t\t\t(WebMidi.prototype._singleton = this)._inputs = [], this._outputs = [], this._userHandlers = {}, this._stateChangeQueue = [], this._processingStateChange = !1, this._midiInterfaceEvents = [\"connected\", \"disconnected\"], this._nrpnBuffer = [\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[],\n\t\t\t\t[]\n\t\t\t], this._nrpnEventsEnabled = !0, this._nrpnTypes = [\n\t\t\t\t\"entry\",\n\t\t\t\t\"increment\",\n\t\t\t\t\"decrement\"\n\t\t\t], this._notes = [\n\t\t\t\t\"C\",\n\t\t\t\t\"C#\",\n\t\t\t\t\"D\",\n\t\t\t\t\"D#\",\n\t\t\t\t\"E\",\n\t\t\t\t\"F\",\n\t\t\t\t\"F#\",\n\t\t\t\t\"G\",\n\t\t\t\t\"G#\",\n\t\t\t\t\"A\",\n\t\t\t\t\"A#\",\n\t\t\t\t\"B\"\n\t\t\t], this._semitones = {\n\t\t\t\tC: 0,\n\t\t\t\tD: 2,\n\t\t\t\tE: 4,\n\t\t\t\tF: 5,\n\t\t\t\tG: 7,\n\t\t\t\tA: 9,\n\t\t\t\tB: 11\n\t\t\t}, Object.defineProperties(this, {\n\t\t\t\tMIDI_SYSTEM_MESSAGES: {\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tsysex: 240,\n\t\t\t\t\t\ttimecode: 241,\n\t\t\t\t\t\tsongposition: 242,\n\t\t\t\t\t\tsongselect: 243,\n\t\t\t\t\t\ttuningrequest: 246,\n\t\t\t\t\t\tsysexend: 247,\n\t\t\t\t\t\tclock: 248,\n\t\t\t\t\t\tstart: 250,\n\t\t\t\t\t\tcontinue: 251,\n\t\t\t\t\t\tstop: 252,\n\t\t\t\t\t\tactivesensing: 254,\n\t\t\t\t\t\treset: 255,\n\t\t\t\t\t\tmidimessage: 0,\n\t\t\t\t\t\tunknownsystemmessage: -1\n\t\t\t\t\t},\n\t\t\t\t\twritable: !1,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t},\n\t\t\t\tMIDI_CHANNEL_MESSAGES: {\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tnoteoff: 8,\n\t\t\t\t\t\tnoteon: 9,\n\t\t\t\t\t\tkeyaftertouch: 10,\n\t\t\t\t\t\tcontrolchange: 11,\n\t\t\t\t\t\tchannelmode: 11,\n\t\t\t\t\t\tnrpn: 11,\n\t\t\t\t\t\tprogramchange: 12,\n\t\t\t\t\t\tchannelaftertouch: 13,\n\t\t\t\t\t\tpitchbend: 14\n\t\t\t\t\t},\n\t\t\t\t\twritable: !1,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t},\n\t\t\t\tMIDI_REGISTERED_PARAMETER: {\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tpitchbendrange: [0, 0],\n\t\t\t\t\t\tchannelfinetuning: [0, 1],\n\t\t\t\t\t\tchannelcoarsetuning: [0, 2],\n\t\t\t\t\t\ttuningprogram: [0, 3],\n\t\t\t\t\t\ttuningbank: [0, 4],\n\t\t\t\t\t\tmodulationrange: [0, 5],\n\t\t\t\t\t\tazimuthangle: [61, 0],\n\t\t\t\t\t\televationangle: [61, 1],\n\t\t\t\t\t\tgain: [61, 2],\n\t\t\t\t\t\tdistanceratio: [61, 3],\n\t\t\t\t\t\tmaximumdistance: [61, 4],\n\t\t\t\t\t\tmaximumdistancegain: [61, 5],\n\t\t\t\t\t\treferencedistanceratio: [61, 6],\n\t\t\t\t\t\tpanspreadangle: [61, 7],\n\t\t\t\t\t\trollangle: [61, 8]\n\t\t\t\t\t},\n\t\t\t\t\twritable: !1,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t},\n\t\t\t\tMIDI_CONTROL_CHANGE_MESSAGES: {\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tbankselectcoarse: 0,\n\t\t\t\t\t\tmodulationwheelcoarse: 1,\n\t\t\t\t\t\tbreathcontrollercoarse: 2,\n\t\t\t\t\t\tfootcontrollercoarse: 4,\n\t\t\t\t\t\tportamentotimecoarse: 5,\n\t\t\t\t\t\tdataentrycoarse: 6,\n\t\t\t\t\t\tvolumecoarse: 7,\n\t\t\t\t\t\tbalancecoarse: 8,\n\t\t\t\t\t\tpancoarse: 10,\n\t\t\t\t\t\texpressioncoarse: 11,\n\t\t\t\t\t\teffectcontrol1coarse: 12,\n\t\t\t\t\t\teffectcontrol2coarse: 13,\n\t\t\t\t\t\tgeneralpurposeslider1: 16,\n\t\t\t\t\t\tgeneralpurposeslider2: 17,\n\t\t\t\t\t\tgeneralpurposeslider3: 18,\n\t\t\t\t\t\tgeneralpurposeslider4: 19,\n\t\t\t\t\t\tbankselectfine: 32,\n\t\t\t\t\t\tmodulationwheelfine: 33,\n\t\t\t\t\t\tbreathcontrollerfine: 34,\n\t\t\t\t\t\tfootcontrollerfine: 36,\n\t\t\t\t\t\tportamentotimefine: 37,\n\t\t\t\t\t\tdataentryfine: 38,\n\t\t\t\t\t\tvolumefine: 39,\n\t\t\t\t\t\tbalancefine: 40,\n\t\t\t\t\t\tpanfine: 42,\n\t\t\t\t\t\texpressionfine: 43,\n\t\t\t\t\t\teffectcontrol1fine: 44,\n\t\t\t\t\t\teffectcontrol2fine: 45,\n\t\t\t\t\t\tholdpedal: 64,\n\t\t\t\t\t\tportamento: 65,\n\t\t\t\t\t\tsustenutopedal: 66,\n\t\t\t\t\t\tsoftpedal: 67,\n\t\t\t\t\t\tlegatopedal: 68,\n\t\t\t\t\t\thold2pedal: 69,\n\t\t\t\t\t\tsoundvariation: 70,\n\t\t\t\t\t\tresonance: 71,\n\t\t\t\t\t\tsoundreleasetime: 72,\n\t\t\t\t\t\tsoundattacktime: 73,\n\t\t\t\t\t\tbrightness: 74,\n\t\t\t\t\t\tsoundcontrol6: 75,\n\t\t\t\t\t\tsoundcontrol7: 76,\n\t\t\t\t\t\tsoundcontrol8: 77,\n\t\t\t\t\t\tsoundcontrol9: 78,\n\t\t\t\t\t\tsoundcontrol10: 79,\n\t\t\t\t\t\tgeneralpurposebutton1: 80,\n\t\t\t\t\t\tgeneralpurposebutton2: 81,\n\t\t\t\t\t\tgeneralpurposebutton3: 82,\n\t\t\t\t\t\tgeneralpurposebutton4: 83,\n\t\t\t\t\t\treverblevel: 91,\n\t\t\t\t\t\ttremololevel: 92,\n\t\t\t\t\t\tchoruslevel: 93,\n\t\t\t\t\t\tcelestelevel: 94,\n\t\t\t\t\t\tphaserlevel: 95,\n\t\t\t\t\t\tdatabuttonincrement: 96,\n\t\t\t\t\t\tdatabuttondecrement: 97,\n\t\t\t\t\t\tnonregisteredparametercoarse: 98,\n\t\t\t\t\t\tnonregisteredparameterfine: 99,\n\t\t\t\t\t\tregisteredparametercoarse: 100,\n\t\t\t\t\t\tregisteredparameterfine: 101\n\t\t\t\t\t},\n\t\t\t\t\twritable: !1,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t},\n\t\t\t\tMIDI_NRPN_MESSAGES: {\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tentrymsb: 6,\n\t\t\t\t\t\tentrylsb: 38,\n\t\t\t\t\t\tincrement: 96,\n\t\t\t\t\t\tdecrement: 97,\n\t\t\t\t\t\tparamlsb: 98,\n\t\t\t\t\t\tparammsb: 99,\n\t\t\t\t\t\tnullactiveparameter: 127\n\t\t\t\t\t},\n\t\t\t\t\twritable: !1,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t},\n\t\t\t\tMIDI_CHANNEL_MODE_MESSAGES: {\n\t\t\t\t\tvalue: {\n\t\t\t\t\t\tallsoundoff: 120,\n\t\t\t\t\t\tresetallcontrollers: 121,\n\t\t\t\t\t\tlocalcontrol: 122,\n\t\t\t\t\t\tallnotesoff: 123,\n\t\t\t\t\t\tomnimodeoff: 124,\n\t\t\t\t\t\tomnimodeon: 125,\n\t\t\t\t\t\tmonomodeon: 126,\n\t\t\t\t\t\tpolymodeon: 127\n\t\t\t\t\t},\n\t\t\t\t\twritable: !1,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t},\n\t\t\t\toctaveOffset: {\n\t\t\t\t\tvalue: 0,\n\t\t\t\t\twritable: !0,\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tconfigurable: !1\n\t\t\t\t}\n\t\t\t}), Object.defineProperties(this, {\n\t\t\t\tsupported: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn \"requestMIDIAccess\" in navigator;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tenabled: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn this.interface !== void 0;\n\t\t\t\t\t}.bind(this)\n\t\t\t\t},\n\t\t\t\tinputs: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn this._inputs;\n\t\t\t\t\t}.bind(this)\n\t\t\t\t},\n\t\t\t\toutputs: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn this._outputs;\n\t\t\t\t\t}.bind(this)\n\t\t\t\t},\n\t\t\t\tsysexEnabled: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn !(!this.interface || !this.interface.sysexEnabled);\n\t\t\t\t\t}.bind(this)\n\t\t\t\t},\n\t\t\t\tnrpnEventsEnabled: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn !!this._nrpnEventsEnabled;\n\t\t\t\t\t}.bind(this),\n\t\t\t\t\tset: function(e) {\n\t\t\t\t\t\treturn this._nrpnEventsEnabled = e, this._nrpnEventsEnabled;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tnrpnTypes: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn this._nrpnTypes;\n\t\t\t\t\t}.bind(this)\n\t\t\t\t},\n\t\t\t\ttime: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn performance.now();\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\tvar n = new WebMidi();\n\t\tfunction Input(e) {\n\t\t\tvar t = this;\n\t\t\tthis._userHandlers = {\n\t\t\t\tchannel: {},\n\t\t\t\tsystem: {}\n\t\t\t}, this._midiInput = e, Object.defineProperties(this, {\n\t\t\t\tconnection: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiInput.connection;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiInput.id;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tmanufacturer: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiInput.manufacturer;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tname: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiInput.name;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tstate: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiInput.state;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttype: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiInput.type;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t}), this._initializeUserHandlers(), this._midiInput.onmidimessage = this._onMidiMessage.bind(this);\n\t\t}\n\t\tfunction Output(e) {\n\t\t\tvar t = this;\n\t\t\tthis._midiOutput = e, Object.defineProperties(this, {\n\t\t\t\tconnection: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiOutput.connection;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tid: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiOutput.id;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tmanufacturer: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiOutput.manufacturer;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tname: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiOutput.name;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\tstate: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiOutput.state;\n\t\t\t\t\t}\n\t\t\t\t},\n\t\t\t\ttype: {\n\t\t\t\t\tenumerable: !0,\n\t\t\t\t\tget: function() {\n\t\t\t\t\t\treturn t._midiOutput.type;\n\t\t\t\t\t}\n\t\t\t\t}\n\t\t\t});\n\t\t}\n\t\tWebMidi.prototype.enable = function(e, t) {\n\t\t\tthis.enabled || (this.supported ? navigator.requestMIDIAccess({ sysex: t }).then(function(t) {\n\t\t\t\tvar n, r = [], i = [];\n\t\t\t\tthis.interface = t, this._resetInterfaceUserHandlers(), this.interface.onstatechange = function(e) {\n\t\t\t\t\tr.push(e);\n\t\t\t\t};\n\t\t\t\tfor (var a = t.inputs.values(), o = a.next(); o && !o.done; o = a.next()) i.push(o.value.open());\n\t\t\t\tfor (var s = t.outputs.values(), c = s.next(); c && !c.done; c = s.next()) i.push(c.value.open());\n\t\t\t\tfunction onPortsOpen() {\n\t\t\t\t\tclearTimeout(n), this._updateInputsAndOutputs(), this.interface.onstatechange = this._onInterfaceStateChange.bind(this), typeof e == \"function\" && e.call(this), r.forEach(function(e) {\n\t\t\t\t\t\tthis._onInterfaceStateChange(e);\n\t\t\t\t\t}.bind(this));\n\t\t\t\t}\n\t\t\t\tn = setTimeout(onPortsOpen.bind(this), 200), Promise && Promise.all(i).catch(function(e) {}).then(onPortsOpen.bind(this));\n\t\t\t}.bind(this), function(t) {\n\t\t\t\ttypeof e == \"function\" && e.call(this, t);\n\t\t\t}.bind(this)) : typeof e == \"function\" && e(/* @__PURE__ */ Error(\"The Web MIDI API is not supported by your browser.\")));\n\t\t}, WebMidi.prototype.disable = function() {\n\t\t\tif (!this.supported) throw Error(\"The Web MIDI API is not supported by your browser.\");\n\t\t\tthis.enabled && (this.removeListener(), this.inputs.forEach(function(e) {\n\t\t\t\te.removeListener();\n\t\t\t})), this.interface && (this.interface.onstatechange = void 0), this.interface = void 0, this._inputs = [], this._outputs = [], this._nrpnEventsEnabled = !0, this._resetInterfaceUserHandlers();\n\t\t}, WebMidi.prototype.addListener = function(e, t) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi must be enabled before adding event listeners.\");\n\t\t\tif (typeof t != \"function\") throw TypeError(\"The 'listener' parameter must be a function.\");\n\t\t\tif (!(0 <= this._midiInterfaceEvents.indexOf(e))) throw TypeError(\"The specified event type is not supported.\");\n\t\t\treturn this._userHandlers[e].push(t), this;\n\t\t}, WebMidi.prototype.hasListener = function(e, t) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi must be enabled before checking event listeners.\");\n\t\t\tif (typeof t != \"function\") throw TypeError(\"The 'listener' parameter must be a function.\");\n\t\t\tif (!(0 <= this._midiInterfaceEvents.indexOf(e))) throw TypeError(\"The specified event type is not supported.\");\n\t\t\tfor (var n = 0; n < this._userHandlers[e].length; n++) if (this._userHandlers[e][n] === t) return !0;\n\t\t\treturn !1;\n\t\t}, WebMidi.prototype.removeListener = function(e, t) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi must be enabled before removing event listeners.\");\n\t\t\tif (t !== void 0 && typeof t != \"function\") throw TypeError(\"The 'listener' parameter must be a function.\");\n\t\t\tif (0 <= this._midiInterfaceEvents.indexOf(e)) if (t) for (var n = 0; n < this._userHandlers[e].length; n++) this._userHandlers[e][n] === t && this._userHandlers[e].splice(n, 1);\n\t\t\telse this._userHandlers[e] = [];\n\t\t\telse {\n\t\t\t\tif (e !== void 0) throw TypeError(\"The specified event type is not supported.\");\n\t\t\t\tthis._resetInterfaceUserHandlers();\n\t\t\t}\n\t\t\treturn this;\n\t\t}, WebMidi.prototype.toMIDIChannels = function(e) {\n\t\t\tvar t;\n\t\t\tif (e === \"all\" || e === void 0) t = [\"all\"];\n\t\t\telse {\n\t\t\t\tif (e === \"none\") return t = [];\n\t\t\t\tt = Array.isArray(e) ? e : [e];\n\t\t\t}\n\t\t\treturn -1 < t.indexOf(\"all\") && (t = [\n\t\t\t\t1,\n\t\t\t\t2,\n\t\t\t\t3,\n\t\t\t\t4,\n\t\t\t\t5,\n\t\t\t\t6,\n\t\t\t\t7,\n\t\t\t\t8,\n\t\t\t\t9,\n\t\t\t\t10,\n\t\t\t\t11,\n\t\t\t\t12,\n\t\t\t\t13,\n\t\t\t\t14,\n\t\t\t\t15,\n\t\t\t\t16\n\t\t\t]), t.map(function(e) {\n\t\t\t\treturn parseInt(e);\n\t\t\t}).filter(function(e) {\n\t\t\t\treturn 1 <= e && e <= 16;\n\t\t\t});\n\t\t}, WebMidi.prototype.getInputById = function(e) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi is not enabled.\");\n\t\t\te = String(e);\n\t\t\tfor (var t = 0; t < this.inputs.length; t++) if (this.inputs[t].id === e) return this.inputs[t];\n\t\t\treturn !1;\n\t\t}, WebMidi.prototype.getOutputById = function(e) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi is not enabled.\");\n\t\t\te = String(e);\n\t\t\tfor (var t = 0; t < this.outputs.length; t++) if (this.outputs[t].id === e) return this.outputs[t];\n\t\t\treturn !1;\n\t\t}, WebMidi.prototype.getInputByName = function(e) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi is not enabled.\");\n\t\t\tfor (var t = 0; t < this.inputs.length; t++) if (~this.inputs[t].name.indexOf(e)) return this.inputs[t];\n\t\t\treturn !1;\n\t\t}, WebMidi.prototype.getOctave = function(e) {\n\t\t\tif (e != null && 0 <= e && e <= 127) return Math.floor(Math.floor(e) / 12 - 1) + Math.floor(n.octaveOffset);\n\t\t}, WebMidi.prototype.getOutputByName = function(e) {\n\t\t\tif (!this.enabled) throw Error(\"WebMidi is not enabled.\");\n\t\t\tfor (var t = 0; t < this.outputs.length; t++) if (~this.outputs[t].name.indexOf(e)) return this.outputs[t];\n\t\t\treturn !1;\n\t\t}, WebMidi.prototype.guessNoteNumber = function(e) {\n\t\t\tvar t = !1;\n\t\t\tif (e && e.toFixed && 0 <= e && e <= 127 ? t = Math.round(e) : 0 <= parseInt(e) && parseInt(e) <= 127 ? t = parseInt(e) : (typeof e == \"string\" || e instanceof String) && (t = this.noteNameToNumber(e)), !1 === t) throw Error(\"Invalid input value (\" + e + \").\");\n\t\t\treturn t;\n\t\t}, WebMidi.prototype.noteNameToNumber = function(e) {\n\t\t\ttypeof e != \"string\" && (e = \"\");\n\t\t\tvar t = e.match(/([CDEFGAB])(#{0,2}|b{0,2})(-?\\d+)/i);\n\t\t\tif (!t) throw RangeError(\"Invalid note name.\");\n\t\t\tvar r = n._semitones[t[1].toUpperCase()], i = 12 * (parseInt(t[3]) + 1 - Math.floor(n.octaveOffset)) + r;\n\t\t\tif (-1 < t[2].toLowerCase().indexOf(\"b\") ? i -= t[2].length : -1 < t[2].toLowerCase().indexOf(\"#\") && (i += t[2].length), i < 0 || 127 < i) throw RangeError(\"Invalid note name or note outside valid range.\");\n\t\t\treturn i;\n\t\t}, WebMidi.prototype._updateInputsAndOutputs = function() {\n\t\t\tthis._updateInputs(), this._updateOutputs();\n\t\t}, WebMidi.prototype._updateInputs = function() {\n\t\t\tfor (var e = 0; e < this._inputs.length; e++) {\n\t\t\t\tfor (var t = !0, n = this.interface.inputs.values(), r = n.next(); r && !r.done; r = n.next()) if (this._inputs[e]._midiInput === r.value) {\n\t\t\t\t\tt = !1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tt && this._inputs.splice(e, 1);\n\t\t\t}\n\t\t\tthis.interface && this.interface.inputs.forEach(function(e) {\n\t\t\t\tfor (var t = !0, n = 0; n < this._inputs.length; n++) this._inputs[n]._midiInput === e && (t = !1);\n\t\t\t\tt && this._inputs.push(new Input(e));\n\t\t\t}.bind(this));\n\t\t}, WebMidi.prototype._updateOutputs = function() {\n\t\t\tfor (var e = 0; e < this._outputs.length; e++) {\n\t\t\t\tfor (var t = !0, n = this.interface.outputs.values(), r = n.next(); r && !r.done; r = n.next()) if (this._outputs[e]._midiOutput === r.value) {\n\t\t\t\t\tt = !1;\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t\tt && this._outputs.splice(e, 1);\n\t\t\t}\n\t\t\tthis.interface && this.interface.outputs.forEach(function(e) {\n\t\t\t\tfor (var t = !0, n = 0; n < this._outputs.length; n++) this._outputs[n]._midiOutput === e && (t = !1);\n\t\t\t\tt && this._outputs.push(new Output(e));\n\t\t\t}.bind(this));\n\t\t}, WebMidi.prototype._onInterfaceStateChange = function(e) {\n\t\t\tthis._updateInputsAndOutputs();\n\t\t\tvar t = {\n\t\t\t\ttimestamp: e.timeStamp,\n\t\t\t\ttype: e.port.state\n\t\t\t};\n\t\t\tthis.interface && e.port.state === \"connected\" ? e.port.type === \"output\" ? t.port = this.getOutputById(e.port.id) : e.port.type === \"input\" && (t.port = this.getInputById(e.port.id)) : t.port = {\n\t\t\t\tconnection: \"closed\",\n\t\t\t\tid: e.port.id,\n\t\t\t\tmanufacturer: e.port.manufacturer,\n\t\t\t\tname: e.port.name,\n\t\t\t\tstate: e.port.state,\n\t\t\t\ttype: e.port.type\n\t\t\t}, this._userHandlers[e.port.state].forEach(function(e) {\n\t\t\t\te(t);\n\t\t\t});\n\t\t}, WebMidi.prototype._resetInterfaceUserHandlers = function() {\n\t\t\tfor (var e = 0; e < this._midiInterfaceEvents.length; e++) this._userHandlers[this._midiInterfaceEvents[e]] = [];\n\t\t}, Input.prototype.on = Input.prototype.addListener = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (t === void 0 && (t = \"all\"), Array.isArray(t) || (t = [t]), t.forEach(function(e) {\n\t\t\t\tif (e !== \"all\" && !(1 <= e && e <= 16)) throw RangeError(\"The 'channel' parameter is invalid.\");\n\t\t\t}), typeof r != \"function\") throw TypeError(\"The 'listener' parameter must be a function.\");\n\t\t\tif (n.MIDI_SYSTEM_MESSAGES[e] !== void 0) this._userHandlers.system[e] || (this._userHandlers.system[e] = []), this._userHandlers.system[e].push(r);\n\t\t\telse {\n\t\t\t\tif (n.MIDI_CHANNEL_MESSAGES[e] === void 0) throw TypeError(\"The specified event type is not supported.\");\n\t\t\t\tif (-1 < t.indexOf(\"all\")) {\n\t\t\t\t\tt = [];\n\t\t\t\t\tfor (var a = 1; a <= 16; a++) t.push(a);\n\t\t\t\t}\n\t\t\t\tthis._userHandlers.channel[e] || (this._userHandlers.channel[e] = []), t.forEach(function(t) {\n\t\t\t\t\ti._userHandlers.channel[e][t] || (i._userHandlers.channel[e][t] = []), i._userHandlers.channel[e][t].push(r);\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn this;\n\t\t}, Input.prototype.hasListener = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (typeof r != \"function\") throw TypeError(\"The 'listener' parameter must be a function.\");\n\t\t\tif (t === void 0 && (t = \"all\"), t.constructor !== Array && (t = [t]), n.MIDI_SYSTEM_MESSAGES[e] !== void 0) {\n\t\t\t\tfor (var a = 0; a < this._userHandlers.system[e].length; a++) if (this._userHandlers.system[e][a] === r) return !0;\n\t\t\t} else if (n.MIDI_CHANNEL_MESSAGES[e] !== void 0) {\n\t\t\t\tif (-1 < t.indexOf(\"all\")) {\n\t\t\t\t\tt = [];\n\t\t\t\t\tfor (var o = 1; o <= 16; o++) t.push(o);\n\t\t\t\t}\n\t\t\t\treturn !!this._userHandlers.channel[e] && t.every(function(t) {\n\t\t\t\t\tvar n = i._userHandlers.channel[e][t];\n\t\t\t\t\treturn n && -1 < n.indexOf(r);\n\t\t\t\t});\n\t\t\t}\n\t\t\treturn !1;\n\t\t}, Input.prototype.removeListener = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r !== void 0 && typeof r != \"function\") throw TypeError(\"The 'listener' parameter must be a function.\");\n\t\t\tif (t === void 0 && (t = \"all\"), t.constructor !== Array && (t = [t]), n.MIDI_SYSTEM_MESSAGES[e] !== void 0) if (r === void 0) this._userHandlers.system[e] = [];\n\t\t\telse for (var a = 0; a < this._userHandlers.system[e].length; a++) this._userHandlers.system[e][a] === r && this._userHandlers.system[e].splice(a, 1);\n\t\t\telse if (n.MIDI_CHANNEL_MESSAGES[e] !== void 0) {\n\t\t\t\tif (-1 < t.indexOf(\"all\")) {\n\t\t\t\t\tt = [];\n\t\t\t\t\tfor (var o = 1; o <= 16; o++) t.push(o);\n\t\t\t\t}\n\t\t\t\tif (!this._userHandlers.channel[e]) return this;\n\t\t\t\tt.forEach(function(t) {\n\t\t\t\t\tvar n = i._userHandlers.channel[e][t];\n\t\t\t\t\tif (n) if (r === void 0) i._userHandlers.channel[e][t] = [];\n\t\t\t\t\telse for (var a = 0; a < n.length; a++) n[a] === r && n.splice(a, 1);\n\t\t\t\t});\n\t\t\t} else {\n\t\t\t\tif (e !== void 0) throw TypeError(\"The specified event type is not supported.\");\n\t\t\t\tthis._initializeUserHandlers();\n\t\t\t}\n\t\t\treturn this;\n\t\t}, Input.prototype._initializeUserHandlers = function() {\n\t\t\tfor (var e in n.MIDI_CHANNEL_MESSAGES) Object.prototype.hasOwnProperty.call(n.MIDI_CHANNEL_MESSAGES, e) && (this._userHandlers.channel[e] = {});\n\t\t\tfor (var t in n.MIDI_SYSTEM_MESSAGES) Object.prototype.hasOwnProperty.call(n.MIDI_SYSTEM_MESSAGES, t) && (this._userHandlers.system[t] = []);\n\t\t}, Input.prototype._onMidiMessage = function(e) {\n\t\t\tif (0 < this._userHandlers.system.midimessage.length) {\n\t\t\t\tvar t = {\n\t\t\t\t\ttarget: this,\n\t\t\t\t\tdata: e.data,\n\t\t\t\t\ttimestamp: e.timeStamp,\n\t\t\t\t\ttype: \"midimessage\"\n\t\t\t\t};\n\t\t\t\tthis._userHandlers.system.midimessage.forEach(function(e) {\n\t\t\t\t\te(t);\n\t\t\t\t});\n\t\t\t}\n\t\t\te.data[0] < 240 ? (this._parseChannelEvent(e), this._parseNrpnEvent(e)) : e.data[0] <= 255 && this._parseSystemEvent(e);\n\t\t}, Input.prototype._parseNrpnEvent = function(e) {\n\t\t\tvar t, r, i = e.data[0] >> 4, a = 15 & e.data[0], o = 1 + a;\n\t\t\tif (1 < e.data.length && (t = e.data[1], r = 2 < e.data.length ? e.data[2] : void 0), n.nrpnEventsEnabled && i === n.MIDI_CHANNEL_MESSAGES.controlchange && (t >= n.MIDI_NRPN_MESSAGES.increment && t <= n.MIDI_NRPN_MESSAGES.parammsb || t === n.MIDI_NRPN_MESSAGES.entrymsb || t === n.MIDI_NRPN_MESSAGES.entrylsb)) {\n\t\t\t\tvar s = {\n\t\t\t\t\ttarget: this,\n\t\t\t\t\ttype: \"controlchange\",\n\t\t\t\t\tdata: e.data,\n\t\t\t\t\ttimestamp: e.timeStamp,\n\t\t\t\t\tchannel: o,\n\t\t\t\t\tcontroller: {\n\t\t\t\t\t\tnumber: t,\n\t\t\t\t\t\tname: this.getCcNameByNumber(t)\n\t\t\t\t\t},\n\t\t\t\t\tvalue: r\n\t\t\t\t};\n\t\t\t\tif (s.controller.number === n.MIDI_NRPN_MESSAGES.parammsb && s.value != n.MIDI_NRPN_MESSAGES.nullactiveparameter) n._nrpnBuffer[a] = [], n._nrpnBuffer[a][0] = s;\n\t\t\t\telse if (n._nrpnBuffer[a].length === 1 && s.controller.number === n.MIDI_NRPN_MESSAGES.paramlsb) n._nrpnBuffer[a].push(s);\n\t\t\t\telse if (n._nrpnBuffer[a].length !== 2 || s.controller.number !== n.MIDI_NRPN_MESSAGES.increment && s.controller.number !== n.MIDI_NRPN_MESSAGES.decrement && s.controller.number !== n.MIDI_NRPN_MESSAGES.entrymsb) if (n._nrpnBuffer[a].length === 3 && n._nrpnBuffer[a][2].number === n.MIDI_NRPN_MESSAGES.entrymsb && s.controller.number === n.MIDI_NRPN_MESSAGES.entrylsb) n._nrpnBuffer[a].push(s);\n\t\t\t\telse if (3 <= n._nrpnBuffer[a].length && n._nrpnBuffer[a].length <= 4 && s.controller.number === n.MIDI_NRPN_MESSAGES.parammsb && s.value === n.MIDI_NRPN_MESSAGES.nullactiveparameter) n._nrpnBuffer[a].push(s);\n\t\t\t\telse if (4 <= n._nrpnBuffer[a].length && n._nrpnBuffer[a].length <= 5 && s.controller.number === n.MIDI_NRPN_MESSAGES.paramlsb && s.value === n.MIDI_NRPN_MESSAGES.nullactiveparameter) {\n\t\t\t\t\tn._nrpnBuffer[a].push(s);\n\t\t\t\t\tvar c = [];\n\t\t\t\t\tn._nrpnBuffer[a].forEach(function(e) {\n\t\t\t\t\t\tc.push(e.data);\n\t\t\t\t\t});\n\t\t\t\t\tvar l = n._nrpnBuffer[a][0].value << 7 | n._nrpnBuffer[a][1].value, u = n._nrpnBuffer[a][2].value;\n\t\t\t\t\tn._nrpnBuffer[a].length === 6 && (u = n._nrpnBuffer[a][2].value << 7 | n._nrpnBuffer[a][3].value);\n\t\t\t\t\tvar d = \"\";\n\t\t\t\t\tswitch (n._nrpnBuffer[a][2].controller.number) {\n\t\t\t\t\t\tcase n.MIDI_NRPN_MESSAGES.entrymsb:\n\t\t\t\t\t\t\td = n._nrpnTypes[0];\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase n.MIDI_NRPN_MESSAGES.increment:\n\t\t\t\t\t\t\td = n._nrpnTypes[1];\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tcase n.MIDI_NRPN_MESSAGES.decrement:\n\t\t\t\t\t\t\td = n._nrpnTypes[2];\n\t\t\t\t\t\t\tbreak;\n\t\t\t\t\t\tdefault: throw Error(\"The NPRN type was unidentifiable.\");\n\t\t\t\t\t}\n\t\t\t\t\tvar f = {\n\t\t\t\t\t\ttimestamp: s.timestamp,\n\t\t\t\t\t\tchannel: s.channel,\n\t\t\t\t\t\ttype: \"nrpn\",\n\t\t\t\t\t\tdata: c,\n\t\t\t\t\t\tcontroller: {\n\t\t\t\t\t\t\tnumber: l,\n\t\t\t\t\t\t\ttype: d,\n\t\t\t\t\t\t\tname: \"Non-Registered Parameter \" + l\n\t\t\t\t\t\t},\n\t\t\t\t\t\tvalue: u\n\t\t\t\t\t};\n\t\t\t\t\tn._nrpnBuffer[a] = [], this._userHandlers.channel[f.type] && this._userHandlers.channel[f.type][f.channel] && this._userHandlers.channel[f.type][f.channel].forEach(function(e) {\n\t\t\t\t\t\te(f);\n\t\t\t\t\t});\n\t\t\t\t} else n._nrpnBuffer[a] = [];\n\t\t\t\telse n._nrpnBuffer[a].push(s);\n\t\t\t}\n\t\t}, Input.prototype._parseChannelEvent = function(e) {\n\t\t\tvar t, r, i = e.data[0] >> 4, a = 1 + (15 & e.data[0]);\n\t\t\t1 < e.data.length && (t = e.data[1], r = 2 < e.data.length ? e.data[2] : void 0);\n\t\t\tvar o = {\n\t\t\t\ttarget: this,\n\t\t\t\tdata: e.data,\n\t\t\t\ttimestamp: e.timeStamp,\n\t\t\t\tchannel: a\n\t\t\t};\n\t\t\ti === n.MIDI_CHANNEL_MESSAGES.noteoff || i === n.MIDI_CHANNEL_MESSAGES.noteon && r === 0 ? (o.type = \"noteoff\", o.note = {\n\t\t\t\tnumber: t,\n\t\t\t\tname: n._notes[t % 12],\n\t\t\t\toctave: n.getOctave(t)\n\t\t\t}, o.velocity = r / 127, o.rawVelocity = r) : i === n.MIDI_CHANNEL_MESSAGES.noteon ? (o.type = \"noteon\", o.note = {\n\t\t\t\tnumber: t,\n\t\t\t\tname: n._notes[t % 12],\n\t\t\t\toctave: n.getOctave(t)\n\t\t\t}, o.velocity = r / 127, o.rawVelocity = r) : i === n.MIDI_CHANNEL_MESSAGES.keyaftertouch ? (o.type = \"keyaftertouch\", o.note = {\n\t\t\t\tnumber: t,\n\t\t\t\tname: n._notes[t % 12],\n\t\t\t\toctave: n.getOctave(t)\n\t\t\t}, o.value = r / 127) : i === n.MIDI_CHANNEL_MESSAGES.controlchange && 0 <= t && t <= 119 ? (o.type = \"controlchange\", o.controller = {\n\t\t\t\tnumber: t,\n\t\t\t\tname: this.getCcNameByNumber(t)\n\t\t\t}, o.value = r) : i === n.MIDI_CHANNEL_MESSAGES.channelmode && 120 <= t && t <= 127 ? (o.type = \"channelmode\", o.controller = {\n\t\t\t\tnumber: t,\n\t\t\t\tname: this.getChannelModeByNumber(t)\n\t\t\t}, o.value = r) : i === n.MIDI_CHANNEL_MESSAGES.programchange ? (o.type = \"programchange\", o.value = t) : i === n.MIDI_CHANNEL_MESSAGES.channelaftertouch ? (o.type = \"channelaftertouch\", o.value = t / 127) : i === n.MIDI_CHANNEL_MESSAGES.pitchbend ? (o.type = \"pitchbend\", o.value = ((r << 7) + t - 8192) / 8192) : o.type = \"unknownchannelmessage\", this._userHandlers.channel[o.type] && this._userHandlers.channel[o.type][a] && this._userHandlers.channel[o.type][a].forEach(function(e) {\n\t\t\t\te(o);\n\t\t\t});\n\t\t}, Input.prototype.getCcNameByNumber = function(e) {\n\t\t\tif (!(0 <= (e = Math.floor(e)) && e <= 119)) throw RangeError(\"The control change number must be between 0 and 119.\");\n\t\t\tfor (var t in n.MIDI_CONTROL_CHANGE_MESSAGES) if (Object.prototype.hasOwnProperty.call(n.MIDI_CONTROL_CHANGE_MESSAGES, t) && e === n.MIDI_CONTROL_CHANGE_MESSAGES[t]) return t;\n\t\t}, Input.prototype.getChannelModeByNumber = function(e) {\n\t\t\tif (!(120 <= (e = Math.floor(e)) && status <= 127)) throw RangeError(\"The control change number must be between 120 and 127.\");\n\t\t\tfor (var t in n.MIDI_CHANNEL_MODE_MESSAGES) if (Object.prototype.hasOwnProperty.call(n.MIDI_CHANNEL_MODE_MESSAGES, t) && e === n.MIDI_CHANNEL_MODE_MESSAGES[t]) return t;\n\t\t}, Input.prototype._parseSystemEvent = function(e) {\n\t\t\tvar t = e.data[0], r = {\n\t\t\t\ttarget: this,\n\t\t\t\tdata: e.data,\n\t\t\t\ttimestamp: e.timeStamp\n\t\t\t};\n\t\t\tt === n.MIDI_SYSTEM_MESSAGES.sysex ? r.type = \"sysex\" : t === n.MIDI_SYSTEM_MESSAGES.timecode ? r.type = \"timecode\" : t === n.MIDI_SYSTEM_MESSAGES.songposition ? r.type = \"songposition\" : t === n.MIDI_SYSTEM_MESSAGES.songselect ? (r.type = \"songselect\", r.song = e.data[1]) : t === n.MIDI_SYSTEM_MESSAGES.tuningrequest ? r.type = \"tuningrequest\" : t === n.MIDI_SYSTEM_MESSAGES.clock ? r.type = \"clock\" : t === n.MIDI_SYSTEM_MESSAGES.start ? r.type = \"start\" : t === n.MIDI_SYSTEM_MESSAGES.continue ? r.type = \"continue\" : t === n.MIDI_SYSTEM_MESSAGES.stop ? r.type = \"stop\" : t === n.MIDI_SYSTEM_MESSAGES.activesensing ? r.type = \"activesensing\" : t === n.MIDI_SYSTEM_MESSAGES.reset ? r.type = \"reset\" : r.type = \"unknownsystemmessage\", this._userHandlers.system[r.type] && this._userHandlers.system[r.type].forEach(function(e) {\n\t\t\t\te(r);\n\t\t\t});\n\t\t}, Output.prototype.send = function(e, t, n) {\n\t\t\tif (!(128 <= e && e <= 255)) throw RangeError(\"The status byte must be an integer between 128 (0x80) and 255 (0xFF).\");\n\t\t\tt === void 0 && (t = []), Array.isArray(t) || (t = [t]);\n\t\t\tvar r = [];\n\t\t\treturn t.forEach(function(e) {\n\t\t\t\tvar t = Math.floor(e);\n\t\t\t\tif (!(0 <= t && t <= 255)) throw RangeError(\"Data bytes must be integers between 0 (0x00) and 255 (0xFF).\");\n\t\t\t\tr.push(t);\n\t\t\t}), this._midiOutput.send([e].concat(r), parseFloat(n) || 0), this;\n\t\t}, Output.prototype.sendSysex = function(e, t, r) {\n\t\t\tif (!n.sysexEnabled) throw Error(\"Sysex message support must first be activated.\");\n\t\t\treturn r ||= {}, e = [].concat(e), t.forEach(function(e) {\n\t\t\t\tif (e < 0 || 127 < e) throw RangeError(\"The data bytes of a sysex message must be integers between 0 (0x00) and 127 (0x7F).\");\n\t\t\t}), t = e.concat(t, n.MIDI_SYSTEM_MESSAGES.sysexend), this.send(n.MIDI_SYSTEM_MESSAGES.sysex, t, this._parseTimeParameter(r.time)), this;\n\t\t}, Output.prototype.sendTimecodeQuarterFrame = function(e, t) {\n\t\t\treturn t ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.timecode, e, this._parseTimeParameter(t.time)), this;\n\t\t}, Output.prototype.sendSongPosition = function(e, t) {\n\t\t\tt ||= {};\n\t\t\tvar r = (e = Math.floor(e) || 0) >> 7 & 127, i = 127 & e;\n\t\t\treturn this.send(n.MIDI_SYSTEM_MESSAGES.songposition, [r, i], this._parseTimeParameter(t.time)), this;\n\t\t}, Output.prototype.sendSongSelect = function(e, t) {\n\t\t\tif (t ||= {}, !(0 <= (e = Math.floor(e)) && e <= 127)) throw RangeError(\"The song number must be between 0 and 127.\");\n\t\t\treturn this.send(n.MIDI_SYSTEM_MESSAGES.songselect, [e], this._parseTimeParameter(t.time)), this;\n\t\t}, Output.prototype.sendTuningRequest = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.tuningrequest, void 0, this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.sendClock = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.clock, void 0, this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.sendStart = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.start, void 0, this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.sendContinue = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.continue, void 0, this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.sendStop = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.stop, void 0, this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.sendActiveSensing = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.activesensing, [], this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.sendReset = function(e) {\n\t\t\treturn e ||= {}, this.send(n.MIDI_SYSTEM_MESSAGES.reset, void 0, this._parseTimeParameter(e.time)), this;\n\t\t}, Output.prototype.stopNote = function(e, t, r) {\n\t\t\tif (e === \"all\") return this.sendChannelMode(\"allnotesoff\", 0, t, r);\n\t\t\tvar i = 64;\n\t\t\treturn (r ||= {}).rawVelocity ? !isNaN(r.velocity) && 0 <= r.velocity && r.velocity <= 127 && (i = r.velocity) : !isNaN(r.velocity) && 0 <= r.velocity && r.velocity <= 1 && (i = 127 * r.velocity), this._convertNoteToArray(e).forEach(function(e) {\n\t\t\t\tn.toMIDIChannels(t).forEach(function(t) {\n\t\t\t\t\tthis.send((n.MIDI_CHANNEL_MESSAGES.noteoff << 4) + (t - 1), [e, Math.round(i)], this._parseTimeParameter(r.time));\n\t\t\t\t}.bind(this));\n\t\t\t}.bind(this)), this;\n\t\t}, Output.prototype.playNote = function(e, t, r) {\n\t\t\tvar i, a = 64;\n\t\t\tif ((r ||= {}).rawVelocity ? !isNaN(r.velocity) && 0 <= r.velocity && r.velocity <= 127 && (a = r.velocity) : !isNaN(r.velocity) && 0 <= r.velocity && r.velocity <= 1 && (a = 127 * r.velocity), i = this._parseTimeParameter(r.time), this._convertNoteToArray(e).forEach(function(e) {\n\t\t\t\tn.toMIDIChannels(t).forEach(function(t) {\n\t\t\t\t\tthis.send((n.MIDI_CHANNEL_MESSAGES.noteon << 4) + (t - 1), [e, Math.round(a)], i);\n\t\t\t\t}.bind(this));\n\t\t\t}.bind(this)), !isNaN(r.duration)) {\n\t\t\t\tr.duration <= 0 && (r.duration = 0);\n\t\t\t\tvar o = 64;\n\t\t\t\tr.rawVelocity ? !isNaN(r.release) && 0 <= r.release && r.release <= 127 && (o = r.release) : !isNaN(r.release) && 0 <= r.release && r.release <= 1 && (o = 127 * r.release), this._convertNoteToArray(e).forEach(function(e) {\n\t\t\t\t\tn.toMIDIChannels(t).forEach(function(t) {\n\t\t\t\t\t\tthis.send((n.MIDI_CHANNEL_MESSAGES.noteoff << 4) + (t - 1), [e, Math.round(o)], (i || n.time) + r.duration);\n\t\t\t\t\t}.bind(this));\n\t\t\t\t}.bind(this));\n\t\t\t}\n\t\t\treturn this;\n\t\t}, Output.prototype.sendKeyAftertouch = function(e, t, r, i) {\n\t\t\tvar a = this;\n\t\t\tif (i ||= {}, t < 1 || 16 < t) throw RangeError(\"The channel must be between 1 and 16.\");\n\t\t\t(isNaN(r) || r < 0 || 1 < r) && (r = .5);\n\t\t\tvar o = Math.round(127 * r);\n\t\t\treturn this._convertNoteToArray(e).forEach(function(e) {\n\t\t\t\tn.toMIDIChannels(t).forEach(function(t) {\n\t\t\t\t\ta.send((n.MIDI_CHANNEL_MESSAGES.keyaftertouch << 4) + (t - 1), [e, o], a._parseTimeParameter(i.time));\n\t\t\t\t});\n\t\t\t}), this;\n\t\t}, Output.prototype.sendControlChange = function(e, t, r, i) {\n\t\t\tif (i ||= {}, typeof e == \"string\") {\n\t\t\t\tif ((e = n.MIDI_CONTROL_CHANGE_MESSAGES[e]) === void 0) throw TypeError(\"Invalid controller name.\");\n\t\t\t} else if (!(0 <= (e = Math.floor(e)) && e <= 119)) throw RangeError(\"Controller numbers must be between 0 and 119.\");\n\t\t\tif (!(0 <= (t = Math.floor(t) || 0) && t <= 127)) throw RangeError(\"Controller value must be between 0 and 127.\");\n\t\t\treturn n.toMIDIChannels(r).forEach(function(r) {\n\t\t\t\tthis.send((n.MIDI_CHANNEL_MESSAGES.controlchange << 4) + (r - 1), [e, t], this._parseTimeParameter(i.time));\n\t\t\t}.bind(this)), this;\n\t\t}, Output.prototype._selectRegisteredParameter = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (e[0] = Math.floor(e[0]), !(0 <= e[0] && e[0] <= 127)) throw RangeError(\"The control65 value must be between 0 and 127\");\n\t\t\tif (e[1] = Math.floor(e[1]), !(0 <= e[1] && e[1] <= 127)) throw RangeError(\"The control64 value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.sendControlChange(101, e[0], t, { time: r }), i.sendControlChange(100, e[1], t, { time: r });\n\t\t\t}), this;\n\t\t}, Output.prototype._selectNonRegisteredParameter = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (e[0] = Math.floor(e[0]), !(0 <= e[0] && e[0] <= 127)) throw RangeError(\"The control63 value must be between 0 and 127\");\n\t\t\tif (e[1] = Math.floor(e[1]), !(0 <= e[1] && e[1] <= 127)) throw RangeError(\"The control62 value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.sendControlChange(99, e[0], t, { time: r }), i.sendControlChange(98, e[1], t, { time: r });\n\t\t\t}), this;\n\t\t}, Output.prototype._setCurrentRegisteredParameter = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif ((e = [].concat(e))[0] = Math.floor(e[0]), !(0 <= e[0] && e[0] <= 127)) throw RangeError(\"The msb value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.sendControlChange(6, e[0], t, { time: r });\n\t\t\t}), e[1] = Math.floor(e[1]), 0 <= e[1] && e[1] <= 127 && n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.sendControlChange(38, e[1], t, { time: r });\n\t\t\t}), this;\n\t\t}, Output.prototype._deselectRegisteredParameter = function(e, t) {\n\t\t\tvar r = this;\n\t\t\treturn n.toMIDIChannels(e).forEach(function() {\n\t\t\t\tr.sendControlChange(101, 127, e, { time: t }), r.sendControlChange(100, 127, e, { time: t });\n\t\t\t}), this;\n\t\t}, Output.prototype.setRegisteredParameter = function(e, t, r, i) {\n\t\t\tvar a = this;\n\t\t\tif (i ||= {}, !Array.isArray(e)) {\n\t\t\t\tif (!n.MIDI_REGISTERED_PARAMETER[e]) throw Error(\"The specified parameter is not available.\");\n\t\t\t\te = n.MIDI_REGISTERED_PARAMETER[e];\n\t\t\t}\n\t\t\treturn n.toMIDIChannels(r).forEach(function() {\n\t\t\t\ta._selectRegisteredParameter(e, r, i.time), a._setCurrentRegisteredParameter(t, r, i.time), a._deselectRegisteredParameter(r, i.time);\n\t\t\t}), this;\n\t\t}, Output.prototype.setNonRegisteredParameter = function(e, t, r, i) {\n\t\t\tvar a = this;\n\t\t\tif (i ||= {}, !(0 <= e[0] && e[0] <= 127 && 0 <= e[1] && e[1] <= 127)) throw Error(\"Position 0 and 1 of the 2-position parameter array must both be between 0 and 127.\");\n\t\t\treturn t = [].concat(t), n.toMIDIChannels(r).forEach(function() {\n\t\t\t\ta._selectNonRegisteredParameter(e, r, i.time), a._setCurrentRegisteredParameter(t, r, i.time), a._deselectRegisteredParameter(r, i.time);\n\t\t\t}), this;\n\t\t}, Output.prototype.incrementRegisteredParameter = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r ||= {}, !Array.isArray(e)) {\n\t\t\t\tif (!n.MIDI_REGISTERED_PARAMETER[e]) throw Error(\"The specified parameter is not available.\");\n\t\t\t\te = n.MIDI_REGISTERED_PARAMETER[e];\n\t\t\t}\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti._selectRegisteredParameter(e, t, r.time), i.sendControlChange(96, 0, t, { time: r.time }), i._deselectRegisteredParameter(t, r.time);\n\t\t\t}), this;\n\t\t}, Output.prototype.decrementRegisteredParameter = function(e, t, r) {\n\t\t\tif (r ||= {}, !Array.isArray(e)) {\n\t\t\t\tif (!n.MIDI_REGISTERED_PARAMETER[e]) throw TypeError(\"The specified parameter is not available.\");\n\t\t\t\te = n.MIDI_REGISTERED_PARAMETER[e];\n\t\t\t}\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\tthis._selectRegisteredParameter(e, t, r.time), this.sendControlChange(97, 0, t, { time: r.time }), this._deselectRegisteredParameter(t, r.time);\n\t\t\t}.bind(this)), this;\n\t\t}, Output.prototype.setPitchBendRange = function(e, t, r, i) {\n\t\t\tvar a = this;\n\t\t\tif (i ||= {}, !(0 <= (e = Math.floor(e) || 0) && e <= 127)) throw RangeError(\"The semitones value must be between 0 and 127\");\n\t\t\tif (!(0 <= (t = Math.floor(t) || 0) && t <= 127)) throw RangeError(\"The cents value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(r).forEach(function() {\n\t\t\t\ta.setRegisteredParameter(\"pitchbendrange\", [e, t], r, { time: i.time });\n\t\t\t}), this;\n\t\t}, Output.prototype.setModulationRange = function(e, t, r, i) {\n\t\t\tvar a = this;\n\t\t\tif (i ||= {}, !(0 <= (e = Math.floor(e) || 0) && e <= 127)) throw RangeError(\"The semitones value must be between 0 and 127\");\n\t\t\tif (!(0 <= (t = Math.floor(t) || 0) && t <= 127)) throw RangeError(\"The cents value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(r).forEach(function() {\n\t\t\t\ta.setRegisteredParameter(\"modulationrange\", [e, t], r, { time: i.time });\n\t\t\t}), this;\n\t\t}, Output.prototype.setMasterTuning = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r ||= {}, (e = parseFloat(e) || 0) <= -65 || 64 <= e) throw RangeError(\"The value must be a decimal number larger than -65 and smaller than 64.\");\n\t\t\tvar a = Math.floor(e) + 64, o = e - Math.floor(e), s = (o = Math.round((o + 1) / 2 * 16383)) >> 7 & 127, c = 127 & o;\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.setRegisteredParameter(\"channelcoarsetuning\", a, t, { time: r.time }), i.setRegisteredParameter(\"channelfinetuning\", [s, c], t, { time: r.time });\n\t\t\t}), this;\n\t\t}, Output.prototype.setTuningProgram = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r ||= {}, !(0 <= (e = Math.floor(e)) && e <= 127)) throw RangeError(\"The program value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.setRegisteredParameter(\"tuningprogram\", e, t, { time: r.time });\n\t\t\t}), this;\n\t\t}, Output.prototype.setTuningBank = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r ||= {}, !(0 <= (e = Math.floor(e) || 0) && e <= 127)) throw RangeError(\"The bank value must be between 0 and 127\");\n\t\t\treturn n.toMIDIChannels(t).forEach(function() {\n\t\t\t\ti.setRegisteredParameter(\"tuningbank\", e, t, { time: r.time });\n\t\t\t}), this;\n\t\t}, Output.prototype.sendChannelMode = function(e, t, r, i) {\n\t\t\tif (i ||= {}, typeof e == \"string\") {\n\t\t\t\tif (!(e = n.MIDI_CHANNEL_MODE_MESSAGES[e])) throw TypeError(\"Invalid channel mode message name.\");\n\t\t\t} else if (!(120 <= (e = Math.floor(e)) && e <= 127)) throw RangeError(\"Channel mode numerical identifiers must be between 120 and 127.\");\n\t\t\tif ((t = Math.floor(t) || 0) < 0 || 127 < t) throw RangeError(\"Value must be an integer between 0 and 127.\");\n\t\t\treturn n.toMIDIChannels(r).forEach(function(r) {\n\t\t\t\tthis.send((n.MIDI_CHANNEL_MESSAGES.channelmode << 4) + (r - 1), [e, t], this._parseTimeParameter(i.time));\n\t\t\t}.bind(this)), this;\n\t\t}, Output.prototype.sendProgramChange = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r ||= {}, e = Math.floor(e), isNaN(e) || e < 0 || 127 < e) throw RangeError(\"Program numbers must be between 0 and 127.\");\n\t\t\treturn n.toMIDIChannels(t).forEach(function(t) {\n\t\t\t\ti.send((n.MIDI_CHANNEL_MESSAGES.programchange << 4) + (t - 1), [e], i._parseTimeParameter(r.time));\n\t\t\t}), this;\n\t\t}, Output.prototype.sendChannelAftertouch = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tr ||= {}, e = parseFloat(e), (isNaN(e) || e < 0 || 1 < e) && (e = .5);\n\t\t\tvar a = Math.round(127 * e);\n\t\t\treturn n.toMIDIChannels(t).forEach(function(e) {\n\t\t\t\ti.send((n.MIDI_CHANNEL_MESSAGES.channelaftertouch << 4) + (e - 1), [a], i._parseTimeParameter(r.time));\n\t\t\t}), this;\n\t\t}, Output.prototype.sendPitchBend = function(e, t, r) {\n\t\t\tvar i = this;\n\t\t\tif (r ||= {}, isNaN(e) || e < -1 || 1 < e) throw RangeError(\"Pitch bend value must be between -1 and 1.\");\n\t\t\tvar a = Math.round((e + 1) / 2 * 16383), o = a >> 7 & 127, s = 127 & a;\n\t\t\treturn n.toMIDIChannels(t).forEach(function(e) {\n\t\t\t\ti.send((n.MIDI_CHANNEL_MESSAGES.pitchbend << 4) + (e - 1), [s, o], i._parseTimeParameter(r.time));\n\t\t\t}), this;\n\t\t}, Output.prototype._parseTimeParameter = function(e) {\n\t\t\tvar t, r = parseFloat(e);\n\t\t\treturn typeof e == \"string\" && e.substring(0, 1) === \"+\" ? r && 0 < r && (t = n.time + r) : r > n.time && (t = r), t;\n\t\t}, Output.prototype._convertNoteToArray = function(e) {\n\t\t\tvar t = [];\n\t\t\treturn Array.isArray(e) || (e = [e]), e.forEach(function(e) {\n\t\t\t\tt.push(n.guessNoteNumber(e));\n\t\t\t}), t;\n\t\t}, typeof define == \"function\" && typeof define.amd == \"object\" ? define([], function() {\n\t\t\treturn n;\n\t\t}) : t !== void 0 && t.exports ? t.exports = n : e.WebMidi ||= n;\n\t})(e);\n})), fillStr = (e, t) => Array(Math.abs(t) + 1).join(e);\nfunction isNamed(e) {\n\treturn !!(typeof e == \"object\" && e && typeof e.name == \"string\");\n}\nfunction isPitch(e) {\n\treturn !!(typeof e == \"object\" && e && typeof e.step == \"number\" && typeof e.alt == \"number\");\n}\nvar j = [\n\t0,\n\t2,\n\t4,\n\t-1,\n\t1,\n\t3,\n\t5\n], ne = j.map((e) => Math.floor(e * 7 / 12));\nfunction encode(e) {\n\tlet { step: t, alt: n, oct: r, dir: i = 1 } = e, a = j[t] + 7 * n;\n\tif (r === void 0) return [i * a];\n\tlet o = r - ne[t] - 4 * n;\n\treturn [i * a, i * o];\n}\nvar re = [\n\t3,\n\t0,\n\t4,\n\t1,\n\t5,\n\t2,\n\t6\n];\nfunction decode(e) {\n\tlet [t, n, r] = e, i = re[unaltered(t)], a = Math.floor((t + 1) / 7);\n\treturn n === void 0 ? {\n\t\tstep: i,\n\t\talt: a,\n\t\tdir: r\n\t} : {\n\t\tstep: i,\n\t\talt: a,\n\t\toct: n + 4 * a + ne[i],\n\t\tdir: r\n\t};\n}\nfunction unaltered(e) {\n\tlet t = (e + 1) % 7;\n\treturn t < 0 ? 7 + t : t;\n}\nvar ie = {\n\tempty: !0,\n\tname: \"\",\n\tpc: \"\",\n\tacc: \"\"\n}, M = /* @__PURE__ */ new Map(), stepToLetter = (e) => \"CDEFGAB\".charAt(e), altToAcc = (e) => e < 0 ? fillStr(\"b\", -e) : fillStr(\"#\", e), accToAlt = (e) => e[0] === \"b\" ? -e.length : e.length;\nfunction note(e) {\n\tlet t = M.get(e);\n\tif (t) return t;\n\tlet n = typeof e == \"string\" ? parse$1(e) : isPitch(e) ? note(pitchName(e)) : isNamed(e) ? note(e.name) : ie;\n\treturn M.set(e, n), n;\n}\nvar ae = /^([a-gA-G]?)(#{1,}|b{1,}|x{1,}|)(-?\\d*)\\s*(.*)$/;\nfunction tokenizeNote(e) {\n\tlet t = ae.exec(e);\n\treturn [\n\t\tt[1].toUpperCase(),\n\t\tt[2].replace(/x/g, \"##\"),\n\t\tt[3],\n\t\tt[4]\n\t];\n}\nfunction coordToNote(e) {\n\treturn note(decode(e));\n}\nvar mod = (e, t) => (e % t + t) % t, N = [\n\t0,\n\t2,\n\t4,\n\t5,\n\t7,\n\t9,\n\t11\n];\nfunction parse$1(e) {\n\tlet t = tokenizeNote(e);\n\tif (t[0] === \"\" || t[3] !== \"\") return ie;\n\tlet n = t[0], r = t[1], i = t[2], a = (n.charCodeAt(0) + 3) % 7, o = accToAlt(r), s = i.length ? +i : void 0, c = encode({\n\t\tstep: a,\n\t\talt: o,\n\t\toct: s\n\t}), l = n + r + i, u = n + r, d = (N[a] + o + 120) % 12, f = s === void 0 ? mod(N[a] + o, 12) - 1188 : N[a] + o + 12 * (s + 1), p = f >= 0 && f <= 127 ? f : null;\n\treturn {\n\t\tempty: !1,\n\t\tacc: r,\n\t\talt: o,\n\t\tchroma: d,\n\t\tcoord: c,\n\t\tfreq: s === void 0 ? null : 2 ** ((f - 69) / 12) * 440,\n\t\theight: f,\n\t\tletter: n,\n\t\tmidi: p,\n\t\tname: l,\n\t\toct: s,\n\t\tpc: u,\n\t\tstep: a\n\t};\n}\nn(parse$1, \"parse\");\nfunction pitchName(e) {\n\tlet { step: t, alt: n, oct: r } = e, i = stepToLetter(t);\n\tif (!i) return \"\";\n\tlet a = i + altToAcc(n);\n\treturn r || r === 0 ? a + r : a;\n}\nvar P = {\n\tempty: !0,\n\tname: \"\",\n\tacc: \"\"\n}, oe = /* @__PURE__ */ RegExp(\"^([-+]?\\\\d+)(d{1,4}|m|M|P|A{1,4})|(AA|A|P|M|m|d|dd)([-+]?\\\\d+)$\");\nfunction tokenizeInterval(e) {\n\tlet t = oe.exec(`${e}`);\n\treturn t === null ? [\"\", \"\"] : t[1] ? [t[1], t[2]] : [t[4], t[3]];\n}\nvar F = {};\nfunction interval(e) {\n\treturn typeof e == \"string\" ? F[e] || (F[e] = parse$1$1(e)) : isPitch(e) ? interval(pitchName$1(e)) : isNamed(e) ? interval(e.name) : P;\n}\nvar I = [\n\t0,\n\t2,\n\t4,\n\t5,\n\t7,\n\t9,\n\t11\n], L = \"PMMPPMM\";\nfunction parse$1$1(e) {\n\tlet t = tokenizeInterval(e);\n\tif (t[0] === \"\") return P;\n\tlet n = +t[0], r = t[1], i = (Math.abs(n) - 1) % 7, a = L[i];\n\tif (a === \"M\" && r === \"P\") return P;\n\tlet o = a === \"M\" ? \"majorable\" : \"perfectable\", s = \"\" + n + r, c = n < 0 ? -1 : 1, l = n === 8 || n === -8 ? n : c * (i + 1), u = qToAlt(o, r), d = Math.floor((Math.abs(n) - 1) / 7);\n\treturn {\n\t\tempty: !1,\n\t\tname: s,\n\t\tnum: n,\n\t\tq: r,\n\t\tstep: i,\n\t\talt: u,\n\t\tdir: c,\n\t\ttype: o,\n\t\tsimple: l,\n\t\tsemitones: c * (I[i] + u + 12 * d),\n\t\tchroma: (c * (I[i] + u) % 12 + 12) % 12,\n\t\tcoord: encode({\n\t\t\tstep: i,\n\t\t\talt: u,\n\t\t\toct: d,\n\t\t\tdir: c\n\t\t}),\n\t\toct: d\n\t};\n}\nn(parse$1$1, \"parse$1\");\nfunction coordToInterval(e) {\n\tlet [t, n = 0] = e;\n\treturn interval(decode(t * 7 + n * 12 < 0 ? [\n\t\t-t,\n\t\t-n,\n\t\t-1\n\t] : [\n\t\tt,\n\t\tn,\n\t\t1\n\t]));\n}\nfunction qToAlt(e, t) {\n\treturn 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;\n}\nfunction pitchName$1(e) {\n\tlet { step: t, alt: n, oct: r = 0, dir: i } = e;\n\tif (!i) return \"\";\n\tlet a = t + 1 + 7 * r, o = i < 0 ? \"-\" : \"\", s = L[t] === \"M\" ? \"majorable\" : \"perfectable\";\n\treturn o + a + altToQ(s, n);\n}\nfunction altToQ(e, t) {\n\treturn t === 0 ? e === \"majorable\" ? \"M\" : \"P\" : t === -1 && e === \"majorable\" ? \"m\" : t > 0 ? fillStr(\"A\", t) : fillStr(\"d\", e === \"perfectable\" ? t : t + 1);\n}\nfunction transpose$2(e, t) {\n\tlet n = note(e), r = interval(t);\n\tif (n.empty || r.empty) return \"\";\n\tlet i = n.coord, a = r.coord;\n\treturn coordToNote(i.length === 1 ? [i[0] + a[0]] : [i[0] + a[0], i[1] + a[1]]).name;\n}\nn(transpose$2, \"transpose\");\nfunction distance$1(e, t) {\n\tlet n = note(e), r = note(t);\n\tif (n.empty || r.empty) return \"\";\n\tlet i = n.coord, a = r.coord, o = a[0] - i[0];\n\treturn coordToInterval([o, i.length === 2 && a.length === 2 ? a[1] - i[1] : -Math.floor(o * 7 / 12)]).name;\n}\nn(distance$1, \"distance\");\n//#endregion\n//#region ../../node_modules/@tonaljs/collection/dist/index.es.js\nfunction rotate(e, t) {\n\tlet n = t.length, r = (e % n + n) % n;\n\treturn t.slice(r, n).concat(t.slice(0, r));\n}\n//#endregion\n//#region ../../node_modules/@tonaljs/pcset/dist/index.es.js\nvar R = {\n\tempty: !0,\n\tname: \"\",\n\tsetNum: 0,\n\tchroma: \"000000000000\",\n\tnormalized: \"000000000000\",\n\tintervals: []\n}, setNumToChroma = (e) => Number(e).toString(2), chromaToNumber = (e) => parseInt(e, 2), se = /^[01]{12}$/;\nfunction isChroma(e) {\n\treturn se.test(e);\n}\nvar isPcsetNum = (e) => typeof e == \"number\" && e >= 0 && e <= 4095, isPcset = (e) => e && isChroma(e.chroma), z = { [R.chroma]: R };\nfunction get$8(e) {\n\tlet t = isChroma(e) ? e : isPcsetNum(e) ? setNumToChroma(e) : Array.isArray(e) ? listToChroma(e) : isPcset(e) ? e.chroma : R.chroma;\n\treturn z[t] = z[t] || chromaToPcset(t);\n}\nn(get$8, \"get\");\nvar ce = [\n\t\"1P\",\n\t\"2m\",\n\t\"2M\",\n\t\"3m\",\n\t\"3M\",\n\t\"4P\",\n\t\"5d\",\n\t\"5P\",\n\t\"6m\",\n\t\"6M\",\n\t\"7m\",\n\t\"7M\"\n];\nfunction chromaToIntervals(e) {\n\tlet t = [];\n\tfor (let n = 0; n < 12; n++) e.charAt(n) === \"1\" && t.push(ce[n]);\n\treturn t;\n}\nfunction chromaRotations(e) {\n\tlet t = e.split(\"\");\n\treturn t.map((e, n) => rotate(n, t).join(\"\"));\n}\nfunction chromaToPcset(e) {\n\tlet t = chromaToNumber(e), n = chromaRotations(e).map(chromaToNumber).filter((e) => e >= 2048).sort()[0];\n\treturn {\n\t\tempty: !1,\n\t\tname: \"\",\n\t\tsetNum: t,\n\t\tchroma: e,\n\t\tnormalized: setNumToChroma(n),\n\t\tintervals: chromaToIntervals(e)\n\t};\n}\nfunction listToChroma(e) {\n\tif (e.length === 0) return R.chroma;\n\tlet t, n = [\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0,\n\t\t0\n\t];\n\tfor (let r = 0; r < e.length; r++) t = note(e[r]), t.empty && (t = interval(e[r])), t.empty || (n[t.chroma] = 1);\n\treturn n.join(\"\");\n}\n//#endregion\n//#region ../../node_modules/@tonaljs/chord-type/dist/index.es.js\nvar le = [\n\t[\n\t\t\"1P 3M 5P\",\n\t\t\"major\",\n\t\t\"M ^ \"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M\",\n\t\t\"major seventh\",\n\t\t\"maj7 Δ ma7 M7 Maj7 ^7\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 9M\",\n\t\t\"major ninth\",\n\t\t\"maj9 Δ9 ^9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 9M 13M\",\n\t\t\"major thirteenth\",\n\t\t\"maj13 Maj13 ^13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 6M\",\n\t\t\"sixth\",\n\t\t\"6 add6 add13 M6\"\n\t],\n\t[\n\t\t\"1P 3M 5P 6M 9M\",\n\t\t\"sixth/ninth\",\n\t\t\"6/9 69 M69\"\n\t],\n\t[\n\t\t\"1P 3M 6m 7M\",\n\t\t\"major seventh flat sixth\",\n\t\t\"M7b6 ^7b6\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 11A\",\n\t\t\"major seventh sharp eleventh\",\n\t\t\"maj#4 Δ#4 Δ#11 M7#11 ^7#11 maj7#11\"\n\t],\n\t[\n\t\t\"1P 3m 5P\",\n\t\t\"minor\",\n\t\t\"m min -\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7m\",\n\t\t\"minor seventh\",\n\t\t\"m7 min7 mi7 -7\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7M\",\n\t\t\"minor/major seventh\",\n\t\t\"m/ma7 m/maj7 mM7 mMaj7 m/M7 -Δ7 mΔ -^7\"\n\t],\n\t[\n\t\t\"1P 3m 5P 6M\",\n\t\t\"minor sixth\",\n\t\t\"m6 -6\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7m 9M\",\n\t\t\"minor ninth\",\n\t\t\"m9 -9\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7M 9M\",\n\t\t\"minor/major ninth\",\n\t\t\"mM9 mMaj9 -^9\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7m 9M 11P\",\n\t\t\"minor eleventh\",\n\t\t\"m11 -11\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7m 9M 13M\",\n\t\t\"minor thirteenth\",\n\t\t\"m13 -13\"\n\t],\n\t[\n\t\t\"1P 3m 5d\",\n\t\t\"diminished\",\n\t\t\"dim ° o\"\n\t],\n\t[\n\t\t\"1P 3m 5d 7d\",\n\t\t\"diminished seventh\",\n\t\t\"dim7 °7 o7\"\n\t],\n\t[\n\t\t\"1P 3m 5d 7m\",\n\t\t\"half-diminished\",\n\t\t\"m7b5 ø -7b5 h7 h\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m\",\n\t\t\"dominant seventh\",\n\t\t\"7 dom\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9M\",\n\t\t\"dominant ninth\",\n\t\t\"9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9M 13M\",\n\t\t\"dominant thirteenth\",\n\t\t\"13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 11A\",\n\t\t\"lydian dominant seventh\",\n\t\t\"7#11 7#4\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m\",\n\t\t\"dominant flat ninth\",\n\t\t\"7b9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9A\",\n\t\t\"dominant sharp ninth\",\n\t\t\"7#9\"\n\t],\n\t[\n\t\t\"1P 3M 7m 9m\",\n\t\t\"altered\",\n\t\t\"alt7\"\n\t],\n\t[\n\t\t\"1P 4P 5P\",\n\t\t\"suspended fourth\",\n\t\t\"sus4 sus\"\n\t],\n\t[\n\t\t\"1P 2M 5P\",\n\t\t\"suspended second\",\n\t\t\"sus2\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7m\",\n\t\t\"suspended fourth seventh\",\n\t\t\"7sus4 7sus\"\n\t],\n\t[\n\t\t\"1P 5P 7m 9M 11P\",\n\t\t\"eleventh\",\n\t\t\"11\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7m 9m\",\n\t\t\"suspended fourth flat ninth\",\n\t\t\"b9sus phryg 7b9sus 7b9sus4\"\n\t],\n\t[\n\t\t\"1P 5P\",\n\t\t\"fifth\",\n\t\t\"5\"\n\t],\n\t[\n\t\t\"1P 3M 5A\",\n\t\t\"augmented\",\n\t\t\"aug + +5 ^#5\"\n\t],\n\t[\n\t\t\"1P 3m 5A\",\n\t\t\"minor augmented\",\n\t\t\"m#5 -#5 m+\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7M\",\n\t\t\"augmented seventh\",\n\t\t\"maj7#5 maj7+5 +maj7 ^7#5\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 9M 11A\",\n\t\t\"major sharp eleventh (lydian)\",\n\t\t\"maj9#11 Δ9#11 ^9#11\"\n\t],\n\t[\n\t\t\"1P 2M 4P 5P\",\n\t\t\"\",\n\t\t\"sus24 sus4add9\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7M 9M\",\n\t\t\"\",\n\t\t\"maj9#5 Maj9#5\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7m\",\n\t\t\"\",\n\t\t\"7#5 +7 7+ 7aug aug7\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7m 9A\",\n\t\t\"\",\n\t\t\"7#5#9 7#9#5 7alt\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7m 9M\",\n\t\t\"\",\n\t\t\"9#5 9+\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7m 9M 11A\",\n\t\t\"\",\n\t\t\"9#5#11\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7m 9m\",\n\t\t\"\",\n\t\t\"7#5b9 7b9#5\"\n\t],\n\t[\n\t\t\"1P 3M 5A 7m 9m 11A\",\n\t\t\"\",\n\t\t\"7#5b9#11\"\n\t],\n\t[\n\t\t\"1P 3M 5A 9A\",\n\t\t\"\",\n\t\t\"+add#9\"\n\t],\n\t[\n\t\t\"1P 3M 5A 9M\",\n\t\t\"\",\n\t\t\"M#5add9 +add9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 6M 11A\",\n\t\t\"\",\n\t\t\"M6#11 M6b5 6#11 6b5\"\n\t],\n\t[\n\t\t\"1P 3M 5P 6M 7M 9M\",\n\t\t\"\",\n\t\t\"M7add13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 6M 9M 11A\",\n\t\t\"\",\n\t\t\"69#11\"\n\t],\n\t[\n\t\t\"1P 3m 5P 6M 9M\",\n\t\t\"\",\n\t\t\"m69 -69\"\n\t],\n\t[\n\t\t\"1P 3M 5P 6m 7m\",\n\t\t\"\",\n\t\t\"7b6\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 9A 11A\",\n\t\t\"\",\n\t\t\"maj7#9#11\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 9M 11A 13M\",\n\t\t\"\",\n\t\t\"M13#11 maj13#11 M13+4 M13#4\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7M 9m\",\n\t\t\"\",\n\t\t\"M7b9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 11A 13m\",\n\t\t\"\",\n\t\t\"7#11b13 7b5b13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 13M\",\n\t\t\"\",\n\t\t\"7add6 67 7add13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9A 11A\",\n\t\t\"\",\n\t\t\"7#9#11 7b5#9 7#9b5\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9A 11A 13M\",\n\t\t\"\",\n\t\t\"13#9#11\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9A 11A 13m\",\n\t\t\"\",\n\t\t\"7#9#11b13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9A 13M\",\n\t\t\"\",\n\t\t\"13#9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9A 13m\",\n\t\t\"\",\n\t\t\"7#9b13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9M 11A\",\n\t\t\"\",\n\t\t\"9#11 9+4 9#4\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9M 11A 13M\",\n\t\t\"\",\n\t\t\"13#11 13+4 13#4\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9M 11A 13m\",\n\t\t\"\",\n\t\t\"9#11b13 9b5b13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m 11A\",\n\t\t\"\",\n\t\t\"7b9#11 7b5b9 7b9b5\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m 11A 13M\",\n\t\t\"\",\n\t\t\"13b9#11\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m 11A 13m\",\n\t\t\"\",\n\t\t\"7b9b13#11 7b9#11b13 7b5b9b13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m 13M\",\n\t\t\"\",\n\t\t\"13b9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m 13m\",\n\t\t\"\",\n\t\t\"7b9b13\"\n\t],\n\t[\n\t\t\"1P 3M 5P 7m 9m 9A\",\n\t\t\"\",\n\t\t\"7b9#9\"\n\t],\n\t[\n\t\t\"1P 3M 5P 9M\",\n\t\t\"\",\n\t\t\"Madd9 2 add9 add2\"\n\t],\n\t[\n\t\t\"1P 3M 5P 9m\",\n\t\t\"\",\n\t\t\"Maddb9\"\n\t],\n\t[\n\t\t\"1P 3M 5d\",\n\t\t\"\",\n\t\t\"Mb5\"\n\t],\n\t[\n\t\t\"1P 3M 5d 6M 7m 9M\",\n\t\t\"\",\n\t\t\"13b5\"\n\t],\n\t[\n\t\t\"1P 3M 5d 7M\",\n\t\t\"\",\n\t\t\"M7b5\"\n\t],\n\t[\n\t\t\"1P 3M 5d 7M 9M\",\n\t\t\"\",\n\t\t\"M9b5\"\n\t],\n\t[\n\t\t\"1P 3M 5d 7m\",\n\t\t\"\",\n\t\t\"7b5\"\n\t],\n\t[\n\t\t\"1P 3M 5d 7m 9M\",\n\t\t\"\",\n\t\t\"9b5\"\n\t],\n\t[\n\t\t\"1P 3M 7m\",\n\t\t\"\",\n\t\t\"7no5\"\n\t],\n\t[\n\t\t\"1P 3M 7m 13m\",\n\t\t\"\",\n\t\t\"7b13\"\n\t],\n\t[\n\t\t\"1P 3M 7m 9M\",\n\t\t\"\",\n\t\t\"9no5\"\n\t],\n\t[\n\t\t\"1P 3M 7m 9M 13M\",\n\t\t\"\",\n\t\t\"13no5\"\n\t],\n\t[\n\t\t\"1P 3M 7m 9M 13m\",\n\t\t\"\",\n\t\t\"9b13\"\n\t],\n\t[\n\t\t\"1P 3m 4P 5P\",\n\t\t\"\",\n\t\t\"madd4\"\n\t],\n\t[\n\t\t\"1P 3m 5P 6m 7M\",\n\t\t\"\",\n\t\t\"mMaj7b6\"\n\t],\n\t[\n\t\t\"1P 3m 5P 6m 7M 9M\",\n\t\t\"\",\n\t\t\"mMaj9b6\"\n\t],\n\t[\n\t\t\"1P 3m 5P 7m 11P\",\n\t\t\"\",\n\t\t\"m7add11 m7add4\"\n\t],\n\t[\n\t\t\"1P 3m 5P 9M\",\n\t\t\"\",\n\t\t\"madd9\"\n\t],\n\t[\n\t\t\"1P 3m 5d 6M 7M\",\n\t\t\"\",\n\t\t\"o7M7\"\n\t],\n\t[\n\t\t\"1P 3m 5d 7M\",\n\t\t\"\",\n\t\t\"oM7\"\n\t],\n\t[\n\t\t\"1P 3m 6m 7M\",\n\t\t\"\",\n\t\t\"mb6M7\"\n\t],\n\t[\n\t\t\"1P 3m 6m 7m\",\n\t\t\"\",\n\t\t\"m7#5\"\n\t],\n\t[\n\t\t\"1P 3m 6m 7m 9M\",\n\t\t\"\",\n\t\t\"m9#5\"\n\t],\n\t[\n\t\t\"1P 3m 5A 7m 9M 11P\",\n\t\t\"\",\n\t\t\"m11A\"\n\t],\n\t[\n\t\t\"1P 3m 6m 9m\",\n\t\t\"\",\n\t\t\"mb6b9\"\n\t],\n\t[\n\t\t\"1P 2M 3m 5d 7m\",\n\t\t\"\",\n\t\t\"m9b5\"\n\t],\n\t[\n\t\t\"1P 4P 5A 7M\",\n\t\t\"\",\n\t\t\"M7#5sus4\"\n\t],\n\t[\n\t\t\"1P 4P 5A 7M 9M\",\n\t\t\"\",\n\t\t\"M9#5sus4\"\n\t],\n\t[\n\t\t\"1P 4P 5A 7m\",\n\t\t\"\",\n\t\t\"7#5sus4\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7M\",\n\t\t\"\",\n\t\t\"M7sus4\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7M 9M\",\n\t\t\"\",\n\t\t\"M9sus4\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7m 9M\",\n\t\t\"\",\n\t\t\"9sus4 9sus\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7m 9M 13M\",\n\t\t\"\",\n\t\t\"13sus4 13sus\"\n\t],\n\t[\n\t\t\"1P 4P 5P 7m 9m 13m\",\n\t\t\"\",\n\t\t\"7sus4b9b13 7b9b13sus4\"\n\t],\n\t[\n\t\t\"1P 4P 7m 10m\",\n\t\t\"\",\n\t\t\"4 quartal\"\n\t],\n\t[\n\t\t\"1P 5P 7m 9m 11P\",\n\t\t\"\",\n\t\t\"11b9\"\n\t]\n], ue = {\n\t...R,\n\tname: \"\",\n\tquality: \"Unknown\",\n\tintervals: [],\n\taliases: []\n}, B = [], V = {};\nfunction get$7(e) {\n\treturn V[e] || ue;\n}\nn(get$7, \"get\");\nfunction all$2() {\n\treturn B.slice();\n}\nn(all$2, \"all\");\nfunction add$3(e, t, n) {\n\tlet r = getQuality(e), i = {\n\t\t...get$8(e),\n\t\tname: n || \"\",\n\t\tquality: r,\n\t\tintervals: e,\n\t\taliases: t\n\t};\n\tB.push(i), i.name && (V[i.name] = i), V[i.setNum] = i, V[i.chroma] = i, i.aliases.forEach((e) => addAlias$1(i, e));\n}\nn(add$3, \"add\");\nfunction addAlias$1(e, t) {\n\tV[t] = e;\n}\nn(addAlias$1, \"addAlias\");\nfunction getQuality(e) {\n\tlet has = (t) => e.indexOf(t) !== -1;\n\treturn has(\"5A\") ? \"Augmented\" : has(\"3M\") ? \"Major\" : has(\"5d\") ? \"Diminished\" : has(\"3m\") ? \"Minor\" : \"Unknown\";\n}\nle.forEach(([e, t, n]) => add$3(e.split(\" \"), n.split(\" \"), t)), B.sort((e, t) => e.setNum - t.setNum);\n//#endregion\n//#region ../../node_modules/@tonaljs/scale-type/dist/index.es.js\nvar de = [\n\t[\n\t\t\"1P 2M 3M 5P 6M\",\n\t\t\"major pentatonic\",\n\t\t\"pentatonic\"\n\t],\n\t[\"1P 3M 4P 5P 7M\", \"ionian pentatonic\"],\n\t[\n\t\t\"1P 3M 4P 5P 7m\",\n\t\t\"mixolydian pentatonic\",\n\t\t\"indian\"\n\t],\n\t[\"1P 2M 4P 5P 6M\", \"ritusen\"],\n\t[\"1P 2M 4P 5P 7m\", \"egyptian\"],\n\t[\"1P 3M 4P 5d 7m\", \"neopolitan major pentatonic\"],\n\t[\"1P 3m 4P 5P 6m\", \"vietnamese 1\"],\n\t[\"1P 2m 3m 5P 6m\", \"pelog\"],\n\t[\"1P 2m 4P 5P 6m\", \"kumoijoshi\"],\n\t[\"1P 2M 3m 5P 6m\", \"hirajoshi\"],\n\t[\"1P 2m 4P 5d 7m\", \"iwato\"],\n\t[\"1P 2m 4P 5P 7m\", \"in-sen\"],\n\t[\n\t\t\"1P 3M 4A 5P 7M\",\n\t\t\"lydian pentatonic\",\n\t\t\"chinese\"\n\t],\n\t[\"1P 3m 4P 6m 7m\", \"malkos raga\"],\n\t[\n\t\t\"1P 3m 4P 5d 7m\",\n\t\t\"locrian pentatonic\",\n\t\t\"minor seven flat five pentatonic\"\n\t],\n\t[\n\t\t\"1P 3m 4P 5P 7m\",\n\t\t\"minor pentatonic\",\n\t\t\"vietnamese 2\"\n\t],\n\t[\"1P 3m 4P 5P 6M\", \"minor six pentatonic\"],\n\t[\n\t\t\"1P 2M 3m 5P 6M\",\n\t\t\"flat three pentatonic\",\n\t\t\"kumoi\"\n\t],\n\t[\"1P 2M 3M 5P 6m\", \"flat six pentatonic\"],\n\t[\"1P 2m 3M 5P 6M\", \"scriabin\"],\n\t[\"1P 3M 5d 6m 7m\", \"whole tone pentatonic\"],\n\t[\"1P 3M 4A 5A 7M\", \"lydian #5P pentatonic\"],\n\t[\"1P 3M 4A 5P 7m\", \"lydian dominant pentatonic\"],\n\t[\"1P 3m 4P 5P 7M\", \"minor #7M pentatonic\"],\n\t[\"1P 3m 4d 5d 7m\", \"super locrian pentatonic\"],\n\t[\"1P 2M 3m 4P 5P 7M\", \"minor hexatonic\"],\n\t[\"1P 2A 3M 5P 5A 7M\", \"augmented\"],\n\t[\"1P 2M 3m 3M 5P 6M\", \"major blues\"],\n\t[\"1P 2M 4P 5P 6M 7m\", \"piongio\"],\n\t[\"1P 2m 3M 4A 6M 7m\", \"prometheus neopolitan\"],\n\t[\"1P 2M 3M 4A 6M 7m\", \"prometheus\"],\n\t[\"1P 2m 3M 5d 6m 7m\", \"mystery #1\"],\n\t[\"1P 2m 3M 4P 5A 6M\", \"six tone symmetric\"],\n\t[\n\t\t\"1P 2M 3M 4A 5A 7m\",\n\t\t\"whole tone\",\n\t\t\"messiaen's mode #1\"\n\t],\n\t[\"1P 2m 4P 4A 5P 7M\", \"messiaen's mode #5\"],\n\t[\n\t\t\"1P 3m 4P 5d 5P 7m\",\n\t\t\"minor blues\",\n\t\t\"blues\"\n\t],\n\t[\n\t\t\"1P 2M 3M 4P 5d 6m 7m\",\n\t\t\"locrian major\",\n\t\t\"arabian\"\n\t],\n\t[\"1P 2m 3M 4A 5P 6m 7M\", \"double harmonic lydian\"],\n\t[\"1P 2M 3m 4P 5P 6m 7M\", \"harmonic minor\"],\n\t[\n\t\t\"1P 2m 3m 4d 5d 6m 7m\",\n\t\t\"altered\",\n\t\t\"super locrian\",\n\t\t\"diminished whole tone\",\n\t\t\"pomeroy\"\n\t],\n\t[\n\t\t\"1P 2M 3m 4P 5d 6m 7m\",\n\t\t\"locrian #2\",\n\t\t\"half-diminished\",\n\t\t\"aeolian b5\"\n\t],\n\t[\n\t\t\"1P 2M 3M 4P 5P 6m 7m\",\n\t\t\"mixolydian b6\",\n\t\t\"melodic minor fifth mode\",\n\t\t\"hindu\"\n\t],\n\t[\n\t\t\"1P 2M 3M 4A 5P 6M 7m\",\n\t\t\"lydian dominant\",\n\t\t\"lydian b7\",\n\t\t\"overtone\"\n\t],\n\t[\"1P 2M 3M 4A 5P 6M 7M\", \"lydian\"],\n\t[\"1P 2M 3M 4A 5A 6M 7M\", \"lydian augmented\"],\n\t[\n\t\t\"1P 2m 3m 4P 5P 6M 7m\",\n\t\t\"dorian b2\",\n\t\t\"phrygian #6\",\n\t\t\"melodic minor second mode\"\n\t],\n\t[\"1P 2M 3m 4P 5P 6M 7M\", \"melodic minor\"],\n\t[\"1P 2m 3m 4P 5d 6m 7m\", \"locrian\"],\n\t[\n\t\t\"1P 2m 3m 4d 5d 6m 7d\",\n\t\t\"ultralocrian\",\n\t\t\"superlocrian bb7\",\n\t\t\"·superlocrian diminished\"\n\t],\n\t[\n\t\t\"1P 2m 3m 4P 5d 6M 7m\",\n\t\t\"locrian 6\",\n\t\t\"locrian natural 6\",\n\t\t\"locrian sharp 6\"\n\t],\n\t[\"1P 2A 3M 4P 5P 5A 7M\", \"augmented heptatonic\"],\n\t[\"1P 2M 3m 5d 5P 6M 7m\", \"romanian minor\"],\n\t[\"1P 2M 3m 4A 5P 6M 7m\", \"dorian #4\"],\n\t[\"1P 2M 3m 4A 5P 6M 7M\", \"lydian diminished\"],\n\t[\"1P 2m 3m 4P 5P 6m 7m\", \"phrygian\"],\n\t[\"1P 2M 3M 4A 5A 7m 7M\", \"leading whole tone\"],\n\t[\"1P 2M 3M 4A 5P 6m 7m\", \"lydian minor\"],\n\t[\n\t\t\"1P 2m 3M 4P 5P 6m 7m\",\n\t\t\"phrygian dominant\",\n\t\t\"spanish\",\n\t\t\"phrygian major\"\n\t],\n\t[\"1P 2m 3m 4P 5P 6m 7M\", \"balinese\"],\n\t[\"1P 2m 3m 4P 5P 6M 7M\", \"neopolitan major\"],\n\t[\n\t\t\"1P 2M 3m 4P 5P 6m 7m\",\n\t\t\"aeolian\",\n\t\t\"minor\"\n\t],\n\t[\"1P 2M 3M 4P 5P 6m 7M\", \"harmonic major\"],\n\t[\n\t\t\"1P 2m 3M 4P 5P 6m 7M\",\n\t\t\"double harmonic major\",\n\t\t\"gypsy\"\n\t],\n\t[\"1P 2M 3m 4P 5P 6M 7m\", \"dorian\"],\n\t[\"1P 2M 3m 4A 5P 6m 7M\", \"hungarian minor\"],\n\t[\"1P 2A 3M 4A 5P 6M 7m\", \"hungarian major\"],\n\t[\"1P 2m 3M 4P 5d 6M 7m\", \"oriental\"],\n\t[\"1P 2m 3m 3M 4A 5P 7m\", \"flamenco\"],\n\t[\"1P 2m 3m 4A 5P 6m 7M\", \"todi raga\"],\n\t[\n\t\t\"1P 2M 3M 4P 5P 6M 7m\",\n\t\t\"mixolydian\",\n\t\t\"dominant\"\n\t],\n\t[\"1P 2m 3M 4P 5d 6m 7M\", \"persian\"],\n\t[\n\t\t\"1P 2M 3M 4P 5P 6M 7M\",\n\t\t\"major\",\n\t\t\"ionian\"\n\t],\n\t[\"1P 2m 3M 5d 6m 7m 7M\", \"enigmatic\"],\n\t[\n\t\t\"1P 2M 3M 4P 5A 6M 7M\",\n\t\t\"major augmented\",\n\t\t\"major #5\",\n\t\t\"ionian augmented\",\n\t\t\"ionian #5\"\n\t],\n\t[\"1P 2A 3M 4A 5P 6M 7M\", \"lydian #9\"],\n\t[\"1P 2m 2M 4P 4A 5P 6m 7M\", \"messiaen's mode #4\"],\n\t[\"1P 2m 3M 4P 4A 5P 6m 7M\", \"purvi raga\"],\n\t[\"1P 2m 3m 3M 4P 5P 6m 7m\", \"spanish heptatonic\"],\n\t[\"1P 2M 3M 4P 5P 6M 7m 7M\", \"bebop\"],\n\t[\"1P 2M 3m 3M 4P 5P 6M 7m\", \"bebop minor\"],\n\t[\"1P 2M 3M 4P 5P 5A 6M 7M\", \"bebop major\"],\n\t[\"1P 2m 3m 4P 5d 5P 6m 7m\", \"bebop locrian\"],\n\t[\"1P 2M 3m 4P 5P 6m 7m 7M\", \"minor bebop\"],\n\t[\n\t\t\"1P 2M 3m 4P 5d 6m 6M 7M\",\n\t\t\"diminished\",\n\t\t\"whole-half diminished\"\n\t],\n\t[\"1P 2M 3M 4P 5d 5P 6M 7M\", \"ichikosucho\"],\n\t[\"1P 2M 3m 4P 5P 6m 6M 7M\", \"minor six diminished\"],\n\t[\n\t\t\"1P 2m 3m 3M 4A 5P 6M 7m\",\n\t\t\"half-whole diminished\",\n\t\t\"dominant diminished\",\n\t\t\"messiaen's mode #2\"\n\t],\n\t[\"1P 3m 3M 4P 5P 6M 7m 7M\", \"kafi raga\"],\n\t[\"1P 2M 3M 4P 4A 5A 6A 7M\", \"messiaen's mode #6\"],\n\t[\"1P 2M 3m 3M 4P 5d 5P 6M 7m\", \"composite blues\"],\n\t[\"1P 2M 3m 3M 4A 5P 6m 7m 7M\", \"messiaen's mode #3\"],\n\t[\"1P 2m 2M 3m 4P 4A 5P 6m 6M 7M\", \"messiaen's mode #7\"],\n\t[\"1P 2m 2M 3m 3M 4P 5d 5P 6m 6M 7m 7M\", \"chromatic\"]\n], fe = {\n\t...R,\n\tintervals: [],\n\taliases: []\n}, H = [], U = {};\nfunction get$6(e) {\n\treturn U[e] || fe;\n}\nn(get$6, \"get\");\nfunction all$1() {\n\treturn H.slice();\n}\nn(all$1, \"all\");\nfunction add$2(e, t, n = []) {\n\tlet r = {\n\t\t...get$8(e),\n\t\tname: t,\n\t\tintervals: e,\n\t\taliases: n\n\t};\n\treturn H.push(r), U[r.name] = r, U[r.setNum] = r, U[r.chroma] = r, r.aliases.forEach((e) => addAlias(r, e)), r;\n}\nn(add$2, \"add\");\nfunction addAlias(e, t) {\n\tU[t] = e;\n}\nde.forEach(([e, t, ...n]) => add$2(e.split(\" \"), t, n));\n//#endregion\n//#region ../../node_modules/@tonaljs/chord/dist/index.es.js\nvar W = {\n\tempty: !0,\n\tname: \"\",\n\tsymbol: \"\",\n\troot: \"\",\n\trootDegree: 0,\n\ttype: \"\",\n\ttonic: null,\n\tsetNum: NaN,\n\tquality: \"Unknown\",\n\tchroma: \"\",\n\tnormalized: \"\",\n\taliases: [],\n\tnotes: [],\n\tintervals: []\n}, pe = /^(6|64|7|9|11|13)$/;\nfunction tokenize$2(e) {\n\tlet [t, n, r, i] = tokenizeNote(e);\n\treturn t === \"\" ? [\"\", e] : t === \"A\" && i === \"ug\" ? [\"\", \"aug\"] : !i && (r === \"4\" || r === \"5\") ? [t + n, r] : pe.test(r) ? [t + n, r + i] : [t + n + r, i];\n}\nn(tokenize$2, \"tokenize\");\nfunction get$5(e) {\n\tif (e === \"\") return W;\n\tif (Array.isArray(e) && e.length === 2) return getChord(e[1], e[0]);\n\t{\n\t\tlet [t, n] = tokenize$2(e), r = getChord(n, t);\n\t\treturn r.empty ? getChord(e) : r;\n\t}\n}\nn(get$5, \"get\");\nfunction getChord(e, t, n) {\n\tlet r = get$7(e), i = note(t || \"\"), a = note(n || \"\");\n\tif (r.empty || t && i.empty || n && a.empty) return W;\n\tlet o = distance$1(i.pc, a.pc), s = r.intervals.indexOf(o) + 1;\n\tif (!a.empty && !s) return W;\n\tlet c = Array.from(r.intervals);\n\tfor (let e = 1; e < s; e++) {\n\t\tlet e = c[0][0], t = c[0][1], n = parseInt(e, 10) + 7;\n\t\tc.push(`${n}${t}`), c.shift();\n\t}\n\tlet l = i.empty ? [] : c.map((e) => transpose$2(i, e));\n\te = r.aliases.indexOf(e) === -1 ? r.aliases[0] : e;\n\tlet u = `${i.empty ? \"\" : i.pc}${e}${a.empty || s <= 1 ? \"\" : \"/\" + a.pc}`, d = `${t ? i.pc + \" \" : \"\"}${r.name}${s > 1 && n ? \" over \" + a.pc : \"\"}`;\n\treturn {\n\t\t...r,\n\t\tname: d,\n\t\tsymbol: u,\n\t\ttype: r.name,\n\t\troot: a.name,\n\t\tintervals: c,\n\t\trootDegree: s,\n\t\ttonic: i.name,\n\t\tnotes: l\n\t};\n}\n//#endregion\n//#region ../../node_modules/@tonaljs/duration-value/dist/index.es.js\nvar me = [\n\t[\n\t\t.125,\n\t\t\"dl\",\n\t\t[\n\t\t\t\"large\",\n\t\t\t\"duplex longa\",\n\t\t\t\"maxima\",\n\t\t\t\"octuple\",\n\t\t\t\"octuple whole\"\n\t\t]\n\t],\n\t[\n\t\t.25,\n\t\t\"l\",\n\t\t[\"long\", \"longa\"]\n\t],\n\t[\n\t\t.5,\n\t\t\"d\",\n\t\t[\n\t\t\t\"double whole\",\n\t\t\t\"double\",\n\t\t\t\"breve\"\n\t\t]\n\t],\n\t[\n\t\t1,\n\t\t\"w\",\n\t\t[\"whole\", \"semibreve\"]\n\t],\n\t[\n\t\t2,\n\t\t\"h\",\n\t\t[\"half\", \"minim\"]\n\t],\n\t[\n\t\t4,\n\t\t\"q\",\n\t\t[\"quarter\", \"crotchet\"]\n\t],\n\t[\n\t\t8,\n\t\t\"e\",\n\t\t[\"eighth\", \"quaver\"]\n\t],\n\t[\n\t\t16,\n\t\t\"s\",\n\t\t[\"sixteenth\", \"semiquaver\"]\n\t],\n\t[\n\t\t32,\n\t\t\"t\",\n\t\t[\"thirty-second\", \"demisemiquaver\"]\n\t],\n\t[\n\t\t64,\n\t\t\"sf\",\n\t\t[\"sixty-fourth\", \"hemidemisemiquaver\"]\n\t],\n\t[\n\t\t128,\n\t\t\"h\",\n\t\t[\"hundred twenty-eighth\"]\n\t],\n\t[\n\t\t256,\n\t\t\"th\",\n\t\t[\"two hundred fifty-sixth\"]\n\t]\n], he = [];\nme.forEach(([e, t, n]) => add$1(e, t, n));\nfunction add$1(e, t, n) {\n\the.push({\n\t\tempty: !1,\n\t\tdots: \"\",\n\t\tname: \"\",\n\t\tvalue: 1 / e,\n\t\tfraction: e < 1 ? [1 / e, 1] : [1, e],\n\t\tshorthand: t,\n\t\tnames: n\n\t});\n}\nn(add$1, \"add\");\n//#endregion\n//#region ../../node_modules/@tonaljs/interval/dist/index.es.js\nfunction names$1() {\n\treturn \"1P 2M 3M 4P 5P 6m 7m\".split(\" \");\n}\nn(names$1, \"names\");\nvar ge = interval, _e = /* @__PURE__ */ n((e) => interval(e).name, \"name\"), semitones = (e) => interval(e).semitones, quality = (e) => interval(e).q, num = (e) => interval(e).num;\nfunction simplify$1(e) {\n\tlet t = interval(e);\n\treturn t.empty ? \"\" : t.simple + t.q;\n}\nn(simplify$1, \"simplify\");\nfunction invert(e) {\n\tlet t = interval(e);\n\treturn t.empty ? \"\" : interval({\n\t\tstep: (7 - t.step) % 7,\n\t\talt: t.type === \"perfectable\" ? -t.alt : -(t.alt + 1),\n\t\toct: t.oct,\n\t\tdir: t.dir\n\t}).name;\n}\nvar ve = [\n\t1,\n\t2,\n\t2,\n\t3,\n\t3,\n\t4,\n\t5,\n\t5,\n\t6,\n\t6,\n\t7,\n\t7\n], ye = \"P m M m M P d P m M m M\".split(\" \");\nfunction fromSemitones(e) {\n\tlet t = e < 0 ? -1 : 1, n = Math.abs(e), r = n % 12, i = Math.floor(n / 12);\n\treturn t * (ve[r] + 7 * i) + ye[r];\n}\nvar be = distance$1, xe = combinator((e, t) => [e[0] + t[0], e[1] + t[1]]), addTo = (e) => (t) => xe(e, t), Se = {\n\tnames: names$1,\n\tget: ge,\n\tname: _e,\n\tnum,\n\tsemitones,\n\tquality,\n\tfromSemitones,\n\tdistance: be,\n\tinvert,\n\tsimplify: simplify$1,\n\tadd: xe,\n\taddTo,\n\tsubstract: combinator((e, t) => [e[0] - t[0], e[1] - t[1]])\n};\nfunction combinator(e) {\n\treturn (t, n) => {\n\t\tlet r = interval(t).coord, i = interval(n).coord;\n\t\tif (r && i) return coordToInterval(e(r, i)).name;\n\t};\n}\n//#endregion\n//#region ../../node_modules/@tonaljs/midi/dist/index.es.js\nvar Ce = Math.log(2), we = Math.log(440);\nfunction freqToMidi(e) {\n\tlet t = 12 * (Math.log(e) - we) / Ce + 69;\n\treturn Math.round(t * 100) / 100;\n}\nvar Te = \"C C# D D# E F F# G G# A A# B\".split(\" \"), Ee = \"C Db D Eb E F Gb G Ab A Bb B\".split(\" \");\nfunction midiToNoteName(e, t = {}) {\n\tif (isNaN(e) || e === -Infinity || e === Infinity) return \"\";\n\te = Math.round(e);\n\tlet n = (t.sharps === !0 ? Te : Ee)[e % 12];\n\treturn t.pitchClass ? n : n + (Math.floor(e / 12) - 1);\n}\n//#endregion\n//#region ../../node_modules/@tonaljs/note/dist/index.es.js\nvar De = [\n\t\"C\",\n\t\"D\",\n\t\"E\",\n\t\"F\",\n\t\"G\",\n\t\"A\",\n\t\"B\"\n], toName = (e) => e.name, onlyNotes = (e) => e.map(note).filter((e) => !e.empty);\nfunction names(e) {\n\treturn e === void 0 ? De.slice() : Array.isArray(e) ? onlyNotes(e).map(toName) : [];\n}\nvar G = note, name = (e) => G(e).name, pitchClass = (e) => G(e).pc, accidentals = (e) => G(e).acc, octave = (e) => G(e).oct, midi = (e) => G(e).midi, freq = (e) => G(e).freq, chroma = (e) => G(e).chroma;\nfunction fromMidi(e) {\n\treturn midiToNoteName(e);\n}\nfunction fromFreq(e) {\n\treturn midiToNoteName(freqToMidi(e));\n}\nfunction fromFreqSharps(e) {\n\treturn midiToNoteName(freqToMidi(e), { sharps: !0 });\n}\nfunction fromMidiSharps(e) {\n\treturn midiToNoteName(e, { sharps: !0 });\n}\nvar K = transpose$2, Oe = transpose$2, transposeBy = (e) => (t) => K(t, e), ke = transposeBy, transposeFrom = (e) => (t) => K(e, t), Ae = transposeFrom;\nfunction transposeFifths(e, t) {\n\tlet n = G(e);\n\tif (n.empty) return \"\";\n\tlet [r, i] = n.coord;\n\treturn coordToNote(i === void 0 ? [r + t] : [r + t, i]).name;\n}\nvar je = transposeFifths, ascending = (e, t) => e.height - t.height, descending = (e, t) => t.height - e.height;\nfunction sortedNames(e, t) {\n\treturn t ||= ascending, onlyNotes(e).sort(t).map(toName);\n}\nfunction sortedUniqNames(e) {\n\treturn sortedNames(e, ascending).filter((e, t, n) => t === 0 || e !== n[t - 1]);\n}\nvar Me = nameBuilder(!0), Ne = nameBuilder(!1);\nfunction nameBuilder(e) {\n\treturn (t) => {\n\t\tlet n = G(t);\n\t\tif (n.empty) return \"\";\n\t\tlet r = e ? n.alt > 0 : n.alt < 0, i = n.midi === null;\n\t\treturn midiToNoteName(n.midi || n.chroma, {\n\t\t\tsharps: r,\n\t\t\tpitchClass: i\n\t\t});\n\t};\n}\nvar q = {\n\tnames,\n\tget: G,\n\tname,\n\tpitchClass,\n\taccidentals,\n\toctave,\n\tmidi,\n\tascending,\n\tdescending,\n\tsortedNames,\n\tsortedUniqNames,\n\tfromMidi,\n\tfromMidiSharps,\n\tfreq,\n\tfromFreq,\n\tfromFreqSharps,\n\tchroma,\n\ttranspose: K,\n\ttr: Oe,\n\ttransposeBy,\n\ttrBy: ke,\n\ttransposeFrom,\n\ttrFrom: Ae,\n\ttransposeFifths,\n\ttrFifths: je,\n\tsimplify: Me,\n\tenharmonic: Ne\n}, Pe = {\n\tempty: !0,\n\tname: \"\",\n\tchordType: \"\"\n}, Fe = {};\nfunction get$2(e) {\n\treturn typeof e == \"string\" ? Fe[e] || (Fe[e] = parse(e)) : typeof e == \"number\" ? get$2(J[e] || \"\") : isPitch(e) ? fromPitch(e) : isNamed(e) ? get$2(e.name) : Pe;\n}\nn(get$2, \"get\");\nfunction fromPitch(e) {\n\treturn get$2(altToAcc(e.alt) + J[e.step]);\n}\nvar Ie = /^(#{1,}|b{1,}|x{1,}|)(IV|I{1,3}|VI{0,2}|iv|i{1,3}|vi{0,2})([^IViv]*)$/;\nfunction tokenize$1(e) {\n\treturn Ie.exec(e) || [\n\t\t\"\",\n\t\t\"\",\n\t\t\"\",\n\t\t\"\"\n\t];\n}\nn(tokenize$1, \"tokenize\");\nvar Le = \"I II III IV V VI VII\", J = Le.split(\" \");\nLe.toLowerCase().split(\" \");\nfunction parse(e) {\n\tlet [t, n, r, i] = tokenize$1(e);\n\tif (!r) return Pe;\n\tlet a = r.toUpperCase(), o = J.indexOf(a), s = accToAlt(n);\n\treturn {\n\t\tempty: !1,\n\t\tname: t,\n\t\troman: r,\n\t\tinterval: interval({\n\t\t\tstep: o,\n\t\t\talt: s,\n\t\t\tdir: 1\n\t\t}).name,\n\t\tacc: n,\n\t\tchordType: i,\n\t\talt: s,\n\t\tstep: o,\n\t\tmajor: r === a,\n\t\toct: 0,\n\t\tdir: 1\n\t};\n}\n//#endregion\n//#region ../../node_modules/@tonaljs/key/dist/index.es.js\nvar Re = [\n\t[\n\t\t0,\n\t\t2773,\n\t\t0,\n\t\t\"ionian\",\n\t\t\"\",\n\t\t\"Maj7\",\n\t\t\"major\"\n\t],\n\t[\n\t\t1,\n\t\t2902,\n\t\t2,\n\t\t\"dorian\",\n\t\t\"m\",\n\t\t\"m7\"\n\t],\n\t[\n\t\t2,\n\t\t3418,\n\t\t4,\n\t\t\"phrygian\",\n\t\t\"m\",\n\t\t\"m7\"\n\t],\n\t[\n\t\t3,\n\t\t2741,\n\t\t-1,\n\t\t\"lydian\",\n\t\t\"\",\n\t\t\"Maj7\"\n\t],\n\t[\n\t\t4,\n\t\t2774,\n\t\t1,\n\t\t\"mixolydian\",\n\t\t\"\",\n\t\t\"7\"\n\t],\n\t[\n\t\t5,\n\t\t2906,\n\t\t3,\n\t\t\"aeolian\",\n\t\t\"m\",\n\t\t\"m7\",\n\t\t\"minor\"\n\t],\n\t[\n\t\t6,\n\t\t3434,\n\t\t5,\n\t\t\"locrian\",\n\t\t\"dim\",\n\t\t\"m7b5\"\n\t]\n], ze = {\n\t...R,\n\tname: \"\",\n\talt: 0,\n\tmodeNum: NaN,\n\ttriad: \"\",\n\tseventh: \"\",\n\taliases: []\n}, Be = Re.map(toMode), Y = {};\nBe.forEach((e) => {\n\tY[e.name] = e, e.aliases.forEach((t) => {\n\t\tY[t] = e;\n\t});\n});\nfunction get$1(e) {\n\treturn typeof e == \"string\" ? Y[e.toLowerCase()] || ze : e && e.name ? get$1(e.name) : ze;\n}\nn(get$1, \"get\");\nfunction toMode(e) {\n\tlet [t, n, r, i, a, o, s] = e, c = s ? [s] : [], l = Number(n).toString(2);\n\treturn {\n\t\tempty: !1,\n\t\tintervals: chromaToIntervals(l),\n\t\tmodeNum: t,\n\t\tchroma: l,\n\t\tnormalized: l,\n\t\tname: i,\n\t\tsetNum: n,\n\t\talt: r,\n\t\ttriad: a,\n\t\tseventh: o,\n\t\taliases: c\n\t};\n}\n//#endregion\n//#region src/piano/utility/midi.ts\nvar Ve = /* @__PURE__ */ e(te(), 1);\nfunction transpose(e, t) {\n\tlet n = { ...e }, r = q.transpose(e.note.name + e.note.octave, Se.fromSemitones(t));\n\treturn n.note = {\n\t\tname: q.pitchClass(r),\n\t\tnumber: e.note.number + t,\n\t\toctave: q.octave(r)\n\t}, n;\n}\nfunction transposeSyllableSeq(e, t) {\n\treturn e.map((e) => transpose(e, t));\n}\nfunction eventsToSyllableSequence(e) {\n\tlet t = [];\n\te = e.filter((e) => e.type === \"noteon\").sort((e, t) => e.timestamp - t.timestamp);\n\tfor (let n = 10; n > 0; n--) for (let r = 0; r < e.length - n + 1; r++) try {\n\t\tt.push(new X(e.slice(r, r + n))), e.splice(r, n), r = -1;\n\t} catch {}\n\treturn new He(t);\n}\nvar He = class SyllableSequence {\n\tsyllables;\n\trootNote;\n\tappend(e) {\n\t\tif (this.syllables.length) try {\n\t\t\tlet t = new X(this.syllables[this.syllables.length - 1].notes.map((e) => ({\n\t\t\t\tnote: e.note,\n\t\t\t\ttimestamp: e.timestamp,\n\t\t\t\ttype: e.type,\n\t\t\t\tvelocity: e.velocity\n\t\t\t})).concat(e));\n\t\t\tthis.syllables.splice(this.syllables.length - 1, 1, t);\n\t\t} catch {\n\t\t\tthis.syllables.push(new X([e]));\n\t\t}\n\t\telse this.syllables.push(new X([e])), this.rootNote = e.note;\n\t}\n\tconstructor(e) {\n\t\te.length > 0 ? (this.syllables = e.sort((e, t) => e.timestamp - t.timestamp), this.rootNote = this.syllables[0].notes.reduce((e, t) => t.note.number < e.note.number ? t : e).note) : (this.syllables = [], this.rootNote = {\n\t\t\tname: \"C\",\n\t\t\toctave: 4,\n\t\t\tnumber: 0\n\t\t});\n\t}\n\tgrade(e) {\n\t\tlet t = [];\n\t\tfor (let n = 0; n < this.syllables.length; n++) t.push(this.syllables[n].grade(e.syllables[n]));\n\t\treturn new SyllableSequence(t);\n\t}\n\ttoString() {\n\t\tlet e = \"\";\n\t\treturn this.syllables.forEach((t, n) => {\n\t\t\te += `Syllable ${n + 1}: {\\n`, t.notes.forEach((t) => {\n\t\t\t\te += `\\t${t.note.name}\\t${t.note.number}\\t${t.timestamp} ${t.isCorrect ? \"\" : \"(incorrect)\"} ${t.isMissing ? \"(missing)\" : \"\"}\\n`;\n\t\t\t}), e += `} - ${t.timestamp}, correct: ${t.isCorrect}\\n`;\n\t\t}), e;\n\t}\n\tisCorrect() {\n\t\tlet e = !0;\n\t\treturn this.syllables.forEach((t) => {\n\t\t\tt.isCorrect === !1 ? e = !1 : t.notes.forEach((t) => {\n\t\t\t\tt.isCorrect === !1 && (e = !1);\n\t\t\t});\n\t\t}), e;\n\t}\n}, X = class Syllable {\n\tnotes;\n\tisCorrect;\n\tget timestamp() {\n\t\tlet e = 0;\n\t\treturn this.notes.forEach((t) => {\n\t\t\tif (t.timestamp === 0) return 0;\n\t\t\te += t.timestamp;\n\t\t}), e /= this.notes.length, e;\n\t}\n\tconstructor(e) {\n\t\te = e.filter((e) => e.type === \"noteon\");\n\t\tlet t = e.reduce((e, t) => e.timestamp < t.timestamp ? e : t), n = e.reduce((e, t) => e.timestamp > t.timestamp ? e : t).timestamp - t.timestamp;\n\t\tif (Syllable.gracePeriod(e.length) < n) throw Error(`Notes ${e.toString()} are not close enough together to be a syllable`);\n\t\tthis.notes = e.map((e) => ({\n\t\t\t...e,\n\t\t\tisCorrect: !0,\n\t\t\tisMissing: !1\n\t\t})).sort((e, t) => e.note.number - t.note.number);\n\t}\n\tstatic gracePeriod(e) {\n\t\treturn 1.3 * 12 * e;\n\t}\n\tgrade(e) {\n\t\treturn this.notes.length !== e.notes.length && (e.isCorrect = !1), e.notes.forEach((t) => {\n\t\t\tlet n = q.fromMidi(t.note.number), r = q.fromMidiSharps(t.note.number);\n\t\t\tn = q.pitchClass(n), r = q.pitchClass(r), t.isCorrect = this.notes.filter((e) => q.chroma(n) === q.chroma(e.note.name) || q.chroma(r) === q.chroma(e.note.name)).length >= 1, t.isCorrect || (e.isCorrect = !1);\n\t\t}), this.notes.forEach((t) => {\n\t\t\tlet n = q.fromMidi(t.note.number);\n\t\t\tn = q.pitchClass(n), e.notes.some((e) => q.chroma(e.note.name) === q.chroma(n)) || e.notes.push({\n\t\t\t\t...t,\n\t\t\t\tisMissing: !0,\n\t\t\t\tisCorrect: !1\n\t\t\t});\n\t\t}), e;\n\t}\n}, Z = class SkMidi {\n\tstatic _instance;\n\tstatic OFFSET = 5;\n\trecording = [];\n\twebmidi = Ve.default;\n\tinput;\n\toutput;\n\t_noteonListeners = [];\n\t_noteoffListeners = [];\n\tstatic _initializedWithUserConfig = !1;\n\tmidiAccess;\n\t_state = \"initializing\";\n\tget state() {\n\t\treturn this._state;\n\t}\n\t_userLookup;\n\tconstructor(e) {\n\t\tthis._userLookup = e ?? null;\n\t}\n\tasync init() {\n\t\tif (!this.midiAccess) try {\n\t\t\tnavigator.requestMIDIAccess().then((e) => {\n\t\t\t\tthis.midiAccess = e, this.midiAccess.onstatechange = (e) => {\n\t\t\t\t\tT({\n\t\t\t\t\t\ttext: `Midi device ${e.port.name} is ${e.port.state}`,\n\t\t\t\t\t\tstatus: e.port.state === \"connected\" ? k.ok : k.error\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tconsole.log(`Webmidi not enabled: ${e}`), this._state = \"notsupported\";\n\t\t}\n\t\ttry {\n\t\t\tthis.webmidi.disable();\n\t\t} catch (e) {\n\t\t\tconsole.log(`Webmidi not enabled: ${e}`), this._state = \"notsupported\";\n\t\t}\n\t\treturn new Promise((e, t) => {\n\t\t\tthis.webmidi.enable(async (n) => {\n\t\t\t\tn ? (this._state = \"notsupported\", console.log(`Webmidi not enabled: ${n}`), t(n)) : (console.log(\"Webmidi enabled\"), console.log(`Inputs: ${JSON.stringify(this.webmidi.inputs)}`), console.log(`Outputs: ${JSON.stringify(this.webmidi.outputs)}`), this.output = this.webmidi.outputs[0], this.input = this.webmidi.inputs[0], SkMidi._initializedWithUserConfig ||= (await this.loadUserConfiguration(), !0), this.input && this.output ? (console.log(\"midi init state: ready\"), this._state = \"ready\", this.attachListeners()) : (console.log(\"midi init state: nodevice\"), this._state = \"nodevice\"), e(!0));\n\t\t\t});\n\t\t});\n\t}\n\tasync loadUserConfiguration() {\n\t\ttry {\n\t\t\tif (!this._userLookup) {\n\t\t\t\tconsole.log(\"User lookup function not provided - using default MIDI configuration\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet e = await this._userLookup();\n\t\t\tif (!e) {\n\t\t\t\tconsole.log(\"No user found, using default MIDI configuration\");\n\t\t\t\treturn;\n\t\t\t}\n\t\t\tlet t = await e.getActiveCourses();\n\t\t\tfor (let n of t) {\n\t\t\t\tlet t = await (await e.getCourseInterface(n.courseID)).getCourseSettings();\n\t\t\t\tif (t?.midiinput || t?.midioutput) {\n\t\t\t\t\tt.midiinput && this.webmidi.getInputById(t.midiinput.toString()) && (this.selectInput(t.midiinput.toString()), console.log(`Loaded saved MIDI input: ${t.midiinput}`)), t.midioutput && this.webmidi.getOutputById(t.midioutput.toString()) && (this.selectOutput(t.midioutput.toString()), console.log(`Loaded saved MIDI output: ${t.midioutput}`));\n\t\t\t\t\tbreak;\n\t\t\t\t}\n\t\t\t}\n\t\t} catch (e) {\n\t\t\tconsole.error(\"Failed to load user MIDI configuration:\", e);\n\t\t}\n\t}\n\tsetStateChangeListener(e) {\n\t\tif (this.midiAccess) this.midiAccess.onstatechange = (t) => {\n\t\t\tthis.init().then(() => {\n\t\t\t\tconsole.log(`Midi state: ${this.state}`), e();\n\t\t\t}), T({\n\t\t\t\ttext: `Midi device ${t.port.name} is ${t.port.state}`,\n\t\t\t\tstatus: t.port.state === \"connected\" ? k.ok : k.error\n\t\t\t});\n\t\t};\n\t\telse try {\n\t\t\tnavigator.requestMIDIAccess().then((t) => {\n\t\t\t\tthis.midiAccess = t, this.midiAccess.onstatechange = (t) => {\n\t\t\t\t\tthis.init().then(() => {\n\t\t\t\t\t\tconsole.log(`Midi state: ${this.state}`), e();\n\t\t\t\t\t}), T({\n\t\t\t\t\t\ttext: `Midi device ${t.port.name} is ${t.port.state}`,\n\t\t\t\t\t\tstatus: t.port.state === \"connected\" ? k.ok : k.error\n\t\t\t\t\t});\n\t\t\t\t};\n\t\t\t});\n\t\t} catch (e) {\n\t\t\tconsole.log(`Webmidi not enabled: ${e}`), this._state = \"notsupported\";\n\t\t}\n\t}\n\tattachListeners() {\n\t\tthis.input && (this._noteonListeners.forEach((e) => {\n\t\t\tthis.input?.on(\"noteon\", \"all\", e);\n\t\t}), this._noteoffListeners.forEach((e) => {\n\t\t\tthis.input?.on(\"noteoff\", \"all\", e);\n\t\t}));\n\t}\n\tget hasRecording() {\n\t\treturn this.record.length > 0;\n\t}\n\tget configuredInput() {\n\t\treturn this.input ? `${this.input.manufacturer}: ${this.input.name}` : \"(Not Sure!)\";\n\t}\n\teraseRecording() {\n\t\tthis.recording = [];\n\t}\n\tstopRecording() {\n\t\tthis.input?.removeListener();\n\t}\n\trecord() {\n\t\tlet e = 0;\n\t\tif (this.input === void 0) throw Error(\"Midi input not configured!\");\n\t\tthis.input.connection === \"open\" && (this.stopRecording(), this.eraseRecording(), this.input.on(\"noteon\", \"all\", (t) => {\n\t\t\tthis.recording.length === 0 && (e = t.timestamp), this.recording.push({\n\t\t\t\tnote: t.note,\n\t\t\t\ttype: t.type,\n\t\t\t\tvelocity: t.velocity,\n\t\t\t\ttimestamp: t.timestamp - e\n\t\t\t});\n\t\t}), this.input.on(\"noteoff\", \"all\", (t) => {\n\t\t\tthis.recording.length === 0 && (e = t.timestamp), this.recording.push({\n\t\t\t\tnote: t.note,\n\t\t\t\tvelocity: t.velocity,\n\t\t\t\ttype: t.type,\n\t\t\t\ttimestamp: t.timestamp - e\n\t\t\t});\n\t\t}));\n\t}\n\taddNoteonListenter(e) {\n\t\tthis._noteonListeners.push(e), this.input && this.input.on(\"noteon\", \"all\", e);\n\t}\n\taddNoteoffListenter(e) {\n\t\tthis._noteoffListeners.push(e), this.input && this.input.on(\"noteoff\", \"all\", e);\n\t}\n\tplay(e) {\n\t\tlet t = e || this.recording;\n\t\tt = t.map((e) => ({\n\t\t\t...e,\n\t\t\ttimestamp: e.timestamp + SkMidi.OFFSET\n\t\t})), t.forEach((e) => {\n\t\t\te.type === \"noteon\" ? this.output?.playNote(e.note.name + e.note.octave, 1, {\n\t\t\t\tvelocity: e.velocity,\n\t\t\t\ttime: `+${e.timestamp}`,\n\t\t\t\trawVelocity: !1\n\t\t\t}) : this.output?.stopNote(e.note.name + e.note.octave, 1, {\n\t\t\t\tvelocity: e.velocity,\n\t\t\t\ttime: `+${e.timestamp}`,\n\t\t\t\trawVelocity: !1\n\t\t\t});\n\t\t});\n\t}\n\tstatic async instance() {\n\t\treturn SkMidi._instance ? SkMidi._instance : (console.log(\"Buzz, whirr, Midi instance factory is at work\"), SkMidi._instance = new SkMidi(), await SkMidi._instance.init(), SkMidi._instance);\n\t}\n\tget inputs() {\n\t\treturn this.webmidi.inputs;\n\t}\n\tget outputs() {\n\t\treturn this.webmidi.outputs;\n\t}\n\tselectInput(e) {\n\t\tthis.webmidi.getInputById(e) === !1 ? this.webmidi.getInputByName(e) !== !1 && (this.input = this.webmidi.getInputByName(e)) : this.input = this.webmidi.getInputById(e);\n\t}\n\tselectOutput(e) {\n\t\tthis.webmidi.getOutputById(e) === !1 ? this.webmidi.getOutputByName(e) !== !1 && (this.output = this.webmidi.getOutputByName(e)) : this.output = this.webmidi.getOutputById(e);\n\t}\n}, Ue = p({\n\tname: \"SyllableSeqVis\",\n\tprops: {\n\t\tseq: {\n\t\t\ttype: Object,\n\t\t\trequired: !0\n\t\t},\n\t\tlastTSsuggestion: {\n\t\t\ttype: Number,\n\t\t\trequired: !1,\n\t\t\tdefault: 0\n\t\t}\n\t},\n\tsetup(e) {\n\t\tlet t = v(0), n = v(0), r = v(0), i = v(500), sayNote = (e) => {\n\t\t\tconsole.log(`${JSON.stringify(e)}`);\n\t\t}, a = o(() => {\n\t\t\tlet t = e.seq.syllables[e.seq.syllables.length - 1].timestamp;\n\t\t\treturn Math.max(1, t, e.lastTSsuggestion);\n\t\t}), s = o(() => {\n\t\t\tlet t = 0, n = 500;\n\t\t\treturn e.seq.syllables.forEach((e) => {\n\t\t\t\te.notes.forEach((e) => {\n\t\t\t\t\te.note.number > t && (t = e.note.number), e.note.number < n && (n = e.note.number);\n\t\t\t\t});\n\t\t\t}), Math.max(3 * (t - n) + 10, 0);\n\t\t}), updateBounds = () => {\n\t\t\ttry {\n\t\t\t\tt.value = e.seq.syllables[0].timestamp;\n\t\t\t\tlet r = e.seq.syllables[e.seq.syllables.length - 1].timestamp, i = t.value + e.lastTSsuggestion;\n\t\t\t\tn.value = Math.max(r, i);\n\t\t\t} catch (e) {\n\t\t\t\tconsole.log(`[SyllableSeqVis] Error updating bounds: ${e}`);\n\t\t\t}\n\t\t\te.seq.syllables.forEach((e) => {\n\t\t\t\te.notes.forEach((e) => {\n\t\t\t\t\te.note.number > r.value && (r.value = e.note.number), e.note.number < i.value && (i.value = e.note.number);\n\t\t\t\t});\n\t\t\t});\n\t\t};\n\t\treturn g(() => {\n\t\t\tconsole.log(`SyllableSeqVis created w/ input: \\n${e.seq}`), updateBounds();\n\t\t}), {\n\t\t\tfirstTS: t,\n\t\t\tlastTS: n,\n\t\t\thigh: r,\n\t\t\tlow: i,\n\t\t\tsayNote,\n\t\t\tgetLastTS: a,\n\t\t\tgetHeight: s,\n\t\t\tupdateBounds\n\t\t};\n\t}\n}), We = [\"height\"], Ge = [\n\t\"cx\",\n\t\"cy\",\n\t\"alt\",\n\t\"fill\",\n\t\"stroke\",\n\t\"onMouseenter\"\n];\nfunction _sfc_render$3(e, t, n, r, i, o) {\n\treturn _(), l(\"div\", null, [(_(), l(\"svg\", {\n\t\twidth: 510,\n\t\theight: Math.max(3 * (e.high - e.low) + 10, 0)\n\t}, [(_(!0), l(a, null, y(e.seq.syllables, (t) => (_(), l(a, null, [(_(!0), l(a, null, y(t.notes, (n) => (_(), l(\"circle\", {\n\t\tkey: t.timestamp + \"-\" + n.note.number,\n\t\tcx: (t.timestamp - e.firstTS) * 500 / (e.lastTS - e.firstTS) + 4,\n\t\tcy: 3 * (e.high - n.note.number) + 4,\n\t\talt: n.note.name,\n\t\tr: \"3\",\n\t\tfill: n.isCorrect ? \"black\" : n.isMissing ? \"none\" : \"red\",\n\t\tstroke: n.isMissing ? \"red\" : \"none\",\n\t\tonMouseenter: (t) => e.sayNote(n)\n\t}, null, 40, Ge))), 128))], 64))), 256))], 8, We))]);\n}\nn(_sfc_render$3, \"_sfc_render\");\nvar Ke = /* @__PURE__ */ r(Ue, [[\"render\", _sfc_render$3], [\"__scopeId\", \"data-v-2f79c080\"]]), qe = p({\n\tname: \"NoteDisplay\",\n\tprops: { chroma: {\n\t\ttype: Number,\n\t\trequired: !0\n\t} },\n\tsetup(e) {\n\t\tlet style = (t) => {\n\t\t\tlet n = \"#ffffff\";\n\t\t\treturn t === e.chroma ? n = \"#1976D2\" : (t === 1 || t === 3 || t === 6 || t === 8 || t === 10 || t === -2) && (n = \"#000000\"), {\n\t\t\t\tfill: n,\n\t\t\t\t\"fill-opacity\": 1,\n\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\"stroke-width\": .79375,\n\t\t\t\t\"stroke-miterlimit\": 4,\n\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\"stroke-opacity\": 1\n\t\t\t};\n\t\t};\n\t\treturn {\n\t\t\tstyle,\n\t\t\twhite: -1,\n\t\t\tblack: -2\n\t\t};\n\t}\n}), Je = {\n\tid: \"svg8\",\n\twidth: \"300px\",\n\theight: \"auto\",\n\t\"xmlns:dc\": \"http://purl.org/dc/elements/1.1/\",\n\t\"xmlns:cc\": \"http://creativecommons.org/ns#\",\n\t\"xmlns:rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\n\t\"xmlns:svg\": \"http://www.w3.org/2000/svg\",\n\txmlns: \"http://www.w3.org/2000/svg\",\n\t\"xmlns:sodipodi\": \"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\",\n\t\"xmlns:inkscape\": \"http://www.inkscape.org/namespaces/inkscape\",\n\t\"sodipodi:docname\": \"keys.svg\",\n\t\"inkscape:version\": \"1.0rc1 (09960d6f05, 2020-04-09)\",\n\tversion: \"1.1\",\n\tviewBox: \"0 0 175.24936 73.594925\"\n}, Ye = { id: \"metadata5\" }, Xe = {\n\tid: \"layer1\",\n\ttransform: \"translate(167.75219,-151.96011)\",\n\t\"inkscape:groupmode\": \"layer\",\n\t\"inkscape:label\": \"Layer 1\"\n};\nfunction _sfc_render$2(e, t, n, r, i, a) {\n\tlet o = b(\"sodipodi:namedview\"), s = b(\"dc:format\"), c = b(\"dc:type\"), p = b(\"dc:title\"), h = b(\"cc:Work\"), g = b(\"rdf:RDF\");\n\treturn _(), l(\"svg\", Je, [\n\t\tt[1] ||= u(\"defs\", { id: \"defs2\" }, null, -1),\n\t\tf(o, {\n\t\t\tid: \"base\",\n\t\t\t\"inkscape:window-maximized\": \"1\",\n\t\t\t\"inkscape:window-y\": \"726\",\n\t\t\t\"inkscape:window-x\": \"1491\",\n\t\t\t\"inkscape:window-height\": \"1321\",\n\t\t\t\"inkscape:window-width\": \"2400\",\n\t\t\tshowborder: \"false\",\n\t\t\tshowgrid: \"false\",\n\t\t\t\"inkscape:document-rotation\": \"0\",\n\t\t\t\"inkscape:current-layer\": \"layer1\",\n\t\t\t\"inkscape:document-units\": \"mm\",\n\t\t\t\"inkscape:cy\": \"255.88343\",\n\t\t\t\"inkscape:cx\": \"754.94284\",\n\t\t\t\"inkscape:zoom\": \"0.98994949\",\n\t\t\t\"inkscape:pageshadow\": \"2\",\n\t\t\t\"inkscape:pageopacity\": \"0.0\",\n\t\t\tborderopacity: \"1.0\",\n\t\t\tbordercolor: \"#666666\",\n\t\t\tpagecolor: \"#ffffff\"\n\t\t}),\n\t\tu(\"metadata\", Ye, [f(g, null, {\n\t\t\tdefault: S(() => [f(h, { \"rdf:about\": \"\" }, {\n\t\t\t\tdefault: S(() => [\n\t\t\t\t\tf(s, null, {\n\t\t\t\t\t\tdefault: S(() => t[0] ||= [d(\"image/svg+xml\")]),\n\t\t\t\t\t\t_: 1\n\t\t\t\t\t}),\n\t\t\t\t\tf(c, { \"rdf:resource\": \"http://purl.org/dc/dcmitype/StillImage\" }),\n\t\t\t\t\tf(p)\n\t\t\t\t]),\n\t\t\t\t_: 1\n\t\t\t})]),\n\t\t\t_: 1\n\t\t})]),\n\t\tu(\"g\", Xe, [\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845\",\n\t\t\t\ty: \"152.19064\",\n\t\t\t\tx: \"-150.12129\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\tstyle: m(e.style(0))\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-9\",\n\t\t\t\tstyle: m(e.style(2)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-132.63466\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-6\",\n\t\t\t\tstyle: m(e.style(4)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-115.14803\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-4\",\n\t\t\t\tstyle: m(e.style(5)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-97.661407\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-92\",\n\t\t\t\tstyle: m(e.style(7)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-80.174782\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-3\",\n\t\t\t\tstyle: m(e.style(9)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-62.688156\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-0\",\n\t\t\t\tstyle: m(e.style(11)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-45.20153\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-30\",\n\t\t\t\tstyle: m(e.style(e.white)),\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-27.714905\",\n\t\t\t\ty: \"152.10745\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898\",\n\t\t\t\try: \"0\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\tx: \"-138.43532\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\tstyle: m(e.style(1))\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-3\",\n\t\t\t\tstyle: m(e.style(3)),\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-120.84978\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-7\",\n\t\t\t\tstyle: m(e.style(6)),\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-85.678711\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-8\",\n\t\t\t\tstyle: m(e.style(8)),\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-68.09317\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-1\",\n\t\t\t\tstyle: m(e.style(10)),\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-50.507633\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-30-1\",\n\t\t\t\ty: \"152.10745\",\n\t\t\t\tx: \"-10.228278\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\tstyle: m(e.style(e.white))\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-30-9\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\tx: \"-167.60791\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\tstyle: m(e.style(e.white))\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-4\",\n\t\t\t\tstyle: m(e.style(e.black)),\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-15.336554\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-74\",\n\t\t\t\tstyle: m(e.style(e.black)),\n\t\t\t\twidth: \"4.4679713\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-167.60791\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-10\",\n\t\t\t\tstyle: m(e.style(e.black)),\n\t\t\t\twidth: \"5.1863246\",\n\t\t\t\theight: \"54.507248\",\n\t\t\t\tx: \"2.2092075\",\n\t\t\t\ty: \"152.06175\",\n\t\t\t\try: \"0\"\n\t\t\t}, null, 4)\n\t\t])\n\t]);\n}\nn(_sfc_render$2, \"_sfc_render\");\n//#endregion\n//#region src/piano/questions/echo/Playback.vue?vue&type=script&lang.ts\nvar Ze = p({\n\tname: \"Playback\",\n\tcomponents: {\n\t\tSyllableSeqVis: Ke,\n\t\tNoteDisplay: /* @__PURE__ */ r(qe, [[\"render\", _sfc_render$2]])\n\t},\n\tprops: {\n\t\tdata: {\n\t\t\ttype: Array,\n\t\t\trequired: !0\n\t\t},\n\t\tmodifyDifficulty: {\n\t\t\ttype: Number,\n\t\t\trequired: !1,\n\t\t\tdefault: 0\n\t\t}\n\t},\n\tsetup(e, { emit: t }) {\n\t\tlet n = ee(e, t, \"Playback\"), r = E(n), i = v(), a = v(!1), s = v(\"notSet\"), c = v(!1), l = v(0), u = v(A.utc()), d = v(0), f = v(0), p = v(eventsToSyllableSequence([])), m = v(!1), _ = v(eventsToSyllableSequence([])), y = v(0), b = v(\"\"), x = v(0), S = v(0), C = v(), D = v();\n\t\tr.question.value = new Q(e.data);\n\t\tlet O = o(() => new Q(e.data)), te = o(() => eventsToSyllableSequence(O.value.midi).syllables[0].notes.length > 1 ? \"Lowest note of first chord:\" : \"First note:\"), j = o(() => a.value ? eventsToSyllableSequence(O.value.midi).rootNote.number % 12 : 0), init = () => {\n\t\t\ts.value ? s.value !== i.value?.state && (a.value = !1, s.value = i.value?.state || \"notSet\", a.value = !0) : (s.value = i.value?.state || \"notSet\", a.value = !0), n.logger.log(`Playback is running init with state: ${s.value}`), s.value === \"ready\" && (d.value = O.value.duration, play());\n\t\t}, runProgressBar = () => {\n\t\t\ttry {\n\t\t\t\tC.value && (C.value.style.animationName = \"\", requestAnimationFrame(() => {\n\t\t\t\t\trequestAnimationFrame(() => {\n\t\t\t\t\t\tC.value && (C.value.style.animationDuration = d.value + \"ms\", C.value.style.animationName = \"progress\");\n\t\t\t\t\t});\n\t\t\t\t}));\n\t\t\t} catch {\n\t\t\t\tsetTimeout(runProgressBar, 50);\n\t\t\t}\n\t\t}, record = () => {\n\t\t\ti.value?.record(), c.value = !0, i.value?.addNoteonListenter((e) => {\n\t\t\t\tx.value++, _.value.append(e), D.value?.updateBounds(), x.value + S.value >= O.value.midi.length && submit();\n\t\t\t}), i.value?.addNoteoffListenter(() => {\n\t\t\t\tS.value++, x.value + S.value >= O.value.midi.length && submit();\n\t\t\t});\n\t\t}, play = () => {\n\t\t\ti.value?.stopRecording(), i.value?.eraseRecording(), u.value = A.utc(), x.value = 0, S.value = 0, c.value = !1, l.value = 0, runProgressBar(), i.value?.play(O.value.midi), setTimeout(() => {\n\t\t\t\tn.logger.log(\"done playback...\"), record();\n\t\t\t}, O.value.lastNoteOnTimestamp);\n\t\t}, submit = () => {\n\t\t\tif (!i.value?.recording) return !1;\n\t\t\tlet e = eventsToSyllableSequence(O.value.midi), t = eventsToSyllableSequence(i.value.recording);\n\t\t\treturn p.value = e.grade(t), _.value = eventsToSyllableSequence([]), r.submitAnswer(i.value.recording).isCorrect ? !0 : (f.value++, m.value = !0, f.value < r.maxAttemptsPerView.value && play(), !1);\n\t\t}, clearAttempt = () => {\n\t\t\tx.value > 0 ? submit() : play();\n\t\t};\n\t\treturn g(async () => {\n\t\t\ttry {\n\t\t\t\ti.value = await Z.instance(), i.value.setStateChangeListener(() => {\n\t\t\t\t\tinit();\n\t\t\t\t}), a.value = !0;\n\t\t\t} catch (e) {\n\t\t\t\tT({\n\t\t\t\t\tstatus: k.error,\n\t\t\t\t\ttext: \"Midi device not supported\"\n\t\t\t\t}), b.value = JSON.stringify(e), s.value = \"notsupported\", a.value = !0;\n\t\t\t}\n\t\t\tinit(), w.addBinding([{\n\t\t\t\thotkey: \"space\",\n\t\t\t\tcallback: clearAttempt,\n\t\t\t\tcommand: \"Clear attempt or play again\"\n\t\t\t}]);\n\t\t}), h(() => {\n\t\t\tw.removeBinding(\"space\");\n\t\t}), {\n\t\t\t...n,\n\t\t\t...r,\n\t\t\tinitialized: a,\n\t\t\tstate: s,\n\t\t\trecording: c,\n\t\t\tinputSeq: _,\n\t\t\tlastTSsuggestion: y,\n\t\t\tgradedSeq: p,\n\t\t\tgraded: m,\n\t\t\tpromptText: te,\n\t\t\tfirstNoteChroma: j,\n\t\t\tprogressBar: C,\n\t\t\tinputVisRef: D,\n\t\t\tclearAttempt,\n\t\t\tnotesOn: x\n\t\t};\n\t}\n}), Qe = {\n\tkey: 0,\n\t\"data-viewable\": \"Playback\"\n}, $e = { key: 0 }, et = { class: \"text-h4\" }, tt = { class: \"text-h5\" }, nt = { key: 0 }, rt = { class: \"progressContainer\" }, it = {\n\tid: \"progress\",\n\tref: \"progressBar\"\n}, at = { key: 1 }, ot = { key: 2 };\nfunction _sfc_render$1(e, t, n, r, i, a) {\n\tlet o = b(\"note-display\"), p = b(\"v-icon\"), m = b(\"v-btn\"), h = b(\"syllable-seq-vis\");\n\treturn e.initialized ? (_(), l(\"div\", Qe, [e.state === \"ready\" ? (_(), l(\"div\", $e, [\n\t\tu(\"div\", et, [d(x(e.promptText) + \" \", 1), f(o, { chroma: e.firstNoteChroma }, null, 8, [\"chroma\"])]),\n\t\tu(\"div\", tt, [t[0] ||= d(\"Listen...\"), e.recording ? (_(), l(\"span\", nt, \" and Repeat\")) : c(\"\", !0)]),\n\t\tu(\"div\", rt, [u(\"div\", it, null, 512)]),\n\t\tf(m, {\n\t\t\tcolor: \"primary\",\n\t\t\tautofocus: \"\",\n\t\t\tonClick: e.clearAttempt\n\t\t}, {\n\t\t\tdefault: S(() => [t[2] ||= d(\" Play again \"), f(p, { end: \"\" }, {\n\t\t\t\tdefault: S(() => t[1] ||= [d(\"volume_up\")]),\n\t\t\t\t_: 1\n\t\t\t})]),\n\t\t\t_: 1\n\t\t}, 8, [\"onClick\"]),\n\t\t(_(), s(h, {\n\t\t\tkey: 0,\n\t\t\tref: \"inputVisRef\",\n\t\t\tseq: e.inputSeq,\n\t\t\t\"last-t-ssuggestion\": e.lastTSsuggestion\n\t\t}, null, 8, [\"seq\", \"last-t-ssuggestion\"])),\n\t\te.graded ? (_(), s(h, {\n\t\t\tkey: 1,\n\t\t\tseq: e.gradedSeq\n\t\t}, null, 8, [\"seq\"])) : c(\"\", !0)\n\t])) : e.state === \"nodevice\" ? (_(), l(\"div\", at, \"No midi device detected. Please attach one!\")) : e.state === \"notsupported\" ? (_(), l(\"div\", ot, t[3] ||= [u(\"p\", null, \"This exercise requires a midi input device, which is not supported by this browser ☹\", -1), u(\"div\", null, [u(\"p\", null, \"Please try again with one of the following browsers:\"), u(\"ul\", null, [\n\t\tu(\"li\", null, [u(\"a\", { href: \"https://www.google.com/chrome/\" }, \"Google Chrome\")]),\n\t\tu(\"li\", null, [u(\"a\", { href: \"https://www.microsoft.com/edge\" }, \"Microsoft Edge\")]),\n\t\tu(\"li\", null, [u(\"a\", { href: \"https://brave.com/\" }, \"Brave\")])\n\t])], -1)])) : c(\"\", !0)])) : c(\"\", !0);\n}\nn(_sfc_render$1, \"_sfc_render\");\nvar st = /* @__PURE__ */ r(Ze, [[\"render\", _sfc_render$1]]), ct = [{\n\tname: \"Melody\",\n\ttype: O.MIDI\n}], Q = class EchoQuestion extends C {\n\tstatic dataShapes = [{\n\t\tfields: ct,\n\t\tname: D.PIANO_Echo\n\t}];\n\tstatic views = [st];\n\tmidi;\n\tconstructor(e) {\n\t\tsuper(e), this.midi = e[0].Melody;\n\t}\n\tget duration() {\n\t\treturn this.midi.reduce((e, t) => t.timestamp > e.timestamp ? t : e).timestamp;\n\t}\n\tget lastNoteOnTimestamp() {\n\t\treturn this.midi.filter((e) => e.type === \"noteon\").reduce((e, t) => t.timestamp > e.timestamp ? t : e).timestamp;\n\t}\n\tisCorrect(e) {\n\t\tlet t = eventsToSyllableSequence(this.midi), n = eventsToSyllableSequence(e);\n\t\ttry {\n\t\t\treturn t.grade(n).isCorrect();\n\t\t} catch (e) {\n\t\t\treturn console.log(\"ERROR grading this midi sequence!\", e), !1;\n\t\t}\n\t}\n\tdataShapes() {\n\t\treturn EchoQuestion.dataShapes;\n\t}\n\tviews() {\n\t\treturn EchoQuestion.views;\n\t}\n}, lt = p({\n\tname: \"NotePlayback\",\n\tcomponents: {},\n\tprops: {\n\t\tdata: {\n\t\t\ttype: Array,\n\t\t\trequired: !0\n\t\t},\n\t\tmodifyDifficulty: {\n\t\t\ttype: Number,\n\t\t\trequired: !1,\n\t\t\tdefault: 0\n\t\t}\n\t},\n\tsetup(e, { emit: t }) {\n\t\tlet n = ee(e, t, \"NotePlayback\"), r = E(n), i = v(), a = v(!1), s = v(!1), c = v(0), l = v(A.utc()), u = v(0), d = v(eventsToSyllableSequence([])), f = v(!1), p = v(eventsToSyllableSequence([])), m = v(\"\");\n\t\tr.question.value = new $(e.data);\n\t\tlet h = o(() => new $(e.data)), record = () => {\n\t\t\ti.value?.record(), s.value = !0, i.value?.addNoteonListenter((e) => {\n\t\t\t\tp.value.append(e);\n\t\t\t}), i.value?.addNoteoffListenter(() => {\n\t\t\t\ti.value?.recording?.length && i.value?.recording?.length >= 2 && submit();\n\t\t\t});\n\t\t}, play = () => {\n\t\t\ti.value?.stopRecording(), i.value?.eraseRecording(), l.value = A.utc(), s.value = !1, c.value = 0, record();\n\t\t}, submit = () => i.value?.recording ? (p.value = eventsToSyllableSequence([]), r.submitAnswer(i.value.recording).isCorrect ? !0 : (u.value++, f.value = !0, u.value < r.maxAttemptsPerView.value && play(), !1)) : !1;\n\t\treturn g(async () => {\n\t\t\ttry {\n\t\t\t\ti.value = await Z.instance(), m.value = h.value.note, play(), a.value = !0;\n\t\t\t} catch (e) {\n\t\t\t\tn.logger.error(\"Failed to initialize MIDI:\", e);\n\t\t\t}\n\t\t}), {\n\t\t\t...n,\n\t\t\t...r,\n\t\t\tinitialized: a,\n\t\t\trecording: s,\n\t\t\tinputSeq: p,\n\t\t\tgradedSeq: d,\n\t\t\tgraded: f,\n\t\t\tnote: m,\n\t\t\tattempts: u\n\t\t};\n\t}\n}), ut = { \"data-viewable\": \"NotePlayback\" }, dt = { class: \"text-h4\" }, ft = { class: \"font-weight-bold\" }, pt = {\n\tkey: 0,\n\tid: \"svg8\",\n\twidth: \"300px\",\n\theight: \"auto\",\n\t\"xmlns:dc\": \"http://purl.org/dc/elements/1.1/\",\n\t\"xmlns:cc\": \"http://creativecommons.org/ns#\",\n\t\"xmlns:rdf\": \"http://www.w3.org/1999/02/22-rdf-syntax-ns#\",\n\t\"xmlns:svg\": \"http://www.w3.org/2000/svg\",\n\txmlns: \"http://www.w3.org/2000/svg\",\n\t\"xmlns:sodipodi\": \"http://sodipodi.sourceforge.net/DTD/sodipodi-0.dtd\",\n\t\"xmlns:inkscape\": \"http://www.inkscape.org/namespaces/inkscape\",\n\t\"sodipodi:docname\": \"keys.svg\",\n\t\"inkscape:version\": \"1.0rc1 (09960d6f05, 2020-04-09)\",\n\tversion: \"1.1\",\n\tviewBox: \"0 0 175.24936 73.594925\"\n}, mt = { id: \"metadata5\" };\nfunction _sfc_render(e, t, n, r, i, a) {\n\tlet o = b(\"sodipodi:namedview\"), s = b(\"dc:format\"), p = b(\"dc:type\"), m = b(\"dc:title\"), h = b(\"cc:Work\"), g = b(\"rdf:RDF\");\n\treturn _(), l(\"div\", ut, [u(\"div\", dt, [t[0] ||= d(\" Play the note: \"), u(\"span\", ft, x(e.note), 1)]), e.graded ? (_(), l(\"svg\", pt, [\n\t\tt[2] ||= u(\"defs\", { id: \"defs2\" }, null, -1),\n\t\tf(o, {\n\t\t\tid: \"base\",\n\t\t\t\"inkscape:window-maximized\": \"1\",\n\t\t\t\"inkscape:window-y\": \"726\",\n\t\t\t\"inkscape:window-x\": \"1491\",\n\t\t\t\"inkscape:window-height\": \"1321\",\n\t\t\t\"inkscape:window-width\": \"2400\",\n\t\t\tshowborder: \"false\",\n\t\t\tshowgrid: \"false\",\n\t\t\t\"inkscape:document-rotation\": \"0\",\n\t\t\t\"inkscape:current-layer\": \"layer1\",\n\t\t\t\"inkscape:document-units\": \"mm\",\n\t\t\t\"inkscape:cy\": \"255.88343\",\n\t\t\t\"inkscape:cx\": \"754.94284\",\n\t\t\t\"inkscape:zoom\": \"0.98994949\",\n\t\t\t\"inkscape:pageshadow\": \"2\",\n\t\t\t\"inkscape:pageopacity\": \"0.0\",\n\t\t\tborderopacity: \"1.0\",\n\t\t\tbordercolor: \"#666666\",\n\t\t\tpagecolor: \"#ffffff\"\n\t\t}),\n\t\tu(\"metadata\", mt, [f(g, null, {\n\t\t\tdefault: S(() => [f(h, { \"rdf:about\": \"\" }, {\n\t\t\t\tdefault: S(() => [\n\t\t\t\t\tf(s, null, {\n\t\t\t\t\t\tdefault: S(() => t[1] ||= [d(\"image/svg+xml\")]),\n\t\t\t\t\t\t_: 1\n\t\t\t\t\t}),\n\t\t\t\t\tf(p, { \"rdf:resource\": \"http://purl.org/dc/dcmitype/StillImage\" }),\n\t\t\t\t\tf(m)\n\t\t\t\t]),\n\t\t\t\t_: 1\n\t\t\t})]),\n\t\t\t_: 1\n\t\t})]),\n\t\tt[3] ||= u(\"g\", {\n\t\t\tid: \"layer1\",\n\t\t\ttransform: \"translate(167.75219,-151.96011)\",\n\t\t\t\"inkscape:groupmode\": \"layer\",\n\t\t\t\"inkscape:label\": \"Layer 1\"\n\t\t}, [\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845\",\n\t\t\t\ty: \"152.19064\",\n\t\t\t\tx: \"-150.12129\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t}\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-9\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-132.63466\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-6\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-115.14803\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-0\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-45.20153\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-92\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-80.174782\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-3\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-62.688156\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-4\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-97.661407\",\n\t\t\t\ty: \"152.19064\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-30\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\tx: \"-27.714905\",\n\t\t\t\ty: \"152.10745\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898\",\n\t\t\t\try: \"0\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\tx: \"-138.43532\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t}\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-3\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-120.84978\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-7\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-85.678711\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-8\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-68.09317\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-1\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-50.507633\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-30-1\",\n\t\t\t\ty: \"152.10745\",\n\t\t\t\tx: \"-10.228278\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t}\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect845-30-9\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\tx: \"-167.60791\",\n\t\t\t\theight: \"73.220116\",\n\t\t\t\twidth: \"17.486626\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#ffffff\",\n\t\t\t\t\t\"fill-opacity\": \"0\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t}\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-4\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"10.466455\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-15.336554\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-74\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"4.4679713\",\n\t\t\t\theight: \"54.415863\",\n\t\t\t\tx: \"-167.60791\",\n\t\t\t\ty: \"152.10744\",\n\t\t\t\try: \"0\"\n\t\t\t}),\n\t\t\tu(\"rect\", {\n\t\t\t\tid: \"rect898-10\",\n\t\t\t\tstyle: {\n\t\t\t\t\tfill: \"#000000\",\n\t\t\t\t\t\"fill-opacity\": \"1\",\n\t\t\t\t\tstroke: \"#000000\",\n\t\t\t\t\t\"stroke-width\": \"0.79375\",\n\t\t\t\t\t\"stroke-miterlimit\": \"4\",\n\t\t\t\t\t\"stroke-dasharray\": \"none\",\n\t\t\t\t\t\"stroke-opacity\": \"1\"\n\t\t\t\t},\n\t\t\t\twidth: \"5.1863246\",\n\t\t\t\theight: \"54.507248\",\n\t\t\t\tx: \"2.2092075\",\n\t\t\t\ty: \"152.06175\",\n\t\t\t\try: \"0\"\n\t\t\t})\n\t\t], -1)\n\t])) : c(\"\", !0)]);\n}\nvar ht = /* @__PURE__ */ r(lt, [[\"render\", _sfc_render]]), gt = [{\n\tname: \"Note\",\n\ttype: O.STRING\n}], _t = [\n\t\"A\",\n\t\"B\",\n\t\"C\",\n\t\"D\",\n\t\"E\",\n\t\"F\",\n\t\"G\",\n\t\"A♯\",\n\t\"C♯\",\n\t\"D♯\",\n\t\"F♯\",\n\t\"G♯\",\n\t\"D♭\",\n\t\"E♭\",\n\t\"G♭\",\n\t\"A♭\",\n\t\"B♭\"\n], $ = class PlayNote extends C {\n\tstatic dataShapes = [{\n\t\tfields: gt,\n\t\tname: D.PIANO_PlayNote\n\t}];\n\tstatic seedData = _t.map((e) => ({ Note: e }));\n\tstatic views = [ht];\n\tnote;\n\tconstructor(e) {\n\t\tsuper(e), this.note = e[0].Note;\n\t}\n\tisCorrect(e) {\n\t\treturn e[0].note.name === this.note;\n\t}\n\tdataShapes() {\n\t\treturn PlayNote.dataShapes;\n\t}\n\tviews() {\n\t\treturn PlayNote.views;\n\t}\n}, vt = new i(\"piano\", [Q, $]);\n//#endregion\nexport { eventsToSyllableSequence as a, He as i, Ke as n, transposeSyllableSeq as o, Z as r, vt as t };\n\n//# sourceMappingURL=piano-DF1g6yaX.js.map"],"mappings":"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3B,IAAI,EAAI,EAAE,MAAM,GAAG,CACnB,OAAO,EAAE,KAAK,EAAG,IAAM,OAAO,EAAG,EAAE,CAAC,KAAK,GAAG,CAAC,CAE9C,SAAS,cAAc,EAAG,KACrB,EAAI,eAAe,EAAE,CAAE,EAAI,gBAAgB,EAAE,CAAC,IAAI,eAAe,CAAC,OAAQ,GAAM,GAAK,KAAK,CAAC,MAAM,CAAC,GACtG,MAAO,CACN,MAAO,CAAC,EACR,KAAM,GACN,OAAQ,EACR,OAAQ,EACR,WAAY,eAAe,EAAE,CAC7B,UAAW,kBAAkB,EAAE,CAC/B,CAEF,SAAS,aAAa,EAAG,CACxB,GAAI,EAAE,SAAW,EAAG,OAAO,EAAE,WACzB,EAAG,EAAI,CACV,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,EACA,CACD,IAAK,IAAI,EAAI,EAAG,EAAI,EAAE,OAAQ,IAAK,EAAI,KAAK,EAAE,GAAG,CAAE,EAAE,QAAU,EAAI,SAAS,EAAE,GAAG,EAAG,EAAE,QAAU,EAAE,EAAE,QAAU,GAC9G,OAAO,EAAE,KAAK,GAAG,KAId,GAAK,CACR,CACC,WACA,QACA,OACA,CACD,CACC,cACA,gBACA,wBACA,CACD,CACC,iBACA,cACA,aACA,CACD,CACC,qBACA,mBACA,kBACA,CACD,CACC,cACA,QACA,kBACA,CACD,CACC,iBACA,cACA,aACA,CACD,CACC,cACA,2BACA,YACA,CACD,CACC,kBACA,+BACA,qCACA,CACD,CACC,WACA,QACA,UACA,CACD,CACC,cACA,gBACA,iBACA,CACD,CACC,cACA,sBACA,yCACA,CACD,CACC,cACA,cACA,QACA,CACD,CACC,iBACA,cACA,QACA,CACD,CACC,iBACA,oBACA,gBACA,CACD,CACC,qBACA,iBACA,UACA,CACD,CACC,qBACA,mBACA,UACA,CACD,CACC,WACA,aACA,UACA,CACD,CACC,cACA,qBACA,aACA,CACD,CACC,cACA,kBACA,mBACA,CACD,CACC,cACA,mBACA,QACA,CACD,CACC,iBACA,iBACA,IACA,CACD,CACC,qBACA,sBACA,KACA,CACD,CACC,kBACA,0BACA,WACA,CACD,CACC,iBACA,sBACA,MACA,CACD,CACC,iBACA,uBACA,MACA,CACD,CACC,cACA,UACA,OACA,CACD,CACC,WACA,mBACA,WACA,CACD,CACC,WACA,mBACA,OACA,CACD,CACC,cACA,2BACA,aACA,CACD,CACC,kBACA,WACA,KACA,CACD,CACC,iBACA,8BACA,6BACA,CACD,CACC,QACA,QACA,IACA,CACD,CACC,WACA,YACA,eACA,CACD,CACC,WACA,kBACA,aACA,CACD,CACC,cACA,oBACA,2BACA,CACD,CACC,qBACA,gCACA,sBACA,CACD,CACC,cACA,GACA,iBACA,CACD,CACC,iBACA,GACA,gBACA,CACD,CACC,cACA,GACA,sBACA,CACD,CACC,iBACA,GACA,mBACA,CACD,CACC,iBACA,GACA,SACA,CACD,CACC,qBACA,GACA,SACA,CACD,CACC,iBACA,GACA,cACA,CACD,CACC,qBACA,GACA,WACA,CACD,CACC,cACA,GACA,SACA,CACD,CACC,cACA,GACA,gBACA,CACD,CACC,kBACA,GACA,sBACA,CACD,CACC,oBACA,GACA,UACA,CACD,CACC,qBACA,GACA,QACA,CACD,CACC,iBACA,GACA,UACA,CACD,CACC,iBACA,GACA,MACA,CACD,CACC,qBACA,GACA,YACA,CACD,CACC,yBACA,GACA,8BACA,CACD,CACC,iBACA,GACA,OACA,CACD,CACC,sBACA,GACA,iBACA,CACD,CACC,kBACA,GACA,kBACA,CACD,CACC,qBACA,GACA,qBACA,CACD,CACC,yBACA,GACA,UACA,CACD,CACC,yBACA,GACA,YACA,CACD,CACC,qBACA,GACA,OACA,CACD,CACC,qBACA,GACA,SACA,CACD,CACC,qBACA,GACA,eACA,CACD,CACC,yBACA,GACA,kBACA,CACD,CACC,yBACA,GACA,iBACA,CACD,CACC,qBACA,GACA,qBACA,CACD,CACC,yBACA,GACA,UACA,CACD,CACC,yBACA,GACA,+BACA,CACD,CACC,qBACA,GACA,OACA,CACD,CACC,qBACA,GACA,SACA,CACD,CACC,oBACA,GACA,QACA,CACD,CACC,cACA,GACA,oBACA,CACD,CACC,cACA,GACA,SACA,CACD,CACC,WACA,GACA,MACA,CACD,CACC,oBACA,GACA,OACA,CACD,CACC,cACA,GACA,OACA,CACD,CACC,iBACA,GACA,OACA,CACD,CACC,cACA,GACA,MACA,CACD,CACC,iBACA,GACA,MACA,CACD,CACC,WACA,GACA,OACA,CACD,CACC,eACA,GACA,OACA,CACD,CACC,cACA,GACA,OACA,CACD,CACC,kBACA,GACA,QACA,CACD,CACC,kBACA,GACA,OACA,CACD,CACC,cACA,GACA,QACA,CACD,CACC,iBACA,GACA,UACA,CACD,CACC,oBACA,GACA,UACA,CACD,CACC,kBACA,GACA,iBACA,CACD,CACC,cACA,GACA,QACA,CACD,CACC,iBACA,GACA,OACA,CACD,CACC,cACA,GACA,MACA,CACD,CACC,cACA,GACA,QACA,CACD,CACC,cACA,GACA,OACA,CACD,CACC,iBACA,GACA,OACA,CACD,CACC,qBACA,GACA,OACA,CACD,CACC,cACA,GACA,QACA,CACD,CACC,iBACA,GACA,OACA,CACD,CACC,cACA,GACA,WACA,CACD,CACC,iBACA,GACA,WACA,CACD,CACC,cACA,GACA,UACA,CACD,CACC,cACA,GACA,SACA,CACD,CACC,iBACA,GACA,SACA,CACD,CACC,iBACA,GACA,aACA,CACD,CACC,qBACA,GACA,eACA,CACD,CACC,qBACA,GACA,wBACA,CACD,CACC,eACA,GACA,YACA,CACD,CACC,kBACA,GACA,OACA,CACD,CAAE,GAAK,CACP,GAAG,EACH,KAAM,GACN,QAAS,UACT,UAAW,EAAE,CACb,QAAS,EAAE,CACX,CAAE,EAAI,EAAE,CAAE,EAAI,EAAE,CACjB,SAAS,MAAM,EAAG,CACjB,OAAO,EAAE,IAAM,GAEhBA,EAAE,MAAO,MAAM,CACf,SAAS,OAAQ,CAChB,OAAO,EAAE,OAAO,CAE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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
svg[data-v-2f79c080]{border:1px}@keyframes progress{0%{width:0%}to{width:100%}}.progressContainer{background-color:#eee;height:5px}#progress{background-color:#00f;width:100%;height:5px;animation-timing-function:linear}.hidden{opacity:0}
|
|
@@ -1,2 +1,2 @@
|
|
|
1
|
-
import"./chunk-D6hFPZc3.js";import{C as e,H as t,K as n,S as r,T as i,b as a,f as o,g as s,lt as c,y as l,z as u}from"./vue.runtime.esm-bundler-C3q8JS9f.js";import{m as d,w as f}from"./common-ui.es-
|
|
2
|
-
//# sourceMappingURL=pitch-CgGJFkZ1-
|
|
1
|
+
import"./chunk-D6hFPZc3.js";import{C as e,H as t,K as n,S as r,T as i,b as a,f as o,g as s,lt as c,y as l,z as u}from"./vue.runtime.esm-bundler-C3q8JS9f.js";import{m as d,w as f}from"./common-ui.es-p3cgaI_b.js";import{S as p,T as m,n as h,y as g}from"./dist-leWgtXBf.js";import{S as _,x as v}from"./MarkdownRenderer-DoVbFpA6-CvaBjTS8.js";import{n as y,s as b,t as x}from"./CourseWare-BTFRjgBR-OzjKW1B2.js";var S,C=i({name:`IdentifyChroma`,components:{RadioMultipleChoice:f},props:{data:{type:Array,required:!0},modifyDifficulty:{type:Number,required:!1,default:0}},setup(e,{emit:t}){let n=_(e,t,`IdentifyChroma`),r=v(n),i=c(``),a=c(new AudioContext);r.question.value=new O(e.data);let o=s(()=>r.question.value),octaves=e=>{let t=[],n=e/2;for(;n>100;)t.push(n),n/=2;t.push(e);let r=e*2;for(;r<5e3;)t.push(r),r*=2;return t},tone=e=>{let t=a.value.createOscillator();t.type=`sine`,t.frequency.value=e;let n=a.value.createGain();console.log(`Max Gain: `+n.gain.maxValue),n.gain.setValueAtTime(0,0),n.gain.linearRampToValueAtTime(.5,15),t.connect(n),n.connect(a.value.destination),t.start(0),t.stop(14)};u(()=>{octaves(295).forEach(e=>tone(e))});let submit=()=>{o.value&&o.value.isCorrect(i.value)};return{...n,...r,answer:i,question:o,submit}}}),w={"data-viewable":`IdentifyChroma`};function _sfc_render(i,s,c,u,d,f){let p=n(`radio-multiple-choice`);return t(),a(`div`,w,[i.question?(t(),a(o,{key:0},[s[0]||(s[0]=r(` What note is being played? `)),e(p,{"choice-list":i.question.choiceList},null,8,[`choice-list`])],64)):l(``,!0)])}var T=x(C,[[`render`,_sfc_render]]),E=function(e){return e.A=`A`,e.B=`B`,e.C=`C`,e.D=`D`,e.E=`E`,e.F=`F`,e.G=`G`,e}(E||{}),D=[{name:`Chroma`,type:p.STRING,validator:{test:e=>Object.values(E).includes(e)?{status:m.ok,msg:``}:{status:m.error,msg:`That's not a chroma!`},instructions:`Enter a valid musical note (A-G)`}}],O=(S=class ChromaQuestion extends d{constructor(e){var _super=(...e)=>(super(...e),g(this,`chroma`,void 0),this);_super(e),this.chroma=e[0].Chroma}get baseFreq(){return this.chroma===`A`?440:this.chroma===`B`?440*2**(2/12):this.chroma===`C`?440*2**(3/12):440}get choiceList(){return b([this.chroma.toString(),`test`,`options`,`are`,`fun`])}isCorrect(e){return e.choiceList[e.selection]===this.chroma.toString()}dataShapes(){return ChromaQuestion.dataShapes}views(){return ChromaQuestion.views}},g(S,`dataShapes`,[{fields:D,name:h.PITCH_chroma}]),g(S,`views`,[T]),S),k=new y(`pitch`,[O]);export{k as t};
|
|
2
|
+
//# sourceMappingURL=pitch-CgGJFkZ1-DYkp_AV0.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"pitch-CgGJFkZ1-
|
|
1
|
+
{"version":3,"file":"pitch-CgGJFkZ1-DYkp_AV0.js","names":["l","h","_","g","f","i","p","d","o","r","s","c","a","e","y","b","m","t","v","n"],"sources":["../../../courseware/dist/pitch-CgGJFkZ1.js"],"sourcesContent":["import \"./shapes-BQUVJdp5.js\";\nimport { r as e, s as t, t as n } from \"./CourseWare-BTFRjgBR.js\";\nimport { Fragment as r, computed as i, createCommentVNode as a, createElementBlock as o, createTextVNode as s, createVNode as c, defineComponent as l, onMounted as u, openBlock as d, ref as f, resolveComponent as p } from \"vue\";\nimport { Question as m, RadioMultipleChoice as h, useQuestionView as g, useViewable as _ } from \"@vue-skuilder/common-ui\";\nimport { DataShapeName as v, FieldType as y, Status as b } from \"@vue-skuilder/common\";\n//#region src/pitch/questions/indentify/textBox.vue?vue&type=script&lang.ts\nvar x = l({\n\tname: \"IdentifyChroma\",\n\tcomponents: { RadioMultipleChoice: h },\n\tprops: {\n\t\tdata: {\n\t\t\ttype: Array,\n\t\t\trequired: !0\n\t\t},\n\t\tmodifyDifficulty: {\n\t\t\ttype: Number,\n\t\t\trequired: !1,\n\t\t\tdefault: 0\n\t\t}\n\t},\n\tsetup(e, { emit: t }) {\n\t\tlet n = _(e, t, \"IdentifyChroma\"), r = g(n), a = f(\"\"), o = f(new AudioContext());\n\t\tr.question.value = new E(e.data);\n\t\tlet s = i(() => r.question.value), octaves = (e) => {\n\t\t\tlet t = [], n = e / 2;\n\t\t\tfor (; n > 100;) t.push(n), n /= 2;\n\t\t\tt.push(e);\n\t\t\tlet r = e * 2;\n\t\t\tfor (; r < 5e3;) t.push(r), r *= 2;\n\t\t\treturn t;\n\t\t}, tone = (e) => {\n\t\t\tlet t = o.value.createOscillator();\n\t\t\tt.type = \"sine\", t.frequency.value = e;\n\t\t\tlet n = o.value.createGain();\n\t\t\tconsole.log(\"Max Gain: \" + n.gain.maxValue), n.gain.setValueAtTime(0, 0), n.gain.linearRampToValueAtTime(.5, 15), t.connect(n), n.connect(o.value.destination), t.start(0), t.stop(14);\n\t\t};\n\t\tu(() => {\n\t\t\toctaves(295).forEach((e) => tone(e));\n\t\t});\n\t\tlet submit = () => {\n\t\t\ts.value && s.value.isCorrect(a.value);\n\t\t};\n\t\treturn {\n\t\t\t...n,\n\t\t\t...r,\n\t\t\tanswer: a,\n\t\t\tquestion: s,\n\t\t\tsubmit\n\t\t};\n\t}\n}), S = { \"data-viewable\": \"IdentifyChroma\" };\nfunction _sfc_render(e, t, n, i, l, u) {\n\tlet f = p(\"radio-multiple-choice\");\n\treturn d(), o(\"div\", S, [e.question ? (d(), o(r, { key: 0 }, [t[0] ||= s(\" What note is being played? \"), c(f, { \"choice-list\": e.question.choiceList }, null, 8, [\"choice-list\"])], 64)) : a(\"\", !0)]);\n}\nvar C = /* @__PURE__ */ e(x, [[\"render\", _sfc_render]]), w = /* @__PURE__ */ function(e) {\n\treturn e.A = \"A\", e.B = \"B\", e.C = \"C\", e.D = \"D\", e.E = \"E\", e.F = \"F\", e.G = \"G\", e;\n}(w || {}), T = [{\n\tname: \"Chroma\",\n\ttype: y.STRING,\n\tvalidator: {\n\t\ttest: (e) => Object.values(w).includes(e) ? {\n\t\t\tstatus: b.ok,\n\t\t\tmsg: \"\"\n\t\t} : {\n\t\t\tstatus: b.error,\n\t\t\tmsg: \"That's not a chroma!\"\n\t\t},\n\t\tinstructions: \"Enter a valid musical note (A-G)\"\n\t}\n}], E = class ChromaQuestion extends m {\n\tstatic dataShapes = [{\n\t\tfields: T,\n\t\tname: v.PITCH_chroma\n\t}];\n\tstatic views = [C];\n\tchroma;\n\tconstructor(e) {\n\t\tsuper(e), this.chroma = e[0].Chroma;\n\t}\n\tget baseFreq() {\n\t\treturn this.chroma === \"A\" ? 440 : this.chroma === \"B\" ? 440 * 2 ** (2 / 12) : this.chroma === \"C\" ? 440 * 2 ** (3 / 12) : 440;\n\t}\n\tget choiceList() {\n\t\treturn t([\n\t\t\tthis.chroma.toString(),\n\t\t\t\"test\",\n\t\t\t\"options\",\n\t\t\t\"are\",\n\t\t\t\"fun\"\n\t\t]);\n\t}\n\tisCorrect(e) {\n\t\treturn e.choiceList[e.selection] === this.chroma.toString();\n\t}\n\tdataShapes() {\n\t\treturn ChromaQuestion.dataShapes;\n\t}\n\tviews() {\n\t\treturn ChromaQuestion.views;\n\t}\n}, D = new n(\"pitch\", [E]);\n//#endregion\nexport { D as t };\n\n//# sourceMappingURL=pitch-CgGJFkZ1.js.map"],"mappings":"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"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
import"./vue.runtime.esm-bundler-C3q8JS9f.js";import"./common-ui.es-p3cgaI_b.js";import"./dist-leWgtXBf.js";import"./MarkdownRenderer-DoVbFpA6-CvaBjTS8.js";import"./dist-DA7EuQY2.js";import"./CourseWare-BTFRjgBR-OzjKW1B2.js";import{t as e}from"./pitch-CgGJFkZ1-DYkp_AV0.js";export{e as default};
|