@opendaw/studio-adapters 0.0.99 → 0.0.101
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/AutomatableParameterFieldAdapter.d.ts +6 -1
- package/dist/AutomatableParameterFieldAdapter.d.ts.map +1 -1
- package/dist/AutomatableParameterFieldAdapter.js +24 -6
- package/dist/BoxAdapters.d.ts.map +1 -1
- package/dist/BoxAdapters.js +6 -0
- package/dist/DeviceManualUrls.d.ts +3 -0
- package/dist/DeviceManualUrls.d.ts.map +1 -1
- package/dist/DeviceManualUrls.js +3 -0
- package/dist/NoteStreamReceiver.d.ts +2 -1
- package/dist/NoteStreamReceiver.d.ts.map +1 -1
- package/dist/NoteStreamReceiver.js +25 -13
- package/dist/ParameterAdapterSet.d.ts +1 -1
- package/dist/ParameterAdapterSet.d.ts.map +1 -1
- package/dist/ParameterAdapterSet.js +2 -2
- package/dist/ParameterFieldAdapters.d.ts +10 -0
- package/dist/ParameterFieldAdapters.d.ts.map +1 -1
- package/dist/ParameterFieldAdapters.js +30 -3
- package/dist/ScriptCompiler.d.ts +23 -0
- package/dist/ScriptCompiler.d.ts.map +1 -0
- package/dist/ScriptCompiler.js +190 -0
- package/dist/ScriptDeclaration.d.ts +37 -0
- package/dist/ScriptDeclaration.d.ts.map +1 -0
- package/dist/ScriptDeclaration.js +209 -0
- package/dist/audio-unit/AudioUnitTracks.d.ts +1 -0
- package/dist/audio-unit/AudioUnitTracks.d.ts.map +1 -1
- package/dist/audio-unit/AudioUnitTracks.js +1 -0
- package/dist/devices/audio-effects/WerkstattDeviceBoxAdapter.d.ts +31 -0
- package/dist/devices/audio-effects/WerkstattDeviceBoxAdapter.d.ts.map +1 -0
- package/dist/devices/audio-effects/WerkstattDeviceBoxAdapter.js +55 -0
- package/dist/devices/instruments/ApparatDeviceBoxAdapter.d.ts +32 -0
- package/dist/devices/instruments/ApparatDeviceBoxAdapter.d.ts.map +1 -0
- package/dist/devices/instruments/ApparatDeviceBoxAdapter.js +57 -0
- package/dist/devices/midi-effects/SpielwerkDeviceBoxAdapter.d.ts +29 -0
- package/dist/devices/midi-effects/SpielwerkDeviceBoxAdapter.d.ts.map +1 -0
- package/dist/devices/midi-effects/SpielwerkDeviceBoxAdapter.js +52 -0
- package/dist/factories/DeviceFactory.d.ts +1 -0
- package/dist/factories/DeviceFactory.d.ts.map +1 -1
- package/dist/factories/InstrumentBox.d.ts +2 -2
- package/dist/factories/InstrumentBox.d.ts.map +1 -1
- package/dist/factories/InstrumentFactories.d.ts +7 -5
- package/dist/factories/InstrumentFactories.d.ts.map +1 -1
- package/dist/factories/InstrumentFactories.js +21 -2
- package/dist/index.d.ts +5 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +5 -0
- package/dist/offline-renderer.d.ts +1 -0
- package/dist/offline-renderer.d.ts.map +1 -1
- package/dist/preset/PresetDecoder.js +1 -1
- package/dist/preset/PresetEncoder.js +1 -1
- package/dist/project/ProjectSkeleton.d.ts +1 -1
- package/dist/project/ProjectSkeleton.d.ts.map +1 -1
- package/dist/project/ProjectSkeleton.js +5 -6
- package/dist/protocols.d.ts +1 -0
- package/dist/protocols.d.ts.map +1 -1
- package/dist/selection/VertexSelection.d.ts.map +1 -1
- package/dist/selection/VertexSelection.js +2 -1
- package/dist/timeline/TrackBoxAdapter.d.ts.map +1 -1
- package/dist/timeline/TrackBoxAdapter.js +31 -1
- package/package.json +9 -9
|
@@ -3,10 +3,11 @@ import { ppqn } from "@opendaw/lib-dsp";
|
|
|
3
3
|
import { Address, PrimitiveField, PrimitiveType, PrimitiveValues } from "@opendaw/lib-box";
|
|
4
4
|
import { Pointers } from "@opendaw/studio-enums";
|
|
5
5
|
import { TrackBoxAdapter } from "./timeline/TrackBoxAdapter";
|
|
6
|
+
import { AudioUnitTracks } from "./audio-unit/AudioUnitTracks";
|
|
6
7
|
import { BoxAdaptersContext } from "./BoxAdaptersContext";
|
|
7
8
|
export declare class AutomatableParameterFieldAdapter<T extends PrimitiveValues = any> implements Parameter<T>, Terminable {
|
|
8
9
|
#private;
|
|
9
|
-
constructor(context: BoxAdaptersContext, field: PrimitiveField<T, any>, valueMapping: ValueMapping<T>, stringMapping: StringMapping<T>, name: string, anchor?: unitValue);
|
|
10
|
+
constructor(context: BoxAdaptersContext, field: PrimitiveField<T, any>, valueMapping: ValueMapping<T>, stringMapping: StringMapping<T>, name: string, anchor?: unitValue, resetValue?: T);
|
|
10
11
|
registerMidiControl(): Terminable;
|
|
11
12
|
get field(): PrimitiveField<T, Pointers.Automation>;
|
|
12
13
|
get valueMapping(): ValueMapping<T>;
|
|
@@ -16,6 +17,10 @@ export declare class AutomatableParameterFieldAdapter<T extends PrimitiveValues
|
|
|
16
17
|
get type(): PrimitiveType;
|
|
17
18
|
get address(): Address;
|
|
18
19
|
get track(): Option<TrackBoxAdapter>;
|
|
20
|
+
registerTracks(tracks: AudioUnitTracks): Terminable;
|
|
21
|
+
touchStart(): void;
|
|
22
|
+
touchEnd(): void;
|
|
23
|
+
updateMappings(valueMapping: ValueMapping<T>, stringMapping: StringMapping<T>): void;
|
|
19
24
|
valueAt(position: ppqn): T;
|
|
20
25
|
subscribe(observer: Observer<AutomatableParameterFieldAdapter<T>>): Subscription;
|
|
21
26
|
catchupAndSubscribe(observer: Observer<AutomatableParameterFieldAdapter<T>>): Subscription;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"AutomatableParameterFieldAdapter.d.ts","sourceRoot":"","sources":["../src/AutomatableParameterFieldAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,qBAAqB,EAIrB,QAAQ,EACR,MAAM,EAEN,SAAS,EACT,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EAEV,SAAS,EACT,YAAY,EACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,OAAO,EAA8B,cAAc,EAAE,aAAa,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAA;AACpH,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAE9C,OAAO,EAAC,eAAe,EAAC,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AAQvD,qBAAa,gCAAgC,CAAC,CAAC,SAAS,eAAe,GAAG,GAAG,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU;;
|
|
1
|
+
{"version":3,"file":"AutomatableParameterFieldAdapter.d.ts","sourceRoot":"","sources":["../src/AutomatableParameterFieldAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAIH,qBAAqB,EAIrB,QAAQ,EACR,MAAM,EAEN,SAAS,EACT,aAAa,EACb,YAAY,EACZ,YAAY,EACZ,UAAU,EAEV,SAAS,EACT,YAAY,EACf,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACrC,OAAO,EAAC,OAAO,EAA8B,cAAc,EAAE,aAAa,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAA;AACpH,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAE9C,OAAO,EAAC,eAAe,EAAC,MAAM,4BAA4B,CAAA;AAC1D,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAA;AAC5D,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AAQvD,qBAAa,gCAAgC,CAAC,CAAC,SAAS,eAAe,GAAG,GAAG,CAAE,YAAW,SAAS,CAAC,CAAC,CAAC,EAAE,UAAU;;gBAmBlG,OAAO,EAAE,kBAAkB,EAC3B,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,GAAG,CAAC,EAC7B,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,EAC7B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,SAAS,EAClB,UAAU,CAAC,EAAE,CAAC;IA2D1B,mBAAmB,IAAI,UAAU;IAWjC,IAAI,KAAK,IAAI,cAAc,CAAC,CAAC,EAAE,QAAQ,CAAC,UAAU,CAAC,CAAqB;IACxE,IAAI,YAAY,IAAI,YAAY,CAAC,CAAC,CAAC,CAA4B;IAC/D,IAAI,aAAa,IAAI,aAAa,CAAC,CAAC,CAAC,CAA6B;IAClE,IAAI,IAAI,IAAI,MAAM,CAAoB;IACtC,IAAI,MAAM,IAAI,SAAS,CAAsB;IAC7C,IAAI,IAAI,IAAI,aAAa,CAA0B;IACnD,IAAI,OAAO,IAAI,OAAO,CAA6B;IACnD,IAAI,KAAK,IAAI,MAAM,CAAC,eAAe,CAAC,CAA+B;IAEnE,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,UAAU;IAGnD,UAAU,IAAI,IAAI;IAIlB,QAAQ,IAAI,IAAI;IAEhB,cAAc,CAAC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,EAAE,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,GAAG,IAAI;IAMpF,OAAO,CAAC,QAAQ,EAAE,IAAI,GAAG,CAAC;IAW1B,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY;IAIhF,mBAAmB,CAAC,QAAQ,EAAE,QAAQ,CAAC,gCAAgC,CAAC,CAAC,CAAC,CAAC,GAAG,YAAY;IAK1F,iCAAiC,CAAC,QAAQ,EAAE,qBAAqB,GAAG,YAAY;IAMhF,QAAQ,IAAI,CAAC;IACb,QAAQ,CAAC,KAAK,EAAE,CAAC;IAMjB,YAAY,CAAC,KAAK,EAAE,SAAS,GAAG,IAAI;IACpC,YAAY,IAAI,SAAS;IACzB,kBAAkB,IAAI,CAAC;IACvB,sBAAsB,IAAI,SAAS;IACnC,uBAAuB,IAAI,QAAQ,CAAC,YAAY,CAAC;IACjD,aAAa,IAAI,QAAQ,CAAC,YAAY,CAAC;IACvC,aAAa,CAAC,IAAI,EAAE,MAAM,GAAG,IAAI;IAWjC,KAAK,IAAI,IAAI;IAEb,SAAS,IAAI,IAAI;CAKpB"}
|
|
@@ -9,7 +9,7 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var _AutomatableParameterFieldAdapter_context, _AutomatableParameterFieldAdapter_field,
|
|
12
|
+
var _AutomatableParameterFieldAdapter_context, _AutomatableParameterFieldAdapter_field, _AutomatableParameterFieldAdapter_name, _AutomatableParameterFieldAdapter_anchor, _AutomatableParameterFieldAdapter_resetValue, _AutomatableParameterFieldAdapter_terminator, _AutomatableParameterFieldAdapter_valueChangeNotifier, _AutomatableParameterFieldAdapter_controlSource, _AutomatableParameterFieldAdapter_valueMapping, _AutomatableParameterFieldAdapter_stringMapping, _AutomatableParameterFieldAdapter_trackBoxAdapter, _AutomatableParameterFieldAdapter_automationHandle, _AutomatableParameterFieldAdapter_controlledValue, _AutomatableParameterFieldAdapter_midiControlled;
|
|
13
13
|
import { assert, clamp, Listeners, Notifier, Option, panic, Terminator } from "@opendaw/lib-std";
|
|
14
14
|
import { Pointers } from "@opendaw/studio-enums";
|
|
15
15
|
import { TrackBoxAdapter } from "./timeline/TrackBoxAdapter";
|
|
@@ -20,16 +20,17 @@ const ExternalControlTypes = [
|
|
|
20
20
|
Pointers.ParameterController
|
|
21
21
|
];
|
|
22
22
|
export class AutomatableParameterFieldAdapter {
|
|
23
|
-
constructor(context, field, valueMapping, stringMapping, name, anchor) {
|
|
23
|
+
constructor(context, field, valueMapping, stringMapping, name, anchor, resetValue) {
|
|
24
24
|
_AutomatableParameterFieldAdapter_context.set(this, void 0);
|
|
25
25
|
_AutomatableParameterFieldAdapter_field.set(this, void 0);
|
|
26
|
-
_AutomatableParameterFieldAdapter_valueMapping.set(this, void 0);
|
|
27
|
-
_AutomatableParameterFieldAdapter_stringMapping.set(this, void 0);
|
|
28
26
|
_AutomatableParameterFieldAdapter_name.set(this, void 0);
|
|
29
27
|
_AutomatableParameterFieldAdapter_anchor.set(this, void 0);
|
|
28
|
+
_AutomatableParameterFieldAdapter_resetValue.set(this, void 0);
|
|
30
29
|
_AutomatableParameterFieldAdapter_terminator.set(this, new Terminator());
|
|
31
30
|
_AutomatableParameterFieldAdapter_valueChangeNotifier.set(this, void 0);
|
|
32
31
|
_AutomatableParameterFieldAdapter_controlSource.set(this, void 0);
|
|
32
|
+
_AutomatableParameterFieldAdapter_valueMapping.set(this, void 0);
|
|
33
|
+
_AutomatableParameterFieldAdapter_stringMapping.set(this, void 0);
|
|
33
34
|
_AutomatableParameterFieldAdapter_trackBoxAdapter.set(this, Option.None);
|
|
34
35
|
_AutomatableParameterFieldAdapter_automationHandle.set(this, Option.None);
|
|
35
36
|
_AutomatableParameterFieldAdapter_controlledValue.set(this, null);
|
|
@@ -40,6 +41,7 @@ export class AutomatableParameterFieldAdapter {
|
|
|
40
41
|
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_stringMapping, stringMapping, "f");
|
|
41
42
|
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_name, name, "f");
|
|
42
43
|
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_anchor, anchor ?? 0.0, "f");
|
|
44
|
+
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_resetValue, Option.wrap(resetValue), "f");
|
|
43
45
|
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").own(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.register(this));
|
|
44
46
|
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").own(new Notifier()), "f");
|
|
45
47
|
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_controlSource, new Listeners(), "f");
|
|
@@ -109,6 +111,19 @@ export class AutomatableParameterFieldAdapter {
|
|
|
109
111
|
get type() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").type; }
|
|
110
112
|
get address() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").address; }
|
|
111
113
|
get track() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, "f"); }
|
|
114
|
+
registerTracks(tracks) {
|
|
115
|
+
return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.registerTracks(this.address, tracks);
|
|
116
|
+
}
|
|
117
|
+
touchStart() {
|
|
118
|
+
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.touchStart(this.address);
|
|
119
|
+
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.notifyWrite(this, this.getUnitValue());
|
|
120
|
+
}
|
|
121
|
+
touchEnd() { __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.touchEnd(this.address); }
|
|
122
|
+
updateMappings(valueMapping, stringMapping) {
|
|
123
|
+
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_valueMapping, valueMapping, "f");
|
|
124
|
+
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_stringMapping, stringMapping, "f");
|
|
125
|
+
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, "f").notify(this);
|
|
126
|
+
}
|
|
112
127
|
valueAt(position) {
|
|
113
128
|
const optTrack = __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, "f");
|
|
114
129
|
if (optTrack.nonEmpty()) {
|
|
@@ -136,6 +151,9 @@ export class AutomatableParameterFieldAdapter {
|
|
|
136
151
|
}
|
|
137
152
|
getValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").getValue(); }
|
|
138
153
|
setValue(value) {
|
|
154
|
+
if (value === this.getValue()) {
|
|
155
|
+
return;
|
|
156
|
+
}
|
|
139
157
|
const previousUnitValue = this.getUnitValue();
|
|
140
158
|
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").setValue(value);
|
|
141
159
|
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.notifyWrite(this, previousUnitValue);
|
|
@@ -158,14 +176,14 @@ export class AutomatableParameterFieldAdapter {
|
|
|
158
176
|
console.debug(`Unknown text input: '${result.value}'`);
|
|
159
177
|
}
|
|
160
178
|
}
|
|
161
|
-
reset() { this.setValue(__classPrivateFieldGet(this,
|
|
179
|
+
reset() { this.setValue(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_resetValue, "f").unwrapOrElse(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").initValue)); }
|
|
162
180
|
terminate() {
|
|
163
181
|
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_automationHandle, "f").ifSome(handle => handle.terminate());
|
|
164
182
|
__classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_automationHandle, Option.None, "f");
|
|
165
183
|
__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").terminate();
|
|
166
184
|
}
|
|
167
185
|
}
|
|
168
|
-
_AutomatableParameterFieldAdapter_context = new WeakMap(), _AutomatableParameterFieldAdapter_field = new WeakMap(),
|
|
186
|
+
_AutomatableParameterFieldAdapter_context = new WeakMap(), _AutomatableParameterFieldAdapter_field = new WeakMap(), _AutomatableParameterFieldAdapter_name = new WeakMap(), _AutomatableParameterFieldAdapter_anchor = new WeakMap(), _AutomatableParameterFieldAdapter_resetValue = new WeakMap(), _AutomatableParameterFieldAdapter_terminator = new WeakMap(), _AutomatableParameterFieldAdapter_valueChangeNotifier = new WeakMap(), _AutomatableParameterFieldAdapter_controlSource = new WeakMap(), _AutomatableParameterFieldAdapter_valueMapping = new WeakMap(), _AutomatableParameterFieldAdapter_stringMapping = new WeakMap(), _AutomatableParameterFieldAdapter_trackBoxAdapter = new WeakMap(), _AutomatableParameterFieldAdapter_automationHandle = new WeakMap(), _AutomatableParameterFieldAdapter_controlledValue = new WeakMap(), _AutomatableParameterFieldAdapter_midiControlled = new WeakMap();
|
|
169
187
|
const mapPointerToControlSource = (pointer) => {
|
|
170
188
|
switch (pointer) {
|
|
171
189
|
case Pointers.Automation:
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"BoxAdapters.d.ts","sourceRoot":"","sources":["../src/BoxAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACV,KAAK,EAEL,MAAM,EAIN,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,GAAG,EAAS,MAAM,kBAAkB,CAAA;
|
|
1
|
+
{"version":3,"file":"BoxAdapters.d.ts","sourceRoot":"","sources":["../src/BoxAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACV,KAAK,EAEL,MAAM,EAIN,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,GAAG,EAAS,MAAM,kBAAkB,CAAA;AA4G5C,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AA0BvC,qBAAa,WAAY,YAAW,UAAU;;gBAO9B,OAAO,EAAE,kBAAkB;IAkBvC,SAAS,IAAI,IAAI;IAMjB,UAAU,CAAC,GAAG,SAAS,GAAG,EAAE,CAAC,SAAS,UAAU,EAAE,GAAG,EAAE,GAAG,EAAE,SAAS,EAAE,KAAK,CAAC,CAAC,CAAC,GAAG,UAAU,CAAC,CAAC,CAAC,GAAG,CAAC;IAkBnG,UAAU,CAAC,GAAG,EAAE,GAAG,GAAG,MAAM,CAAC,UAAU,CAAC;CAsE3C"}
|
package/dist/BoxAdapters.js
CHANGED
|
@@ -45,6 +45,8 @@ import { TapeDeviceBoxAdapter } from "./devices/instruments/TapeDeviceBoxAdapter
|
|
|
45
45
|
import { VaporisateurDeviceBoxAdapter } from "./devices/instruments/VaporisateurDeviceBoxAdapter";
|
|
46
46
|
import { ArpeggioDeviceBoxAdapter } from "./devices/midi-effects/ArpeggioDeviceBoxAdapter";
|
|
47
47
|
import { PitchDeviceBoxAdapter } from "./devices/midi-effects/PitchDeviceBoxAdapter";
|
|
48
|
+
import { SpielwerkDeviceBoxAdapter } from "./devices/midi-effects/SpielwerkDeviceBoxAdapter";
|
|
49
|
+
import { ApparatDeviceBoxAdapter } from "./devices/instruments/ApparatDeviceBoxAdapter";
|
|
48
50
|
import { NanoDeviceBoxAdapter } from "./devices/instruments/NanoDeviceBoxAdapter";
|
|
49
51
|
import { PlayfieldDeviceBoxAdapter } from "./devices/instruments/PlayfieldDeviceBoxAdapter";
|
|
50
52
|
import { StereoToolDeviceBoxAdapter } from "./devices/audio-effects/StereoToolDeviceBoxAdapter";
|
|
@@ -66,6 +68,7 @@ import { TidalDeviceBoxAdapter } from "./devices/audio-effects/TidalDeviceBoxAda
|
|
|
66
68
|
import { DattorroReverbDeviceBoxAdapter } from "./devices/audio-effects/DattorroReverbDeviceBoxAdapter";
|
|
67
69
|
import { NeuralAmpDeviceBoxAdapter } from "./devices/audio-effects/NeuralAmpDeviceBoxAdapter";
|
|
68
70
|
import { WaveshaperDeviceBoxAdapter } from "./devices/audio-effects/WaveshaperDeviceBoxAdapter";
|
|
71
|
+
import { WerkstattDeviceBoxAdapter } from "./devices/audio-effects/WerkstattDeviceBoxAdapter";
|
|
69
72
|
import { NeuralAmpModelBoxAdapter } from "./nam/NeuralAmpModelBoxAdapter";
|
|
70
73
|
import { AudioPitchStretchBoxAdapter } from "./audio/AudioPitchStretchBoxAdapter";
|
|
71
74
|
import { TransientMarkerBoxAdapter } from "./audio/TransientMarkerBoxAdapter";
|
|
@@ -128,6 +131,7 @@ _BoxAdapters_context = new WeakMap(), _BoxAdapters_adapters = new WeakMap(), _Bo
|
|
|
128
131
|
visitAudioPitchStretchBox: (box) => new AudioPitchStretchBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
129
132
|
visitTransientMarkerBox: (box) => new TransientMarkerBoxAdapter(box),
|
|
130
133
|
visitWarpMarkerBox: (box) => new WarpMarkerBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
134
|
+
visitApparatDeviceBox: (box) => new ApparatDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
131
135
|
visitAudioRegionBox: (box) => new AudioRegionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
132
136
|
visitAudioUnitBox: (box) => new AudioUnitBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
133
137
|
visitAuxSendBox: (box) => new AuxSendBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
@@ -167,6 +171,7 @@ _BoxAdapters_context = new WeakMap(), _BoxAdapters_adapters = new WeakMap(), _Bo
|
|
|
167
171
|
visitRootBox: (box) => new RootBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
168
172
|
visitSoundfontDeviceBox: (box) => new SoundfontDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
169
173
|
visitSoundfontFileBox: (box) => new SoundfontFileBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
174
|
+
visitSpielwerkDeviceBox: (box) => new SpielwerkDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
170
175
|
visitStereoToolDeviceBox: (box) => new StereoToolDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
171
176
|
visitTapeDeviceBox: (box) => new TapeDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
172
177
|
visitTimelineBox: (box) => new TimelineBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
@@ -179,6 +184,7 @@ _BoxAdapters_context = new WeakMap(), _BoxAdapters_adapters = new WeakMap(), _Bo
|
|
|
179
184
|
visitValueRegionBox: (box) => new ValueRegionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
180
185
|
visitVaporisateurDeviceBox: (box) => new VaporisateurDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
181
186
|
visitWaveshaperDeviceBox: (box) => new WaveshaperDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
187
|
+
visitWerkstattDeviceBox: (box) => new WerkstattDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
182
188
|
visitVelocityDeviceBox: (box) => new VelocityDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
|
|
183
189
|
visitZeitgeistDeviceBox: (box) => new ZeitgeistDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box)
|
|
184
190
|
}), `Could not find factory for ${unknownBox}`);
|
|
@@ -2,6 +2,7 @@ export declare namespace DeviceManualUrls {
|
|
|
2
2
|
const AudioBus = "manuals/audio-bus";
|
|
3
3
|
const Arpeggio = "manuals/devices/midi/arpeggio";
|
|
4
4
|
const Pitch = "manuals/devices/midi/pitch";
|
|
5
|
+
const Spielwerk = "manuals/devices/midi/spielwerk";
|
|
5
6
|
const Velocity = "manuals/devices/midi/velocity";
|
|
6
7
|
const Zeitgeist = "manuals/devices/midi/zeitgeist";
|
|
7
8
|
const StereoTool = "manuals/devices/audio/stereo-tool";
|
|
@@ -18,6 +19,8 @@ export declare namespace DeviceManualUrls {
|
|
|
18
19
|
const Modular = "manuals/devices/audio/modular";
|
|
19
20
|
const NeuralAmp = "manuals/devices/audio/neural-amp";
|
|
20
21
|
const Waveshaper = "manuals/devices/audio/waveshaper";
|
|
22
|
+
const Werkstatt = "manuals/devices/audio/werkstatt";
|
|
23
|
+
const Apparat = "manuals/devices/instruments/apparat";
|
|
21
24
|
const Tape = "manuals/devices/instruments/tape";
|
|
22
25
|
const Nano = "manuals/devices/instruments/nano";
|
|
23
26
|
const Playfield = "manuals/devices/instruments/playfield";
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"DeviceManualUrls.d.ts","sourceRoot":"","sources":["../src/DeviceManualUrls.ts"],"names":[],"mappings":"AAAA,yBAAiB,gBAAgB,CAAC;IAEvB,MAAM,QAAQ,sBAAsB,CAAA;IAGpC,MAAM,QAAQ,kCAAkC,CAAA;IAChD,MAAM,KAAK,+BAA+B,CAAA;IAC1C,MAAM,QAAQ,kCAAkC,CAAA;IAChD,MAAM,SAAS,mCAAmC,CAAA;IAGlD,MAAM,UAAU,sCAAsC,CAAA;IACtD,MAAM,KAAK,gCAAgC,CAAA;IAC3C,MAAM,cAAc,0CAA0C,CAAA;IAC9D,MAAM,SAAS,oCAAoC,CAAA;IACnD,MAAM,UAAU,qCAAqC,CAAA;IACrD,MAAM,IAAI,+BAA+B,CAAA;IACzC,MAAM,MAAM,uCAAuC,CAAA;IACnD,MAAM,OAAO,kCAAkC,CAAA;IAC/C,MAAM,IAAI,+BAA+B,CAAA;IACzC,MAAM,KAAK,gCAAgC,CAAA;IAC3C,MAAM,MAAM,iCAAiC,CAAA;IAC7C,MAAM,OAAO,kCAAkC,CAAA;IAC/C,MAAM,SAAS,qCAAqC,CAAA;IACpD,MAAM,UAAU,qCAAqC,CAAA;
|
|
1
|
+
{"version":3,"file":"DeviceManualUrls.d.ts","sourceRoot":"","sources":["../src/DeviceManualUrls.ts"],"names":[],"mappings":"AAAA,yBAAiB,gBAAgB,CAAC;IAEvB,MAAM,QAAQ,sBAAsB,CAAA;IAGpC,MAAM,QAAQ,kCAAkC,CAAA;IAChD,MAAM,KAAK,+BAA+B,CAAA;IAC1C,MAAM,SAAS,mCAAmC,CAAA;IAClD,MAAM,QAAQ,kCAAkC,CAAA;IAChD,MAAM,SAAS,mCAAmC,CAAA;IAGlD,MAAM,UAAU,sCAAsC,CAAA;IACtD,MAAM,KAAK,gCAAgC,CAAA;IAC3C,MAAM,cAAc,0CAA0C,CAAA;IAC9D,MAAM,SAAS,oCAAoC,CAAA;IACnD,MAAM,UAAU,qCAAqC,CAAA;IACrD,MAAM,IAAI,+BAA+B,CAAA;IACzC,MAAM,MAAM,uCAAuC,CAAA;IACnD,MAAM,OAAO,kCAAkC,CAAA;IAC/C,MAAM,IAAI,+BAA+B,CAAA;IACzC,MAAM,KAAK,gCAAgC,CAAA;IAC3C,MAAM,MAAM,iCAAiC,CAAA;IAC7C,MAAM,OAAO,kCAAkC,CAAA;IAC/C,MAAM,SAAS,qCAAqC,CAAA;IACpD,MAAM,UAAU,qCAAqC,CAAA;IACrD,MAAM,SAAS,oCAAoC,CAAA;IAGnD,MAAM,OAAO,wCAAwC,CAAA;IACrD,MAAM,IAAI,qCAAqC,CAAA;IAC/C,MAAM,IAAI,qCAAqC,CAAA;IAC/C,MAAM,SAAS,0CAA0C,CAAA;IACzD,MAAM,YAAY,6CAA6C,CAAA;IAC/D,MAAM,UAAU,4CAA4C,CAAA;IAC5D,MAAM,SAAS,0CAA0C,CAAA;CACnE"}
|
package/dist/DeviceManualUrls.js
CHANGED
|
@@ -5,6 +5,7 @@ export var DeviceManualUrls;
|
|
|
5
5
|
// MIDI Effects
|
|
6
6
|
DeviceManualUrls.Arpeggio = "manuals/devices/midi/arpeggio";
|
|
7
7
|
DeviceManualUrls.Pitch = "manuals/devices/midi/pitch";
|
|
8
|
+
DeviceManualUrls.Spielwerk = "manuals/devices/midi/spielwerk";
|
|
8
9
|
DeviceManualUrls.Velocity = "manuals/devices/midi/velocity";
|
|
9
10
|
DeviceManualUrls.Zeitgeist = "manuals/devices/midi/zeitgeist";
|
|
10
11
|
// Audio Effects
|
|
@@ -22,7 +23,9 @@ export var DeviceManualUrls;
|
|
|
22
23
|
DeviceManualUrls.Modular = "manuals/devices/audio/modular";
|
|
23
24
|
DeviceManualUrls.NeuralAmp = "manuals/devices/audio/neural-amp";
|
|
24
25
|
DeviceManualUrls.Waveshaper = "manuals/devices/audio/waveshaper";
|
|
26
|
+
DeviceManualUrls.Werkstatt = "manuals/devices/audio/werkstatt";
|
|
25
27
|
// Instruments
|
|
28
|
+
DeviceManualUrls.Apparat = "manuals/devices/instruments/apparat";
|
|
26
29
|
DeviceManualUrls.Tape = "manuals/devices/instruments/tape";
|
|
27
30
|
DeviceManualUrls.Nano = "manuals/devices/instruments/nano";
|
|
28
31
|
DeviceManualUrls.Playfield = "manuals/devices/instruments/playfield";
|
|
@@ -3,7 +3,8 @@ import { Address } from "@opendaw/lib-box";
|
|
|
3
3
|
import { LiveStreamReceiver } from "@opendaw/lib-fusion";
|
|
4
4
|
export declare class NoteStreamReceiver implements Terminable {
|
|
5
5
|
#private;
|
|
6
|
-
constructor(receiver: LiveStreamReceiver, address
|
|
6
|
+
constructor(receiver: LiveStreamReceiver, address?: Address);
|
|
7
|
+
bind(receiver: LiveStreamReceiver, address: Address): Terminable;
|
|
7
8
|
isNoteOn(note: byte): boolean;
|
|
8
9
|
isAnyNoteOn(): boolean;
|
|
9
10
|
subscribe(observer: Observer<this>): Subscription;
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"NoteStreamReceiver.d.ts","sourceRoot":"","sources":["../src/NoteStreamReceiver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,IAAI,EAAY,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAA;AACrG,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAA;AAEtD,qBAAa,kBAAmB,YAAW,UAAU;;
|
|
1
|
+
{"version":3,"file":"NoteStreamReceiver.d.ts","sourceRoot":"","sources":["../src/NoteStreamReceiver.ts"],"names":[],"mappings":"AAAA,OAAO,EAAO,IAAI,EAAY,QAAQ,EAAE,YAAY,EAAE,UAAU,EAAa,MAAM,kBAAkB,CAAA;AACrG,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAC,kBAAkB,EAAC,MAAM,qBAAqB,CAAA;AAEtD,qBAAa,kBAAmB,YAAW,UAAU;;gBAOrC,QAAQ,EAAE,kBAAkB,EAAE,OAAO,CAAC,EAAE,OAAO;IAQ3D,IAAI,CAAC,QAAQ,EAAE,kBAAkB,EAAE,OAAO,EAAE,OAAO,GAAG,UAAU;IAQhE,QAAQ,CAAC,IAAI,EAAE,IAAI,GAAG,OAAO;IAC7B,WAAW,IAAI,OAAO;IAEtB,SAAS,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAEjD,SAAS,IAAI,IAAI;CAYpB"}
|
|
@@ -9,28 +9,40 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var _NoteStreamReceiver_terminator,
|
|
13
|
-
import { Bits, Notifier, Terminator } from "@opendaw/lib-std";
|
|
12
|
+
var _NoteStreamReceiver_instances, _NoteStreamReceiver_terminator, _NoteStreamReceiver_bits, _NoteStreamReceiver_notifier, _NoteStreamReceiver_binding, _NoteStreamReceiver_subscribe;
|
|
13
|
+
import { Bits, Notifier, Terminable, Terminator } from "@opendaw/lib-std";
|
|
14
14
|
export class NoteStreamReceiver {
|
|
15
15
|
constructor(receiver, address) {
|
|
16
|
+
_NoteStreamReceiver_instances.add(this);
|
|
16
17
|
_NoteStreamReceiver_terminator.set(this, new Terminator());
|
|
17
|
-
_NoteStreamReceiver_receiver.set(this, void 0);
|
|
18
|
-
_NoteStreamReceiver_address.set(this, void 0);
|
|
19
18
|
_NoteStreamReceiver_bits.set(this, void 0);
|
|
20
19
|
_NoteStreamReceiver_notifier.set(this, void 0);
|
|
21
|
-
|
|
22
|
-
__classPrivateFieldSet(this, _NoteStreamReceiver_address, address, "f");
|
|
20
|
+
_NoteStreamReceiver_binding.set(this, Terminable.Empty);
|
|
23
21
|
__classPrivateFieldSet(this, _NoteStreamReceiver_bits, new Bits(128), "f");
|
|
24
22
|
__classPrivateFieldSet(this, _NoteStreamReceiver_notifier, new Notifier(), "f");
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
23
|
+
if (address !== undefined) {
|
|
24
|
+
__classPrivateFieldSet(this, _NoteStreamReceiver_binding, __classPrivateFieldGet(this, _NoteStreamReceiver_instances, "m", _NoteStreamReceiver_subscribe).call(this, receiver, address), "f");
|
|
25
|
+
}
|
|
26
|
+
}
|
|
27
|
+
bind(receiver, address) {
|
|
28
|
+
__classPrivateFieldGet(this, _NoteStreamReceiver_binding, "f").terminate();
|
|
29
|
+
__classPrivateFieldGet(this, _NoteStreamReceiver_bits, "f").clear();
|
|
30
|
+
__classPrivateFieldSet(this, _NoteStreamReceiver_binding, __classPrivateFieldGet(this, _NoteStreamReceiver_instances, "m", _NoteStreamReceiver_subscribe).call(this, receiver, address), "f");
|
|
31
|
+
__classPrivateFieldGet(this, _NoteStreamReceiver_notifier, "f").notify(this);
|
|
32
|
+
return __classPrivateFieldGet(this, _NoteStreamReceiver_binding, "f");
|
|
30
33
|
}
|
|
31
34
|
isNoteOn(note) { return __classPrivateFieldGet(this, _NoteStreamReceiver_bits, "f").getBit(note); }
|
|
32
35
|
isAnyNoteOn() { return __classPrivateFieldGet(this, _NoteStreamReceiver_bits, "f").nonEmpty(); }
|
|
33
36
|
subscribe(observer) { return __classPrivateFieldGet(this, _NoteStreamReceiver_notifier, "f").subscribe(observer); }
|
|
34
|
-
terminate() {
|
|
37
|
+
terminate() {
|
|
38
|
+
__classPrivateFieldGet(this, _NoteStreamReceiver_binding, "f").terminate();
|
|
39
|
+
__classPrivateFieldGet(this, _NoteStreamReceiver_terminator, "f").terminate();
|
|
40
|
+
}
|
|
35
41
|
}
|
|
36
|
-
_NoteStreamReceiver_terminator = new WeakMap(),
|
|
42
|
+
_NoteStreamReceiver_terminator = new WeakMap(), _NoteStreamReceiver_bits = new WeakMap(), _NoteStreamReceiver_notifier = new WeakMap(), _NoteStreamReceiver_binding = new WeakMap(), _NoteStreamReceiver_instances = new WeakSet(), _NoteStreamReceiver_subscribe = function _NoteStreamReceiver_subscribe(receiver, address) {
|
|
43
|
+
return receiver.subscribeIntegers(address, (array) => {
|
|
44
|
+
if (__classPrivateFieldGet(this, _NoteStreamReceiver_bits, "f").replace(array.buffer)) {
|
|
45
|
+
__classPrivateFieldGet(this, _NoteStreamReceiver_notifier, "f").notify(this);
|
|
46
|
+
}
|
|
47
|
+
});
|
|
48
|
+
};
|
|
@@ -8,7 +8,7 @@ export declare class ParameterAdapterSet implements Terminable {
|
|
|
8
8
|
terminate(): void;
|
|
9
9
|
parameters(): ReadonlyArray<AutomatableParameterFieldAdapter>;
|
|
10
10
|
parameterAt(address: Address): AutomatableParameterFieldAdapter;
|
|
11
|
-
createParameter<T extends PrimitiveValues>(field: PrimitiveField<T, PointerTypes>, valueMapping: ValueMapping<T>, stringMapping: StringMapping<T>, name: string, anchor?: unitValue): AutomatableParameterFieldAdapter<T>;
|
|
11
|
+
createParameter<T extends PrimitiveValues>(field: PrimitiveField<T, PointerTypes>, valueMapping: ValueMapping<T>, stringMapping: StringMapping<T>, name: string, anchor?: unitValue, resetValue?: T): AutomatableParameterFieldAdapter<T>;
|
|
12
12
|
removeParameter<T extends PrimitiveValues>(address: Address): AutomatableParameterFieldAdapter<T>;
|
|
13
13
|
}
|
|
14
14
|
//# sourceMappingURL=ParameterAdapterSet.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParameterAdapterSet.d.ts","sourceRoot":"","sources":["../src/ParameterAdapterSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAA;AACvF,OAAO,EAAoB,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAC,MAAM,kBAAkB,CAAA;AACtG,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAA;AAEnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AAEvD,qBAAa,mBAAoB,YAAW,UAAU;;gBAItC,OAAO,EAAE,kBAAkB;IAKvC,SAAS,IAAI,IAAI;IAKjB,UAAU,IAAI,aAAa,CAAC,gCAAgC,CAAC;IAC7D,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,gCAAgC;IAK/D,eAAe,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,YAAY,CAAC,EACtC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,EAC7B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,SAAS,GAAG,gCAAgC,CAAC,CAAC,CAAC;
|
|
1
|
+
{"version":3,"file":"ParameterAdapterSet.d.ts","sourceRoot":"","sources":["../src/ParameterAdapterSet.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,cAAc,EAAE,eAAe,EAAC,MAAM,kBAAkB,CAAA;AACvF,OAAO,EAAoB,aAAa,EAAE,UAAU,EAAE,SAAS,EAAE,YAAY,EAAC,MAAM,kBAAkB,CAAA;AACtG,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAA;AAEnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AAEvD,qBAAa,mBAAoB,YAAW,UAAU;;gBAItC,OAAO,EAAE,kBAAkB;IAKvC,SAAS,IAAI,IAAI;IAKjB,UAAU,IAAI,aAAa,CAAC,gCAAgC,CAAC;IAC7D,WAAW,CAAC,OAAO,EAAE,OAAO,GAAG,gCAAgC;IAK/D,eAAe,CAAC,CAAC,SAAS,eAAe,EAAE,KAAK,EAAE,cAAc,CAAC,CAAC,EAAE,YAAY,CAAC,EACtC,YAAY,EAAE,YAAY,CAAC,CAAC,CAAC,EAC7B,aAAa,EAAE,aAAa,CAAC,CAAC,CAAC,EAC/B,IAAI,EAAE,MAAM,EACZ,MAAM,CAAC,EAAE,SAAS,EAClB,UAAU,CAAC,EAAE,CAAC,GAAG,gCAAgC,CAAC,CAAC,CAAC;IAQ/F,eAAe,CAAC,CAAC,SAAS,eAAe,EAAE,OAAO,EAAE,OAAO,GAAG,gCAAgC,CAAC,CAAC,CAAC;CAGpG"}
|
|
@@ -28,8 +28,8 @@ export class ParameterAdapterSet {
|
|
|
28
28
|
parameterAt(address) {
|
|
29
29
|
return __classPrivateFieldGet(this, _ParameterAdapterSet_parameters, "f").getOrThrow(address, () => new Error(`No ParameterAdapter found at [${address.toString()}]`));
|
|
30
30
|
}
|
|
31
|
-
createParameter(field, valueMapping, stringMapping, name, anchor) {
|
|
32
|
-
const adapter = new AutomatableParameterFieldAdapter(__classPrivateFieldGet(this, _ParameterAdapterSet_context, "f"), field, valueMapping, stringMapping, name, anchor);
|
|
31
|
+
createParameter(field, valueMapping, stringMapping, name, anchor, resetValue) {
|
|
32
|
+
const adapter = new AutomatableParameterFieldAdapter(__classPrivateFieldGet(this, _ParameterAdapterSet_context, "f"), field, valueMapping, stringMapping, name, anchor, resetValue);
|
|
33
33
|
const added = __classPrivateFieldGet(this, _ParameterAdapterSet_parameters, "f").add(adapter);
|
|
34
34
|
assert(added, `Could not add adapter for ${field}`);
|
|
35
35
|
return adapter;
|
|
@@ -1,6 +1,8 @@
|
|
|
1
1
|
import { Observer, Option, Subscription, Terminable, unitValue } from "@opendaw/lib-std";
|
|
2
2
|
import { Address } from "@opendaw/lib-box";
|
|
3
3
|
import { AutomatableParameterFieldAdapter } from "./AutomatableParameterFieldAdapter";
|
|
4
|
+
import { AudioUnitTracks } from "./audio-unit/AudioUnitTracks";
|
|
5
|
+
export type AutomationMode = "read" | "touch" | "latch";
|
|
4
6
|
export type ParameterWriteEvent = {
|
|
5
7
|
adapter: AutomatableParameterFieldAdapter;
|
|
6
8
|
previousUnitValue: unitValue;
|
|
@@ -11,6 +13,14 @@ export declare class ParameterFieldAdapters {
|
|
|
11
13
|
register(adapter: AutomatableParameterFieldAdapter): Terminable;
|
|
12
14
|
get(address: Address): AutomatableParameterFieldAdapter;
|
|
13
15
|
opt(address: Address): Option<AutomatableParameterFieldAdapter>;
|
|
16
|
+
registerTracks(address: Address, tracks: AudioUnitTracks): Terminable;
|
|
17
|
+
getTracks(address: Address): Option<AudioUnitTracks>;
|
|
18
|
+
setMode(address: Address, mode: AutomationMode): void;
|
|
19
|
+
getMode(address: Address): AutomationMode;
|
|
20
|
+
touchStart(address: Address): void;
|
|
21
|
+
touchEnd(address: Address): void;
|
|
22
|
+
isTouched(address: Address): boolean;
|
|
23
|
+
subscribeTouchEnd(observer: Observer<Address>): Subscription;
|
|
14
24
|
subscribeWrites(observer: Observer<ParameterWriteEvent>): Subscription;
|
|
15
25
|
notifyWrite(adapter: AutomatableParameterFieldAdapter, previousUnitValue: unitValue): void;
|
|
16
26
|
}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"ParameterFieldAdapters.d.ts","sourceRoot":"","sources":["../src/ParameterFieldAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAE,MAAM,EAAa,YAAY,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAA;AAC3G,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAA;
|
|
1
|
+
{"version":3,"file":"ParameterFieldAdapters.d.ts","sourceRoot":"","sources":["../src/ParameterFieldAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAAW,QAAQ,EAAE,MAAM,EAAa,YAAY,EAAE,UAAU,EAAE,SAAS,EAAC,MAAM,kBAAkB,CAAA;AAC3G,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAC,gCAAgC,EAAC,MAAM,oCAAoC,CAAA;AACnF,OAAO,EAAC,eAAe,EAAC,MAAM,8BAA8B,CAAA;AAE5D,MAAM,MAAM,cAAc,GAAG,MAAM,GAAG,OAAO,GAAG,OAAO,CAAA;AAEvD,MAAM,MAAM,mBAAmB,GAAG;IAC9B,OAAO,EAAE,gCAAgC,CAAA;IACzC,iBAAiB,EAAE,SAAS,CAAA;CAC/B,CAAA;AAED,qBAAa,sBAAsB;;;IAiB/B,QAAQ,CAAC,OAAO,EAAE,gCAAgC,GAAG,UAAU;IAK/D,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,gCAAgC;IACvD,GAAG,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,gCAAgC,CAAC;IAE/D,cAAc,CAAC,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,eAAe,GAAG,UAAU;IAMrE,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,MAAM,CAAC,eAAe,CAAC;IAIpD,OAAO,CAAC,OAAO,EAAE,OAAO,EAAE,IAAI,EAAE,cAAc,GAAG,IAAI;IACrD,OAAO,CAAC,OAAO,EAAE,OAAO,GAAG,cAAc;IAEzC,UAAU,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAClC,QAAQ,CAAC,OAAO,EAAE,OAAO,GAAG,IAAI;IAIhC,SAAS,CAAC,OAAO,EAAE,OAAO,GAAG,OAAO;IACpC,iBAAiB,CAAC,QAAQ,EAAE,QAAQ,CAAC,OAAO,CAAC,GAAG,YAAY;IAE5D,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,mBAAmB,CAAC,GAAG,YAAY;IAItE,WAAW,CAAC,OAAO,EAAE,gCAAgC,EAAE,iBAAiB,EAAE,SAAS,GAAG,IAAI;CAG7F"}
|
|
@@ -9,15 +9,23 @@ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (
|
|
|
9
9
|
if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot read private member from an object whose class did not declare it");
|
|
10
10
|
return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
|
|
11
11
|
};
|
|
12
|
-
var _ParameterFieldAdapters_set, _ParameterFieldAdapters_writeNotifier;
|
|
13
|
-
import { Notifier } from "@opendaw/lib-std";
|
|
12
|
+
var _ParameterFieldAdapters_set, _ParameterFieldAdapters_writeNotifier, _ParameterFieldAdapters_tracksMap, _ParameterFieldAdapters_touchedSet, _ParameterFieldAdapters_touchEndNotifier, _ParameterFieldAdapters_modeMap;
|
|
13
|
+
import { Notifier, Option } from "@opendaw/lib-std";
|
|
14
14
|
import { Address } from "@opendaw/lib-box";
|
|
15
15
|
export class ParameterFieldAdapters {
|
|
16
16
|
constructor() {
|
|
17
17
|
_ParameterFieldAdapters_set.set(this, void 0);
|
|
18
18
|
_ParameterFieldAdapters_writeNotifier.set(this, void 0);
|
|
19
|
+
_ParameterFieldAdapters_tracksMap.set(this, void 0);
|
|
20
|
+
_ParameterFieldAdapters_touchedSet.set(this, void 0);
|
|
21
|
+
_ParameterFieldAdapters_touchEndNotifier.set(this, void 0);
|
|
22
|
+
_ParameterFieldAdapters_modeMap.set(this, void 0);
|
|
19
23
|
__classPrivateFieldSet(this, _ParameterFieldAdapters_set, Address.newSet(adapter => adapter.field.address), "f");
|
|
20
24
|
__classPrivateFieldSet(this, _ParameterFieldAdapters_writeNotifier, new Notifier(), "f");
|
|
25
|
+
__classPrivateFieldSet(this, _ParameterFieldAdapters_tracksMap, new Map(), "f");
|
|
26
|
+
__classPrivateFieldSet(this, _ParameterFieldAdapters_touchedSet, new Set(), "f");
|
|
27
|
+
__classPrivateFieldSet(this, _ParameterFieldAdapters_touchEndNotifier, new Notifier(), "f");
|
|
28
|
+
__classPrivateFieldSet(this, _ParameterFieldAdapters_modeMap, new Map(), "f");
|
|
21
29
|
}
|
|
22
30
|
register(adapter) {
|
|
23
31
|
__classPrivateFieldGet(this, _ParameterFieldAdapters_set, "f").add(adapter);
|
|
@@ -25,6 +33,25 @@ export class ParameterFieldAdapters {
|
|
|
25
33
|
}
|
|
26
34
|
get(address) { return __classPrivateFieldGet(this, _ParameterFieldAdapters_set, "f").get(address); }
|
|
27
35
|
opt(address) { return __classPrivateFieldGet(this, _ParameterFieldAdapters_set, "f").opt(address); }
|
|
36
|
+
registerTracks(address, tracks) {
|
|
37
|
+
const key = address.toString();
|
|
38
|
+
__classPrivateFieldGet(this, _ParameterFieldAdapters_tracksMap, "f").set(key, tracks);
|
|
39
|
+
return { terminate: () => __classPrivateFieldGet(this, _ParameterFieldAdapters_tracksMap, "f").delete(key) };
|
|
40
|
+
}
|
|
41
|
+
getTracks(address) {
|
|
42
|
+
return Option.wrap(__classPrivateFieldGet(this, _ParameterFieldAdapters_tracksMap, "f").get(address.toString()));
|
|
43
|
+
}
|
|
44
|
+
setMode(address, mode) { __classPrivateFieldGet(this, _ParameterFieldAdapters_modeMap, "f").set(address.toString(), mode); }
|
|
45
|
+
getMode(address) { return __classPrivateFieldGet(this, _ParameterFieldAdapters_modeMap, "f").get(address.toString()) ?? "read"; }
|
|
46
|
+
touchStart(address) { __classPrivateFieldGet(this, _ParameterFieldAdapters_touchedSet, "f").add(address.toString()); }
|
|
47
|
+
touchEnd(address) {
|
|
48
|
+
const key = address.toString();
|
|
49
|
+
if (__classPrivateFieldGet(this, _ParameterFieldAdapters_touchedSet, "f").delete(key)) {
|
|
50
|
+
__classPrivateFieldGet(this, _ParameterFieldAdapters_touchEndNotifier, "f").notify(address);
|
|
51
|
+
}
|
|
52
|
+
}
|
|
53
|
+
isTouched(address) { return __classPrivateFieldGet(this, _ParameterFieldAdapters_touchedSet, "f").has(address.toString()); }
|
|
54
|
+
subscribeTouchEnd(observer) { return __classPrivateFieldGet(this, _ParameterFieldAdapters_touchEndNotifier, "f").subscribe(observer); }
|
|
28
55
|
subscribeWrites(observer) {
|
|
29
56
|
return __classPrivateFieldGet(this, _ParameterFieldAdapters_writeNotifier, "f").subscribe(observer);
|
|
30
57
|
}
|
|
@@ -32,4 +59,4 @@ export class ParameterFieldAdapters {
|
|
|
32
59
|
__classPrivateFieldGet(this, _ParameterFieldAdapters_writeNotifier, "f").notify({ adapter, previousUnitValue });
|
|
33
60
|
}
|
|
34
61
|
}
|
|
35
|
-
_ParameterFieldAdapters_set = new WeakMap(), _ParameterFieldAdapters_writeNotifier = new WeakMap();
|
|
62
|
+
_ParameterFieldAdapters_set = new WeakMap(), _ParameterFieldAdapters_writeNotifier = new WeakMap(), _ParameterFieldAdapters_tracksMap = new WeakMap(), _ParameterFieldAdapters_touchedSet = new WeakMap(), _ParameterFieldAdapters_touchEndNotifier = new WeakMap(), _ParameterFieldAdapters_modeMap = new WeakMap();
|
|
@@ -0,0 +1,23 @@
|
|
|
1
|
+
import { Editing } from "@opendaw/lib-std";
|
|
2
|
+
import { BoxGraph, Field, StringField } from "@opendaw/lib-box";
|
|
3
|
+
import { Pointers } from "@opendaw/studio-enums";
|
|
4
|
+
import { DeviceBox } from "./DeviceBox";
|
|
5
|
+
export declare namespace ScriptCompiler {
|
|
6
|
+
interface ScriptDeviceBox extends DeviceBox {
|
|
7
|
+
readonly graph: BoxGraph;
|
|
8
|
+
readonly code: StringField;
|
|
9
|
+
readonly parameters: Field<Pointers.Parameter>;
|
|
10
|
+
readonly samples: Field<Pointers.Sample>;
|
|
11
|
+
}
|
|
12
|
+
type Config = {
|
|
13
|
+
readonly headerTag: string;
|
|
14
|
+
readonly registryName: string;
|
|
15
|
+
readonly functionName: string;
|
|
16
|
+
};
|
|
17
|
+
const create: (config: Config) => {
|
|
18
|
+
stripHeader: (source: string) => string;
|
|
19
|
+
load: (audioContext: BaseAudioContext, deviceBox: ScriptDeviceBox) => Promise<void>;
|
|
20
|
+
compile: (audioContext: BaseAudioContext, editing: Editing, deviceBox: ScriptDeviceBox, source: string, append?: boolean) => Promise<void>;
|
|
21
|
+
};
|
|
22
|
+
}
|
|
23
|
+
//# sourceMappingURL=ScriptCompiler.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"ScriptCompiler.d.ts","sourceRoot":"","sources":["../src/ScriptCompiler.ts"],"names":[],"mappings":"AAAA,OAAO,EAAe,OAAO,EAAkB,MAAM,kBAAkB,CAAA;AACvE,OAAO,EAAC,QAAQ,EAAE,KAAK,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7D,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAG9C,OAAO,EAAC,SAAS,EAAC,MAAM,aAAa,CAAA;AAmIrC,yBAAiB,cAAc,CAAC;IAC5B,UAAiB,eAAgB,SAAQ,SAAS;QAC9C,QAAQ,CAAC,KAAK,EAAE,QAAQ,CAAA;QACxB,QAAQ,CAAC,IAAI,EAAE,WAAW,CAAA;QAC1B,QAAQ,CAAC,UAAU,EAAE,KAAK,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAA;QAC9C,QAAQ,CAAC,OAAO,EAAE,KAAK,CAAC,QAAQ,CAAC,MAAM,CAAC,CAAA;KAC3C;IAED,KAAY,MAAM,GAAG;QACjB,QAAQ,CAAC,SAAS,EAAE,MAAM,CAAA;QAC1B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;QAC7B,QAAQ,CAAC,YAAY,EAAE,MAAM,CAAA;KAChC,CAAA;IAEM,MAAM,MAAM,GAAI,QAAQ,MAAM;8BAMP,MAAM,KAAG,MAAM;6BACV,gBAAgB,aAAa,eAAe,KAAG,OAAO,CAAC,IAAI,CAAC;gCAYzD,gBAAgB,WACrB,OAAO,aACL,eAAe,UAClB,MAAM,WACN,OAAO,KAAW,OAAO,CAAC,IAAI,CAAC;KA2B9D,CAAA;CACJ"}
|