@onjmin/dtm 0.1.5 → 0.1.6
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/dist/index.js +19 -3
- package/dist/index.mjs +19 -3
- package/package.json +1 -1
package/dist/index.js
CHANGED
|
@@ -7145,8 +7145,10 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7145
7145
|
...dawOverrides
|
|
7146
7146
|
};
|
|
7147
7147
|
const wantPresetUI = presetUI ?? features.presetUI;
|
|
7148
|
+
let select = null;
|
|
7148
7149
|
if (wantPresetUI) {
|
|
7149
|
-
|
|
7150
|
+
editorPresetSelects.get(target)?.remove();
|
|
7151
|
+
select = target.ownerDocument.createElement("select");
|
|
7150
7152
|
select.className = "dtm-studio-preset";
|
|
7151
7153
|
for (const [key, p] of Object.entries(INSTRUMENT_PRESETS)) {
|
|
7152
7154
|
const opt = target.ownerDocument.createElement("option");
|
|
@@ -7158,6 +7160,7 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7158
7160
|
target.appendChild(select);
|
|
7159
7161
|
editorPresetSelects.set(target, select);
|
|
7160
7162
|
select.addEventListener("change", async () => {
|
|
7163
|
+
if (!select) return;
|
|
7161
7164
|
daw.setInstrument(select.value);
|
|
7162
7165
|
await loadPreset(select.value, trackIds);
|
|
7163
7166
|
});
|
|
@@ -7167,7 +7170,15 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7167
7170
|
const presetKey = preset && INSTRUMENT_PRESETS[preset] ? preset : defaultPreset;
|
|
7168
7171
|
daw.setInstrument(presetKey);
|
|
7169
7172
|
void loadPreset(presetKey, trackIds);
|
|
7170
|
-
|
|
7173
|
+
const destroy = () => {
|
|
7174
|
+
daw.destroy();
|
|
7175
|
+
select?.remove();
|
|
7176
|
+
if (editorPresetSelects.get(target) === select)
|
|
7177
|
+
editorPresetSelects.delete(target);
|
|
7178
|
+
const i = mountedEditors.indexOf(daw);
|
|
7179
|
+
if (i >= 0) mountedEditors.splice(i, 1);
|
|
7180
|
+
};
|
|
7181
|
+
return { ...daw, destroy };
|
|
7171
7182
|
};
|
|
7172
7183
|
const mountPlayer = (target, mml, opts = {}) => {
|
|
7173
7184
|
const meta = parseMML(mml, {}).meta ?? {};
|
|
@@ -7183,7 +7194,12 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7183
7194
|
...opts
|
|
7184
7195
|
});
|
|
7185
7196
|
mountedPlayers.push(player);
|
|
7186
|
-
|
|
7197
|
+
const destroy = () => {
|
|
7198
|
+
player.destroy();
|
|
7199
|
+
const i = mountedPlayers.indexOf(player);
|
|
7200
|
+
if (i >= 0) mountedPlayers.splice(i, 1);
|
|
7201
|
+
};
|
|
7202
|
+
return { ...player, destroy };
|
|
7187
7203
|
};
|
|
7188
7204
|
const dispose = () => {
|
|
7189
7205
|
for (const p of mountedPlayers) p.destroy();
|
package/dist/index.mjs
CHANGED
|
@@ -7040,8 +7040,10 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7040
7040
|
...dawOverrides
|
|
7041
7041
|
};
|
|
7042
7042
|
const wantPresetUI = presetUI ?? features.presetUI;
|
|
7043
|
+
let select = null;
|
|
7043
7044
|
if (wantPresetUI) {
|
|
7044
|
-
|
|
7045
|
+
editorPresetSelects.get(target)?.remove();
|
|
7046
|
+
select = target.ownerDocument.createElement("select");
|
|
7045
7047
|
select.className = "dtm-studio-preset";
|
|
7046
7048
|
for (const [key, p] of Object.entries(INSTRUMENT_PRESETS)) {
|
|
7047
7049
|
const opt = target.ownerDocument.createElement("option");
|
|
@@ -7053,6 +7055,7 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7053
7055
|
target.appendChild(select);
|
|
7054
7056
|
editorPresetSelects.set(target, select);
|
|
7055
7057
|
select.addEventListener("change", async () => {
|
|
7058
|
+
if (!select) return;
|
|
7056
7059
|
daw.setInstrument(select.value);
|
|
7057
7060
|
await loadPreset(select.value, trackIds);
|
|
7058
7061
|
});
|
|
@@ -7062,7 +7065,15 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7062
7065
|
const presetKey = preset && INSTRUMENT_PRESETS[preset] ? preset : defaultPreset;
|
|
7063
7066
|
daw.setInstrument(presetKey);
|
|
7064
7067
|
void loadPreset(presetKey, trackIds);
|
|
7065
|
-
|
|
7068
|
+
const destroy = () => {
|
|
7069
|
+
daw.destroy();
|
|
7070
|
+
select?.remove();
|
|
7071
|
+
if (editorPresetSelects.get(target) === select)
|
|
7072
|
+
editorPresetSelects.delete(target);
|
|
7073
|
+
const i = mountedEditors.indexOf(daw);
|
|
7074
|
+
if (i >= 0) mountedEditors.splice(i, 1);
|
|
7075
|
+
};
|
|
7076
|
+
return { ...daw, destroy };
|
|
7066
7077
|
};
|
|
7067
7078
|
const mountPlayer = (target, mml, opts = {}) => {
|
|
7068
7079
|
const meta = parseMML(mml, {}).meta ?? {};
|
|
@@ -7078,7 +7089,12 @@ var createDtmStudio = async (options = {}) => {
|
|
|
7078
7089
|
...opts
|
|
7079
7090
|
});
|
|
7080
7091
|
mountedPlayers.push(player);
|
|
7081
|
-
|
|
7092
|
+
const destroy = () => {
|
|
7093
|
+
player.destroy();
|
|
7094
|
+
const i = mountedPlayers.indexOf(player);
|
|
7095
|
+
if (i >= 0) mountedPlayers.splice(i, 1);
|
|
7096
|
+
};
|
|
7097
|
+
return { ...player, destroy };
|
|
7082
7098
|
};
|
|
7083
7099
|
const dispose = () => {
|
|
7084
7100
|
for (const p of mountedPlayers) p.destroy();
|
package/package.json
CHANGED