@sudobility/music_types 0.13.26 → 0.13.27
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/CLAUDE.md +33 -3
- package/dist/domain/documents/document-state.d.ts +17 -0
- package/dist/domain/documents/document-state.d.ts.map +1 -0
- package/dist/domain/documents/document-state.js +6 -0
- package/dist/domain/documents/document-state.js.map +1 -0
- package/dist/domain/documents/export-formats.d.ts +74 -0
- package/dist/domain/documents/export-formats.d.ts.map +1 -0
- package/dist/domain/documents/export-formats.js +53 -0
- package/dist/domain/documents/export-formats.js.map +1 -0
- package/dist/domain/documents/formats.d.ts +17 -0
- package/dist/domain/documents/formats.d.ts.map +1 -0
- package/dist/domain/documents/formats.js +61 -0
- package/dist/domain/documents/formats.js.map +1 -0
- package/dist/domain/documents/project-file.d.ts +33 -0
- package/dist/domain/documents/project-file.d.ts.map +1 -0
- package/dist/domain/documents/project-file.js +14 -0
- package/dist/domain/documents/project-file.js.map +1 -0
- package/dist/domain/documents/publish.d.ts +6 -0
- package/dist/domain/documents/publish.d.ts.map +1 -0
- package/dist/domain/documents/publish.js +2 -0
- package/dist/domain/documents/publish.js.map +1 -0
- package/dist/domain/documents/templates.d.ts +21 -0
- package/dist/domain/documents/templates.d.ts.map +1 -0
- package/dist/domain/documents/templates.js +22 -0
- package/dist/domain/documents/templates.js.map +1 -0
- package/dist/domain/editor/app-errors.d.ts +16 -0
- package/dist/domain/editor/app-errors.d.ts.map +1 -0
- package/dist/domain/editor/app-errors.js +8 -0
- package/dist/domain/editor/app-errors.js.map +1 -0
- package/dist/domain/editor/context-menu.d.ts +74 -0
- package/dist/domain/editor/context-menu.d.ts.map +1 -0
- package/dist/domain/editor/context-menu.js +19 -0
- package/dist/domain/editor/context-menu.js.map +1 -0
- package/dist/domain/editor/device-prefs.d.ts +107 -0
- package/dist/domain/editor/device-prefs.d.ts.map +1 -0
- package/dist/domain/editor/device-prefs.js +66 -0
- package/dist/domain/editor/device-prefs.js.map +1 -0
- package/dist/domain/editor/docs.d.ts +56 -0
- package/dist/domain/editor/docs.d.ts.map +1 -0
- package/dist/domain/editor/docs.js +41 -0
- package/dist/domain/editor/docs.js.map +1 -0
- package/dist/domain/editor/edit-mode.d.ts +31 -0
- package/dist/domain/editor/edit-mode.d.ts.map +1 -0
- package/dist/domain/editor/edit-mode.js +40 -0
- package/dist/domain/editor/edit-mode.js.map +1 -0
- package/dist/domain/editor/editing-copy.d.ts +91 -0
- package/dist/domain/editor/editing-copy.d.ts.map +1 -0
- package/dist/domain/editor/editing-copy.js +88 -0
- package/dist/domain/editor/editing-copy.js.map +1 -0
- package/dist/domain/editor/inspector.d.ts +45 -0
- package/dist/domain/editor/inspector.d.ts.map +1 -0
- package/dist/domain/editor/inspector.js +34 -0
- package/dist/domain/editor/inspector.js.map +1 -0
- package/dist/domain/editor/labelled-option.d.ts +6 -0
- package/dist/domain/editor/labelled-option.d.ts.map +1 -0
- package/dist/domain/editor/labelled-option.js +2 -0
- package/dist/domain/editor/labelled-option.js.map +1 -0
- package/dist/domain/editor/library-copy.d.ts +61 -0
- package/dist/domain/editor/library-copy.d.ts.map +1 -0
- package/dist/domain/editor/library-copy.js +2 -0
- package/dist/domain/editor/library-copy.js.map +1 -0
- package/dist/domain/editor/print.d.ts +30 -0
- package/dist/domain/editor/print.d.ts.map +1 -0
- package/dist/domain/editor/print.js +43 -0
- package/dist/domain/editor/print.js.map +1 -0
- package/dist/domain/editor/score-input.d.ts +158 -0
- package/dist/domain/editor/score-input.d.ts.map +1 -0
- package/dist/domain/editor/score-input.js +2 -0
- package/dist/domain/editor/score-input.js.map +1 -0
- package/dist/domain/editor/toast.d.ts +32 -0
- package/dist/domain/editor/toast.d.ts.map +1 -0
- package/dist/domain/editor/toast.js +5 -0
- package/dist/domain/editor/toast.js.map +1 -0
- package/dist/domain/editor/toolbar.d.ts +62 -0
- package/dist/domain/editor/toolbar.d.ts.map +1 -0
- package/dist/domain/editor/toolbar.js +83 -0
- package/dist/domain/editor/toolbar.js.map +1 -0
- package/dist/domain/editor/view-settings.d.ts +22 -0
- package/dist/domain/editor/view-settings.d.ts.map +1 -0
- package/dist/domain/editor/view-settings.js +30 -0
- package/dist/domain/editor/view-settings.js.map +1 -0
- package/dist/domain/generation/replace-drafts.d.ts +78 -0
- package/dist/domain/generation/replace-drafts.d.ts.map +1 -0
- package/dist/domain/generation/replace-drafts.js +40 -0
- package/dist/domain/generation/replace-drafts.js.map +1 -0
- package/dist/domain/generation/request-drafts.d.ts +226 -0
- package/dist/domain/generation/request-drafts.d.ts.map +1 -0
- package/dist/domain/generation/request-drafts.js +52 -0
- package/dist/domain/generation/request-drafts.js.map +1 -0
- package/dist/domain/instruments/gm-catalogue.d.ts +27 -3
- package/dist/domain/instruments/gm-catalogue.d.ts.map +1 -1
- package/dist/domain/instruments/gm-catalogue.js +4 -3
- package/dist/domain/instruments/gm-catalogue.js.map +1 -1
- package/dist/domain/instruments/gm-polyphony.d.ts +25 -2
- package/dist/domain/instruments/gm-polyphony.d.ts.map +1 -1
- package/dist/domain/instruments/gm-polyphony.js +9 -3
- package/dist/domain/instruments/gm-polyphony.js.map +1 -1
- package/dist/domain/instruments/gm-range.d.ts +10 -6
- package/dist/domain/instruments/gm-range.d.ts.map +1 -1
- package/dist/domain/instruments/gm-range.js +18 -3
- package/dist/domain/instruments/gm-range.js.map +1 -1
- package/dist/domain/instruments/out-of-range.d.ts +70 -0
- package/dist/domain/instruments/out-of-range.d.ts.map +1 -0
- package/dist/domain/instruments/out-of-range.js +106 -0
- package/dist/domain/instruments/out-of-range.js.map +1 -0
- package/dist/domain/instruments/track-instrument.d.ts +23 -0
- package/dist/domain/instruments/track-instrument.d.ts.map +1 -1
- package/dist/domain/instruments/track-instrument.js +26 -0
- package/dist/domain/instruments/track-instrument.js.map +1 -1
- package/dist/domain/notation/music-vocabulary.d.ts +17 -0
- package/dist/domain/notation/music-vocabulary.d.ts.map +1 -1
- package/dist/domain/notation/music-vocabulary.js +25 -1
- package/dist/domain/notation/music-vocabulary.js.map +1 -1
- package/dist/domain/notation/picker-options.d.ts +42 -2
- package/dist/domain/notation/picker-options.d.ts.map +1 -1
- package/dist/domain/notation/picker-options.js +41 -2
- package/dist/domain/notation/picker-options.js.map +1 -1
- package/dist/domain/score/transport-settings.d.ts +29 -0
- package/dist/domain/score/transport-settings.d.ts.map +1 -0
- package/dist/domain/score/transport-settings.js +2 -0
- package/dist/domain/score/transport-settings.js.map +1 -0
- package/dist/formats/audio-import.d.ts +15 -0
- package/dist/formats/audio-import.d.ts.map +1 -0
- package/dist/formats/audio-import.js +26 -0
- package/dist/formats/audio-import.js.map +1 -0
- package/dist/formats/index.d.ts +10 -0
- package/dist/formats/index.d.ts.map +1 -1
- package/dist/formats/index.js +10 -0
- package/dist/formats/index.js.map +1 -1
- package/dist/formats/midi-import.d.ts +128 -0
- package/dist/formats/midi-import.d.ts.map +1 -0
- package/dist/formats/midi-import.js +2 -0
- package/dist/formats/midi-import.js.map +1 -0
- package/dist/formats/musicxml.d.ts +44 -0
- package/dist/formats/musicxml.d.ts.map +1 -0
- package/dist/formats/musicxml.js +2 -0
- package/dist/formats/musicxml.js.map +1 -0
- package/dist/formats/tracker-export.d.ts +55 -0
- package/dist/formats/tracker-export.d.ts.map +1 -0
- package/dist/formats/tracker-export.js +18 -0
- package/dist/formats/tracker-export.js.map +1 -0
- package/dist/index.d.ts +24 -0
- package/dist/index.d.ts.map +1 -1
- package/dist/index.js +30 -0
- package/dist/index.js.map +1 -1
- package/dist/platform/index.d.ts +2 -0
- package/dist/platform/index.d.ts.map +1 -1
- package/dist/platform/index.js +2 -0
- package/dist/platform/index.js.map +1 -1
- package/dist/platform/score-files.d.ts +36 -0
- package/dist/platform/score-files.d.ts.map +1 -0
- package/dist/platform/score-files.js +2 -0
- package/dist/platform/score-files.js.map +1 -0
- package/dist/platform/storage.d.ts +19 -0
- package/dist/platform/storage.d.ts.map +1 -0
- package/dist/platform/storage.js +10 -0
- package/dist/platform/storage.js.map +1 -0
- package/package.json +1 -1
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B;;;;GAIG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC"}
|
|
1
|
+
{"version":3,"file":"index.js","sourceRoot":"","sources":["../../src/platform/index.ts"],"names":[],"mappings":"AAAA,cAAc,YAAY,CAAC;AAC3B;;;;GAIG;AACH,cAAc,eAAe,CAAC;AAC9B,cAAc,UAAU,CAAC;AACzB,cAAc,WAAW,CAAC;AAC1B,cAAc,iBAAiB,CAAC;AAChC,cAAc,kBAAkB,CAAC;AACjC,cAAc,cAAc,CAAC"}
|
|
@@ -0,0 +1,36 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The file layer above the codecs, as a contract.
|
|
3
|
+
*
|
|
4
|
+
* `@sudobility/music_codecs` turns bytes into a `Score` and back; an
|
|
5
|
+
* implementation of this turns *files* into a `Score` and back — read bytes,
|
|
6
|
+
* call the codec, hand over a score; take a score, call the codec, write the
|
|
7
|
+
* file. `@sudobility/music_io` implements it (`createScoreFiles`) and exposes
|
|
8
|
+
* it on its `MusicIo` bundle.
|
|
9
|
+
*
|
|
10
|
+
* **`open*`/`save*`, never `import*`/`export*`.** music_codecs already exports
|
|
11
|
+
* `importMidi`/`exportMidi`; two identically-named functions in packages an app
|
|
12
|
+
* imports together is a collision that gets resolved wrongly under time
|
|
13
|
+
* pressure.
|
|
14
|
+
*
|
|
15
|
+
* **Audio is deliberately asymmetric with the score formats.** `saveAudio`
|
|
16
|
+
* takes PCM the caller already rendered, because rendering is a live synth in
|
|
17
|
+
* `@sudobility/music_player` and the file layer never holds a reference to one.
|
|
18
|
+
*/
|
|
19
|
+
import type { Score } from "../model/score.js";
|
|
20
|
+
import type { TrackerModule } from "../formats/mod.js";
|
|
21
|
+
import type { MidiImportOptions, MidiImportResult, MidiSummary } from "../formats/midi-import.js";
|
|
22
|
+
import type { MusicXmlImportResult, MusicXmlWarnings } from "../formats/musicxml.js";
|
|
23
|
+
export type ScoreFiles = {
|
|
24
|
+
openMidi(bytes: ArrayBuffer, options: MidiImportOptions): MidiImportResult;
|
|
25
|
+
analyzeMidi(bytes: ArrayBuffer): MidiSummary;
|
|
26
|
+
openTracker(bytes: ArrayBuffer): {
|
|
27
|
+
module: TrackerModule;
|
|
28
|
+
score: Score;
|
|
29
|
+
};
|
|
30
|
+
openMusicXml(text: string, warnings: MusicXmlWarnings): Promise<MusicXmlImportResult>;
|
|
31
|
+
saveMidi(score: Score, filename: string): Promise<void>;
|
|
32
|
+
saveTracker(module: TrackerModule, filename: string): Promise<void>;
|
|
33
|
+
saveMusicXml(score: Score, filename: string): Promise<void>;
|
|
34
|
+
saveAudio(samples: Float32Array, sampleRate: number, format: "wav" | "mp3", filename: string): Promise<void>;
|
|
35
|
+
};
|
|
36
|
+
//# sourceMappingURL=score-files.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score-files.d.ts","sourceRoot":"","sources":["../../src/platform/score-files.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;;;;;;;GAiBG;AACH,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,mBAAmB,CAAC;AAC/C,OAAO,KAAK,EAAE,aAAa,EAAE,MAAM,mBAAmB,CAAC;AACvD,OAAO,KAAK,EACV,iBAAiB,EACjB,gBAAgB,EAChB,WAAW,EACZ,MAAM,2BAA2B,CAAC;AACnC,OAAO,KAAK,EACV,oBAAoB,EACpB,gBAAgB,EACjB,MAAM,wBAAwB,CAAC;AAEhC,MAAM,MAAM,UAAU,GAAG;IACvB,QAAQ,CAAC,KAAK,EAAE,WAAW,EAAE,OAAO,EAAE,iBAAiB,GAAG,gBAAgB,CAAC;IAC3E,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG,WAAW,CAAC;IAC7C,WAAW,CAAC,KAAK,EAAE,WAAW,GAAG;QAAE,MAAM,EAAE,aAAa,CAAC;QAAC,KAAK,EAAE,KAAK,CAAA;KAAE,CAAC;IACzE,YAAY,CACV,IAAI,EAAE,MAAM,EACZ,QAAQ,EAAE,gBAAgB,GACzB,OAAO,CAAC,oBAAoB,CAAC,CAAC;IAEjC,QAAQ,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACxD,WAAW,CAAC,MAAM,EAAE,aAAa,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IACpE,YAAY,CAAC,KAAK,EAAE,KAAK,EAAE,QAAQ,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;IAC5D,SAAS,CACP,OAAO,EAAE,YAAY,EACrB,UAAU,EAAE,MAAM,EAClB,MAAM,EAAE,KAAK,GAAG,KAAK,EACrB,QAAQ,EAAE,MAAM,GACf,OAAO,CAAC,IAAI,CAAC,CAAC;CAClB,CAAC"}
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"score-files.js","sourceRoot":"","sources":["../../src/platform/score-files.ts"],"names":[],"mappings":""}
|
|
@@ -0,0 +1,19 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The storage a frontend store is handed, as structural contracts.
|
|
3
|
+
*
|
|
4
|
+
* Structural so each platform brings its own and a test brings a map: the web
|
|
5
|
+
* passes `localStorage` behind @sudobility/di's `StorageService`, a sandboxed
|
|
6
|
+
* macOS build reaches a file through a security-scoped bookmark — a different
|
|
7
|
+
* storage, not a different document.
|
|
8
|
+
*/
|
|
9
|
+
/** Structural subset of @sudobility/di's StorageService used for device prefs. */
|
|
10
|
+
export type PrefsStorage = {
|
|
11
|
+
getItem(key: string): Promise<string | null | undefined> | string | null | undefined;
|
|
12
|
+
setItem(key: string, value: string): Promise<void> | void;
|
|
13
|
+
};
|
|
14
|
+
/** The filesystem, as far as a document needs one. */
|
|
15
|
+
export type DocumentFileStorage = {
|
|
16
|
+
readText(uri: string): Promise<string>;
|
|
17
|
+
writeText(uri: string, text: string): Promise<void>;
|
|
18
|
+
};
|
|
19
|
+
//# sourceMappingURL=storage.d.ts.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.d.ts","sourceRoot":"","sources":["../../src/platform/storage.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AAEH,kFAAkF;AAClF,MAAM,MAAM,YAAY,GAAG;IACzB,OAAO,CACL,GAAG,EAAE,MAAM,GACV,OAAO,CAAC,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC,GAAG,MAAM,GAAG,IAAI,GAAG,SAAS,CAAC;IAClE,OAAO,CAAC,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,CAAC;CAC3D,CAAC;AAEF,sDAAsD;AACtD,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC,MAAM,CAAC,CAAC;IACvC,SAAS,CAAC,GAAG,EAAE,MAAM,EAAE,IAAI,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC,CAAC;CACrD,CAAC"}
|
|
@@ -0,0 +1,10 @@
|
|
|
1
|
+
/**
|
|
2
|
+
* The storage a frontend store is handed, as structural contracts.
|
|
3
|
+
*
|
|
4
|
+
* Structural so each platform brings its own and a test brings a map: the web
|
|
5
|
+
* passes `localStorage` behind @sudobility/di's `StorageService`, a sandboxed
|
|
6
|
+
* macOS build reaches a file through a security-scoped bookmark — a different
|
|
7
|
+
* storage, not a different document.
|
|
8
|
+
*/
|
|
9
|
+
export {};
|
|
10
|
+
//# sourceMappingURL=storage.js.map
|
|
@@ -0,0 +1 @@
|
|
|
1
|
+
{"version":3,"file":"storage.js","sourceRoot":"","sources":["../../src/platform/storage.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG"}
|
package/package.json
CHANGED