@opendaw/studio-adapters 0.3.0 → 0.3.2

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.
Files changed (62) hide show
  1. package/dist/AutomatableParameterFieldAdapter.d.ts +9 -5
  2. package/dist/AutomatableParameterFieldAdapter.d.ts.map +1 -1
  3. package/dist/AutomatableParameterFieldAdapter.js +61 -40
  4. package/dist/BoxAdapters.d.ts.map +1 -1
  5. package/dist/BoxAdapters.js +12 -0
  6. package/dist/DeviceManualUrls.d.ts +4 -3
  7. package/dist/DeviceManualUrls.d.ts.map +1 -1
  8. package/dist/DeviceManualUrls.js +4 -3
  9. package/dist/ParameterFieldAdapters.d.ts +3 -7
  10. package/dist/ParameterFieldAdapters.d.ts.map +1 -1
  11. package/dist/ParameterFieldAdapters.js +2 -15
  12. package/dist/ParameterOwner.d.ts +10 -0
  13. package/dist/ParameterOwner.d.ts.map +1 -0
  14. package/dist/ParameterOwner.js +77 -0
  15. package/dist/RootBoxAdapter.d.ts +2 -0
  16. package/dist/RootBoxAdapter.d.ts.map +1 -1
  17. package/dist/RootBoxAdapter.js +8 -2
  18. package/dist/audio-unit/AudioUnitTracks.d.ts +2 -15
  19. package/dist/audio-unit/AudioUnitTracks.d.ts.map +1 -1
  20. package/dist/audio-unit/AudioUnitTracks.js +5 -59
  21. package/dist/devices/audio-effects/ConvolverDeviceBoxAdapter.d.ts +35 -0
  22. package/dist/devices/audio-effects/ConvolverDeviceBoxAdapter.d.ts.map +1 -0
  23. package/dist/devices/audio-effects/ConvolverDeviceBoxAdapter.js +60 -0
  24. package/dist/devices/audio-effects/ReverbDeviceBoxAdapter.d.ts +1 -1
  25. package/dist/devices/audio-effects/ReverbDeviceBoxAdapter.d.ts.map +1 -1
  26. package/dist/devices/audio-effects/StereoToolDeviceBoxAdapter.d.ts +1 -1
  27. package/dist/devices/audio-effects/StereoToolDeviceBoxAdapter.d.ts.map +1 -1
  28. package/dist/devices/instruments/MIDIOutputDeviceBoxAdapter.d.ts +1 -1
  29. package/dist/devices/instruments/MIDIOutputDeviceBoxAdapter.d.ts.map +1 -1
  30. package/dist/index.d.ts +10 -0
  31. package/dist/index.d.ts.map +1 -1
  32. package/dist/index.js +10 -0
  33. package/dist/modulation/LfoModulatorBoxAdapter.d.ts +31 -0
  34. package/dist/modulation/LfoModulatorBoxAdapter.d.ts.map +1 -0
  35. package/dist/modulation/LfoModulatorBoxAdapter.js +48 -0
  36. package/dist/modulation/MacroModulatorBoxAdapter.d.ts +11 -0
  37. package/dist/modulation/MacroModulatorBoxAdapter.d.ts.map +1 -0
  38. package/dist/modulation/MacroModulatorBoxAdapter.js +21 -0
  39. package/dist/modulation/ModulationBoxAdapter.d.ts +27 -0
  40. package/dist/modulation/ModulationBoxAdapter.d.ts.map +1 -0
  41. package/dist/modulation/ModulationBoxAdapter.js +72 -0
  42. package/dist/modulation/ModulatorBoxAdapter.d.ts +35 -0
  43. package/dist/modulation/ModulatorBoxAdapter.d.ts.map +1 -0
  44. package/dist/modulation/ModulatorBoxAdapter.js +69 -0
  45. package/dist/modulation/Modulators.d.ts +25 -0
  46. package/dist/modulation/Modulators.d.ts.map +1 -0
  47. package/dist/modulation/Modulators.js +110 -0
  48. package/dist/modulation/RandomModulatorBoxAdapter.d.ts +22 -0
  49. package/dist/modulation/RandomModulatorBoxAdapter.d.ts.map +1 -0
  50. package/dist/modulation/RandomModulatorBoxAdapter.js +60 -0
  51. package/dist/modulation/StepsModulatorBoxAdapter.d.ts +40 -0
  52. package/dist/modulation/StepsModulatorBoxAdapter.d.ts.map +1 -0
  53. package/dist/modulation/StepsModulatorBoxAdapter.js +99 -0
  54. package/dist/protocols.d.ts +2 -0
  55. package/dist/protocols.d.ts.map +1 -1
  56. package/dist/timeline/ParameterTracks.d.ts +30 -0
  57. package/dist/timeline/ParameterTracks.d.ts.map +1 -0
  58. package/dist/timeline/ParameterTracks.js +75 -0
  59. package/dist/timeline/TrackBoxAdapter.d.ts +1 -0
  60. package/dist/timeline/TrackBoxAdapter.d.ts.map +1 -1
  61. package/dist/timeline/TrackBoxAdapter.js +21 -27
  62. package/package.json +10 -10
@@ -1,22 +1,9 @@
1
- import { int, Observer, Option, Subscription, Terminable } from "@opendaw/lib-std";
2
- import { Pointers } from "@opendaw/studio-enums";
3
- import { Vertex } from "@opendaw/lib-box";
4
1
  import { AudioUnitBoxAdapter } from "./AudioUnitBoxAdapter";
5
- import { IndexedAdapterCollectionListener, IndexedBoxAdapterCollection } from "../IndexedBoxAdapterCollection";
6
- import { TrackBoxAdapter } from "../timeline/TrackBoxAdapter";
7
2
  import { BoxAdapters } from "../BoxAdapters";
8
- import { TrackType } from "../timeline/TrackType";
9
- export declare class AudioUnitTracks implements Terminable {
3
+ import { FieldParameterTracks } from "../timeline/ParameterTracks";
4
+ export declare class AudioUnitTracks extends FieldParameterTracks {
10
5
  #private;
11
6
  constructor(adapter: AudioUnitBoxAdapter, boxAdapters: BoxAdapters);
12
- create(type: TrackType, target: Vertex<Pointers.Automation | Pointers>, index?: int): void;
13
- controls(target: Vertex<Pointers.Automation | Pointers>): Option<TrackBoxAdapter>;
14
- delete(adapter: TrackBoxAdapter): void;
15
7
  get audioUnitBox(): AudioUnitBoxAdapter["box"];
16
- get collection(): IndexedBoxAdapterCollection<TrackBoxAdapter, Pointers.TrackCollection>;
17
- values(): ReadonlyArray<TrackBoxAdapter>;
18
- catchupAndSubscribe(listener: IndexedAdapterCollectionListener<TrackBoxAdapter>): Subscription;
19
- subscribeAnyChange(observer: Observer<void>): Subscription;
20
- terminate(): void;
21
8
  }
22
9
  //# sourceMappingURL=AudioUnitTracks.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"AudioUnitTracks.d.ts","sourceRoot":"","sources":["../../src/audio-unit/AudioUnitTracks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAY,QAAQ,EAAE,MAAM,EAAoB,YAAY,EAAE,UAAU,EAAO,MAAM,kBAAkB,CAAA;AAClH,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAE9C,OAAO,EAAC,MAAM,EAAC,MAAM,kBAAkB,CAAA;AACvC,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,gCAAgC,EAAE,2BAA2B,EAAC,MAAM,gCAAgC,CAAA;AAC5G,OAAO,EAAC,eAAe,EAAC,MAAM,6BAA6B,CAAA;AAC3D,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAC,SAAS,EAAC,MAAM,uBAAuB,CAAA;AAE/C,qBAAa,eAAgB,YAAW,UAAU;;gBAQlC,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,WAAW;IAelE,MAAM,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,EAAE,KAAK,CAAC,EAAE,GAAG,GAAG,IAAI;IAW1F,QAAQ,CAAC,MAAM,EAAE,MAAM,CAAC,QAAQ,CAAC,UAAU,GAAG,QAAQ,CAAC,GAAG,MAAM,CAAC,eAAe,CAAC;IAKjF,MAAM,CAAC,OAAO,EAAE,eAAe,GAAG,IAAI;IAUtC,IAAI,YAAY,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAA2B;IACzE,IAAI,UAAU,IAAI,2BAA2B,CAAC,eAAe,EAAE,QAAQ,CAAC,eAAe,CAAC,CAA0B;IAElH,MAAM,IAAI,aAAa,CAAC,eAAe,CAAC;IAExC,mBAAmB,CAAC,QAAQ,EAAE,gCAAgC,CAAC,eAAe,CAAC,GAAG,YAAY;IAI9F,kBAAkB,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAE1D,SAAS,IAAI,IAAI;CAMpB"}
1
+ {"version":3,"file":"AudioUnitTracks.d.ts","sourceRoot":"","sources":["../../src/audio-unit/AudioUnitTracks.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,WAAW,EAAC,MAAM,gBAAgB,CAAA;AAC1C,OAAO,EAAC,oBAAoB,EAAC,MAAM,6BAA6B,CAAA;AAEhE,qBAAa,eAAgB,SAAQ,oBAAoB;;gBAGzC,OAAO,EAAE,mBAAmB,EAAE,WAAW,EAAE,WAAW;IAKlE,IAAI,YAAY,IAAI,mBAAmB,CAAC,KAAK,CAAC,CAA2B;CAC5E"}
@@ -9,68 +9,14 @@ 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 _AudioUnitTracks_adapter, _AudioUnitTracks_regionNotifier, _AudioUnitTracks_collection, _AudioUnitTracks_subscriptions, _AudioUnitTracks_subscription;
13
- import { Notifier, Option, panic, UUID } from "@opendaw/lib-std";
14
- import { Pointers } from "@opendaw/studio-enums";
15
- import { TrackBox } from "@opendaw/studio-boxes";
16
- import { IndexedBoxAdapterCollection } from "../IndexedBoxAdapterCollection";
17
- import { TrackBoxAdapter } from "../timeline/TrackBoxAdapter";
18
- export class AudioUnitTracks {
12
+ var _AudioUnitTracks_adapter;
13
+ import { FieldParameterTracks } from "../timeline/ParameterTracks";
14
+ export class AudioUnitTracks extends FieldParameterTracks {
19
15
  constructor(adapter, boxAdapters) {
16
+ super(adapter.box.graph, adapter.box.tracks, boxAdapters);
20
17
  _AudioUnitTracks_adapter.set(this, void 0);
21
- _AudioUnitTracks_regionNotifier.set(this, new Notifier());
22
- _AudioUnitTracks_collection.set(this, void 0);
23
- _AudioUnitTracks_subscriptions.set(this, void 0);
24
- _AudioUnitTracks_subscription.set(this, void 0);
25
18
  __classPrivateFieldSet(this, _AudioUnitTracks_adapter, adapter, "f");
26
- __classPrivateFieldSet(this, _AudioUnitTracks_collection, IndexedBoxAdapterCollection.create(adapter.box.tracks, box => boxAdapters.adapterFor(box, TrackBoxAdapter), Pointers.TrackCollection), "f");
27
- __classPrivateFieldSet(this, _AudioUnitTracks_subscriptions, UUID.newSet(({ uuid }) => uuid), "f");
28
- __classPrivateFieldSet(this, _AudioUnitTracks_subscription, __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").catchupAndSubscribe({
29
- onAdd: (adapter) => __classPrivateFieldGet(this, _AudioUnitTracks_subscriptions, "f").add({
30
- uuid: adapter.uuid,
31
- subscription: adapter.regions.subscribeChanges(() => __classPrivateFieldGet(this, _AudioUnitTracks_regionNotifier, "f").notify())
32
- }),
33
- onRemove: ({ uuid }) => __classPrivateFieldGet(this, _AudioUnitTracks_subscriptions, "f").removeByKey(uuid).subscription.terminate(),
34
- onReorder: (_adapter) => { }
35
- }), "f");
36
- }
37
- create(type, target, index) {
38
- const graph = __classPrivateFieldGet(this, _AudioUnitTracks_adapter, "f").box.graph;
39
- const tracks = __classPrivateFieldGet(this, _AudioUnitTracks_adapter, "f").box.tracks;
40
- TrackBox.create(graph, UUID.generate(), box => {
41
- box.index.setValue(index ?? __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").getMinFreeIndex());
42
- box.type.setValue(type);
43
- box.tracks.refer(tracks);
44
- box.target.refer(target);
45
- });
46
- }
47
- controls(target) {
48
- return Option.wrap(__classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").adapters()
49
- .find(adapter => adapter.target.targetVertex.contains(target), false));
50
- }
51
- delete(adapter) {
52
- const adapters = __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").adapters();
53
- const deleteIndex = adapters.indexOf(adapter);
54
- if (deleteIndex === -1) {
55
- return panic(`Cannot delete ${adapter}. Does not exist.`);
56
- }
57
- for (let index = deleteIndex + 1; index < adapters.length; index++) {
58
- adapters[index].indexField.setValue(index - 1);
59
- }
60
- adapter.box.delete();
61
19
  }
62
20
  get audioUnitBox() { return __classPrivateFieldGet(this, _AudioUnitTracks_adapter, "f").box; }
63
- get collection() { return __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f"); }
64
- values() { return __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").adapters(); }
65
- catchupAndSubscribe(listener) {
66
- return __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").catchupAndSubscribe(listener);
67
- }
68
- subscribeAnyChange(observer) { return __classPrivateFieldGet(this, _AudioUnitTracks_regionNotifier, "f").subscribe(observer); }
69
- terminate() {
70
- __classPrivateFieldGet(this, _AudioUnitTracks_collection, "f").terminate();
71
- __classPrivateFieldGet(this, _AudioUnitTracks_subscription, "f").terminate();
72
- __classPrivateFieldGet(this, _AudioUnitTracks_subscriptions, "f").forEach(({ subscription }) => subscription.terminate());
73
- __classPrivateFieldGet(this, _AudioUnitTracks_subscriptions, "f").clear();
74
- }
75
21
  }
76
- _AudioUnitTracks_adapter = new WeakMap(), _AudioUnitTracks_regionNotifier = new WeakMap(), _AudioUnitTracks_collection = new WeakMap(), _AudioUnitTracks_subscriptions = new WeakMap(), _AudioUnitTracks_subscription = new WeakMap();
22
+ _AudioUnitTracks_adapter = new WeakMap();
@@ -0,0 +1,35 @@
1
+ import { UUID } from "@opendaw/lib-std";
2
+ import { Address, BooleanField, Int32Field, PointerField, StringField } from "@opendaw/lib-box";
3
+ import { ConvolverDeviceBox } from "@opendaw/studio-boxes";
4
+ import { Pointers } from "@opendaw/studio-enums";
5
+ import { AudioEffectDeviceAdapter, DeviceHost } from "../../DeviceAdapter";
6
+ import { LabeledAudioOutput } from "../../LabeledAudioOutputsOwner";
7
+ import { BoxAdaptersContext } from "../../BoxAdaptersContext";
8
+ import { AudioUnitBoxAdapter } from "../../audio-unit/AudioUnitBoxAdapter";
9
+ export declare class ConvolverDeviceBoxAdapter implements AudioEffectDeviceAdapter {
10
+ #private;
11
+ static readonly MAX_IR_FRAMES = 770048;
12
+ readonly type = "audio-effect";
13
+ readonly accepts = "audio";
14
+ readonly manualUrl = "manuals/devices/audio/convolver";
15
+ readonly namedParameter: {
16
+ readonly wet: import("../..").AutomatableParameterFieldAdapter<number>;
17
+ readonly dry: import("../..").AutomatableParameterFieldAdapter<number>;
18
+ readonly preDelay: import("../..").AutomatableParameterFieldAdapter<number>;
19
+ };
20
+ constructor(context: BoxAdaptersContext, box: ConvolverDeviceBox);
21
+ get box(): ConvolverDeviceBox;
22
+ get uuid(): UUID.Bytes;
23
+ get address(): Address;
24
+ get indexField(): Int32Field;
25
+ get labelField(): StringField;
26
+ get enabledField(): BooleanField;
27
+ get minimizedField(): BooleanField;
28
+ get host(): PointerField<Pointers.AudioEffectHost>;
29
+ get fileField(): PointerField<Pointers.AudioFile>;
30
+ deviceHost(): DeviceHost;
31
+ audioUnitBoxAdapter(): AudioUnitBoxAdapter;
32
+ labeledAudioOutputs(): Iterable<LabeledAudioOutput>;
33
+ terminate(): void;
34
+ }
35
+ //# sourceMappingURL=ConvolverDeviceBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ConvolverDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/ConvolverDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,yBAA0B,YAAW,wBAAwB;;IAEtE,MAAM,CAAC,QAAQ,CAAC,aAAa,UAAS;IAEtC,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,qCAA6B;IAM/C,QAAQ,CAAC,cAAc;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,kBAAkB;IAOhE,IAAI,GAAG,IAAI,kBAAkB,CAAmB;IAChD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAC1E,IAAI,SAAS,IAAI,YAAY,CAAC,QAAQ,CAAC,SAAS,CAAC,CAAwB;IAEzE,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CAoBpB"}
@@ -0,0 +1,60 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _ConvolverDeviceBoxAdapter_instances, _ConvolverDeviceBoxAdapter_context, _ConvolverDeviceBoxAdapter_box, _ConvolverDeviceBoxAdapter_parametric, _ConvolverDeviceBoxAdapter_wrapParameters;
13
+ import { Option, StringMapping, ValueMapping } from "@opendaw/lib-std";
14
+ import { Devices } from "../../DeviceAdapter";
15
+ import { DeviceManualUrls } from "../../DeviceManualUrls";
16
+ import { ParameterAdapterSet } from "../../ParameterAdapterSet";
17
+ export class ConvolverDeviceBoxAdapter {
18
+ constructor(context, box) {
19
+ _ConvolverDeviceBoxAdapter_instances.add(this);
20
+ this.type = "audio-effect";
21
+ this.accepts = "audio";
22
+ this.manualUrl = DeviceManualUrls.Convolver;
23
+ _ConvolverDeviceBoxAdapter_context.set(this, void 0);
24
+ _ConvolverDeviceBoxAdapter_box.set(this, void 0);
25
+ _ConvolverDeviceBoxAdapter_parametric.set(this, void 0);
26
+ __classPrivateFieldSet(this, _ConvolverDeviceBoxAdapter_context, context, "f");
27
+ __classPrivateFieldSet(this, _ConvolverDeviceBoxAdapter_box, box, "f");
28
+ __classPrivateFieldSet(this, _ConvolverDeviceBoxAdapter_parametric, new ParameterAdapterSet(__classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_context, "f")), "f");
29
+ this.namedParameter = __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_instances, "m", _ConvolverDeviceBoxAdapter_wrapParameters).call(this, box);
30
+ }
31
+ get box() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f"); }
32
+ get uuid() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").address.uuid; }
33
+ get address() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").address; }
34
+ get indexField() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").index; }
35
+ get labelField() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").label; }
36
+ get enabledField() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").enabled; }
37
+ get minimizedField() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").minimized; }
38
+ get host() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").host; }
39
+ get fileField() { return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").file; }
40
+ deviceHost() {
41
+ return __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_context, "f").boxAdapters
42
+ .adapterFor(__classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_box, "f").host.targetVertex.unwrap("no device-host").box, Devices.isHost);
43
+ }
44
+ audioUnitBoxAdapter() { return this.deviceHost().audioUnitBoxAdapter(); }
45
+ *labeledAudioOutputs() {
46
+ yield { address: this.address, label: this.labelField.getValue(), children: () => Option.None };
47
+ }
48
+ terminate() {
49
+ __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_parametric, "f").terminate();
50
+ }
51
+ }
52
+ _ConvolverDeviceBoxAdapter_context = new WeakMap(), _ConvolverDeviceBoxAdapter_box = new WeakMap(), _ConvolverDeviceBoxAdapter_parametric = new WeakMap(), _ConvolverDeviceBoxAdapter_instances = new WeakSet(), _ConvolverDeviceBoxAdapter_wrapParameters = function _ConvolverDeviceBoxAdapter_wrapParameters(box) {
53
+ return {
54
+ wet: __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_parametric, "f").createParameter(box.wet, ValueMapping.DefaultDecibel, StringMapping.decible, "Wet"),
55
+ dry: __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_parametric, "f").createParameter(box.dry, ValueMapping.DefaultDecibel, StringMapping.decible, "Dry"),
56
+ preDelay: __classPrivateFieldGet(this, _ConvolverDeviceBoxAdapter_parametric, "f").createParameter(box.preDelay, ValueMapping.powerByCenter(0.050, 0.0, 0.500), StringMapping.numeric({ unit: "s", fractionDigits: 1, unitPrefix: true }), "Pre-Delay")
57
+ };
58
+ };
59
+ // WASM CONTRACT: mirrors `MAX_IR_FRAMES` (crates/dsp/src/convolution.rs), engine-rate frames after resampling.
60
+ ConvolverDeviceBoxAdapter.MAX_IR_FRAMES = 770048;
@@ -10,7 +10,7 @@ export declare class ReverbDeviceBoxAdapter implements AudioEffectDeviceAdapter
10
10
  #private;
11
11
  readonly type = "audio-effect";
12
12
  readonly accepts = "audio";
13
- readonly manualUrl = "manuals/devices/audio/cheap-reverb";
13
+ readonly manualUrl = "manuals/devices/audio/reverb";
14
14
  readonly namedParameter: {
15
15
  readonly decay: import("../..").AutomatableParameterFieldAdapter<number>;
16
16
  readonly preDelay: import("../..").AutomatableParameterFieldAdapter<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"ReverbDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/ReverbDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAwB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,sBAAuB,YAAW,wBAAwB;;IACnE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,wCAA0B;IAK5C,QAAQ,CAAC,cAAc;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,eAAe;IAO7D,IAAI,GAAG,IAAI,eAAe,CAAmB;IAC7C,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAE1E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CAwCpB"}
1
+ {"version":3,"file":"ReverbDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/ReverbDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAwB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,sBAAuB,YAAW,wBAAwB;;IACnE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,kCAA0B;IAK5C,QAAQ,CAAC,cAAc;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,eAAe;IAO7D,IAAI,GAAG,IAAI,eAAe,CAAmB;IAC7C,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAE1E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CAwCpB"}
@@ -10,7 +10,7 @@ export declare class StereoToolDeviceBoxAdapter implements AudioEffectDeviceAdap
10
10
  #private;
11
11
  readonly type = "audio-effect";
12
12
  readonly accepts = "audio";
13
- readonly manualUrl = "manuals/devices/audio/stereo-tool";
13
+ readonly manualUrl = "manuals/devices/audio/stereotool";
14
14
  readonly namedParameter: {
15
15
  readonly volume: import("../..").AutomatableParameterFieldAdapter<number>;
16
16
  readonly panning: import("../..").AutomatableParameterFieldAdapter<number>;
@@ -1 +1 @@
1
- {"version":3,"file":"StereoToolDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/StereoToolDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,0BAA2B,YAAW,wBAAwB;;IACvE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,uCAA8B;IAMhD,QAAQ,CAAC,cAAc;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,mBAAmB;IAOjE,IAAI,GAAG,IAAI,mBAAmB,CAAmB;IACjD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAE1E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CAqBpB"}
1
+ {"version":3,"file":"StereoToolDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/audio-effects/StereoToolDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAwB,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1E,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,UAAU,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AAC7F,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AACzD,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,wBAAwB,EAAE,UAAU,EAAU,MAAM,qBAAqB,CAAA;AACjF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAG3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAExE,qBAAa,0BAA2B,YAAW,wBAAwB;;IACvE,QAAQ,CAAC,IAAI,kBAAiB;IAC9B,QAAQ,CAAC,OAAO,WAAU;IAC1B,QAAQ,CAAC,SAAS,sCAA8B;IAMhD,QAAQ,CAAC,cAAc;;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,mBAAmB;IAOjE,IAAI,GAAG,IAAI,mBAAmB,CAAmB;IACjD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,UAAU,CAAyB;IACrD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,IAAI,IAAI,YAAY,CAAC,QAAQ,CAAC,eAAe,CAAC,CAAwB;IAE1E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CAqBpB"}
@@ -11,7 +11,7 @@ export declare class MIDIOutputDeviceBoxAdapter implements InstrumentDeviceBoxAd
11
11
  #private;
12
12
  readonly type = "instrument";
13
13
  readonly accepts = "midi";
14
- readonly manualUrl = "manuals/devices/instruments/midi-output";
14
+ readonly manualUrl = "manuals/devices/instruments/midioutput";
15
15
  constructor(context: BoxAdaptersContext, box: MIDIOutputDeviceBox);
16
16
  get box(): MIDIOutputDeviceBox;
17
17
  get uuid(): UUID.Bytes;
@@ -1 +1 @@
1
- {"version":3,"file":"MIDIOutputDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/instruments/MIDIOutputDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,gBAAgB,EAQhB,IAAI,EAEP,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,aAAa,EAAE,mBAAmB,EAAyB,MAAM,uBAAuB,CAAA;AAChG,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAC,UAAU,EAAW,0BAA0B,EAAC,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAE3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAoBxE,qBAAa,0BAA2B,YAAW,0BAA0B;;IAGzE,QAAQ,CAAC,IAAI,gBAAe;IAC5B,QAAQ,CAAC,OAAO,UAAS;IACzB,QAAQ,CAAC,SAAS,6CAA8B;gBAQpC,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,mBAAmB;IAuBjE,IAAI,GAAG,IAAI,mBAAmB,CAAmB;IACjD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,SAAS,IAAI,WAAW,CAAwB;IACpD,IAAI,gBAAgB,IAAI,SAAS,CAAyB;IAC1D,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,iBAAiB,IAAI,OAAO,CAAc;IAC9C,IAAI,UAAU,IAAI,mBAAmB,CAA0B;IAC/D,IAAI,UAAU,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAA0B;IAE3E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CACpB"}
1
+ {"version":3,"file":"MIDIOutputDeviceBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/devices/instruments/MIDIOutputDeviceBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,gBAAgB,EAQhB,IAAI,EAEP,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,aAAa,EAAE,mBAAmB,EAAyB,MAAM,uBAAuB,CAAA;AAChG,OAAO,EAAC,OAAO,EAAE,YAAY,EAAE,WAAW,EAAC,MAAM,kBAAkB,CAAA;AACnE,OAAO,EAAC,UAAU,EAAW,0BAA0B,EAAC,MAAM,qBAAqB,CAAA;AACnF,OAAO,EAAC,kBAAkB,EAAC,MAAM,gCAAgC,CAAA;AACjE,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAE3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,2BAA2B,CAAA;AAC7D,OAAO,EAAC,SAAS,EAAC,MAAM,0BAA0B,CAAA;AAClD,OAAO,EAAC,mBAAmB,EAAC,MAAM,sCAAsC,CAAA;AAoBxE,qBAAa,0BAA2B,YAAW,0BAA0B;;IAGzE,QAAQ,CAAC,IAAI,gBAAe;IAC5B,QAAQ,CAAC,OAAO,UAAS;IACzB,QAAQ,CAAC,SAAS,4CAA8B;gBAQpC,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,mBAAmB;IAuBjE,IAAI,GAAG,IAAI,mBAAmB,CAAmB;IACjD,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,UAAU,IAAI,WAAW,CAAyB;IACtD,IAAI,SAAS,IAAI,WAAW,CAAwB;IACpD,IAAI,gBAAgB,IAAI,SAAS,CAAyB;IAC1D,IAAI,YAAY,IAAI,YAAY,CAA2B;IAC3D,IAAI,cAAc,IAAI,YAAY,CAA6B;IAC/D,IAAI,iBAAiB,IAAI,OAAO,CAAc;IAC9C,IAAI,UAAU,IAAI,mBAAmB,CAA0B;IAC/D,IAAI,UAAU,IAAI,gBAAgB,CAAC,aAAa,CAAC,CAA0B;IAE3E,UAAU,IAAI,UAAU;IAKxB,mBAAmB,IAAI,mBAAmB;IAEzC,mBAAmB,IAAI,QAAQ,CAAC,kBAAkB,CAAC;IAIpD,SAAS,IAAI,IAAI;CACpB"}
package/dist/index.d.ts CHANGED
@@ -24,6 +24,7 @@ export * from "./NoteSignal";
24
24
  export * from "./NoteStreamReceiver";
25
25
  export * from "./ParameterAdapterSet";
26
26
  export * from "./ParameterFieldAdapters";
27
+ export * from "./ParameterOwner";
27
28
  export * from "./Parsing";
28
29
  export * from "./PeakMeterProcessorOptions";
29
30
  export * from "./PianoModeAdapter";
@@ -56,6 +57,7 @@ export * from "./devices/audio-effects/AudioEffectComposite/AudioEffectComposite
56
57
  export * from "./devices/audio-effects/AudioEffectCompositeBoxAdapter";
57
58
  export * from "./devices/audio-effects/AutotuneDeviceBoxAdapter";
58
59
  export * from "./devices/audio-effects/CompressorDeviceBoxAdapter";
60
+ export * from "./devices/audio-effects/ConvolverDeviceBoxAdapter";
59
61
  export * from "./devices/audio-effects/CrusherDeviceBoxAdapter";
60
62
  export * from "./devices/audio-effects/DattorroReverbDeviceBoxAdapter";
61
63
  export * from "./devices/audio-effects/DelayDeviceBoxAdapter";
@@ -126,6 +128,13 @@ export * from "./modular/modules/delay";
126
128
  export * from "./modular/modules/gain";
127
129
  export * from "./modular/modules/multiplier";
128
130
  export * from "./modular/user-interface";
131
+ export * from "./modulation/LfoModulatorBoxAdapter";
132
+ export * from "./modulation/MacroModulatorBoxAdapter";
133
+ export * from "./modulation/ModulationBoxAdapter";
134
+ export * from "./modulation/ModulatorBoxAdapter";
135
+ export * from "./modulation/Modulators";
136
+ export * from "./modulation/RandomModulatorBoxAdapter";
137
+ export * from "./modulation/StepsModulatorBoxAdapter";
129
138
  export * from "./nam/NeuralAmpModelBoxAdapter";
130
139
  export * from "./offline-renderer";
131
140
  export * from "./preset/PresetDecoder";
@@ -158,6 +167,7 @@ export * from "./timeline/AudioContentBoxAdapter";
158
167
  export * from "./timeline/ClipBoxAdapter";
159
168
  export * from "./timeline/MarkerBoxAdapter";
160
169
  export * from "./timeline/MarkerTrackAdapter";
170
+ export * from "./timeline/ParameterTracks";
161
171
  export * from "./timeline/RegionBoxAdapter";
162
172
  export * from "./timeline/RegionEditing";
163
173
  export * from "./timeline/SignatureEventBoxAdapter";
@@ -1 +1 @@
1
- {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"index.d.ts","sourceRoot":"","sources":["../src/index.ts"],"names":[],"mappings":"AAGA,cAAc,oCAAoC,CAAA;AAClD,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,wBAAwB,CAAA;AACtC,cAAc,eAAe,CAAA;AAC7B,cAAc,sBAAsB,CAAA;AACpC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,kBAAkB,CAAA;AAChC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,aAAa,CAAA;AAC3B,cAAc,oBAAoB,CAAA;AAClC,cAAc,mBAAmB,CAAA;AACjC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qBAAqB,CAAA;AACnC,cAAc,gBAAgB,CAAA;AAC9B,cAAc,mBAAmB,CAAA;AACjC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,YAAY,CAAA;AAC1B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,cAAc,CAAA;AAC5B,cAAc,sBAAsB,CAAA;AACpC,cAAc,uBAAuB,CAAA;AACrC,cAAc,0BAA0B,CAAA;AACxC,cAAc,kBAAkB,CAAA;AAChC,cAAc,WAAW,CAAA;AACzB,cAAc,6BAA6B,CAAA;AAC3C,cAAc,oBAAoB,CAAA;AAClC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,cAAc,CAAA;AAC5B,cAAc,kBAAkB,CAAA;AAChC,cAAc,kBAAkB,CAAA;AAChC,cAAc,qBAAqB,CAAA;AACnC,cAAc,cAAc,CAAA;AAC5B,cAAc,qBAAqB,CAAA;AACnC,cAAc,aAAa,CAAA;AAC3B,cAAc,mBAAmB,CAAA;AACjC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,kCAAkC,CAAA;AAChD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,oCAAoC,CAAA;AAClD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,qCAAqC,CAAA;AACnD,cAAc,uBAAuB,CAAA;AACrC,cAAc,oCAAoC,CAAA;AAClD,cAAc,oCAAoC,CAAA;AAClD,cAAc,0BAA0B,CAAA;AACxC,cAAc,mCAAmC,CAAA;AACjD,cAAc,8BAA8B,CAAA;AAC5C,cAAc,oEAAoE,CAAA;AAClF,cAAc,iFAAiF,CAAA;AAC/F,cAAc,wDAAwD,CAAA;AACtE,cAAc,kDAAkD,CAAA;AAChE,cAAc,oDAAoD,CAAA;AAClE,cAAc,mDAAmD,CAAA;AACjE,cAAc,iDAAiD,CAAA;AAC/D,cAAc,wDAAwD,CAAA;AACtE,cAAc,+CAA+C,CAAA;AAC7D,cAAc,8CAA8C,CAAA;AAC5D,cAAc,kDAAkD,CAAA;AAChE,cAAc,8CAA8C,CAAA;AAC5D,cAAc,mDAAmD,CAAA;AACjE,cAAc,iDAAiD,CAAA;AAC/D,cAAc,mDAAmD,CAAA;AACjE,cAAc,gDAAgD,CAAA;AAC9D,cAAc,gDAAgD,CAAA;AAC9D,cAAc,mDAAmD,CAAA;AACjE,cAAc,oDAAoD,CAAA;AAClE,cAAc,+CAA+C,CAAA;AAC7D,cAAc,4DAA4D,CAAA;AAC1E,cAAc,iDAAiD,CAAA;AAC/D,cAAc,oDAAoD,CAAA;AAClE,cAAc,mDAAmD,CAAA;AACjE,cAAc,+CAA+C,CAAA;AAC7D,cAAc,wCAAwC,CAAA;AACtD,cAAc,8CAA8C,CAAA;AAC5D,cAAc,4CAA4C,CAAA;AAC1D,cAAc,uCAAuC,CAAA;AACrD,cAAc,6CAA6C,CAAA;AAC3D,cAAc,kDAAkD,CAAA;AAChE,cAAc,4CAA4C,CAAA;AAC1D,cAAc,oCAAoC,CAAA;AAClD,cAAc,uCAAuC,CAAA;AACrD,cAAc,4CAA4C,CAAA;AAC1D,cAAc,2CAA2C,CAAA;AACzD,cAAc,sCAAsC,CAAA;AACpD,cAAc,2DAA2D,CAAA;AACzE,cAAc,iDAAiD,CAAA;AAC/D,cAAc,iDAAiD,CAAA;AAC/D,cAAc,4CAA4C,CAAA;AAC1D,cAAc,oDAAoD,CAAA;AAClE,cAAc,4CAA4C,CAAA;AAC1D,cAAc,iDAAiD,CAAA;AAC/D,cAAc,8CAA8C,CAAA;AAC5D,cAAc,kDAAkD,CAAA;AAChE,cAAc,0DAA0D,CAAA;AACxE,cAAc,iDAAiD,CAAA;AAC/D,cAAc,kDAAkD,CAAA;AAChE,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,kCAAkC,CAAA;AAChD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,wBAAwB,CAAA;AACtC,cAAc,2BAA2B,CAAA;AACzC,cAAc,2BAA2B,CAAA;AACzC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,mCAAmC,CAAA;AACjD,cAAc,oBAAoB,CAAA;AAClC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qBAAqB,CAAA;AACnC,cAAc,mBAAmB,CAAA;AACjC,cAAc,kBAAkB,CAAA;AAChC,cAAc,+BAA+B,CAAA;AAC7C,cAAc,gCAAgC,CAAA;AAC9C,cAAc,yBAAyB,CAAA;AACvC,cAAc,wBAAwB,CAAA;AACtC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,0BAA0B,CAAA;AACxC,cAAc,qCAAqC,CAAA;AACnD,cAAc,uCAAuC,CAAA;AACrD,cAAc,mCAAmC,CAAA;AACjD,cAAc,kCAAkC,CAAA;AAChD,cAAc,yBAAyB,CAAA;AACvC,cAAc,wCAAwC,CAAA;AACtD,cAAc,uCAAuC,CAAA;AACrD,cAAc,gCAAgC,CAAA;AAC9C,cAAc,oBAAoB,CAAA;AAClC,cAAc,wBAAwB,CAAA;AACtC,cAAc,wBAAwB,CAAA;AACtC,cAAc,uBAAuB,CAAA;AACrC,cAAc,iCAAiC,CAAA;AAC/C,cAAc,0BAA0B,CAAA;AACxC,cAAc,2BAA2B,CAAA;AACzC,cAAc,aAAa,CAAA;AAC3B,cAAc,sBAAsB,CAAA;AACpC,cAAc,iBAAiB,CAAA;AAC/B,cAAc,uBAAuB,CAAA;AACrC,cAAc,8BAA8B,CAAA;AAC5C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,yBAAyB,CAAA;AACvC,cAAc,qCAAqC,CAAA;AACnD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,8BAA8B,CAAA;AAC5C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,2BAA2B,CAAA;AACzC,cAAc,uBAAuB,CAAA;AACrC,cAAc,qCAAqC,CAAA;AACnD,cAAc,6BAA6B,CAAA;AAC3C,cAAc,oCAAoC,CAAA;AAClD,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,mCAAmC,CAAA;AACjD,cAAc,2BAA2B,CAAA;AACzC,cAAc,6BAA6B,CAAA;AAC3C,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,6BAA6B,CAAA;AAC3C,cAAc,0BAA0B,CAAA;AACxC,cAAc,qCAAqC,CAAA;AACnD,cAAc,kCAAkC,CAAA;AAChD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,uBAAuB,CAAA;AACrC,cAAc,yBAAyB,CAAA;AACvC,cAAc,sBAAsB,CAAA;AACpC,cAAc,qCAAqC,CAAA;AACnD,cAAc,oCAAoC,CAAA;AAClD,cAAc,qCAAqC,CAAA;AACnD,cAAc,qDAAqD,CAAA;AACnE,cAAc,sDAAsD,CAAA;AACpE,cAAc,4CAA4C,CAAA;AAC1D,cAAc,sCAAsC,CAAA;AACpD,cAAc,uCAAuC,CAAA;AACrD,cAAc,uCAAuC,CAAA;AACrD,cAAc,yCAAyC,CAAA;AACvD,cAAc,iCAAiC,CAAA;AAC/C,cAAc,iCAAiC,CAAA;AAC/C,cAAc,wCAAwC,CAAA;AACtD,cAAc,yCAAyC,CAAA;AACvD,cAAc,+BAA+B,CAAA;AAC7C,cAAc,4BAA4B,CAAA;AAC1C,cAAc,0BAA0B,CAAA;AACxC,cAAc,UAAU,CAAA;AACxB,YAAY,EAAC,WAAW,EAAE,mBAAmB,EAAC,MAAM,qBAAqB,CAAA;AACzE,OAAO,EAAC,iBAAiB,EAAE,iBAAiB,EAAE,eAAe,EAAC,MAAM,qBAAqB,CAAA"}
package/dist/index.js CHANGED
@@ -26,6 +26,7 @@ export * from "./NoteSignal";
26
26
  export * from "./NoteStreamReceiver";
27
27
  export * from "./ParameterAdapterSet";
28
28
  export * from "./ParameterFieldAdapters";
29
+ export * from "./ParameterOwner";
29
30
  export * from "./Parsing";
30
31
  export * from "./PeakMeterProcessorOptions";
31
32
  export * from "./PianoModeAdapter";
@@ -58,6 +59,7 @@ export * from "./devices/audio-effects/AudioEffectComposite/AudioEffectComposite
58
59
  export * from "./devices/audio-effects/AudioEffectCompositeBoxAdapter";
59
60
  export * from "./devices/audio-effects/AutotuneDeviceBoxAdapter";
60
61
  export * from "./devices/audio-effects/CompressorDeviceBoxAdapter";
62
+ export * from "./devices/audio-effects/ConvolverDeviceBoxAdapter";
61
63
  export * from "./devices/audio-effects/CrusherDeviceBoxAdapter";
62
64
  export * from "./devices/audio-effects/DattorroReverbDeviceBoxAdapter";
63
65
  export * from "./devices/audio-effects/DelayDeviceBoxAdapter";
@@ -128,6 +130,13 @@ export * from "./modular/modules/delay";
128
130
  export * from "./modular/modules/gain";
129
131
  export * from "./modular/modules/multiplier";
130
132
  export * from "./modular/user-interface";
133
+ export * from "./modulation/LfoModulatorBoxAdapter";
134
+ export * from "./modulation/MacroModulatorBoxAdapter";
135
+ export * from "./modulation/ModulationBoxAdapter";
136
+ export * from "./modulation/ModulatorBoxAdapter";
137
+ export * from "./modulation/Modulators";
138
+ export * from "./modulation/RandomModulatorBoxAdapter";
139
+ export * from "./modulation/StepsModulatorBoxAdapter";
131
140
  export * from "./nam/NeuralAmpModelBoxAdapter";
132
141
  export * from "./offline-renderer";
133
142
  export * from "./preset/PresetDecoder";
@@ -160,6 +169,7 @@ export * from "./timeline/AudioContentBoxAdapter";
160
169
  export * from "./timeline/ClipBoxAdapter";
161
170
  export * from "./timeline/MarkerBoxAdapter";
162
171
  export * from "./timeline/MarkerTrackAdapter";
172
+ export * from "./timeline/ParameterTracks";
163
173
  export * from "./timeline/RegionBoxAdapter";
164
174
  export * from "./timeline/RegionEditing";
165
175
  export * from "./timeline/SignatureEventBoxAdapter";
@@ -0,0 +1,31 @@
1
+ import { LfoModulatorBox } from "@opendaw/studio-boxes";
2
+ import { int } from "@opendaw/lib-std";
3
+ import { ppqn } from "@opendaw/lib-dsp";
4
+ import { BoxAdaptersContext } from "../BoxAdaptersContext";
5
+ import { ModulatorBoxAdapter } from "./ModulatorBoxAdapter";
6
+ export declare enum LfoShape {
7
+ Sine = 0,
8
+ Triangle = 1,
9
+ SawUp = 2,
10
+ SawDown = 3,
11
+ Square = 4
12
+ }
13
+ export declare class LfoModulatorBoxAdapter extends ModulatorBoxAdapter<LfoModulatorBox> {
14
+ #private;
15
+ static readonly Rates: ReadonlyArray<[int, int]>;
16
+ static readonly MaxAbsoluteRate = 10;
17
+ static readonly ExponentRange = 8;
18
+ static readonly CenterAbsoluteRate = 1;
19
+ static readonly RatePPQNs: ReadonlyArray<ppqn>;
20
+ static readonly RateStrings: ReadonlyArray<string>;
21
+ static readonly ShapeStrings: ReadonlyArray<string>;
22
+ readonly namedParameter: {
23
+ readonly shape: import("..").AutomatableParameterFieldAdapter<number>;
24
+ readonly rateSync: import("..").AutomatableParameterFieldAdapter<number>;
25
+ readonly rateAbsolute: import("..").AutomatableParameterFieldAdapter<number>;
26
+ readonly phase: import("..").AutomatableParameterFieldAdapter<number>;
27
+ readonly exponent: import("..").AutomatableParameterFieldAdapter<number>;
28
+ };
29
+ constructor(context: BoxAdaptersContext, box: LfoModulatorBox);
30
+ }
31
+ //# sourceMappingURL=LfoModulatorBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"LfoModulatorBoxAdapter.d.ts","sourceRoot":"","sources":["../../src/modulation/LfoModulatorBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,eAAe,EAAC,MAAM,uBAAuB,CAAA;AACrD,OAAO,EAAC,GAAG,EAA8B,MAAM,kBAAkB,CAAA;AACjE,OAAO,EAAC,IAAI,EAAO,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AAEzD,oBAAY,QAAQ;IAAE,IAAI,IAAA;IAAE,QAAQ,IAAA;IAAE,KAAK,IAAA;IAAE,OAAO,IAAA;IAAE,MAAM,IAAA;CAAC;AAG7D,qBAAa,sBAAuB,SAAQ,mBAAmB,CAAC,eAAe,CAAC;;IAC5E,MAAM,CAAC,QAAQ,CAAC,KAAK,EAAE,aAAa,CAAC,CAAC,GAAG,EAAE,GAAG,CAAC,CAAC,CAE/C;IACD,MAAM,CAAC,QAAQ,CAAC,eAAe,MAAO;IACtC,MAAM,CAAC,QAAQ,CAAC,aAAa,KAAM;IACnC,MAAM,CAAC,QAAQ,CAAC,kBAAkB,KAAM;IACxC,MAAM,CAAC,QAAQ,CAAC,SAAS,EAAE,aAAa,CAAC,IAAI,CAAC,CACqC;IACnF,MAAM,CAAC,QAAQ,CAAC,WAAW,EAAE,aAAa,CAAC,MAAM,CAAC,CAGT;IACzC,MAAM,CAAC,QAAQ,CAAC,YAAY,EAAE,aAAa,CAAC,MAAM,CAAC,CAAmD;IAEtG,QAAQ,CAAC,cAAc;;;;;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,eAAe;CAwBhE"}
@@ -0,0 +1,48 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ 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");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _LfoModulatorBoxAdapter_instances, _a, _LfoModulatorBoxAdapter_wrapParameters;
7
+ import { StringMapping, ValueMapping } from "@opendaw/lib-std";
8
+ import { PPQN } from "@opendaw/lib-dsp";
9
+ import { ModulatorBoxAdapter } from "./ModulatorBoxAdapter";
10
+ export var LfoShape;
11
+ (function (LfoShape) {
12
+ LfoShape[LfoShape["Sine"] = 0] = "Sine";
13
+ LfoShape[LfoShape["Triangle"] = 1] = "Triangle";
14
+ LfoShape[LfoShape["SawUp"] = 2] = "SawUp";
15
+ LfoShape[LfoShape["SawDown"] = 3] = "SawDown";
16
+ LfoShape[LfoShape["Square"] = 4] = "Square";
17
+ })(LfoShape || (LfoShape = {}));
18
+ // WASM CONTRACT: `RatePPQNs` mirrors the engine's `modulation::RATES` (crates/engine/src/modulation.rs).
19
+ export class LfoModulatorBoxAdapter extends ModulatorBoxAdapter {
20
+ constructor(context, box) {
21
+ super(context, box);
22
+ _LfoModulatorBoxAdapter_instances.add(this);
23
+ this.namedParameter = __classPrivateFieldGet(this, _LfoModulatorBoxAdapter_instances, "m", _LfoModulatorBoxAdapter_wrapParameters).call(this, box);
24
+ this.registerParameterTracks();
25
+ }
26
+ }
27
+ _a = LfoModulatorBoxAdapter, _LfoModulatorBoxAdapter_instances = new WeakSet(), _LfoModulatorBoxAdapter_wrapParameters = function _LfoModulatorBoxAdapter_wrapParameters(box) {
28
+ return {
29
+ shape: this.parametric.createParameter(box.shape, ValueMapping.linearInteger(0, _a.ShapeStrings.length - 1), StringMapping.indices("", _a.ShapeStrings), "Shape"),
30
+ rateSync: this.parametric.createParameter(box.rateSync, ValueMapping.linearInteger(0, _a.RateStrings.length - 1), StringMapping.indices("", _a.RateStrings), "Sync"),
31
+ rateAbsolute: this.parametric.createParameter(box.rateAbsolute, ValueMapping.powerByCenter(_a.CenterAbsoluteRate, 0.0, _a.MaxAbsoluteRate), StringMapping.numeric({ unit: "Hz", fractionDigits: 2 }), "Free"),
32
+ phase: this.parametric.createParameter(box.phase, ValueMapping.unipolar(), StringMapping.percent({ fractionDigits: 0 }), "Phase"),
33
+ exponent: this.parametric.createParameter(box.exponent, ValueMapping.bipolar(), StringMapping.percent({ fractionDigits: 0 }), "Pow")
34
+ };
35
+ };
36
+ LfoModulatorBoxAdapter.Rates = [
37
+ [8, 1], [4, 1], [2, 1], [1, 1], [1, 2], [1, 4], [1, 6], [1, 8], [1, 12], [1, 16], [1, 24], [1, 32]
38
+ ];
39
+ LfoModulatorBoxAdapter.MaxAbsoluteRate = 10.0;
40
+ LfoModulatorBoxAdapter.ExponentRange = 8.0;
41
+ LfoModulatorBoxAdapter.CenterAbsoluteRate = 1.0;
42
+ LfoModulatorBoxAdapter.RatePPQNs = [0, ..._a.Rates
43
+ .map(([nominator, denominator]) => PPQN.fromSignature(nominator, denominator))];
44
+ LfoModulatorBoxAdapter.RateStrings = ["Off", ..._a.Rates
45
+ .map(([nominator, denominator]) => denominator === 1
46
+ ? (nominator === 1 ? "1 bar" : `${nominator} bars`)
47
+ : `${nominator}/${denominator}`)];
48
+ LfoModulatorBoxAdapter.ShapeStrings = ["Sine", "Triangle", "Saw ↑", "Saw ↓", "Square"];
@@ -0,0 +1,11 @@
1
+ import { MacroModulatorBox } from "@opendaw/studio-boxes";
2
+ import { BoxAdaptersContext } from "../BoxAdaptersContext";
3
+ import { ModulatorBoxAdapter } from "./ModulatorBoxAdapter";
4
+ export declare class MacroModulatorBoxAdapter extends ModulatorBoxAdapter<MacroModulatorBox> {
5
+ #private;
6
+ readonly namedParameter: {
7
+ readonly value: import("..").AutomatableParameterFieldAdapter<number>;
8
+ };
9
+ constructor(context: BoxAdaptersContext, box: MacroModulatorBox);
10
+ }
11
+ //# sourceMappingURL=MacroModulatorBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"MacroModulatorBoxAdapter.d.ts","sourceRoot":"","sources":["../../src/modulation/MacroModulatorBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,iBAAiB,EAAC,MAAM,uBAAuB,CAAA;AAEvD,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AACxD,OAAO,EAAC,mBAAmB,EAAwB,MAAM,uBAAuB,CAAA;AAEhF,qBAAa,wBAAyB,SAAQ,mBAAmB,CAAC,iBAAiB,CAAC;;IAChF,QAAQ,CAAC,cAAc;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,iBAAiB;CAYlE"}
@@ -0,0 +1,21 @@
1
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
2
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
3
+ 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");
4
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
5
+ };
6
+ var _MacroModulatorBoxAdapter_instances, _MacroModulatorBoxAdapter_wrapParameters;
7
+ import { ValueMapping } from "@opendaw/lib-std";
8
+ import { ModulatorBoxAdapter, polarityStringMapping } from "./ModulatorBoxAdapter";
9
+ export class MacroModulatorBoxAdapter extends ModulatorBoxAdapter {
10
+ constructor(context, box) {
11
+ super(context, box);
12
+ _MacroModulatorBoxAdapter_instances.add(this);
13
+ this.namedParameter = __classPrivateFieldGet(this, _MacroModulatorBoxAdapter_instances, "m", _MacroModulatorBoxAdapter_wrapParameters).call(this, box);
14
+ this.registerParameterTracks();
15
+ }
16
+ }
17
+ _MacroModulatorBoxAdapter_instances = new WeakSet(), _MacroModulatorBoxAdapter_wrapParameters = function _MacroModulatorBoxAdapter_wrapParameters(box) {
18
+ return {
19
+ value: this.parametric.createParameter(box.value, ValueMapping.unipolar(), polarityStringMapping(box.bipolar), "Value")
20
+ };
21
+ };
@@ -0,0 +1,27 @@
1
+ import { Address } from "@opendaw/lib-box";
2
+ import { ModulationBox } from "@opendaw/studio-boxes";
3
+ import { Observer, Option, Subscription, UUID } from "@opendaw/lib-std";
4
+ import { BoxAdapter } from "../BoxAdapter";
5
+ import { BoxAdaptersContext } from "../BoxAdaptersContext";
6
+ import { AutomatableParameterFieldAdapter } from "../AutomatableParameterFieldAdapter";
7
+ import { AudioUnitBoxAdapter } from "../audio-unit/AudioUnitBoxAdapter";
8
+ import { ModulatorBoxAdapter } from "./ModulatorBoxAdapter";
9
+ export declare class ModulationBoxAdapter implements BoxAdapter {
10
+ #private;
11
+ readonly namedParameter: {
12
+ readonly depth: AutomatableParameterFieldAdapter<number>;
13
+ };
14
+ constructor(context: BoxAdaptersContext, box: ModulationBox);
15
+ get box(): ModulationBox;
16
+ get uuid(): UUID.Bytes;
17
+ get address(): Address;
18
+ get enabled(): boolean;
19
+ get depth(): number;
20
+ get source(): ModulatorBoxAdapter;
21
+ get target(): Option<AutomatableParameterFieldAdapter>;
22
+ get targetAudioUnit(): Option<AudioUnitBoxAdapter>;
23
+ get targetOwner(): Option<string>;
24
+ catchupAndSubscribeTargetOwner(observer: Observer<string>): Subscription;
25
+ terminate(): void;
26
+ }
27
+ //# sourceMappingURL=ModulationBoxAdapter.d.ts.map
@@ -0,0 +1 @@
1
+ {"version":3,"file":"ModulationBoxAdapter.d.ts","sourceRoot":"","sources":["../../src/modulation/ModulationBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,OAAO,EAAC,MAAM,kBAAkB,CAAA;AACxC,OAAO,EAAC,aAAa,EAAC,MAAM,uBAAuB,CAAA;AACnD,OAAO,EAAC,QAAQ,EAAE,MAAM,EAAiB,YAAY,EAA0B,IAAI,EAAe,MAAM,kBAAkB,CAAA;AAC1H,OAAO,EAAC,UAAU,EAAC,MAAM,eAAe,CAAA;AACxC,OAAO,EAAC,kBAAkB,EAAC,MAAM,uBAAuB,CAAA;AAExD,OAAO,EAAC,gCAAgC,EAAC,MAAM,qCAAqC,CAAA;AACpF,OAAO,EAAC,mBAAmB,EAAC,MAAM,mCAAmC,CAAA;AACrE,OAAO,EAAwB,mBAAmB,EAAC,MAAM,uBAAuB,CAAA;AAGhF,qBAAa,oBAAqB,YAAW,UAAU;;IAKnD,QAAQ,CAAC,cAAc;;MAAA;gBAEX,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,aAAa;IAsB3D,IAAI,GAAG,IAAI,aAAa,CAAmB;IAC3C,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,OAAO,IAAI,OAAO,CAAsC;IAC5D,IAAI,KAAK,IAAI,MAAM,CAAoC;IAEvD,IAAI,MAAM,IAAI,mBAAmB,CAGhC;IAGD,IAAI,MAAM,IAAI,MAAM,CAAC,gCAAgC,CAAC,CAGrD;IAED,IAAI,eAAe,IAAI,MAAM,CAAC,mBAAmB,CAAC,CAEjD;IAED,IAAI,WAAW,IAAI,MAAM,CAAC,MAAM,CAAC,CAEhC;IAGD,8BAA8B,CAAC,QAAQ,EAAE,QAAQ,CAAC,MAAM,CAAC,GAAG,YAAY;IASxE,SAAS,IAAI,IAAI;CACpB"}
@@ -0,0 +1,72 @@
1
+ var __classPrivateFieldSet = (this && this.__classPrivateFieldSet) || function (receiver, state, value, kind, f) {
2
+ if (kind === "m") throw new TypeError("Private method is not writable");
3
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a setter");
4
+ if (typeof state === "function" ? receiver !== state || !f : !state.has(receiver)) throw new TypeError("Cannot write private member to an object whose class did not declare it");
5
+ return (kind === "a" ? f.call(receiver, value) : f ? f.value = value : state.set(receiver, value)), value;
6
+ };
7
+ var __classPrivateFieldGet = (this && this.__classPrivateFieldGet) || function (receiver, state, kind, f) {
8
+ if (kind === "a" && !f) throw new TypeError("Private accessor was defined without a getter");
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
+ return kind === "m" ? f : kind === "a" ? f.call(receiver) : f ? f.value : state.get(receiver);
11
+ };
12
+ var _ModulationBoxAdapter_terminator, _ModulationBoxAdapter_context, _ModulationBoxAdapter_box, _ModulationBoxAdapter_parametric;
13
+ import { StringMapping, Terminable, Terminator, ValueMapping } from "@opendaw/lib-std";
14
+ import { ParameterAdapterSet } from "../ParameterAdapterSet";
15
+ import { isModulatorBoxAdapter } from "./ModulatorBoxAdapter";
16
+ import { ParameterOwner } from "../ParameterOwner";
17
+ export class ModulationBoxAdapter {
18
+ constructor(context, box) {
19
+ _ModulationBoxAdapter_terminator.set(this, new Terminator());
20
+ _ModulationBoxAdapter_context.set(this, void 0);
21
+ _ModulationBoxAdapter_box.set(this, void 0);
22
+ _ModulationBoxAdapter_parametric.set(this, void 0);
23
+ __classPrivateFieldSet(this, _ModulationBoxAdapter_context, context, "f");
24
+ __classPrivateFieldSet(this, _ModulationBoxAdapter_box, box, "f");
25
+ __classPrivateFieldSet(this, _ModulationBoxAdapter_parametric, __classPrivateFieldGet(this, _ModulationBoxAdapter_terminator, "f").own(new ParameterAdapterSet(__classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f"))), "f");
26
+ this.namedParameter = {
27
+ depth: __classPrivateFieldGet(this, _ModulationBoxAdapter_parametric, "f").createParameter(box.depth, ValueMapping.bipolar(), StringMapping.percent({ fractionDigits: 0 }), "Depth", 0.5)
28
+ };
29
+ // The depth's automation lane lives on the modulator that drives it, so it shows up in that group.
30
+ const registration = __classPrivateFieldGet(this, _ModulationBoxAdapter_terminator, "f").own(new Terminator());
31
+ __classPrivateFieldGet(this, _ModulationBoxAdapter_terminator, "f").own(box.source.catchupAndSubscribe(() => {
32
+ registration.terminate();
33
+ box.source.targetVertex
34
+ .flatMap(vertex => __classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f").boxAdapters.optAdapter(vertex.box))
35
+ .ifSome(adapter => {
36
+ if (isModulatorBoxAdapter(adapter)) {
37
+ registration.own(this.namedParameter.depth.registerTracks(adapter.tracks));
38
+ }
39
+ });
40
+ }));
41
+ }
42
+ get box() { return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f"); }
43
+ get uuid() { return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").address.uuid; }
44
+ get address() { return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").address; }
45
+ get enabled() { return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").enabled.getValue(); }
46
+ get depth() { return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").depth.getValue(); }
47
+ get source() {
48
+ return __classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f").boxAdapters.adapterFor(__classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").source.targetVertex.unwrap("no modulator").box, isModulatorBoxAdapter);
49
+ }
50
+ /// `None` while the target field has no registered parameter adapter yet.
51
+ get target() {
52
+ return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").target.targetVertex
53
+ .flatMap(vertex => __classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f").parameterFieldAdapters.opt(vertex.address));
54
+ }
55
+ get targetAudioUnit() {
56
+ return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").target.targetVertex.flatMap(vertex => ParameterOwner.audioUnitOf(__classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f"), vertex));
57
+ }
58
+ get targetOwner() {
59
+ return __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").target.targetVertex.flatMap(vertex => ParameterOwner.nameOf(__classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f"), vertex));
60
+ }
61
+ /// The owner's name, kept current: renaming the device the target belongs to notifies again.
62
+ catchupAndSubscribeTargetOwner(observer) {
63
+ const vertex = __classPrivateFieldGet(this, _ModulationBoxAdapter_box, "f").target.targetVertex;
64
+ if (vertex.isEmpty()) {
65
+ observer("");
66
+ return Terminable.Empty;
67
+ }
68
+ return ParameterOwner.catchupAndSubscribeName(__classPrivateFieldGet(this, _ModulationBoxAdapter_context, "f"), vertex.unwrap(), observer);
69
+ }
70
+ terminate() { __classPrivateFieldGet(this, _ModulationBoxAdapter_terminator, "f").terminate(); }
71
+ }
72
+ _ModulationBoxAdapter_terminator = new WeakMap(), _ModulationBoxAdapter_context = new WeakMap(), _ModulationBoxAdapter_box = new WeakMap(), _ModulationBoxAdapter_parametric = new WeakMap();