@opendaw/studio-adapters 0.0.47 → 0.0.49

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 (175) hide show
  1. package/dist/AutomatableParameterFieldAdapter.js +86 -73
  2. package/dist/BoxAdapterCollection.js +30 -17
  3. package/dist/BoxAdapters.d.ts.map +1 -1
  4. package/dist/BoxAdapters.js +87 -72
  5. package/dist/BoxAdaptersContext.d.ts +2 -2
  6. package/dist/BoxAdaptersContext.d.ts.map +1 -1
  7. package/dist/EngineProcessorAttachment.d.ts +2 -1
  8. package/dist/EngineProcessorAttachment.d.ts.map +1 -1
  9. package/dist/FieldAdapter.js +45 -32
  10. package/dist/IndexedBoxAdapterCollection.js +45 -32
  11. package/dist/NoteBroadcaster.js +25 -12
  12. package/dist/NoteStreamReceiver.js +29 -16
  13. package/dist/ParameterAdapterSet.js +24 -11
  14. package/dist/ParameterFieldAdapters.js +19 -6
  15. package/dist/Parsing.d.ts +5 -0
  16. package/dist/Parsing.d.ts.map +1 -0
  17. package/dist/Parsing.js +10 -0
  18. package/dist/PianoModeAdapter.js +32 -19
  19. package/dist/RootBoxAdapter.d.ts +2 -1
  20. package/dist/RootBoxAdapter.d.ts.map +1 -1
  21. package/dist/RootBoxAdapter.js +41 -23
  22. package/dist/Validator.d.ts +10 -0
  23. package/dist/Validator.d.ts.map +1 -0
  24. package/dist/Validator.js +35 -0
  25. package/dist/audio/AudioFileBoxAdapter.js +23 -10
  26. package/dist/audio-unit/AudioBusBoxAdapter.d.ts +1 -1
  27. package/dist/audio-unit/AudioBusBoxAdapter.d.ts.map +1 -1
  28. package/dist/audio-unit/AudioBusBoxAdapter.js +31 -18
  29. package/dist/audio-unit/AudioUnitBoxAdapter.js +74 -63
  30. package/dist/audio-unit/AudioUnitInput.d.ts +1 -1
  31. package/dist/audio-unit/AudioUnitInput.d.ts.map +1 -1
  32. package/dist/audio-unit/AudioUnitInput.js +43 -30
  33. package/dist/audio-unit/AudioUnitOutput.js +33 -20
  34. package/dist/audio-unit/AudioUnitTracks.js +39 -26
  35. package/dist/audio-unit/AuxSendBoxAdapter.js +47 -34
  36. package/dist/devices/audio-effects/CompressorDeviceBoxAdapter.js +49 -37
  37. package/dist/devices/audio-effects/CrusherDeviceBoxAdapter.js +41 -29
  38. package/dist/devices/audio-effects/DelayDeviceBoxAdapter.js +51 -39
  39. package/dist/devices/audio-effects/FoldDeviceBoxAdapter.js +39 -27
  40. package/dist/devices/audio-effects/ModularDeviceBoxAdapter.js +33 -20
  41. package/dist/devices/audio-effects/RevampDeviceBoxAdapter.js +46 -34
  42. package/dist/devices/audio-effects/ReverbDeviceBoxAdapter.js +45 -33
  43. package/dist/devices/audio-effects/StereoToolDeviceBoxAdapter.js +43 -31
  44. package/dist/devices/audio-effects/TidalDeviceBoxAdapter.d.ts +36 -0
  45. package/dist/devices/audio-effects/TidalDeviceBoxAdapter.d.ts.map +1 -0
  46. package/dist/devices/audio-effects/TidalDeviceBoxAdapter.js +63 -0
  47. package/dist/devices/audio-effects/UnknownAudioEffectDeviceBoxAdapter.js +30 -17
  48. package/dist/devices/instruments/MIDIOutputDeviceBoxAdapter.d.ts +3 -2
  49. package/dist/devices/instruments/MIDIOutputDeviceBoxAdapter.d.ts.map +1 -1
  50. package/dist/devices/instruments/MIDIOutputDeviceBoxAdapter.js +45 -26
  51. package/dist/devices/instruments/NanoDeviceBoxAdapter.js +38 -26
  52. package/dist/devices/instruments/Playfield/PlayfieldSampleBoxAdapter.js +101 -89
  53. package/dist/devices/instruments/PlayfieldDeviceBoxAdapter.d.ts +0 -1
  54. package/dist/devices/instruments/PlayfieldDeviceBoxAdapter.d.ts.map +1 -1
  55. package/dist/devices/instruments/PlayfieldDeviceBoxAdapter.js +36 -24
  56. package/dist/devices/instruments/SoundfontDeviceBoxAdapter.js +84 -72
  57. package/dist/devices/instruments/TapeDeviceBoxAdapter.js +40 -28
  58. package/dist/devices/instruments/VaporisateurDeviceBoxAdapter.d.ts +26 -4
  59. package/dist/devices/instruments/VaporisateurDeviceBoxAdapter.d.ts.map +1 -1
  60. package/dist/devices/instruments/VaporisateurDeviceBoxAdapter.js +70 -33
  61. package/dist/devices/instruments/VaporisateurSettings.d.ts +17 -0
  62. package/dist/devices/instruments/VaporisateurSettings.d.ts.map +1 -0
  63. package/dist/devices/instruments/VaporisateurSettings.js +24 -0
  64. package/dist/devices/midi-effects/ArpeggioDeviceBoxAdapter.js +51 -39
  65. package/dist/devices/midi-effects/PitchDeviceBoxAdapter.js +40 -28
  66. package/dist/devices/midi-effects/UnknownMidiEffectDeviceBoxAdapter.js +30 -17
  67. package/dist/devices/midi-effects/VelocityDeviceBoxAdapter.js +47 -35
  68. package/dist/devices/midi-effects/ZeitgeistDeviceBoxAdapter.js +32 -19
  69. package/dist/editing/UserEditing.js +33 -20
  70. package/dist/editing/UserEditingManager.js +28 -15
  71. package/dist/factories/AudioBusFactory.d.ts +7 -0
  72. package/dist/factories/AudioBusFactory.d.ts.map +1 -0
  73. package/dist/factories/AudioBusFactory.js +29 -0
  74. package/dist/factories/AudioUnitFactory.d.ts +13 -0
  75. package/dist/factories/AudioUnitFactory.d.ts.map +1 -0
  76. package/dist/factories/AudioUnitFactory.js +44 -0
  77. package/dist/factories/AudioUnitOrdering.d.ts +3 -0
  78. package/dist/factories/AudioUnitOrdering.d.ts.map +1 -0
  79. package/dist/factories/AudioUnitOrdering.js +7 -0
  80. package/dist/factories/ColorCodes.d.ts +7 -0
  81. package/dist/factories/ColorCodes.d.ts.map +1 -0
  82. package/dist/factories/ColorCodes.js +32 -0
  83. package/dist/factories/Colors.d.ts +15 -0
  84. package/dist/factories/Colors.d.ts.map +1 -0
  85. package/dist/factories/Colors.js +23 -0
  86. package/dist/factories/InstrumentBox.d.ts +3 -0
  87. package/dist/factories/InstrumentBox.d.ts.map +1 -0
  88. package/dist/factories/InstrumentBox.js +1 -0
  89. package/dist/factories/InstrumentFactories.d.ts +34 -0
  90. package/dist/factories/InstrumentFactories.d.ts.map +1 -0
  91. package/dist/factories/InstrumentFactories.js +137 -0
  92. package/dist/factories/InstrumentFactory.d.ts +13 -0
  93. package/dist/factories/InstrumentFactory.d.ts.map +1 -0
  94. package/dist/factories/InstrumentFactory.js +1 -0
  95. package/dist/factories/InstrumentOptions.d.ts +9 -0
  96. package/dist/factories/InstrumentOptions.d.ts.map +1 -0
  97. package/dist/factories/InstrumentOptions.js +1 -0
  98. package/dist/factories/InstrumentProduct.d.ts +8 -0
  99. package/dist/factories/InstrumentProduct.d.ts.map +1 -0
  100. package/dist/factories/InstrumentProduct.js +1 -0
  101. package/dist/grooves/GrooveShuffleBoxAdapter.js +47 -35
  102. package/dist/index.d.ts +20 -3
  103. package/dist/index.d.ts.map +1 -1
  104. package/dist/index.js +20 -3
  105. package/dist/modular/abstract.js +37 -24
  106. package/dist/modular/connection.js +20 -7
  107. package/dist/modular/connector.js +29 -16
  108. package/dist/modular/modular.js +49 -36
  109. package/dist/modular/modules/audio-input.js +17 -4
  110. package/dist/modular/modules/audio-output.js +17 -4
  111. package/dist/modular/modules/delay.js +24 -11
  112. package/dist/modular/modules/gain.js +24 -11
  113. package/dist/modular/modules/multiplier.js +21 -8
  114. package/dist/modular/user-interface.js +25 -12
  115. package/dist/preset/PresetDecoder.d.ts +11 -0
  116. package/dist/preset/PresetDecoder.d.ts.map +1 -0
  117. package/dist/preset/PresetDecoder.js +154 -0
  118. package/dist/preset/PresetEncoder.d.ts +5 -0
  119. package/dist/preset/PresetEncoder.d.ts.map +1 -0
  120. package/dist/preset/PresetEncoder.js +19 -0
  121. package/dist/preset/PresetHeader.d.ts +5 -0
  122. package/dist/preset/PresetHeader.d.ts.map +1 -0
  123. package/dist/preset/PresetHeader.js +5 -0
  124. package/dist/project/ProjectQueries.d.ts +5 -0
  125. package/dist/project/ProjectQueries.d.ts.map +1 -0
  126. package/dist/project/ProjectQueries.js +10 -0
  127. package/dist/project/ProjectSkeleton.d.ts +10 -1
  128. package/dist/project/ProjectSkeleton.d.ts.map +1 -1
  129. package/dist/project/ProjectSkeleton.js +100 -1
  130. package/dist/project/ProjectUtils.d.ts +13 -0
  131. package/dist/project/ProjectUtils.d.ts.map +1 -0
  132. package/dist/project/ProjectUtils.js +142 -0
  133. package/dist/protocols.d.ts.map +1 -1
  134. package/dist/selection/FilteredSelection.js +47 -34
  135. package/dist/selection/VertexSelection.js +66 -55
  136. package/dist/soundfont/SoundfontFileBoxAdapter.js +21 -8
  137. package/dist/timeline/MarkerBoxAdapter.js +33 -20
  138. package/dist/timeline/MarkerTrackAdapter.js +34 -22
  139. package/dist/timeline/TimelineBoxAdapter.js +24 -11
  140. package/dist/timeline/TrackBoxAdapter.d.ts.map +1 -1
  141. package/dist/timeline/TrackBoxAdapter.js +97 -85
  142. package/dist/timeline/TrackClips.js +27 -14
  143. package/dist/timeline/TrackRegions.js +40 -27
  144. package/dist/timeline/TrackType.d.ts +1 -1
  145. package/dist/timeline/TrackType.d.ts.map +1 -1
  146. package/dist/timeline/TrackType.js +1 -1
  147. package/dist/timeline/clip/AudioClipBoxAdapter.js +66 -53
  148. package/dist/timeline/clip/NoteClipBoxAdapter.js +66 -53
  149. package/dist/timeline/clip/ValueClipBoxAdapter.js +67 -54
  150. package/dist/timeline/collection/NoteEventCollectionBoxAdapter.js +85 -73
  151. package/dist/timeline/collection/ValueEventCollectionBoxAdapter.js +53 -40
  152. package/dist/timeline/event/NoteEventBoxAdapter.js +43 -30
  153. package/dist/timeline/event/ValueEventBoxAdapter.js +67 -54
  154. package/dist/timeline/region/AudioRegionBoxAdapter.d.ts +17 -9
  155. package/dist/timeline/region/AudioRegionBoxAdapter.d.ts.map +1 -1
  156. package/dist/timeline/region/AudioRegionBoxAdapter.js +149 -83
  157. package/dist/timeline/region/MutableRegion.d.ts +8 -0
  158. package/dist/timeline/region/MutableRegion.d.ts.map +1 -0
  159. package/dist/timeline/region/MutableRegion.js +1 -0
  160. package/dist/timeline/region/NoteRegionBoxAdapter.d.ts +6 -1
  161. package/dist/timeline/region/NoteRegionBoxAdapter.d.ts.map +1 -1
  162. package/dist/timeline/region/NoteRegionBoxAdapter.js +78 -61
  163. package/dist/timeline/region/ValueRegionBoxAdapter.d.ts +6 -1
  164. package/dist/timeline/region/ValueRegionBoxAdapter.d.ts.map +1 -1
  165. package/dist/timeline/region/ValueRegionBoxAdapter.js +79 -62
  166. package/package.json +8 -8
  167. package/dist/IconSymbol.d.ts +0 -126
  168. package/dist/IconSymbol.d.ts.map +0 -1
  169. package/dist/IconSymbol.js +0 -126
  170. package/dist/UpdateClockRate.d.ts +0 -2
  171. package/dist/UpdateClockRate.d.ts.map +0 -1
  172. package/dist/UpdateClockRate.js +0 -2
  173. package/dist/project/ProjectDecoder.d.ts +0 -10
  174. package/dist/project/ProjectDecoder.d.ts.map +0 -1
  175. package/dist/project/ProjectDecoder.js +0 -36
@@ -1,3 +1,15 @@
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 _AutomatableParameterFieldAdapter_context, _AutomatableParameterFieldAdapter_field, _AutomatableParameterFieldAdapter_valueMapping, _AutomatableParameterFieldAdapter_stringMapping, _AutomatableParameterFieldAdapter_name, _AutomatableParameterFieldAdapter_anchor, _AutomatableParameterFieldAdapter_terminator, _AutomatableParameterFieldAdapter_valueChangeNotifier, _AutomatableParameterFieldAdapter_controlSource, _AutomatableParameterFieldAdapter_trackBoxAdapter, _AutomatableParameterFieldAdapter_automationHandle, _AutomatableParameterFieldAdapter_controlledValue, _AutomatableParameterFieldAdapter_midiControlled;
1
13
  import { assert, clamp, Listeners, Notifier, Option, panic, Terminator } from "@opendaw/lib-std";
2
14
  import { Pointers } from "@opendaw/studio-enums";
3
15
  import { TrackBoxAdapter } from "./timeline/TrackBoxAdapter";
@@ -8,62 +20,62 @@ const ExternalControlTypes = [
8
20
  Pointers.ParameterController
9
21
  ];
10
22
  export class AutomatableParameterFieldAdapter {
11
- #context;
12
- #field;
13
- #valueMapping;
14
- #stringMapping;
15
- #name;
16
- #anchor;
17
- #terminator = new Terminator();
18
- #valueChangeNotifier;
19
- #controlSource;
20
- #trackBoxAdapter = Option.None;
21
- #automationHandle = Option.None;
22
- #controlledValue = null;
23
- #midiControlled = false;
24
23
  constructor(context, field, valueMapping, stringMapping, name, anchor) {
25
- this.#context = context;
26
- this.#field = field;
27
- this.#valueMapping = valueMapping;
28
- this.#stringMapping = stringMapping;
29
- this.#name = name;
30
- this.#anchor = anchor ?? 0.0;
31
- this.#terminator.own(this.#context.parameterFieldAdapters.register(this));
32
- this.#valueChangeNotifier = this.#terminator.own(new Notifier());
33
- this.#controlSource = new Listeners();
34
- this.#terminator.own(this.#field.subscribe(() => this.#valueChangeNotifier.notify(this)));
35
- this.#terminator.own(this.#field.pointerHub.catchupAndSubscribe({
24
+ _AutomatableParameterFieldAdapter_context.set(this, void 0);
25
+ _AutomatableParameterFieldAdapter_field.set(this, void 0);
26
+ _AutomatableParameterFieldAdapter_valueMapping.set(this, void 0);
27
+ _AutomatableParameterFieldAdapter_stringMapping.set(this, void 0);
28
+ _AutomatableParameterFieldAdapter_name.set(this, void 0);
29
+ _AutomatableParameterFieldAdapter_anchor.set(this, void 0);
30
+ _AutomatableParameterFieldAdapter_terminator.set(this, new Terminator());
31
+ _AutomatableParameterFieldAdapter_valueChangeNotifier.set(this, void 0);
32
+ _AutomatableParameterFieldAdapter_controlSource.set(this, void 0);
33
+ _AutomatableParameterFieldAdapter_trackBoxAdapter.set(this, Option.None);
34
+ _AutomatableParameterFieldAdapter_automationHandle.set(this, Option.None);
35
+ _AutomatableParameterFieldAdapter_controlledValue.set(this, null);
36
+ _AutomatableParameterFieldAdapter_midiControlled.set(this, false);
37
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_context, context, "f");
38
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_field, field, "f");
39
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_valueMapping, valueMapping, "f");
40
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_stringMapping, stringMapping, "f");
41
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_name, name, "f");
42
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_anchor, anchor ?? 0.0, "f");
43
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").own(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").parameterFieldAdapters.register(this));
44
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").own(new Notifier()), "f");
45
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_controlSource, new Listeners(), "f");
46
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").own(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").subscribe(() => __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, "f").notify(this)));
47
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").own(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").pointerHub.catchupAndSubscribe({
36
48
  onAdded: (pointer) => {
37
- this.#controlSource.proxy.onControlSourceAdd(mapPointerToControlSource(pointer.pointerType));
49
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlSource, "f").proxy.onControlSourceAdd(mapPointerToControlSource(pointer.pointerType));
38
50
  pointer.box.accept({
39
51
  visitTrackBox: (box) => {
40
- assert(this.#trackBoxAdapter.isEmpty(), "Already assigned");
41
- const adapter = this.#context.boxAdapters.adapterFor(box, TrackBoxAdapter);
42
- this.#trackBoxAdapter = Option.wrap(adapter);
43
- if (this.#context.isMainThread) {
44
- this.#automationHandle = Option.wrap(this.#context.liveStreamReceiver
45
- .subscribeFloat(this.#field.address, value => {
46
- if (this.#controlledValue === value) {
52
+ assert(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, "f").isEmpty(), "Already assigned");
53
+ const adapter = __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").boxAdapters.adapterFor(box, TrackBoxAdapter);
54
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, Option.wrap(adapter), "f");
55
+ if (__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").isMainThread) {
56
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_automationHandle, Option.wrap(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").liveStreamReceiver
57
+ .subscribeFloat(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").address, value => {
58
+ if (__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlledValue, "f") === value) {
47
59
  return;
48
60
  }
49
- this.#controlledValue = value;
50
- this.#valueChangeNotifier.notify(this);
51
- }));
61
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_controlledValue, value, "f");
62
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, "f").notify(this);
63
+ })), "f");
52
64
  }
53
65
  }
54
66
  });
55
67
  },
56
68
  onRemoved: (pointer) => {
57
- this.#controlSource.proxy.onControlSourceRemove(mapPointerToControlSource(pointer.pointerType));
69
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlSource, "f").proxy.onControlSourceRemove(mapPointerToControlSource(pointer.pointerType));
58
70
  pointer.box.accept({
59
71
  visitTrackBox: (box) => {
60
- assert(this.#trackBoxAdapter.unwrapOrNull()?.address?.equals(box.address) === true, `Unknown ${box}`);
61
- this.#trackBoxAdapter = Option.None;
62
- if (this.#context.isMainThread) {
63
- this.#automationHandle.ifSome(handle => handle.terminate());
64
- this.#automationHandle = Option.None;
65
- this.#controlledValue = null;
66
- this.#valueChangeNotifier.notify(this);
72
+ assert(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, "f").unwrapOrNull()?.address?.equals(box.address) === true, `Unknown ${box}`);
73
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, Option.None, "f");
74
+ if (__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_context, "f").isMainThread) {
75
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_automationHandle, "f").ifSome(handle => handle.terminate());
76
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_automationHandle, Option.None, "f");
77
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_controlledValue, null, "f");
78
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, "f").notify(this);
67
79
  }
68
80
  }
69
81
  });
@@ -78,25 +90,25 @@ export class AutomatableParameterFieldAdapter {
78
90
  }
79
91
  }
80
92
  registerMidiControl() {
81
- this.#controlSource.proxy.onControlSourceAdd("midi");
82
- this.#midiControlled = true;
93
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlSource, "f").proxy.onControlSourceAdd("midi");
94
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_midiControlled, true, "f");
83
95
  return {
84
96
  terminate: () => {
85
- this.#midiControlled = false;
86
- this.#controlSource.proxy.onControlSourceRemove("midi");
97
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_midiControlled, false, "f");
98
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlSource, "f").proxy.onControlSourceRemove("midi");
87
99
  }
88
100
  };
89
101
  }
90
- get field() { return this.#field; }
91
- get valueMapping() { return this.#valueMapping; }
92
- get stringMapping() { return this.#stringMapping; }
93
- get name() { return this.#name; }
94
- get anchor() { return this.#anchor; }
95
- get type() { return this.#field.type; }
96
- get address() { return this.#field.address; }
97
- get track() { return this.#trackBoxAdapter; }
102
+ get field() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f"); }
103
+ get valueMapping() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueMapping, "f"); }
104
+ get stringMapping() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_stringMapping, "f"); }
105
+ get name() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_name, "f"); }
106
+ get anchor() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_anchor, "f"); }
107
+ get type() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").type; }
108
+ get address() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").address; }
109
+ get track() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, "f"); }
98
110
  valueAt(position) {
99
- const optTrack = this.#trackBoxAdapter;
111
+ const optTrack = __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_trackBoxAdapter, "f");
100
112
  if (optTrack.nonEmpty()) {
101
113
  const track = optTrack.unwrap();
102
114
  if (track.enabled) {
@@ -105,29 +117,29 @@ export class AutomatableParameterFieldAdapter {
105
117
  }
106
118
  return this.getValue();
107
119
  }
108
- subscribe(observer) { return this.#valueChangeNotifier.subscribe(observer); }
120
+ subscribe(observer) { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueChangeNotifier, "f").subscribe(observer); }
109
121
  catchupAndSubscribe(observer) {
110
122
  observer(this);
111
123
  return this.subscribe(observer);
112
124
  }
113
125
  catchupAndSubscribeControlSources(observer) {
114
- if (this.#midiControlled) {
126
+ if (__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_midiControlled, "f")) {
115
127
  observer.onControlSourceAdd("midi");
116
128
  }
117
- this.#field.pointerHub.filter(...ExternalControlTypes)
129
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").pointerHub.filter(...ExternalControlTypes)
118
130
  .forEach(pointer => observer.onControlSourceAdd(mapPointerToControlSource(pointer.pointerType)));
119
- return this.#controlSource.subscribe(observer);
131
+ return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlSource, "f").subscribe(observer);
120
132
  }
121
- getValue() { return this.#field.getValue(); }
122
- setValue(value) { this.#field.setValue(value); }
123
- setUnitValue(value) { this.setValue(this.#valueMapping.y(value)); }
124
- getUnitValue() { return this.#valueMapping.x(this.getValue()); }
125
- getControlledValue() { return this.#valueMapping.y(this.getControlledUnitValue()); }
126
- getControlledUnitValue() { return this.#controlledValue ?? this.getUnitValue(); }
127
- getControlledPrintValue() { return this.#stringMapping.x(this.getControlledValue()); }
128
- getPrintValue() { return this.#stringMapping.x(this.getValue()); }
133
+ getValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").getValue(); }
134
+ setValue(value) { __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").setValue(value); }
135
+ setUnitValue(value) { this.setValue(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueMapping, "f").y(value)); }
136
+ getUnitValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueMapping, "f").x(this.getValue()); }
137
+ getControlledValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueMapping, "f").y(this.getControlledUnitValue()); }
138
+ getControlledUnitValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_controlledValue, "f") ?? this.getUnitValue(); }
139
+ getControlledPrintValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_stringMapping, "f").x(this.getControlledValue()); }
140
+ getPrintValue() { return __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_stringMapping, "f").x(this.getValue()); }
129
141
  setPrintValue(text) {
130
- const result = this.#stringMapping.y(text);
142
+ const result = __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_stringMapping, "f").y(text);
131
143
  if (result.type === "unitValue") {
132
144
  this.setUnitValue(clamp(result.value, 0.0, 1.0));
133
145
  }
@@ -138,13 +150,14 @@ export class AutomatableParameterFieldAdapter {
138
150
  console.debug(`Unknown text input: '${result.value}'`);
139
151
  }
140
152
  }
141
- reset() { this.setValue(this.#valueMapping.clamp(this.#field.initValue)); }
153
+ reset() { this.setValue(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_valueMapping, "f").clamp(__classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_field, "f").initValue)); }
142
154
  terminate() {
143
- this.#automationHandle.ifSome(handle => handle.terminate());
144
- this.#automationHandle = Option.None;
145
- this.#terminator.terminate();
155
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_automationHandle, "f").ifSome(handle => handle.terminate());
156
+ __classPrivateFieldSet(this, _AutomatableParameterFieldAdapter_automationHandle, Option.None, "f");
157
+ __classPrivateFieldGet(this, _AutomatableParameterFieldAdapter_terminator, "f").terminate();
146
158
  }
147
159
  }
160
+ _AutomatableParameterFieldAdapter_context = new WeakMap(), _AutomatableParameterFieldAdapter_field = new WeakMap(), _AutomatableParameterFieldAdapter_valueMapping = new WeakMap(), _AutomatableParameterFieldAdapter_stringMapping = new WeakMap(), _AutomatableParameterFieldAdapter_name = new WeakMap(), _AutomatableParameterFieldAdapter_anchor = new WeakMap(), _AutomatableParameterFieldAdapter_terminator = new WeakMap(), _AutomatableParameterFieldAdapter_valueChangeNotifier = new WeakMap(), _AutomatableParameterFieldAdapter_controlSource = new WeakMap(), _AutomatableParameterFieldAdapter_trackBoxAdapter = new WeakMap(), _AutomatableParameterFieldAdapter_automationHandle = new WeakMap(), _AutomatableParameterFieldAdapter_controlledValue = new WeakMap(), _AutomatableParameterFieldAdapter_midiControlled = new WeakMap();
148
161
  const mapPointerToControlSource = (pointer) => {
149
162
  switch (pointer) {
150
163
  case Pointers.Automation:
@@ -1,35 +1,48 @@
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 _BoxAdapterCollection_entries, _BoxAdapterCollection_listeners, _BoxAdapterCollection_subscription;
1
13
  import { assert, Listeners, UUID } from "@opendaw/lib-std";
2
14
  export class BoxAdapterCollection {
3
- #entries;
4
- #listeners;
5
- #subscription;
6
15
  constructor(pointerHub, provider, pointers) {
7
- this.#entries = UUID.newSet(adapter => adapter.uuid);
8
- this.#listeners = new Listeners();
9
- this.#subscription = pointerHub.catchupAndSubscribe({
16
+ _BoxAdapterCollection_entries.set(this, void 0);
17
+ _BoxAdapterCollection_listeners.set(this, void 0);
18
+ _BoxAdapterCollection_subscription.set(this, void 0);
19
+ __classPrivateFieldSet(this, _BoxAdapterCollection_entries, UUID.newSet(adapter => adapter.uuid), "f");
20
+ __classPrivateFieldSet(this, _BoxAdapterCollection_listeners, new Listeners(), "f");
21
+ __classPrivateFieldSet(this, _BoxAdapterCollection_subscription, pointerHub.catchupAndSubscribe({
10
22
  onAdded: (pointer) => {
11
23
  const adapter = provider(pointer.box);
12
- const added = this.#entries.add(adapter);
24
+ const added = __classPrivateFieldGet(this, _BoxAdapterCollection_entries, "f").add(adapter);
13
25
  assert(added, `Could not add ${adapter}`);
14
- this.#listeners.proxy.onAdd(adapter);
26
+ __classPrivateFieldGet(this, _BoxAdapterCollection_listeners, "f").proxy.onAdd(adapter);
15
27
  },
16
28
  onRemoved: (pointer) => {
17
29
  const uuid = pointer.box.address.uuid;
18
- this.#listeners.proxy.onRemove(this.#entries.removeByKey(uuid));
30
+ __classPrivateFieldGet(this, _BoxAdapterCollection_listeners, "f").proxy.onRemove(__classPrivateFieldGet(this, _BoxAdapterCollection_entries, "f").removeByKey(uuid));
19
31
  }
20
- }, pointers);
32
+ }, pointers), "f");
21
33
  }
22
- subscribe(listener) { return this.#listeners.subscribe(listener); }
34
+ subscribe(listener) { return __classPrivateFieldGet(this, _BoxAdapterCollection_listeners, "f").subscribe(listener); }
23
35
  catchupAndSubscribe(listener) {
24
- this.#entries.forEach(adapter => listener.onAdd(adapter));
36
+ __classPrivateFieldGet(this, _BoxAdapterCollection_entries, "f").forEach(adapter => listener.onAdd(adapter));
25
37
  return this.subscribe(listener);
26
38
  }
27
- adapters() { return this.#entries.values(); }
28
- size() { return this.#entries.size(); }
39
+ adapters() { return __classPrivateFieldGet(this, _BoxAdapterCollection_entries, "f").values(); }
40
+ size() { return __classPrivateFieldGet(this, _BoxAdapterCollection_entries, "f").size(); }
29
41
  isEmpty() { return this.size() === 0; }
30
42
  terminate() {
31
- this.#entries.clear();
32
- this.#listeners.terminate();
33
- this.#subscription.terminate();
43
+ __classPrivateFieldGet(this, _BoxAdapterCollection_entries, "f").clear();
44
+ __classPrivateFieldGet(this, _BoxAdapterCollection_listeners, "f").terminate();
45
+ __classPrivateFieldGet(this, _BoxAdapterCollection_subscription, "f").terminate();
34
46
  }
35
47
  }
48
+ _BoxAdapterCollection_entries = new WeakMap(), _BoxAdapterCollection_listeners = new WeakMap(), _BoxAdapterCollection_subscription = new WeakMap();
@@ -1 +1 @@
1
- {"version":3,"file":"BoxAdapters.d.ts","sourceRoot":"","sources":["../src/BoxAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACV,KAAK,EAKL,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,GAAG,EAAS,MAAM,kBAAkB,CAAA;AA2F5C,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AAavC,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;CAuEtG"}
1
+ {"version":3,"file":"BoxAdapters.d.ts","sourceRoot":"","sources":["../src/BoxAdapters.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,UAAU,EACV,KAAK,EAKL,UAAU,EAEb,MAAM,kBAAkB,CAAA;AACzB,OAAO,EAAC,GAAG,EAAS,MAAM,kBAAkB,CAAA;AA4F5C,OAAO,EAAC,kBAAkB,EAAC,MAAM,sBAAsB,CAAA;AACvD,OAAO,EAAC,UAAU,EAAC,MAAM,cAAc,CAAA;AAcvC,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;CAwEtG"}
@@ -1,3 +1,15 @@
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 _BoxAdapters_instances, _BoxAdapters_context, _BoxAdapters_adapters, _BoxAdapters_deleted, _BoxAdapters_terminable, _BoxAdapters_create;
1
13
  import { asDefined, assert, isDefined, panic, UUID } from "@opendaw/lib-std";
2
14
  import { AudioUnitBoxAdapter } from "./audio-unit/AudioUnitBoxAdapter";
3
15
  import { DelayDeviceBoxAdapter } from "./devices/audio-effects/DelayDeviceBoxAdapter";
@@ -48,40 +60,42 @@ import { CrusherDeviceBoxAdapter } from "./devices/audio-effects/CrusherDeviceBo
48
60
  import { FoldDeviceBoxAdapter } from "./devices/audio-effects/FoldDeviceBoxAdapter";
49
61
  import { MIDIOutputDeviceBoxAdapter } from "./devices/instruments/MIDIOutputDeviceBoxAdapter";
50
62
  import { VelocityDeviceBoxAdapter } from "./devices/midi-effects/VelocityDeviceBoxAdapter";
63
+ import { TidalDeviceBoxAdapter } from "./devices/audio-effects/TidalDeviceBoxAdapter";
51
64
  export class BoxAdapters {
52
- #context;
53
- #adapters;
54
- #deleted;
55
- #terminable;
56
65
  constructor(context) {
57
- this.#context = context;
58
- this.#adapters = UUID.newSet(adapter => adapter.uuid);
59
- this.#deleted = new Set();
60
- this.#terminable = this.#context.boxGraph.subscribeToAllUpdates({
66
+ _BoxAdapters_instances.add(this);
67
+ _BoxAdapters_context.set(this, void 0);
68
+ _BoxAdapters_adapters.set(this, void 0);
69
+ _BoxAdapters_deleted.set(this, void 0);
70
+ _BoxAdapters_terminable.set(this, void 0);
71
+ __classPrivateFieldSet(this, _BoxAdapters_context, context, "f");
72
+ __classPrivateFieldSet(this, _BoxAdapters_adapters, UUID.newSet(adapter => adapter.uuid), "f");
73
+ __classPrivateFieldSet(this, _BoxAdapters_deleted, new Set(), "f");
74
+ __classPrivateFieldSet(this, _BoxAdapters_terminable, __classPrivateFieldGet(this, _BoxAdapters_context, "f").boxGraph.subscribeToAllUpdates({
61
75
  onUpdate: (update) => {
62
76
  if (update.type === "delete") {
63
- const adapter = this.#adapters.getOrNull(update.uuid);
77
+ const adapter = __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").getOrNull(update.uuid);
64
78
  if (isDefined(adapter)) {
65
- this.#deleted.add(adapter.box);
66
- this.#adapters.removeByValue(adapter).terminate();
79
+ __classPrivateFieldGet(this, _BoxAdapters_deleted, "f").add(adapter.box);
80
+ __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").removeByValue(adapter).terminate();
67
81
  }
68
82
  }
69
83
  }
70
- });
84
+ }), "f");
71
85
  }
72
86
  terminate() {
73
- this.#adapters.values().forEach(adapter => adapter.terminate());
74
- this.#adapters.clear();
75
- this.#terminable.terminate();
87
+ __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").values().forEach(adapter => adapter.terminate());
88
+ __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").clear();
89
+ __classPrivateFieldGet(this, _BoxAdapters_terminable, "f").terminate();
76
90
  }
77
91
  adapterFor(box, checkType) {
78
- if (this.#deleted.has(box)) {
92
+ if (__classPrivateFieldGet(this, _BoxAdapters_deleted, "f").has(box)) {
79
93
  return panic(`Cannot resolve adapter for already deleted box: ${box}`);
80
94
  }
81
- let adapter = this.#adapters.getOrNull(box.address.uuid);
95
+ let adapter = __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").getOrNull(box.address.uuid);
82
96
  if (adapter === null) {
83
- adapter = this.#create(box);
84
- const added = this.#adapters.add(adapter);
97
+ adapter = __classPrivateFieldGet(this, _BoxAdapters_instances, "m", _BoxAdapters_create).call(this, box);
98
+ const added = __classPrivateFieldGet(this, _BoxAdapters_adapters, "f").add(adapter);
85
99
  assert(added, `Could not add adapter for ${box}`);
86
100
  }
87
101
  if (typeof checkType === "function") {
@@ -91,57 +105,58 @@ export class BoxAdapters {
91
105
  }
92
106
  return panic("Unknown checkType method");
93
107
  }
94
- #create(unknownBox) {
95
- return asDefined(unknownBox.accept({
96
- visitRootBox: (box) => new RootBoxAdapter(this.#context, box),
97
- visitArpeggioDeviceBox: (box) => new ArpeggioDeviceBoxAdapter(this.#context, box),
98
- visitPitchDeviceBox: (box) => new PitchDeviceBoxAdapter(this.#context, box),
99
- visitVelocityDeviceBox: (box) => new VelocityDeviceBoxAdapter(this.#context, box),
100
- visitStereoToolDeviceBox: (box) => new StereoToolDeviceBoxAdapter(this.#context, box),
101
- visitCrusherDeviceBox: (box) => new CrusherDeviceBoxAdapter(this.#context, box),
102
- visitFoldDeviceBox: (box) => new FoldDeviceBoxAdapter(this.#context, box),
103
- visitDelayDeviceBox: (box) => new DelayDeviceBoxAdapter(this.#context, box),
104
- visitCompressorDeviceBox: (box) => new CompressorDeviceBoxAdapter(this.#context, box),
105
- visitReverbDeviceBox: (box) => new ReverbDeviceBoxAdapter(this.#context, box),
106
- visitRevampDeviceBox: (box) => new RevampDeviceBoxAdapter(this.#context, box),
107
- visitUnknownAudioEffectDeviceBox: (box) => new UnknownAudioEffectDeviceBoxAdapter(this.#context, box),
108
- visitPlayfieldDeviceBox: (box) => new PlayfieldDeviceBoxAdapter(this.#context, box),
109
- visitPlayfieldSampleBox: (box) => new PlayfieldSampleBoxAdapter(this.#context, box),
110
- visitModularDeviceBox: (box) => new ModularDeviceBoxAdapter(this.#context, box),
111
- visitTapeDeviceBox: (box) => new TapeDeviceBoxAdapter(this.#context, box),
112
- visitNanoDeviceBox: (box) => new NanoDeviceBoxAdapter(this.#context, box),
113
- visitVaporisateurDeviceBox: (box) => new VaporisateurDeviceBoxAdapter(this.#context, box),
114
- visitMIDIOutputDeviceBox: (box) => new MIDIOutputDeviceBoxAdapter(this.#context, box),
115
- visitSoundfontDeviceBox: (box) => new SoundfontDeviceBoxAdapter(this.#context, box),
116
- visitModularBox: (box) => new ModularAdapter(this.#context, box),
117
- visitModuleConnectionBox: (box) => new ModuleConnectionAdapter(this.#context, box),
118
- visitModuleDelayBox: (box) => new ModuleDelayAdapter(this.#context, box),
119
- visitModuleGainBox: (box) => new ModuleGainAdapter(this.#context, box),
120
- visitModuleMultiplierBox: (box) => new ModuleMultiplierAdapter(this.#context, box),
121
- visitModularAudioInputBox: (box) => new ModularAudioInputAdapter(this.#context, box),
122
- visitModularAudioOutputBox: (box) => new ModularAudioOutputAdapter(this.#context, box),
123
- visitDeviceInterfaceKnobBox: (box) => new DeviceInterfaceKnobAdapter(this.#context, box),
124
- visitAudioUnitBox: (box) => new AudioUnitBoxAdapter(this.#context, box),
125
- visitAudioBusBox: (box) => new AudioBusBoxAdapter(this.#context, box),
126
- visitAuxSendBox: (box) => new AuxSendBoxAdapter(this.#context, box),
127
- visitSoundfontFileBox: (box) => new SoundfontFileBoxAdapter(this.#context, box),
128
- visitAudioFileBox: (box) => new AudioFileBoxAdapter(this.#context, box),
129
- visitAudioClipBox: (box) => new AudioClipBoxAdapter(this.#context, box),
130
- visitAudioRegionBox: (box) => new AudioRegionBoxAdapter(this.#context, box),
131
- visitNoteEventBox: (box) => new NoteEventBoxAdapter(this.#context, box),
132
- visitNoteEventCollectionBox: (box) => new NoteEventCollectionBoxAdapter(this.#context, box),
133
- visitNoteClipBox: (box) => new NoteClipBoxAdapter(this.#context, box),
134
- visitNoteRegionBox: (box) => new NoteRegionBoxAdapter(this.#context, box),
135
- visitValueEventBox: (box) => new ValueEventBoxAdapter(this.#context, box),
136
- visitValueEventCollectionBox: (box) => new ValueEventCollectionBoxAdapter(this.#context, box),
137
- visitValueClipBox: (box) => new ValueClipBoxAdapter(this.#context, box),
138
- visitValueRegionBox: (box) => new ValueRegionBoxAdapter(this.#context, box),
139
- visitTrackBox: (box) => new TrackBoxAdapter(this.#context, box),
140
- visitTimelineBox: (box) => new TimelineBoxAdapter(this.#context, box),
141
- visitMarkerBox: (box) => new MarkerBoxAdapter(this.#context, box),
142
- visitZeitgeistDeviceBox: (box) => new ZeitgeistDeviceBoxAdapter(this.#context, box),
143
- visitUnknownMidiEffectDeviceBox: (box) => new UnknownMidiEffectDeviceBoxAdapter(this.#context, box),
144
- visitGrooveShuffleBox: (box) => new GrooveShuffleBoxAdapter(this.#context, box)
145
- }), `Could not find factory for ${unknownBox}`);
146
- }
147
108
  }
109
+ _BoxAdapters_context = new WeakMap(), _BoxAdapters_adapters = new WeakMap(), _BoxAdapters_deleted = new WeakMap(), _BoxAdapters_terminable = new WeakMap(), _BoxAdapters_instances = new WeakSet(), _BoxAdapters_create = function _BoxAdapters_create(unknownBox) {
110
+ return asDefined(unknownBox.accept({
111
+ visitArpeggioDeviceBox: (box) => new ArpeggioDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
112
+ visitAudioBusBox: (box) => new AudioBusBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
113
+ visitAudioClipBox: (box) => new AudioClipBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
114
+ visitAudioFileBox: (box) => new AudioFileBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
115
+ visitAudioRegionBox: (box) => new AudioRegionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
116
+ visitAudioUnitBox: (box) => new AudioUnitBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
117
+ visitAuxSendBox: (box) => new AuxSendBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
118
+ visitCompressorDeviceBox: (box) => new CompressorDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
119
+ visitCrusherDeviceBox: (box) => new CrusherDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
120
+ visitDelayDeviceBox: (box) => new DelayDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
121
+ visitDeviceInterfaceKnobBox: (box) => new DeviceInterfaceKnobAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
122
+ visitTidalDeviceBox: (box) => new TidalDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
123
+ visitFoldDeviceBox: (box) => new FoldDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
124
+ visitGrooveShuffleBox: (box) => new GrooveShuffleBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
125
+ visitMarkerBox: (box) => new MarkerBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
126
+ visitMIDIOutputDeviceBox: (box) => new MIDIOutputDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
127
+ visitModularAudioInputBox: (box) => new ModularAudioInputAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
128
+ visitModularAudioOutputBox: (box) => new ModularAudioOutputAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
129
+ visitModularBox: (box) => new ModularAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
130
+ visitModularDeviceBox: (box) => new ModularDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
131
+ visitModuleConnectionBox: (box) => new ModuleConnectionAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
132
+ visitModuleDelayBox: (box) => new ModuleDelayAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
133
+ visitModuleGainBox: (box) => new ModuleGainAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
134
+ visitModuleMultiplierBox: (box) => new ModuleMultiplierAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
135
+ visitNanoDeviceBox: (box) => new NanoDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
136
+ visitNoteClipBox: (box) => new NoteClipBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
137
+ visitNoteEventBox: (box) => new NoteEventBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
138
+ visitNoteEventCollectionBox: (box) => new NoteEventCollectionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
139
+ visitNoteRegionBox: (box) => new NoteRegionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
140
+ visitPitchDeviceBox: (box) => new PitchDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
141
+ visitPlayfieldDeviceBox: (box) => new PlayfieldDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
142
+ visitPlayfieldSampleBox: (box) => new PlayfieldSampleBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
143
+ visitRevampDeviceBox: (box) => new RevampDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
144
+ visitReverbDeviceBox: (box) => new ReverbDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
145
+ visitRootBox: (box) => new RootBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
146
+ visitSoundfontDeviceBox: (box) => new SoundfontDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
147
+ visitSoundfontFileBox: (box) => new SoundfontFileBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
148
+ visitStereoToolDeviceBox: (box) => new StereoToolDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
149
+ visitTapeDeviceBox: (box) => new TapeDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
150
+ visitTimelineBox: (box) => new TimelineBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
151
+ visitTrackBox: (box) => new TrackBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
152
+ visitUnknownAudioEffectDeviceBox: (box) => new UnknownAudioEffectDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
153
+ visitUnknownMidiEffectDeviceBox: (box) => new UnknownMidiEffectDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
154
+ visitValueClipBox: (box) => new ValueClipBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
155
+ visitValueEventBox: (box) => new ValueEventBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
156
+ visitValueEventCollectionBox: (box) => new ValueEventCollectionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
157
+ visitValueRegionBox: (box) => new ValueRegionBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
158
+ visitVaporisateurDeviceBox: (box) => new VaporisateurDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
159
+ visitVelocityDeviceBox: (box) => new VelocityDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box),
160
+ visitZeitgeistDeviceBox: (box) => new ZeitgeistDeviceBoxAdapter(__classPrivateFieldGet(this, _BoxAdapters_context, "f"), box)
161
+ }), `Could not find factory for ${unknownBox}`);
162
+ };
@@ -8,7 +8,7 @@ import { ParameterFieldAdapters } from "./ParameterFieldAdapters";
8
8
  import { BoxAdapters } from "./BoxAdapters";
9
9
  import { SampleLoaderManager } from "./sample/SampleLoaderManager";
10
10
  import { SoundfontLoaderManager } from "./soundfont/SoundfontLoaderManager";
11
- import { ppqn } from "@opendaw/lib-dsp";
11
+ import { ppqn, TempoMap } from "@opendaw/lib-dsp";
12
12
  export interface BoxAdaptersContext extends Terminable {
13
13
  get boxGraph(): BoxGraph;
14
14
  get boxAdapters(): BoxAdapters;
@@ -21,7 +21,7 @@ export interface BoxAdaptersContext extends Terminable {
21
21
  get clipSequencing(): ClipSequencing;
22
22
  get parameterFieldAdapters(): ParameterFieldAdapters;
23
23
  get signatureDuration(): ppqn;
24
- get bpm(): number;
24
+ get tempoMap(): TempoMap;
25
25
  get isMainThread(): boolean;
26
26
  get isAudioContext(): boolean;
27
27
  }
@@ -1 +1 @@
1
- {"version":3,"file":"BoxAdaptersContext.d.ts","sourceRoot":"","sources":["../src/BoxAdaptersContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAC,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAA;AAC/D,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AACzC,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAC,sBAAsB,EAAC,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAC,IAAI,EAAC,MAAM,kBAAkB,CAAA;AAErC,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IAClD,IAAI,QAAQ,IAAI,QAAQ,CAAA;IACxB,IAAI,WAAW,IAAI,WAAW,CAAA;IAC9B,IAAI,aAAa,IAAI,mBAAmB,CAAA;IACxC,IAAI,gBAAgB,IAAI,sBAAsB,CAAA;IAC9C,IAAI,cAAc,IAAI,cAAc,CAAA;IACpC,IAAI,kBAAkB,IAAI,kBAAkB,CAAA;IAC5C,IAAI,kBAAkB,IAAI,kBAAkB,CAAA;IAC5C,IAAI,qBAAqB,IAAI,qBAAqB,CAAA;IAClD,IAAI,cAAc,IAAI,cAAc,CAAA;IACpC,IAAI,sBAAsB,IAAI,sBAAsB,CAAA;IACpD,IAAI,iBAAiB,IAAI,IAAI,CAAA;IAC7B,IAAI,GAAG,IAAI,MAAM,CAAA;IACjB,IAAI,YAAY,IAAI,OAAO,CAAA;IAC3B,IAAI,cAAc,IAAI,OAAO,CAAA;CAChC"}
1
+ {"version":3,"file":"BoxAdaptersContext.d.ts","sourceRoot":"","sources":["../src/BoxAdaptersContext.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,UAAU,EAAC,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AACzC,OAAO,EAAC,qBAAqB,EAAE,kBAAkB,EAAC,MAAM,qBAAqB,CAAA;AAC7E,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAC,kBAAkB,EAAC,MAAM,+BAA+B,CAAA;AAChE,OAAO,EAAC,cAAc,EAAC,MAAM,kBAAkB,CAAA;AAC/C,OAAO,EAAC,sBAAsB,EAAC,MAAM,0BAA0B,CAAA;AAC/D,OAAO,EAAC,WAAW,EAAC,MAAM,eAAe,CAAA;AACzC,OAAO,EAAC,mBAAmB,EAAC,MAAM,8BAA8B,CAAA;AAChE,OAAO,EAAC,sBAAsB,EAAC,MAAM,oCAAoC,CAAA;AACzE,OAAO,EAAC,IAAI,EAAE,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAE/C,MAAM,WAAW,kBAAmB,SAAQ,UAAU;IAClD,IAAI,QAAQ,IAAI,QAAQ,CAAA;IACxB,IAAI,WAAW,IAAI,WAAW,CAAA;IAC9B,IAAI,aAAa,IAAI,mBAAmB,CAAA;IACxC,IAAI,gBAAgB,IAAI,sBAAsB,CAAA;IAC9C,IAAI,cAAc,IAAI,cAAc,CAAA;IACpC,IAAI,kBAAkB,IAAI,kBAAkB,CAAA;IAC5C,IAAI,kBAAkB,IAAI,kBAAkB,CAAA;IAC5C,IAAI,qBAAqB,IAAI,qBAAqB,CAAA;IAClD,IAAI,cAAc,IAAI,cAAc,CAAA;IACpC,IAAI,sBAAsB,IAAI,sBAAsB,CAAA;IACpD,IAAI,iBAAiB,IAAI,IAAI,CAAA;IAC7B,IAAI,QAAQ,IAAI,QAAQ,CAAA;IACxB,IAAI,YAAY,IAAI,OAAO,CAAA;IAC3B,IAAI,cAAc,IAAI,OAAO,CAAA;CAChC"}
@@ -3,7 +3,8 @@ export type ProcessorOptions = {
3
3
  pauseOnLoopDisabled?: boolean;
4
4
  };
5
5
  export type EngineProcessorAttachment = {
6
- sab: SharedArrayBuffer;
6
+ syncStreamBuffer: SharedArrayBuffer;
7
+ controlFlagsBuffer: SharedArrayBuffer;
7
8
  project: ArrayBufferLike;
8
9
  exportConfiguration?: ExportStemsConfiguration;
9
10
  options?: ProcessorOptions;
@@ -1 +1 @@
1
- {"version":3,"file":"EngineProcessorAttachment.d.ts","sourceRoot":"","sources":["../src/EngineProcessorAttachment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAE5C,MAAM,MAAM,gBAAgB,GAAG;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAGhE,MAAM,MAAM,yBAAyB,GAAG;IACpC,GAAG,EAAE,iBAAiB,CAAA;IACtB,OAAO,EAAE,eAAe,CAAA;IACxB,mBAAmB,CAAC,EAAE,wBAAwB,CAAA;IAC9C,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IAClC,mBAAmB,EAAE,OAAO,CAAA;IAC5B,YAAY,EAAE,OAAO,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;AAE9E,yBAAiB,wBAAwB,CAAC;IAC/B,MAAM,UAAU,GAAI,QAAQ,MAAM,CAAC,wBAAwB,CAAC,KAAG,GAIhE,CAAA;IAEC,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAA4D,CAAA;IAErG,MAAM,0BAA0B,GAAI,eAAe,wBAAwB,KAAG,IAiBpF,CAAA;CACJ"}
1
+ {"version":3,"file":"EngineProcessorAttachment.d.ts","sourceRoot":"","sources":["../src/EngineProcessorAttachment.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAE5C,MAAM,MAAM,gBAAgB,GAAG;IAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;CAAE,CAAA;AAGhE,MAAM,MAAM,yBAAyB,GAAG;IACpC,gBAAgB,EAAE,iBAAiB,CAAA;IACnC,kBAAkB,EAAE,iBAAiB,CAAA;IACrC,OAAO,EAAE,eAAe,CAAA;IACxB,mBAAmB,CAAC,EAAE,wBAAwB,CAAA;IAC9C,OAAO,CAAC,EAAE,gBAAgB,CAAA;CAC7B,CAAA;AAED,MAAM,MAAM,uBAAuB,GAAG;IAClC,mBAAmB,EAAE,OAAO,CAAA;IAC5B,YAAY,EAAE,OAAO,CAAA;IACrB,QAAQ,EAAE,MAAM,CAAA;CACnB,CAAA;AAED,MAAM,MAAM,wBAAwB,GAAG,MAAM,CAAC,MAAM,EAAE,uBAAuB,CAAC,CAAA;AAE9E,yBAAiB,wBAAwB,CAAC;IAC/B,MAAM,UAAU,GAAI,QAAQ,MAAM,CAAC,wBAAwB,CAAC,KAAG,GAIhE,CAAA;IAEC,MAAM,gBAAgB,GAAI,MAAM,MAAM,KAAG,MAA4D,CAAA;IAErG,MAAM,0BAA0B,GAAI,eAAe,wBAAwB,KAAG,IAiBpF,CAAA;CACJ"}