@opendaw/studio-adapters 0.0.27 → 0.0.29

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.
@@ -0,0 +1,22 @@
1
+ import { int, Option } from "@opendaw/lib-std";
2
+ export type ProcessorOptions = {
3
+ pauseOnLoopDisabled?: boolean;
4
+ };
5
+ export type EngineProcessorAttachment = {
6
+ sab: SharedArrayBuffer;
7
+ project: ArrayBufferLike;
8
+ exportConfiguration?: ExportStemsConfiguration;
9
+ options?: ProcessorOptions;
10
+ };
11
+ export type ExportStemConfiguration = {
12
+ includeAudioEffects: boolean;
13
+ includeSends: boolean;
14
+ fileName: string;
15
+ };
16
+ export type ExportStemsConfiguration = Record<string, ExportStemConfiguration>;
17
+ export declare namespace ExportStemsConfiguration {
18
+ const countStems: (config: Option<ExportStemsConfiguration>) => int;
19
+ const sanitizeFileName: (name: string) => string;
20
+ const sanitizeExportNamesInPlace: (configuration: ExportStemsConfiguration) => void;
21
+ }
22
+ //# sourceMappingURL=EngineProcessorAttachment.d.ts.map
@@ -0,0 +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"}
@@ -0,0 +1,26 @@
1
+ export var ExportStemsConfiguration;
2
+ (function (ExportStemsConfiguration) {
3
+ ExportStemsConfiguration.countStems = (config) => config.match({
4
+ none: () => 1,
5
+ some: (configuration) => Object.keys(configuration).length
6
+ });
7
+ ExportStemsConfiguration.sanitizeFileName = (name) => name.replace(/[<>:"/\\|?*\x00-\x1F]/g, "_").trim();
8
+ ExportStemsConfiguration.sanitizeExportNamesInPlace = (configuration) => {
9
+ const sanitizedNames = new Map();
10
+ const getUniqueName = (baseName) => {
11
+ let count = sanitizedNames.get(baseName) ?? 0;
12
+ let newName = baseName;
13
+ while (sanitizedNames.has(newName)) {
14
+ count++;
15
+ newName = `${baseName} ${count}`;
16
+ }
17
+ sanitizedNames.set(baseName, count);
18
+ sanitizedNames.set(newName, 1);
19
+ return newName;
20
+ };
21
+ Object.keys(configuration).forEach((key) => {
22
+ const entry = configuration[key];
23
+ entry.fileName = getUniqueName(ExportStemsConfiguration.sanitizeFileName(entry.fileName));
24
+ });
25
+ };
26
+ })(ExportStemsConfiguration || (ExportStemsConfiguration = {}));
@@ -3,6 +3,9 @@ export type EngineProcessorOptions = {
3
3
  sab: SharedArrayBuffer;
4
4
  project: ArrayBufferLike;
5
5
  exportConfiguration?: ExportStemsConfiguration;
6
+ options?: {
7
+ pauseOnLoopDisabled?: boolean;
8
+ };
6
9
  };
7
10
  export type ExportStemConfiguration = {
8
11
  includeAudioEffects: boolean;
@@ -1 +1 @@
1
- {"version":3,"file":"EngineProcessorOptions.d.ts","sourceRoot":"","sources":["../src/EngineProcessorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAG5C,MAAM,MAAM,sBAAsB,GAAG;IACjC,GAAG,EAAE,iBAAiB,CAAA;IACtB,OAAO,EAAE,eAAe,CAAA;IACxB,mBAAmB,CAAC,EAAE,wBAAwB,CAAA;CACjD,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":"EngineProcessorOptions.d.ts","sourceRoot":"","sources":["../src/EngineProcessorOptions.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,GAAG,EAAE,MAAM,EAAC,MAAM,kBAAkB,CAAA;AAG5C,MAAM,MAAM,sBAAsB,GAAG;IACjC,GAAG,EAAE,iBAAiB,CAAA;IACtB,OAAO,EAAE,eAAe,CAAA;IACxB,mBAAmB,CAAC,EAAE,wBAAwB,CAAA;IAC9C,OAAO,CAAC,EAAE;QAAE,mBAAmB,CAAC,EAAE,OAAO,CAAA;KAAE,CAAA;CAC9C,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"}
@@ -9,5 +9,6 @@ export declare namespace ProjectDecoder {
9
9
  mandatoryBoxes: MandatoryBoxes;
10
10
  };
11
11
  const decode: (arrayBuffer: ArrayBufferLike) => Skeleton;
12
+ const findMandatoryBoxes: (boxGraph: BoxGraph) => MandatoryBoxes;
12
13
  }
13
14
  //# sourceMappingURL=ProjectDecoder.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"ProjectDecoder.d.ts","sourceRoot":"","sources":["../src/ProjectDecoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAA4B,KAAK,EAAyC,MAAM,uBAAuB,CAAA;AAC9G,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAA;AAEhD,yBAAiB,cAAc,CAAC;IACrB,MAAM,iBAAiB,aAAa,CAAA;IACpC,MAAM,cAAc,IAAI,CAAA;IAE/B,KAAY,QAAQ,GAAG;QACnB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClC,cAAc,EAAE,cAAc,CAAA;KACjC,CAAA;IAEM,MAAM,MAAM,GAAI,aAAa,eAAe,KAAG,QAUrD,CAAA;CAUJ"}
1
+ {"version":3,"file":"ProjectDecoder.d.ts","sourceRoot":"","sources":["../src/ProjectDecoder.ts"],"names":[],"mappings":"AAAA,OAAO,EAGH,KAAK,EAKR,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAC,QAAQ,EAAC,MAAM,kBAAkB,CAAA;AAEzC,OAAO,EAAC,cAAc,EAAC,MAAM,mBAAmB,CAAA;AAGhD,yBAAiB,cAAc,CAAC;IACrB,MAAM,iBAAiB,aAAa,CAAA;IACpC,MAAM,cAAc,IAAI,CAAA;IAE/B,KAAY,QAAQ,GAAG;QACnB,QAAQ,EAAE,QAAQ,CAAC,KAAK,CAAC,OAAO,CAAC,CAAC;QAClC,cAAc,EAAE,cAAc,CAAA;KACjC,CAAA;IAEM,MAAM,MAAM,GAAI,aAAa,eAAe,KAAG,QAUrD,CAAA;IAEM,MAAM,kBAAkB,GAAI,UAAU,QAAQ,KAAG,cA0BvD,CAAA;CAUJ"}
@@ -1,6 +1,7 @@
1
- import { BoxIO } from "@opendaw/studio-boxes";
1
+ import { AudioUnitBox, BoxIO } from "@opendaw/studio-boxes";
2
2
  import { BoxGraph } from "@opendaw/lib-box";
3
- import { assert, ByteArrayInput, Option, UUID } from "@opendaw/lib-std";
3
+ import { assert, ByteArrayInput, isInstanceOf, Option, UUID } from "@opendaw/lib-std";
4
+ import { AudioUnitType } from "@opendaw/studio-enums";
4
5
  export var ProjectDecoder;
5
6
  (function (ProjectDecoder) {
6
7
  ProjectDecoder.MAGIC_HEADER_OPEN = 0x4F50454E;
@@ -16,6 +17,33 @@ export var ProjectDecoder;
16
17
  boxGraph.fromArrayBuffer(boxGraphChunk.buffer);
17
18
  return { boxGraph, mandatoryBoxes: readMandatoryBoxes(boxGraph, input) };
18
19
  };
20
+ ProjectDecoder.findMandatoryBoxes = (boxGraph) => {
21
+ const boxes = {};
22
+ for (const box of boxGraph.boxes()) {
23
+ box.accept({
24
+ visitRootBox: (box) => boxes.rootBox = box,
25
+ visitTimelineBox: (box) => boxes.timelineBox = box,
26
+ visitUserInterfaceBox: (box) => boxes.userInterfaceBox = box,
27
+ visitAudioUnitBox: (box) => {
28
+ if (box.type.getValue() === AudioUnitType.Output) {
29
+ boxes.masterAudioUnit = box;
30
+ }
31
+ },
32
+ visitAudioBusBox: (box) => {
33
+ const output = box.output.targetVertex.unwrapOrNull()?.box;
34
+ if (isInstanceOf(output, AudioUnitBox) && output.type.getValue() === AudioUnitType.Output) {
35
+ boxes.masterBusBox = box;
36
+ }
37
+ }
38
+ });
39
+ }
40
+ assert(boxes.rootBox !== undefined, "RootBox not found");
41
+ assert(boxes.timelineBox !== undefined, "TimelineBox not found");
42
+ assert(boxes.userInterfaceBox !== undefined, "UserInterfaceBox not found");
43
+ assert(boxes.masterAudioUnit !== undefined, "MasterAudioUnit not found");
44
+ assert(boxes.masterBusBox !== undefined, "MasterBusBox not found");
45
+ return boxes;
46
+ };
19
47
  const readMandatoryBoxes = (boxGraph, input) => {
20
48
  const rootBox = boxGraph.findBox(UUID.fromDataInput(input)).unwrap("RootBox not found");
21
49
  const userInterfaceBox = boxGraph.findBox(UUID.fromDataInput(input)).unwrap("UserInterfaceBox not found");
package/dist/index.d.ts CHANGED
@@ -8,7 +8,7 @@ export * from "./ClipNotifications";
8
8
  export * from "./ClipSequencing";
9
9
  export * from "./DeviceAdapter";
10
10
  export * from "./DeviceBox";
11
- export * from "./EngineProcessorOptions";
11
+ export * from "./EngineProcessorAttachment";
12
12
  export * from "./EngineStateSchema";
13
13
  export * from "./FieldAdapter";
14
14
  export * from "./IconSymbol";
@@ -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":"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"}
package/dist/index.js CHANGED
@@ -10,7 +10,7 @@ export * from "./ClipNotifications";
10
10
  export * from "./ClipSequencing";
11
11
  export * from "./DeviceAdapter";
12
12
  export * from "./DeviceBox";
13
- export * from "./EngineProcessorOptions";
13
+ export * from "./EngineProcessorAttachment";
14
14
  export * from "./EngineStateSchema";
15
15
  export * from "./FieldAdapter";
16
16
  export * from "./IconSymbol";
@@ -1 +1 @@
1
- {"version":3,"file":"AudioRegionBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/timeline/region/AudioRegionBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAC,GAAG,EAAY,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAe,YAAY,EAAc,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACpH,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAoC,MAAM,kBAAkB,CAAA;AAClF,OAAO,EAAO,IAAI,EAAC,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAC,wBAAwB,EAAE,gBAAgB,EAAE,uBAAuB,EAAC,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,iCAAiC,CAAA;AAEnE,KAAK,YAAY,GAAG;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;IACxC,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,YAAY,CAAC,EAAE,IAAI,CAAA;CACtB,CAAA;AAED,qBAAa,qBAAsB,YAAW,wBAAwB,CAAC,KAAK,CAAC;;IACzE,QAAQ,CAAC,IAAI,kBAAiB;gBAelB,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,cAAc;IA8C5D,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAEvD,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAIxD,UAAU,IAAI,IAAI;IAKlB,YAAY,IAAI,IAAI;IAKpB,IAAI,UAAU,IAAI,OAAO,CAA0B;IAEnD,SAAS;IAET,IAAI,GAAG,IAAI,cAAc,CAAmB;IAE5C,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,QAAQ,IAAI,GAAG,CAAuC;IAC1D,IAAI,QAAQ,IAAI,GAAG,CAUlB;IACD,IAAI,QAAQ,IAAI,GAAG,CAAuC;IAC1D,IAAI,UAAU,IAAI,IAAI,CAAyC;IAC/D,IAAI,YAAY,IAAI,IAAI,CAA2C;IACnE,IAAI,MAAM,IAAI,IAAI,CAAyC;IAC3D,IAAI,IAAI,IAAI,OAAO,CAAmC;IACtD,IAAI,GAAG,IAAI,GAAG,CAAkC;IAChD,IAAI,IAAI,IAAI,MAAM,CAAmC;IACrD,IAAI,IAAI,IAAI,mBAAmB,CAAyD;IACxF,IAAI,aAAa,YAAwC;IACzD,IAAI,aAAa,IAAI,MAAM,CAAC,KAAK,CAAC,CAAqB;IACvD,IAAI,KAAK,IAAI,MAAM,CAMlB;IACD,IAAI,UAAU,IAAI,OAAO,CAAe;IACxC,IAAI,SAAS,IAAI,OAAO,CAAe;IACvC,IAAI,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,CAG7C;IAED,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,qBAAqB;IAepD,WAAW,IAAI,IAAI;IAGnB,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO;IACvE,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;IAInF,QAAQ,IAAI,MAAM;CAOrB"}
1
+ {"version":3,"file":"AudioRegionBoxAdapter.d.ts","sourceRoot":"","sources":["../../../src/timeline/region/AudioRegionBoxAdapter.ts"],"names":[],"mappings":"AAAA,OAAO,EAAC,cAAc,EAAC,MAAM,uBAAuB,CAAA;AACpD,OAAO,EAAC,GAAG,EAAY,KAAK,EAAE,QAAQ,EAAE,MAAM,EAAe,YAAY,EAAc,IAAI,EAAC,MAAM,kBAAkB,CAAA;AACpH,OAAO,EAAC,QAAQ,EAAC,MAAM,uBAAuB,CAAA;AAC9C,OAAO,EAAC,OAAO,EAAE,KAAK,EAAoC,MAAM,kBAAkB,CAAA;AAClF,OAAO,EAAO,IAAI,EAAC,MAAM,kBAAkB,CAAA;AAC3C,OAAO,EAAC,eAAe,EAAC,MAAM,oBAAoB,CAAA;AAClD,OAAO,EAAC,wBAAwB,EAAE,gBAAgB,EAAE,uBAAuB,EAAC,MAAM,qBAAqB,CAAA;AACvG,OAAO,EAAC,kBAAkB,EAAC,MAAM,0BAA0B,CAAA;AAC3D,OAAO,EAAC,mBAAmB,EAAC,MAAM,iCAAiC,CAAA;AAEnE,KAAK,YAAY,GAAG;IAChB,KAAK,CAAC,EAAE,KAAK,CAAC,QAAQ,CAAC,gBAAgB,CAAC,CAAA;IACxC,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,QAAQ,CAAC,EAAE,IAAI,CAAA;IACf,UAAU,CAAC,EAAE,IAAI,CAAA;IACjB,YAAY,CAAC,EAAE,IAAI,CAAA;CACtB,CAAA;AAED,qBAAa,qBAAsB,YAAW,wBAAwB,CAAC,KAAK,CAAC;;IACzE,QAAQ,CAAC,IAAI,kBAAiB;gBAelB,OAAO,EAAE,kBAAkB,EAAE,GAAG,EAAE,cAAc;IA+C5D,eAAe,CAAC,QAAQ,EAAE,QAAQ,CAAC,IAAI,CAAC,GAAG,YAAY;IAEvD,MAAM,CAAC,CAAC,EAAE,OAAO,EAAE,uBAAuB,CAAC,CAAC,CAAC,GAAG,KAAK,CAAC,CAAC,CAAC;IAIxD,UAAU,IAAI,IAAI;IAKlB,YAAY,IAAI,IAAI;IAKpB,IAAI,UAAU,IAAI,OAAO,CAA0B;IAEnD,SAAS;IAET,IAAI,GAAG,IAAI,cAAc,CAAmB;IAE5C,IAAI,IAAI,IAAI,IAAI,CAAC,KAAK,CAAgC;IACtD,IAAI,OAAO,IAAI,OAAO,CAA2B;IACjD,IAAI,QAAQ,IAAI,GAAG,CAAuC;IAC1D,IAAI,QAAQ,IAAI,GAAG,CAUlB;IACD,IAAI,QAAQ,IAAI,GAAG,CAAuC;IAC1D,IAAI,UAAU,IAAI,IAAI,CAAyC;IAC/D,IAAI,YAAY,IAAI,IAAI,CAA2C;IACnE,IAAI,MAAM,IAAI,IAAI,CAAyC;IAC3D,IAAI,IAAI,IAAI,OAAO,CAAmC;IACtD,IAAI,GAAG,IAAI,GAAG,CAAkC;IAChD,IAAI,IAAI,IAAI,MAAM,CAAmC;IACrD,IAAI,IAAI,IAAI,mBAAmB,CAAyD;IACxF,IAAI,aAAa,YAAwC;IACzD,IAAI,aAAa,IAAI,MAAM,CAAC,KAAK,CAAC,CAAqB;IACvD,IAAI,KAAK,IAAI,MAAM,CAMlB;IACD,IAAI,UAAU,IAAI,OAAO,CAAe;IACxC,IAAI,SAAS,IAAI,OAAO,CAAe;IACvC,IAAI,eAAe,IAAI,MAAM,CAAC,eAAe,CAAC,CAG7C;IAED,MAAM,CAAC,MAAM,CAAC,EAAE,YAAY,GAAG,qBAAqB;IAepD,WAAW,IAAI,IAAI;IAGnB,UAAU,CAAC,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,OAAO;IACvE,OAAO,CAAC,QAAQ,EAAE,aAAa,CAAC,gBAAgB,CAAC,OAAO,CAAC,CAAC,GAAG,MAAM,CAAC,cAAc,CAAC;IAInF,QAAQ,IAAI,MAAM;CAOrB"}
package/dist/unions.d.ts CHANGED
@@ -6,6 +6,7 @@ export type AnyLoopableRegionBox = AnyRegionBox;
6
6
  export declare const UnionBoxTypes: {
7
7
  isClipBox: (box: Box) => box is AnyClipBox;
8
8
  isRegionBox: (box: Box) => box is AnyRegionBox;
9
+ asRegionBox: (box: Box) => AnyRegionBox;
9
10
  isLoopableRegionBox: (box: Box) => box is AnyLoopableRegionBox;
10
11
  };
11
12
  //# sourceMappingURL=unions.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"unions.d.ts","sourceRoot":"","sources":["../src/unions.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,cAAc,EAEd,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACjB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAEpC,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CAAA;AAClE,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,cAAc,CAAA;AAC1E,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAA;AAE/C,eAAO,MAAM,aAAa;qBACL,GAAG,KAAG,GAAG,IAAI,UAAU;uBAKrB,GAAG,KAAG,GAAG,IAAI,YAAY;+BAKjB,GAAG,KAAG,GAAG,IAAI,oBAAoB;CAK/D,CAAA"}
1
+ {"version":3,"file":"unions.d.ts","sourceRoot":"","sources":["../src/unions.ts"],"names":[],"mappings":"AAAA,OAAO,EACH,YAAY,EACZ,cAAc,EAEd,WAAW,EACX,aAAa,EACb,YAAY,EACZ,cAAc,EACjB,MAAM,uBAAuB,CAAA;AAC9B,OAAO,EAAC,GAAG,EAAC,MAAM,kBAAkB,CAAA;AAGpC,MAAM,MAAM,UAAU,GAAG,WAAW,GAAG,YAAY,GAAG,YAAY,CAAA;AAClE,MAAM,MAAM,YAAY,GAAG,cAAc,GAAG,aAAa,GAAG,cAAc,CAAA;AAC1E,MAAM,MAAM,oBAAoB,GAAG,YAAY,CAAA;AAE/C,eAAO,MAAM,aAAa;qBACL,GAAG,KAAG,GAAG,IAAI,UAAU;uBAKrB,GAAG,KAAG,GAAG,IAAI,YAAY;uBAKzB,GAAG,KAAG,YAAY;+BAKV,GAAG,KAAG,GAAG,IAAI,oBAAoB;CAK/D,CAAA"}
package/dist/unions.js CHANGED
@@ -1,3 +1,4 @@
1
+ import { panic } from "@opendaw/lib-std";
1
2
  export const UnionBoxTypes = {
2
3
  isClipBox: (box) => box.accept({
3
4
  visitNoteClipBox: (_box) => true,
@@ -9,6 +10,11 @@ export const UnionBoxTypes = {
9
10
  visitAudioRegionBox: (_box) => true,
10
11
  visitValueRegionBox: (_box) => true
11
12
  }) ?? false,
13
+ asRegionBox: (box) => box.accept({
14
+ visitNoteRegionBox: (box) => box,
15
+ visitAudioRegionBox: (box) => box,
16
+ visitValueRegionBox: (box) => box
17
+ }) ?? panic("Could not cast to AnyRegionBox"),
12
18
  isLoopableRegionBox: (box) => box.accept({
13
19
  visitNoteRegionBox: (_box) => true,
14
20
  visitAudioRegionBox: (_box) => true,
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@opendaw/studio-adapters",
3
- "version": "0.0.27",
3
+ "version": "0.0.29",
4
4
  "license": "LGPL-3.0-or-later",
5
5
  "publishConfig": {
6
6
  "access": "public"
@@ -23,16 +23,16 @@
23
23
  "test": "echo \"No tests to run\""
24
24
  },
25
25
  "dependencies": {
26
- "@opendaw/lib-box": "^0.0.27",
27
- "@opendaw/lib-dsp": "^0.0.27",
28
- "@opendaw/lib-runtime": "^0.0.27",
29
- "@opendaw/lib-std": "^0.0.27",
30
- "@opendaw/studio-boxes": "^0.0.27",
26
+ "@opendaw/lib-box": "^0.0.28",
27
+ "@opendaw/lib-dsp": "^0.0.28",
28
+ "@opendaw/lib-runtime": "^0.0.28",
29
+ "@opendaw/lib-std": "^0.0.28",
30
+ "@opendaw/studio-boxes": "^0.0.28",
31
31
  "@opendaw/studio-enums": "^0.0.21"
32
32
  },
33
33
  "devDependencies": {
34
34
  "@opendaw/eslint-config": "^0.0.19",
35
35
  "@opendaw/typescript-config": "^0.0.20"
36
36
  },
37
- "gitHead": "e94fe3bfdfa1c24ba8d16a695ebf7345286f3a32"
37
+ "gitHead": "ef80742a992e09362277ff87ec1b79ded515f9e5"
38
38
  }