@sudobility/music_types 0.13.3 → 0.13.5

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 (63) hide show
  1. package/CLAUDE.md +4 -0
  2. package/dist/bytes/base64.js +6 -6
  3. package/dist/domain/generation/replacement-region.d.ts +10 -0
  4. package/dist/domain/generation/replacement-region.d.ts.map +1 -1
  5. package/dist/domain/generation/replacement-region.js +22 -0
  6. package/dist/domain/generation/replacement-region.js.map +1 -1
  7. package/dist/domain/instruments/midi-protocol.d.ts +24 -0
  8. package/dist/domain/instruments/midi-protocol.d.ts.map +1 -0
  9. package/dist/domain/instruments/midi-protocol.js +24 -0
  10. package/dist/domain/instruments/midi-protocol.js.map +1 -0
  11. package/dist/domain/instruments/track-instrument.d.ts +17 -1
  12. package/dist/domain/instruments/track-instrument.d.ts.map +1 -1
  13. package/dist/domain/instruments/track-instrument.js +37 -0
  14. package/dist/domain/instruments/track-instrument.js.map +1 -1
  15. package/dist/domain/notation/display-lens.d.ts +32 -0
  16. package/dist/domain/notation/display-lens.d.ts.map +1 -0
  17. package/dist/domain/notation/display-lens.js +41 -0
  18. package/dist/domain/notation/display-lens.js.map +1 -0
  19. package/dist/domain/score/defaults.d.ts +21 -0
  20. package/dist/domain/score/defaults.d.ts.map +1 -0
  21. package/dist/domain/score/defaults.js +9 -0
  22. package/dist/domain/score/defaults.js.map +1 -0
  23. package/dist/domain/score/factory.d.ts.map +1 -1
  24. package/dist/domain/score/factory.js +2 -7
  25. package/dist/domain/score/factory.js.map +1 -1
  26. package/dist/domain/score/queries.d.ts +46 -0
  27. package/dist/domain/score/queries.d.ts.map +1 -1
  28. package/dist/domain/score/queries.js +94 -0
  29. package/dist/domain/score/queries.js.map +1 -1
  30. package/dist/domain/selection/clipboard-prompts.d.ts +34 -0
  31. package/dist/domain/selection/clipboard-prompts.d.ts.map +1 -0
  32. package/dist/domain/selection/clipboard-prompts.js +74 -0
  33. package/dist/domain/selection/clipboard-prompts.js.map +1 -0
  34. package/dist/domain/time/tempo-map.d.ts.map +1 -1
  35. package/dist/domain/time/tempo-map.js +1 -1
  36. package/dist/domain/time/tempo-map.js.map +1 -1
  37. package/dist/domain/time/tuplets.d.ts +3 -0
  38. package/dist/domain/time/tuplets.d.ts.map +1 -1
  39. package/dist/domain/time/tuplets.js +2 -2
  40. package/dist/domain/time/tuplets.js.map +1 -1
  41. package/dist/index.d.ts +4 -0
  42. package/dist/index.d.ts.map +1 -1
  43. package/dist/index.js +4 -0
  44. package/dist/index.js.map +1 -1
  45. package/dist/model/generation.d.ts +335 -0
  46. package/dist/model/generation.d.ts.map +1 -1
  47. package/dist/model/generation.js +7 -0
  48. package/dist/model/generation.js.map +1 -1
  49. package/dist/model/score.d.ts +32 -14
  50. package/dist/model/score.d.ts.map +1 -1
  51. package/dist/model/score.js +104 -1
  52. package/dist/model/score.js.map +1 -1
  53. package/dist/platform/playback.d.ts.map +1 -1
  54. package/dist/position/singleton.d.ts +1 -1
  55. package/dist/position/singleton.js +1 -1
  56. package/dist/services/regeneration/controller.d.ts.map +1 -1
  57. package/dist/services/regeneration/controller.js +33 -0
  58. package/dist/services/regeneration/controller.js.map +1 -1
  59. package/dist/test/fixtures.d.ts +27 -1
  60. package/dist/test/fixtures.d.ts.map +1 -1
  61. package/dist/test/fixtures.js +25 -6
  62. package/dist/test/fixtures.js.map +1 -1
  63. package/package.json +6 -1
@@ -9,7 +9,99 @@
9
9
  // ---------------------------------------------------------------------------
10
10
  // 1. Score model types
11
11
  // ---------------------------------------------------------------------------
12
- /** Softest first, which is the order a picker should offer them in. */
12
+ export const PITCH_STEPS = ["C", "D", "E", "F", "G", "A", "B"];
13
+ /** -2 = double flat, -1 = flat, 0 = natural, 1 = sharp, 2 = double sharp. */
14
+ export const ACCIDENTALS = [-2, -1, 0, 1, 2];
15
+ export const ARTICULATIONS = [
16
+ "staccato",
17
+ "accent",
18
+ "tenuto",
19
+ "marcato",
20
+ ];
21
+ /**
22
+ * An ornament sign written over a note.
23
+ *
24
+ * The *sign*, not the notes it stands for: a trill is stored as "trill" rather
25
+ * than expanded into the alternation a player would produce, because the
26
+ * realisation depends on period, tempo and taste, and expanding it would make
27
+ * the ornament impossible to remove or re-read. Written-out ornaments are a
28
+ * different thing entirely and already have one — `NoteEvent.graceNotes`.
29
+ *
30
+ * Named the way a musician names them: `mordent` is the one *with* the
31
+ * vertical stroke and `inverted-mordent` the one without. (VexFlow's own codes
32
+ * use these two words the other way round — see `convert.ts`.)
33
+ */
34
+ export const ORNAMENTS = [
35
+ "trill",
36
+ "mordent",
37
+ "inverted-mordent",
38
+ "turn",
39
+ ];
40
+ /**
41
+ * A gradual change of loudness, written as a wedge under the stave.
42
+ *
43
+ * The other half of `Dynamic`: a dynamic is a *level* that holds until the
44
+ * next one, and a hairpin is the *change* between two of them. Most dynamic
45
+ * writing is hairpins, so a score that had only levels could say "loud here"
46
+ * but never "get louder".
47
+ */
48
+ export const HAIRPINS = ["crescendo", "diminuendo"];
49
+ /**
50
+ * An octave-displacement bracket: play the written notes an octave (or two)
51
+ * away from where they sit.
52
+ *
53
+ * `8va`/`15ma` are above, `8vb`/`15mb` below. The model stores **sounding**
54
+ * pitch as it always has, so the bracket is purely a display instruction — it
55
+ * says "these were written an octave lower to keep them on the stave", and the
56
+ * display lens moves them there. That is the only way it can work here: a
57
+ * model that stored written pitch would make an ottava change what a note
58
+ * *sounds* like, which is the opposite of what the mark means.
59
+ */
60
+ export const OTTAVAS = ["8va", "8vb", "15ma", "15mb"];
61
+ /**
62
+ * The line drawn at the end of a bar, where it is not an ordinary single one.
63
+ *
64
+ * Only the two that carry meaning a reader acts on: `double` marks a section
65
+ * break, and `final` ends the piece. The repeat barlines are deliberately not
66
+ * in here — they live on `repeatStart`/`repeatEnd` because they are two
67
+ * independent flags rather than one choice, and a bar can both end a repeat
68
+ * and end the piece.
69
+ */
70
+ export const BARLINE_STYLES = ["double", "final"];
71
+ /**
72
+ * A jump instruction written at the end of a bar.
73
+ *
74
+ * The six a player actually meets. Each says two things — where to go back to
75
+ * (the start for a *capo*, the sign for a *segno*) and where to stop or leave
76
+ * (the end, `fine`, or the coda) — which is why they are one enum rather than
77
+ * a direction and a target composed separately: only these combinations are
78
+ * written, and the pairs that are not written should not be expressible.
79
+ */
80
+ export const REPEAT_JUMPS = [
81
+ "da-capo",
82
+ "da-capo-al-fine",
83
+ "da-capo-al-coda",
84
+ "dal-segno",
85
+ "dal-segno-al-fine",
86
+ "dal-segno-al-coda",
87
+ ];
88
+ /**
89
+ * A dynamic marking, from softest to loudest.
90
+ *
91
+ * Attached to the note it applies *from*, and in force until the next one on
92
+ * that track — which is how a dynamic is read on paper and how it is played.
93
+ * Stored as the marking rather than as a velocity, because "mf" is what the
94
+ * score says; the velocity a player gives it is derived (`velocityForDynamic`
95
+ * in music_lib) and stays adjustable per note on top.
96
+ */
97
+ /**
98
+ * Softest first, which is the order a picker should offer them in.
99
+ *
100
+ * The array is the declaration and the type is read off it, so a value cannot
101
+ * be added to one without the other. This used to be a union *and* a parallel
102
+ * array kept in step by hand — and a third copy in music_api's decoder, which
103
+ * is how a validator came to disagree with the model it was validating.
104
+ */
13
105
  export const DYNAMICS = [
14
106
  "ppp",
15
107
  "pp",
@@ -20,6 +112,15 @@ export const DYNAMICS = [
20
112
  "ff",
21
113
  "fff",
22
114
  ];
115
+ /**
116
+ * How a sung syllable joins its neighbours.
117
+ *
118
+ * MusicXML's own vocabulary, kept rather than invented: it is what decides
119
+ * whether a hyphen is drawn to the next note. "beau-ti-ful" over three notes
120
+ * is `begin`, `middle`, `end`; a one-syllable word is `single`.
121
+ */
122
+ export const SYLLABICS = ["single", "begin", "middle", "end"];
123
+ export const CLEFS = ["treble", "bass", "alto", "tenor", "percussion"];
23
124
  // ---------------------------------------------------------------------------
24
125
  // 2. Type guards
25
126
  // ---------------------------------------------------------------------------
@@ -31,4 +132,6 @@ export function isNoteEvent(event) {
31
132
  export function isRestEvent(event) {
32
133
  return !("pitch" in event);
33
134
  }
135
+ /** How a note departs from automatic beaming. See `NoteEvent.beam`. */
136
+ export const BEAM_OVERRIDES = ["break", "none"];
34
137
  //# sourceMappingURL=score.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"score.js","sourceRoot":"","sources":["../../src/model/score.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAkK9E,uEAAuE;AACvE,MAAM,CAAC,MAAM,QAAQ,GAAuB;IAC1C,KAAK;IACL,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,KAAK;CACG,CAAC;AAmUX,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,sFAAsF;AACtF,MAAM,UAAU,WAAW,CAAC,KAAmB;IAC7C,OAAO,OAAO,IAAI,KAAK,CAAC;AAC1B,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,WAAW,CAAC,KAAmB;IAC7C,OAAO,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;AAC7B,CAAC"}
1
+ {"version":3,"file":"score.js","sourceRoot":"","sources":["../../src/model/score.ts"],"names":[],"mappings":"AAAA;;;;;;;GAOG;AACH,8EAA8E;AAC9E,uBAAuB;AACvB,8EAA8E;AAM9E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,EAAE,GAAG,CAAU,CAAC;AAGxE,6EAA6E;AAC7E,MAAM,CAAC,MAAM,WAAW,GAAG,CAAC,CAAC,CAAC,EAAE,CAAC,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAU,CAAC;AAmCtD,MAAM,CAAC,MAAM,aAAa,GAAG;IAC3B,UAAU;IACV,QAAQ;IACR,QAAQ;IACR,SAAS;CACD,CAAC;AAGX;;;;;;;;;;;;GAYG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG;IACvB,OAAO;IACP,SAAS;IACT,kBAAkB;IAClB,MAAM;CACE,CAAC;AAGX;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG,CAAC,WAAW,EAAE,YAAY,CAAU,CAAC;AAG7D;;;;;;;;;;GAUG;AACH,MAAM,CAAC,MAAM,OAAO,GAAG,CAAC,KAAK,EAAE,KAAK,EAAE,MAAM,EAAE,MAAM,CAAU,CAAC;AAG/D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,QAAQ,EAAE,OAAO,CAAU,CAAC;AAG3D;;;;;;;;GAQG;AACH,MAAM,CAAC,MAAM,YAAY,GAAG;IAC1B,SAAS;IACT,iBAAiB;IACjB,iBAAiB;IACjB,WAAW;IACX,mBAAmB;IACnB,mBAAmB;CACX,CAAC;AAGX;;;;;;;;GAQG;AACH;;;;;;;GAOG;AACH,MAAM,CAAC,MAAM,QAAQ,GAAG;IACtB,KAAK;IACL,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,IAAI;IACJ,GAAG;IACH,IAAI;IACJ,KAAK;CACG,CAAC;AAGX;;;;;;GAMG;AACH,MAAM,CAAC,MAAM,SAAS,GAAG,CAAC,QAAQ,EAAE,OAAO,EAAE,QAAQ,EAAE,KAAK,CAAU,CAAC;AAkCvE,MAAM,CAAC,MAAM,KAAK,GAAG,CAAC,QAAQ,EAAE,MAAM,EAAE,MAAM,EAAE,OAAO,EAAE,YAAY,CAAU,CAAC;AAkUhF,8EAA8E;AAC9E,iBAAiB;AACjB,8EAA8E;AAE9E,sFAAsF;AACtF,MAAM,UAAU,WAAW,CAAC,KAAmB;IAC7C,OAAO,OAAO,IAAI,KAAK,CAAC;AAC1B,CAAC;AAED,4FAA4F;AAC5F,MAAM,UAAU,WAAW,CAAC,KAAmB;IAC7C,OAAO,CAAC,CAAC,OAAO,IAAI,KAAK,CAAC,CAAC;AAC7B,CAAC;AAaD,uEAAuE;AACvE,MAAM,CAAC,MAAM,cAAc,GAAG,CAAC,OAAO,EAAE,MAAM,CAAU,CAAC"}
@@ -1 +1 @@
1
- {"version":3,"file":"playback.d.ts","sourceRoot":"","sources":["../../src/platform/playback.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAGF;;;;;;GAMG;AACH;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CACzC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAGF,uFAAuF;AACvF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,iEAAiE;AACjE,MAAM,MAAM,cAAc,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAE/D;;;;;;;GAOG;AACH,yEAAyE;AACzE,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC;IACjC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,KAAK,EAAE,eAAe,CAAC;IACvB,mEAAmE;IACnE,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC9C;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC"}
1
+ {"version":3,"file":"playback.d.ts","sourceRoot":"","sources":["../../src/platform/playback.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AACH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,YAAY,CAAC;AAE9C,MAAM,MAAM,sBAAsB,GAAG,SAAS,GAAG,SAAS,GAAG,QAAQ,CAAC;AAEtE;;;;;GAKG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,0EAA0E;IAC1E,MAAM,EAAE,MAAM,CAAC;IACf,kFAAkF;IAClF,OAAO,EAAE,MAAM,CAAC;IAChB,0FAA0F;IAC1F,IAAI,EAAE,MAAM,CAAC;CACd,CAAC;AAEF;;;;;;GAMG;AACH;;;;;;;GAOG;AACH,MAAM,WAAW,eAAe;IAC9B,cAAc,CAAC,IAAI,EAAE,MAAM,GAAG,MAAM,CAAC;IACrC,cAAc,CAAC,OAAO,EAAE,MAAM,GAAG,MAAM,CAAC;CACzC;AAED;;;;;;GAMG;AACH,MAAM,MAAM,aAAa,GAAG,WAAW,GAAG;IACxC,KAAK,EAAE,OAAO,CAAC;IACf,IAAI,EAAE,OAAO,CAAC;CACf,CAAC;AAEF,uFAAuF;AACvF,MAAM,MAAM,YAAY,GAAG;IACzB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,IAAI,EAAE,MAAM,CAAC;IACb,QAAQ,EAAE,MAAM,CAAC;IACjB,OAAO,EAAE,MAAM,CAAC;IAChB,MAAM,EAAE,MAAM,CAAC;CAChB,CAAC;AAEF,iEAAiE;AACjE,MAAM,MAAM,cAAc,GAAG;IAAE,IAAI,EAAE,MAAM,CAAC;IAAC,MAAM,EAAE,OAAO,CAAA;CAAE,CAAC;AAE/D;;;;;;;GAOG;AACH,yEAAyE;AACzE,MAAM,MAAM,eAAe,GAAG;IAC5B,eAAe,EAAE,MAAM,CAAC;IACxB,UAAU,EAAE,MAAM,CAAC;IACnB,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;;;;;;GAWG;AACH,MAAM,MAAM,mBAAmB,GAAG;IAChC,QAAQ,EAAE,SAAS,eAAe,EAAE,CAAC;IACrC,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF;;;;;;;;GAQG;AACH,MAAM,MAAM,YAAY,GAAG;IACzB,MAAM,EAAE,SAAS,aAAa,EAAE,CAAC;IACjC,KAAK,EAAE,SAAS,YAAY,EAAE,CAAC;IAC/B,MAAM,EAAE,SAAS,cAAc,EAAE,CAAC;IAClC,KAAK,EAAE,eAAe,CAAC;IACvB,mEAAmE;IACnE,QAAQ,EAAE,mBAAmB,CAAC;IAC9B,2DAA2D;IAC3D,aAAa,EAAE,MAAM,CAAC;CACvB,CAAC;AAEF,MAAM,MAAM,iBAAiB,GACzB;IAAE,MAAM,EAAE,MAAM,CAAA;CAAE,GAClB;IAAE,MAAM,EAAE,SAAS,CAAC;IAAC,QAAQ,EAAE,MAAM,GAAG,IAAI,CAAA;CAAE,GAC9C;IAAE,MAAM,EAAE,OAAO,CAAA;CAAE,GACnB;IAAE,MAAM,EAAE,QAAQ,CAAC;IAAC,OAAO,EAAE,MAAM,CAAA;CAAE,CAAC"}
@@ -10,7 +10,7 @@
10
10
  * everything following it reads the same number. Two instances would
11
11
  * reintroduce exactly the disagreement it exists to prevent.
12
12
  */
13
- import type { IMusicPosition, IMusicPositionSource } from '../model/position.js';
13
+ import type { IMusicPosition, IMusicPositionSource } from "../model/position.js";
14
14
  /**
15
15
  * Creates the singleton if it does not exist.
16
16
  *
@@ -1,4 +1,4 @@
1
- import { MusicPosition } from './music-position.js';
1
+ import { MusicPosition } from "./music-position.js";
2
2
  let instance = null;
3
3
  /**
4
4
  * Creates the singleton if it does not exist.
@@ -1 +1 @@
1
- {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/services/regeneration/controller.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACf,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AACnE,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAUxB,MAAM,MAAM,0BAA0B,GAAG;IACvC,WAAW,CAAC,EAAE,OAAO,CACnB,IAAI,CACF,uBAAuB,EACvB,sBAAsB,GAAG,wBAAwB,GAAG,qBAAqB,CAC1E,CACF,CAAC;IACF,8FAA8F;IAC9F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/C;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,2BAA2B,GAAG,uBAAuB,GAAG;IAClE,sBAAsB,EAAE,OAAO,CAAC;CACjC,CAAC;AA+HF;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,cAAc,EACzB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,0BAA+B,GACvC,2BAA2B,CAsB7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,UAAU,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,0BAA+B,GACvC,2BAA2B,CAoC7B;AAED;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,qBAAqB,GAC/B,YAAY,CAWd"}
1
+ {"version":3,"file":"controller.d.ts","sourceRoot":"","sources":["../../../src/services/regeneration/controller.ts"],"names":[],"mappings":"AAQA,OAAO,KAAK,EAAE,KAAK,EAAE,MAAM,gBAAgB,CAAC;AAE5C,OAAO,KAAK,EACV,UAAU,EACV,cAAc,EACf,MAAM,iCAAiC,CAAC;AAGzC,OAAO,KAAK,EAAE,YAAY,EAAE,MAAM,gCAAgC,CAAC;AAEnE,OAAO,KAAK,EACV,uBAAuB,EACvB,qBAAqB,EACrB,uBAAuB,EACxB,MAAM,gBAAgB,CAAC;AAUxB,MAAM,MAAM,0BAA0B,GAAG;IACvC,WAAW,CAAC,EAAE,OAAO,CACnB,IAAI,CACF,uBAAuB,EACvB,sBAAsB,GAAG,wBAAwB,GAAG,qBAAqB,CAC1E,CACF,CAAC;IACF,8FAA8F;IAC9F,KAAK,CAAC,EAAE,MAAM,CAAC;IACf,IAAI,CAAC,EAAE,MAAM,CAAC;IACd,UAAU,CAAC,EAAE,QAAQ,GAAG,UAAU,GAAG,SAAS,CAAC;IAC/C;;;;OAIG;IACH,cAAc,CAAC,EAAE,OAAO,CAAC;CAC1B,CAAC;AAEF;;;;;;;GAOG;AACH,MAAM,MAAM,2BAA2B,GAAG,uBAAuB,GAAG;IAClE,sBAAsB,EAAE,OAAO,CAAC;CACjC,CAAC;AA+HF;;;;;;;;GAQG;AACH,wBAAgB,0BAA0B,CACxC,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,cAAc,EACzB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,0BAA+B,GACvC,2BAA2B,CAsB7B;AAED;;;;;;;;;;GAUG;AACH,wBAAgB,kCAAkC,CAChD,KAAK,EAAE,KAAK,EACZ,KAAK,EAAE,UAAU,EACjB,WAAW,EAAE,MAAM,EACnB,OAAO,GAAE,0BAA+B,GACvC,2BAA2B,CAgD7B;AAyBD;;;;;;;GAOG;AACH,wBAAgB,cAAc,CAC5B,KAAK,EAAE,KAAK,EACZ,SAAS,EAAE,qBAAqB,GAC/B,YAAY,CAWd"}
@@ -9,6 +9,7 @@ import { findTrack } from "../../domain/score/queries.js";
9
9
  import { selectionToRange } from "../../domain/selection/selection.js";
10
10
  import { extractFragment } from "../../domain/score/fragment.js";
11
11
  import { replaceRegionCommand } from "../../domain/commands/region-commands.js";
12
+ import { describeTrackForGeneration } from "../../domain/instruments/track-instrument.js";
12
13
  /**
13
14
  * One, always. Generation is a background job now: nobody is present to pick
14
15
  * between alternatives when it lands, so a result that needed choosing would
@@ -177,12 +178,44 @@ export function prepareRegenerationRequestForRange(score, range, instruction, op
177
178
  followingContext,
178
179
  constraints,
179
180
  candidateCount: CANDIDATE_COUNT,
181
+ // Who is playing each track of the fragment, in the fragment's own order.
182
+ // A fragment is measures and nothing else, so without this the model has
183
+ // to guess the instrument from the notes — and on a drum track there is
184
+ // nothing to guess from.
185
+ tracks: selectedFragment.tracks.flatMap((entry) => {
186
+ const track = findTrack(score, entry.trackId);
187
+ return track ? [describeTrackForGeneration(track)] : [];
188
+ }),
189
+ // What the new part has to fit: every other track over the same bars.
190
+ // Without it "write something that works with the piano" is an
191
+ // instruction the model has no way to follow.
192
+ ...accompanimentFor(score, range),
180
193
  ...(options.style ? { style: options.style } : {}),
181
194
  ...(options.mood ? { mood: options.mood } : {}),
182
195
  ...(options.complexity ? { complexity: options.complexity } : {}),
183
196
  expandedToFullMeasures: false,
184
197
  };
185
198
  }
199
+ /**
200
+ * The tracks not being rewritten, over the same span, with who plays them.
201
+ *
202
+ * Omitted entirely when the region covers every track — there is nothing left
203
+ * to listen to, and an empty accompaniment would cost prompt bytes to say so.
204
+ */
205
+ function accompanimentFor(score, range) {
206
+ const others = score.tracks.filter((t) => !range.trackIds.includes(t.id));
207
+ if (others.length === 0)
208
+ return {};
209
+ return {
210
+ accompaniment: {
211
+ tracks: others.map(describeTrackForGeneration),
212
+ fragment: extractFragment(score, {
213
+ ...range,
214
+ trackIds: others.map((t) => t.id),
215
+ }),
216
+ },
217
+ };
218
+ }
186
219
  /**
187
220
  * Turns an accepted regeneration `candidate` into the single undoable
188
221
  * `ScoreCommand` that replaces the region with the candidate's fragment
@@ -1 +1 @@
1
- {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/services/regeneration/controller.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"controller.js","sourceRoot":"","sources":["../../../src/services/regeneration/controller.ts"],"names":[],"mappings":"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"}
@@ -1,3 +1,15 @@
1
+ /**
2
+ * The score fixtures every package in the family builds its tests on.
3
+ *
4
+ * Published as `@sudobility/music_types/test` rather than copied. It WAS
5
+ * copied — five byte-identical files differing only in quote style — which
6
+ * meant a fixture corrected in one repo left four suites still asserting
7
+ * against the old shape, and "the tests pass" stopped meaning the same thing
8
+ * in each. The fixtures describe the model, and the model lives here.
9
+ *
10
+ * A package with a rendering fixture of its own (music_drawing's render
11
+ * theme) imports these and adds to them; it does not restate them.
12
+ */
1
13
  /**
2
14
  * Score fixtures for the codec suites.
3
15
  *
@@ -12,7 +24,21 @@
12
24
  * every call with the same arguments produces a structurally identical
13
25
  * `Score`.
14
26
  */
15
- import type { Score } from "../index.js";
27
+ import type { KeySignature, Pitch, PitchStep, Score, TimeSignature } from "../index.js";
28
+ export declare const FIXED_TIMESTAMP = "2024-01-01T00:00:00.000Z";
29
+ /** A per-call, per-prefix incrementing id generator (deterministic, cheap). */
30
+ export declare function makeIdFactory(): {
31
+ next(prefix: string): string;
32
+ };
33
+ /**
34
+ * Named for what a reading test is about — "C major, four four" says more at
35
+ * an assertion than "the default key" does. They ARE the defaults, and are
36
+ * aliased rather than retyped so a fixture cannot describe a score the
37
+ * factory would not build.
38
+ */
39
+ export declare const C_MAJOR: KeySignature;
40
+ export declare const FOUR_FOUR: TimeSignature;
41
+ export declare function naturalPitch(step: PitchStep, octave: number): Pitch;
16
42
  /** An 8-measure C-major "Twinkle Twinkle Little Star" melody on a single piano track. */
17
43
  export declare function twinkleScore(): Score;
18
44
  /** A 4-measure two-track score: a treble melody and a supporting bass line. */
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH;;;;;;GAMG;AACH,OAAO,KAAK,EAMV,KAAK,EAGN,MAAM,aAAa,CAAC;AAsGrB,yFAAyF;AACzF,wBAAgB,YAAY,IAAI,KAAK,CA0DpC;AAED,+EAA+E;AAC/E,wBAAgB,aAAa,IAAI,KAAK,CAkFrC;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,KAAK,CAiDvC;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,KAAK,CAgF1C;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,IAAI,KAAK,CAsClC;AAID;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,KAAK,CA+D3E"}
1
+ {"version":3,"file":"fixtures.d.ts","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AACH;;;;;;GAMG;AAEH;;;;;;GAMG;AACH,OAAO,KAAK,EACV,YAAY,EAGZ,KAAK,EACL,SAAS,EACT,KAAK,EACL,aAAa,EAEd,MAAM,aAAa,CAAC;AASrB,eAAO,MAAM,eAAe,6BAA6B,CAAC;AAE1D,+EAA+E;AAC/E,wBAAgB,aAAa;iBAGZ,MAAM,GAAG,MAAM;EAM/B;AA+ED;;;;;GAKG;AACH,eAAO,MAAM,OAAO,EAAE,YAAoC,CAAC;AAC3D,eAAO,MAAM,SAAS,EAAE,aAAsC,CAAC;AAE/D,wBAAgB,YAAY,CAAC,IAAI,EAAE,SAAS,EAAE,MAAM,EAAE,MAAM,GAAG,KAAK,CAEnE;AAED,yFAAyF;AACzF,wBAAgB,YAAY,IAAI,KAAK,CA0DpC;AAED,+EAA+E;AAC/E,wBAAgB,aAAa,IAAI,KAAK,CAkFrC;AAED;;;;;;;GAOG;AACH,wBAAgB,eAAe,IAAI,KAAK,CAiDvC;AAED;;;;;;GAMG;AACH,wBAAgB,kBAAkB,IAAI,KAAK,CAgF1C;AAED,4EAA4E;AAC5E,wBAAgB,UAAU,IAAI,KAAK,CAsClC;AAID;;;;GAIG;AACH,wBAAgB,WAAW,CAAC,UAAU,EAAE,MAAM,EAAE,YAAY,EAAE,MAAM,GAAG,KAAK,CA+D3E"}
@@ -1,3 +1,15 @@
1
+ /**
2
+ * The score fixtures every package in the family builds its tests on.
3
+ *
4
+ * Published as `@sudobility/music_types/test` rather than copied. It WAS
5
+ * copied — five byte-identical files differing only in quote style — which
6
+ * meant a fixture corrected in one repo left four suites still asserting
7
+ * against the old shape, and "the tests pass" stopped meaning the same thing
8
+ * in each. The fixtures describe the model, and the model lives here.
9
+ *
10
+ * A package with a rendering fixture of its own (music_drawing's render
11
+ * theme) imports these and adds to them; it does not restate them.
12
+ */
1
13
  /**
2
14
  * Score fixtures for the codec suites.
3
15
  *
@@ -6,9 +18,10 @@
6
18
  * package renders anything.
7
19
  */
8
20
  import { measureDurationTicks, ticksFor } from "../index.js";
9
- const FIXED_TIMESTAMP = "2024-01-01T00:00:00.000Z";
21
+ import { DEFAULT_KEY_SIGNATURE, DEFAULT_TIME_SIGNATURE, PITCH_STEPS, } from "../index.js";
22
+ export const FIXED_TIMESTAMP = "2024-01-01T00:00:00.000Z";
10
23
  /** A per-call, per-prefix incrementing id generator (deterministic, cheap). */
11
- function makeIdFactory() {
24
+ export function makeIdFactory() {
12
25
  const counters = new Map();
13
26
  return {
14
27
  next(prefix) {
@@ -76,9 +89,15 @@ function buildChordMeasures(chordsByMeasure, ppq, timeSignature, keySignature, t
76
89
  };
77
90
  });
78
91
  }
79
- const C_MAJOR = { fifths: 0, mode: "major" };
80
- const FOUR_FOUR = { numerator: 4, denominator: 4 };
81
- function naturalPitch(step, octave) {
92
+ /**
93
+ * Named for what a reading test is about — "C major, four four" says more at
94
+ * an assertion than "the default key" does. They ARE the defaults, and are
95
+ * aliased rather than retyped so a fixture cannot describe a score the
96
+ * factory would not build.
97
+ */
98
+ export const C_MAJOR = DEFAULT_KEY_SIGNATURE;
99
+ export const FOUR_FOUR = DEFAULT_TIME_SIGNATURE;
100
+ export function naturalPitch(step, octave) {
82
101
  return { step, accidental: 0, octave };
83
102
  }
84
103
  /** An 8-measure C-major "Twinkle Twinkle Little Star" melody on a single piano track. */
@@ -349,7 +368,7 @@ export function chordScore() {
349
368
  tracks: [track],
350
369
  };
351
370
  }
352
- const STRESS_SCALE = ["C", "D", "E", "F", "G", "A", "B"];
371
+ const STRESS_SCALE = PITCH_STEPS;
353
372
  /**
354
373
  * Generates a score with `trackCount` tracks of `measureCount` measures
355
374
  * each (4 quarter notes per measure, cycling through a C-major scale), for
@@ -1 +1 @@
1
- {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"fixtures.js","sourceRoot":"","sources":["../../src/test/fixtures.ts"],"names":[],"mappings":"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"}
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@sudobility/music_types",
3
- "version": "0.13.3",
3
+ "version": "0.13.5",
4
4
  "description": "TypeScript types and Zod schemas for the ScoreSmith music API - scores, generation contracts, project payloads",
5
5
  "type": "module",
6
6
  "main": "./dist/index.js",
@@ -10,6 +10,11 @@
10
10
  "types": "./dist/index.d.ts",
11
11
  "import": "./dist/index.js",
12
12
  "default": "./dist/index.js"
13
+ },
14
+ "./test": {
15
+ "types": "./dist/test/fixtures.d.ts",
16
+ "import": "./dist/test/fixtures.js",
17
+ "default": "./dist/test/fixtures.js"
13
18
  }
14
19
  },
15
20
  "scripts": {