musicxml-io 0.3.7 → 0.3.9

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.
@@ -1803,6 +1803,7 @@ function addPart(score, options) {
1803
1803
  const measure = { _id: generateId(), number: measureNumber, entries: [] };
1804
1804
  if (i === 0) {
1805
1805
  measure.attributes = {
1806
+ _id: generateId(),
1806
1807
  divisions: _nullishCoalesce(options.divisions, () => ( 4)),
1807
1808
  time: _nullishCoalesce(options.time, () => ( { beats: "4", beatType: 4 })),
1808
1809
  key: _nullishCoalesce(options.key, () => ( { fifths: 0 })),
@@ -1878,7 +1879,7 @@ function setStaves(score, options) {
1878
1879
  return failure([operationError("MEASURE_NOT_FOUND", `Measure index ${fromMeasureIndex} out of bounds`, { partIndex: options.partIndex, measureIndex: fromMeasureIndex })]);
1879
1880
  }
1880
1881
  if (!measure.attributes) {
1881
- measure.attributes = {};
1882
+ measure.attributes = { _id: generateId() };
1882
1883
  }
1883
1884
  measure.attributes.staves = options.staves;
1884
1885
  if (options.clefs) {
@@ -1934,7 +1935,7 @@ function changeKey(score, key, options) {
1934
1935
  for (const part of result.parts) {
1935
1936
  for (const measure of part.measures) {
1936
1937
  if (measure.number === targetMeasure) {
1937
- if (!measure.attributes) measure.attributes = {};
1938
+ if (!measure.attributes) measure.attributes = { _id: generateId() };
1938
1939
  measure.attributes.key = key;
1939
1940
  }
1940
1941
  }
@@ -1947,7 +1948,7 @@ function changeTime(score, time, options) {
1947
1948
  for (const part of result.parts) {
1948
1949
  for (const measure of part.measures) {
1949
1950
  if (measure.number === targetMeasure) {
1950
- if (!measure.attributes) measure.attributes = {};
1951
+ if (!measure.attributes) measure.attributes = { _id: generateId() };
1951
1952
  measure.attributes.time = time;
1952
1953
  }
1953
1954
  }
@@ -1964,7 +1965,7 @@ function insertMeasure(score, options) {
1964
1965
  const newMeasureNumber = String(isNaN(numericPart) ? insertIndex + 2 : numericPart + 1);
1965
1966
  const newMeasure = { _id: generateId(), number: newMeasureNumber, entries: [] };
1966
1967
  if (options.copyAttributes && part.measures[insertIndex].attributes) {
1967
- newMeasure.attributes = { ...part.measures[insertIndex].attributes };
1968
+ newMeasure.attributes = { ...part.measures[insertIndex].attributes, _id: generateId() };
1968
1969
  }
1969
1970
  part.measures.splice(insertIndex + 1, 0, newMeasure);
1970
1971
  for (let i = insertIndex + 2; i < part.measures.length; i++) {
@@ -2339,7 +2340,7 @@ function insertClefChange(score, options) {
2339
2340
  const measure = result.parts[options.partIndex].measures[options.measureIndex];
2340
2341
  if (options.position === 0) {
2341
2342
  if (!measure.attributes) {
2342
- measure.attributes = {};
2343
+ measure.attributes = { _id: generateId() };
2343
2344
  }
2344
2345
  const staff = _nullishCoalesce(options.clef.staff, () => ( 1));
2345
2346
  if (!measure.attributes.clef) {
@@ -1803,6 +1803,7 @@ function addPart(score, options) {
1803
1803
  const measure = { _id: generateId(), number: measureNumber, entries: [] };
1804
1804
  if (i === 0) {
1805
1805
  measure.attributes = {
1806
+ _id: generateId(),
1806
1807
  divisions: options.divisions ?? 4,
1807
1808
  time: options.time ?? { beats: "4", beatType: 4 },
1808
1809
  key: options.key ?? { fifths: 0 },
@@ -1878,7 +1879,7 @@ function setStaves(score, options) {
1878
1879
  return failure([operationError("MEASURE_NOT_FOUND", `Measure index ${fromMeasureIndex} out of bounds`, { partIndex: options.partIndex, measureIndex: fromMeasureIndex })]);
1879
1880
  }
1880
1881
  if (!measure.attributes) {
1881
- measure.attributes = {};
1882
+ measure.attributes = { _id: generateId() };
1882
1883
  }
1883
1884
  measure.attributes.staves = options.staves;
1884
1885
  if (options.clefs) {
@@ -1934,7 +1935,7 @@ function changeKey(score, key, options) {
1934
1935
  for (const part of result.parts) {
1935
1936
  for (const measure of part.measures) {
1936
1937
  if (measure.number === targetMeasure) {
1937
- if (!measure.attributes) measure.attributes = {};
1938
+ if (!measure.attributes) measure.attributes = { _id: generateId() };
1938
1939
  measure.attributes.key = key;
1939
1940
  }
1940
1941
  }
@@ -1947,7 +1948,7 @@ function changeTime(score, time, options) {
1947
1948
  for (const part of result.parts) {
1948
1949
  for (const measure of part.measures) {
1949
1950
  if (measure.number === targetMeasure) {
1950
- if (!measure.attributes) measure.attributes = {};
1951
+ if (!measure.attributes) measure.attributes = { _id: generateId() };
1951
1952
  measure.attributes.time = time;
1952
1953
  }
1953
1954
  }
@@ -1964,7 +1965,7 @@ function insertMeasure(score, options) {
1964
1965
  const newMeasureNumber = String(isNaN(numericPart) ? insertIndex + 2 : numericPart + 1);
1965
1966
  const newMeasure = { _id: generateId(), number: newMeasureNumber, entries: [] };
1966
1967
  if (options.copyAttributes && part.measures[insertIndex].attributes) {
1967
- newMeasure.attributes = { ...part.measures[insertIndex].attributes };
1968
+ newMeasure.attributes = { ...part.measures[insertIndex].attributes, _id: generateId() };
1968
1969
  }
1969
1970
  part.measures.splice(insertIndex + 1, 0, newMeasure);
1970
1971
  for (let i = insertIndex + 2; i < part.measures.length; i++) {
@@ -2339,7 +2340,7 @@ function insertClefChange(score, options) {
2339
2340
  const measure = result.parts[options.partIndex].measures[options.measureIndex];
2340
2341
  if (options.position === 0) {
2341
2342
  if (!measure.attributes) {
2342
- measure.attributes = {};
2343
+ measure.attributes = { _id: generateId() };
2343
2344
  }
2344
2345
  const staff = options.clef.staff ?? 1;
2345
2346
  if (!measure.attributes.clef) {
@@ -1,4 +1,4 @@
1
- import { S as Score, M as Measure, n as TimeSignature, f as Part, P as Pitch, N as NoteEntry, K as KeySignature, C as Clef, ac as ArticulationType, m as DynamicsValue, ad as OrnamentType, i as NoteType } from './types-CgndcKdd.mjs';
1
+ import { S as Score, M as Measure, n as TimeSignature, f as Part, P as Pitch, N as NoteEntry, K as KeySignature, C as Clef, ac as ArticulationType, m as DynamicsValue, ad as OrnamentType, i as NoteType } from './types-CkeI8vw6.mjs';
2
2
 
3
3
  type ValidationErrorCode = 'MISSING_DIVISIONS' | 'INVALID_DIVISIONS' | 'MEASURE_DURATION_MISMATCH' | 'MEASURE_DURATION_OVERFLOW' | 'MEASURE_DURATION_UNDERFLOW' | 'VOICE_INCOMPLETE' | 'VOICE_GAP' | 'NEGATIVE_POSITION' | 'BACKUP_EXCEEDS_POSITION' | 'TIE_START_WITHOUT_STOP' | 'TIE_STOP_WITHOUT_START' | 'TIE_PITCH_MISMATCH' | 'BEAM_BEGIN_WITHOUT_END' | 'BEAM_END_WITHOUT_BEGIN' | 'SLUR_START_WITHOUT_STOP' | 'SLUR_STOP_WITHOUT_START' | 'TUPLET_START_WITHOUT_STOP' | 'TUPLET_STOP_WITHOUT_START' | 'PART_ID_NOT_IN_PART_LIST' | 'PART_LIST_ID_NOT_IN_PARTS' | 'PART_MEASURE_COUNT_MISMATCH' | 'PART_MEASURE_NUMBER_MISMATCH' | 'PART_GROUP_START_WITHOUT_STOP' | 'PART_GROUP_STOP_WITHOUT_START' | 'DUPLICATE_PART_ID' | 'INVALID_VOICE_NUMBER' | 'INVALID_STAFF_NUMBER' | 'STAFF_EXCEEDS_STAVES' | 'MISSING_STAVES_DECLARATION' | 'STAVES_DECLARATION_MISMATCH' | 'MISSING_CLEF_FOR_STAFF' | 'CLEF_STAFF_EXCEEDS_STAVES' | 'INVALID_DURATION' | 'EMPTY_MEASURE';
4
4
  type ValidationLevel = 'error' | 'warning' | 'info';
@@ -1,4 +1,4 @@
1
- import { S as Score, M as Measure, n as TimeSignature, f as Part, P as Pitch, N as NoteEntry, K as KeySignature, C as Clef, ac as ArticulationType, m as DynamicsValue, ad as OrnamentType, i as NoteType } from './types-CgndcKdd.js';
1
+ import { S as Score, M as Measure, n as TimeSignature, f as Part, P as Pitch, N as NoteEntry, K as KeySignature, C as Clef, ac as ArticulationType, m as DynamicsValue, ad as OrnamentType, i as NoteType } from './types-CkeI8vw6.js';
2
2
 
3
3
  type ValidationErrorCode = 'MISSING_DIVISIONS' | 'INVALID_DIVISIONS' | 'MEASURE_DURATION_MISMATCH' | 'MEASURE_DURATION_OVERFLOW' | 'MEASURE_DURATION_UNDERFLOW' | 'VOICE_INCOMPLETE' | 'VOICE_GAP' | 'NEGATIVE_POSITION' | 'BACKUP_EXCEEDS_POSITION' | 'TIE_START_WITHOUT_STOP' | 'TIE_STOP_WITHOUT_START' | 'TIE_PITCH_MISMATCH' | 'BEAM_BEGIN_WITHOUT_END' | 'BEAM_END_WITHOUT_BEGIN' | 'SLUR_START_WITHOUT_STOP' | 'SLUR_STOP_WITHOUT_START' | 'TUPLET_START_WITHOUT_STOP' | 'TUPLET_STOP_WITHOUT_START' | 'PART_ID_NOT_IN_PART_LIST' | 'PART_LIST_ID_NOT_IN_PARTS' | 'PART_MEASURE_COUNT_MISMATCH' | 'PART_MEASURE_NUMBER_MISMATCH' | 'PART_GROUP_START_WITHOUT_STOP' | 'PART_GROUP_STOP_WITHOUT_START' | 'DUPLICATE_PART_ID' | 'INVALID_VOICE_NUMBER' | 'INVALID_STAFF_NUMBER' | 'STAFF_EXCEEDS_STAVES' | 'MISSING_STAVES_DECLARATION' | 'STAVES_DECLARATION_MISMATCH' | 'MISSING_CLEF_FOR_STAFF' | 'CLEF_STAFF_EXCEEDS_STAVES' | 'INVALID_DURATION' | 'EMPTY_MEASURE';
4
4
  type ValidationLevel = 'error' | 'warning' | 'info';
package/dist/index.d.mts CHANGED
@@ -1,7 +1,7 @@
1
- import { S as Score, P as Pitch, M as Measure, D as DirectionType, a as DirectionEntry, N as NoteEntry, b as PartListEntry, c as PartInfo } from './types-CgndcKdd.mjs';
2
- export { A as Accidental, j as AccidentalInfo, O as AdjacentNotes, a4 as AssembledLyrics, B as BackupEntry, p as Barline, a5 as BarlineWithContext, a0 as BeamGroup, k as BeamInfo, s as Chord, C as Clef, aa as ClefChangeInfo, w as Credit, v as Defaults, Q as DirectionKind, z as DirectionWithContext, R as DynamicWithContext, m as DynamicsValue, a7 as EndingInfo, E as EntryWithContext, F as ForwardEntry, a2 as HarmonyWithContext, a8 as KeyChangeInfo, K as KeySignature, L as Lyric, a3 as LyricWithContext, g as MeasureAttributes, h as MeasureEntry, l as Notation, a1 as NotationType, t as NoteIteratorItem, i as NoteType, y as NoteWithContext, r as NoteWithPosition, Y as OctaveShiftWithContext, f as Part, e as PartGroup, W as PedalWithContext, H as PositionQueryOptions, u as Print, a6 as RepeatInfo, d as ScoreMetadata, _ as SlurSpan, q as StaffGroup, G as StaffRange, ab as StructuralChanges, U as TempoWithContext, T as TieInfo, Z as TiedNoteGroup, a9 as TimeChangeInfo, n as TimeSignature, o as Transpose, $ as TupletGroup, I as VerticalSlice, V as VoiceGroup, J as VoiceLine, x as VoiceToStaffMap, X as WedgeWithContext } from './types-CgndcKdd.mjs';
3
- import { V as ValidateOptions, a as ValidationResult } from './index-BhQcAxLm.mjs';
4
- export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, cM as LocalValidateOptions, b0 as LowerAccidentalOptions, cL as MeasureValidationContext, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, cJ as ValidationErrorCode, cD as ValidationException, cK as ValidationLevel, cI as ValidationLocation, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, cG as assertMeasureValid, co as assertValid, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, cC as formatLocation, cF as getMeasureContext, P as insertClefChange, E as insertMeasure, i as insertNote, cn as isValid, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric, cm as validate, cr as validateBackupForward, ct as validateBeams, cp as validateDivisions, cq as validateMeasureDuration, cE as validateMeasureLocal, cw as validatePartReferences, cx as validatePartStructure, cu as validateSlurs, cB as validateSlursAcrossMeasures, cy as validateStaffStructure, cs as validateTies, cA as validateTiesAcrossMeasures, cv as validateTuplets, cz as validateVoiceStaff } from './index-BhQcAxLm.mjs';
1
+ import { S as Score, P as Pitch, M as Measure, D as DirectionType, a as DirectionEntry, N as NoteEntry, b as PartListEntry, c as PartInfo } from './types-CkeI8vw6.mjs';
2
+ export { A as Accidental, j as AccidentalInfo, O as AdjacentNotes, a4 as AssembledLyrics, B as BackupEntry, p as Barline, a5 as BarlineWithContext, a0 as BeamGroup, k as BeamInfo, s as Chord, C as Clef, aa as ClefChangeInfo, w as Credit, v as Defaults, Q as DirectionKind, z as DirectionWithContext, R as DynamicWithContext, m as DynamicsValue, a7 as EndingInfo, E as EntryWithContext, F as ForwardEntry, a2 as HarmonyWithContext, a8 as KeyChangeInfo, K as KeySignature, L as Lyric, a3 as LyricWithContext, g as MeasureAttributes, h as MeasureEntry, l as Notation, a1 as NotationType, t as NoteIteratorItem, i as NoteType, y as NoteWithContext, r as NoteWithPosition, Y as OctaveShiftWithContext, f as Part, e as PartGroup, W as PedalWithContext, H as PositionQueryOptions, u as Print, a6 as RepeatInfo, d as ScoreMetadata, _ as SlurSpan, q as StaffGroup, G as StaffRange, ab as StructuralChanges, U as TempoWithContext, T as TieInfo, Z as TiedNoteGroup, a9 as TimeChangeInfo, n as TimeSignature, o as Transpose, $ as TupletGroup, I as VerticalSlice, V as VoiceGroup, J as VoiceLine, x as VoiceToStaffMap, X as WedgeWithContext } from './types-CkeI8vw6.mjs';
3
+ import { V as ValidateOptions, a as ValidationResult } from './index-CqTQv7KL.mjs';
4
+ export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, cM as LocalValidateOptions, b0 as LowerAccidentalOptions, cL as MeasureValidationContext, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, cJ as ValidationErrorCode, cD as ValidationException, cK as ValidationLevel, cI as ValidationLocation, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, cG as assertMeasureValid, co as assertValid, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, cC as formatLocation, cF as getMeasureContext, P as insertClefChange, E as insertMeasure, i as insertNote, cn as isValid, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric, cm as validate, cr as validateBackupForward, ct as validateBeams, cp as validateDivisions, cq as validateMeasureDuration, cE as validateMeasureLocal, cw as validatePartReferences, cx as validatePartStructure, cu as validateSlurs, cB as validateSlursAcrossMeasures, cy as validateStaffStructure, cs as validateTies, cA as validateTiesAcrossMeasures, cv as validateTuplets, cz as validateVoiceStaff } from './index-CqTQv7KL.mjs';
5
5
  export { FindNotesFilter, NormalizedPositionOptions, PitchRange, RoundtripMetrics, VoiceFilter, buildVoiceToStaffMap, buildVoiceToStaffMapForPart, countNotes, findBarlines, findDirectionsByType, findNotes, findNotesWithNotation, getAbsolutePosition, getAdjacentNotes, getAllNotes, getAttributesAtMeasure, getBeamGroups, getChordProgression, getChords, getClefChanges, getClefForStaff, getDirections, getDirectionsAtPosition, getDivisions, getDuration, getDynamics, getEffectiveStaff, getEndings, getEntriesAtPosition, getEntriesForStaff, getEntriesInRange, getHarmonies, getHarmonyAtPosition, getKeyChanges, getLyricText, getLyrics, getMeasure, getMeasureByIndex, getMeasureCount, getNextNote, getNormalizedDuration, getNormalizedPosition, getNotesAtPosition, getNotesForStaff, getNotesForVoice, getNotesInRange, getOctaveShifts, getPartById, getPartByIndex, getPartCount, getPartIds, getPartIndex, getPedalMarkings, getPrevNote, getRepeatStructure, getSlurSpans, getStaffRange, getStaveCount, getStaves, getStructuralChanges, getTempoMarkings, getTiedNoteGroups, getTimeChanges, getTupletGroups, getVerseCount, getVerticalSlice, getVoiceLine, getVoiceLineInRange, getVoices, getVoicesForStaff, getWedges, groupByStaff, groupByVoice, hasMultipleStaves, hasNotes, inferStaff, isRestMeasure, iterateEntries, iterateNotes, measureRoundtrip, scoresEqual, withAbsolutePositions } from './query/index.mjs';
6
6
 
7
7
  declare function parse(xmlString: string): Score;
package/dist/index.d.ts CHANGED
@@ -1,7 +1,7 @@
1
- import { S as Score, P as Pitch, M as Measure, D as DirectionType, a as DirectionEntry, N as NoteEntry, b as PartListEntry, c as PartInfo } from './types-CgndcKdd.js';
2
- export { A as Accidental, j as AccidentalInfo, O as AdjacentNotes, a4 as AssembledLyrics, B as BackupEntry, p as Barline, a5 as BarlineWithContext, a0 as BeamGroup, k as BeamInfo, s as Chord, C as Clef, aa as ClefChangeInfo, w as Credit, v as Defaults, Q as DirectionKind, z as DirectionWithContext, R as DynamicWithContext, m as DynamicsValue, a7 as EndingInfo, E as EntryWithContext, F as ForwardEntry, a2 as HarmonyWithContext, a8 as KeyChangeInfo, K as KeySignature, L as Lyric, a3 as LyricWithContext, g as MeasureAttributes, h as MeasureEntry, l as Notation, a1 as NotationType, t as NoteIteratorItem, i as NoteType, y as NoteWithContext, r as NoteWithPosition, Y as OctaveShiftWithContext, f as Part, e as PartGroup, W as PedalWithContext, H as PositionQueryOptions, u as Print, a6 as RepeatInfo, d as ScoreMetadata, _ as SlurSpan, q as StaffGroup, G as StaffRange, ab as StructuralChanges, U as TempoWithContext, T as TieInfo, Z as TiedNoteGroup, a9 as TimeChangeInfo, n as TimeSignature, o as Transpose, $ as TupletGroup, I as VerticalSlice, V as VoiceGroup, J as VoiceLine, x as VoiceToStaffMap, X as WedgeWithContext } from './types-CgndcKdd.js';
3
- import { V as ValidateOptions, a as ValidationResult } from './index-DUXUhmaM.js';
4
- export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, cM as LocalValidateOptions, b0 as LowerAccidentalOptions, cL as MeasureValidationContext, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, cJ as ValidationErrorCode, cD as ValidationException, cK as ValidationLevel, cI as ValidationLocation, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, cG as assertMeasureValid, co as assertValid, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, cC as formatLocation, cF as getMeasureContext, P as insertClefChange, E as insertMeasure, i as insertNote, cn as isValid, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric, cm as validate, cr as validateBackupForward, ct as validateBeams, cp as validateDivisions, cq as validateMeasureDuration, cE as validateMeasureLocal, cw as validatePartReferences, cx as validatePartStructure, cu as validateSlurs, cB as validateSlursAcrossMeasures, cy as validateStaffStructure, cs as validateTies, cA as validateTiesAcrossMeasures, cv as validateTuplets, cz as validateVoiceStaff } from './index-DUXUhmaM.js';
1
+ import { S as Score, P as Pitch, M as Measure, D as DirectionType, a as DirectionEntry, N as NoteEntry, b as PartListEntry, c as PartInfo } from './types-CkeI8vw6.js';
2
+ export { A as Accidental, j as AccidentalInfo, O as AdjacentNotes, a4 as AssembledLyrics, B as BackupEntry, p as Barline, a5 as BarlineWithContext, a0 as BeamGroup, k as BeamInfo, s as Chord, C as Clef, aa as ClefChangeInfo, w as Credit, v as Defaults, Q as DirectionKind, z as DirectionWithContext, R as DynamicWithContext, m as DynamicsValue, a7 as EndingInfo, E as EntryWithContext, F as ForwardEntry, a2 as HarmonyWithContext, a8 as KeyChangeInfo, K as KeySignature, L as Lyric, a3 as LyricWithContext, g as MeasureAttributes, h as MeasureEntry, l as Notation, a1 as NotationType, t as NoteIteratorItem, i as NoteType, y as NoteWithContext, r as NoteWithPosition, Y as OctaveShiftWithContext, f as Part, e as PartGroup, W as PedalWithContext, H as PositionQueryOptions, u as Print, a6 as RepeatInfo, d as ScoreMetadata, _ as SlurSpan, q as StaffGroup, G as StaffRange, ab as StructuralChanges, U as TempoWithContext, T as TieInfo, Z as TiedNoteGroup, a9 as TimeChangeInfo, n as TimeSignature, o as Transpose, $ as TupletGroup, I as VerticalSlice, V as VoiceGroup, J as VoiceLine, x as VoiceToStaffMap, X as WedgeWithContext } from './types-CkeI8vw6.js';
3
+ import { V as ValidateOptions, a as ValidationResult } from './index-DyqMLT-2.js';
4
+ export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, cM as LocalValidateOptions, b0 as LowerAccidentalOptions, cL as MeasureValidationContext, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, cJ as ValidationErrorCode, cD as ValidationException, cK as ValidationLevel, cI as ValidationLocation, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, cG as assertMeasureValid, co as assertValid, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, cC as formatLocation, cF as getMeasureContext, P as insertClefChange, E as insertMeasure, i as insertNote, cn as isValid, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric, cm as validate, cr as validateBackupForward, ct as validateBeams, cp as validateDivisions, cq as validateMeasureDuration, cE as validateMeasureLocal, cw as validatePartReferences, cx as validatePartStructure, cu as validateSlurs, cB as validateSlursAcrossMeasures, cy as validateStaffStructure, cs as validateTies, cA as validateTiesAcrossMeasures, cv as validateTuplets, cz as validateVoiceStaff } from './index-DyqMLT-2.js';
5
5
  export { FindNotesFilter, NormalizedPositionOptions, PitchRange, RoundtripMetrics, VoiceFilter, buildVoiceToStaffMap, buildVoiceToStaffMapForPart, countNotes, findBarlines, findDirectionsByType, findNotes, findNotesWithNotation, getAbsolutePosition, getAdjacentNotes, getAllNotes, getAttributesAtMeasure, getBeamGroups, getChordProgression, getChords, getClefChanges, getClefForStaff, getDirections, getDirectionsAtPosition, getDivisions, getDuration, getDynamics, getEffectiveStaff, getEndings, getEntriesAtPosition, getEntriesForStaff, getEntriesInRange, getHarmonies, getHarmonyAtPosition, getKeyChanges, getLyricText, getLyrics, getMeasure, getMeasureByIndex, getMeasureCount, getNextNote, getNormalizedDuration, getNormalizedPosition, getNotesAtPosition, getNotesForStaff, getNotesForVoice, getNotesInRange, getOctaveShifts, getPartById, getPartByIndex, getPartCount, getPartIds, getPartIndex, getPedalMarkings, getPrevNote, getRepeatStructure, getSlurSpans, getStaffRange, getStaveCount, getStaves, getStructuralChanges, getTempoMarkings, getTiedNoteGroups, getTimeChanges, getTupletGroups, getVerseCount, getVerticalSlice, getVoiceLine, getVoiceLineInRange, getVoices, getVoicesForStaff, getWedges, groupByStaff, groupByVoice, hasMultipleStaves, hasNotes, inferStaff, isRestMeasure, iterateEntries, iterateNotes, measureRoundtrip, scoresEqual, withAbsolutePositions } from './query/index.js';
6
6
 
7
7
  declare function parse(xmlString: string): Score;
package/dist/index.js CHANGED
@@ -127,7 +127,7 @@
127
127
 
128
128
 
129
129
 
130
- var _chunkLLFU3JZAjs = require('./chunk-LLFU3JZA.js');
130
+ var _chunk2SI2QEEVjs = require('./chunk-2SI2QEEV.js');
131
131
 
132
132
 
133
133
 
@@ -220,7 +220,7 @@ var xmlParser = new (0, _fastxmlparser.XMLParser)({
220
220
  textNodeName: "#text",
221
221
  parseAttributeValue: false,
222
222
  parseTagValue: false,
223
- trimValues: true,
223
+ trimValues: false,
224
224
  preserveOrder: true
225
225
  });
226
226
  function parse(xmlString) {
@@ -253,9 +253,12 @@ function findElement(elements, tagName) {
253
253
  function getElementContent(elements, tagName) {
254
254
  return findElement(elements, tagName);
255
255
  }
256
- function extractText(elements) {
256
+ function extractText(elements, preserveWhitespace = false) {
257
257
  for (const item of elements) {
258
- if (item["#text"] !== void 0) return String(item["#text"]);
258
+ if (item["#text"] !== void 0) {
259
+ const text = String(item["#text"]);
260
+ return preserveWhitespace ? text : text.trim();
261
+ }
259
262
  }
260
263
  return "";
261
264
  }
@@ -311,7 +314,7 @@ function parseScorePartwise(elements) {
311
314
  const defaults = parseDefaults(elements);
312
315
  const credits = parseCredits(elements);
313
316
  return {
314
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
317
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
315
318
  metadata,
316
319
  partList,
317
320
  parts,
@@ -561,11 +564,11 @@ function parseSystemLayout(elements) {
561
564
  }
562
565
  function parseCredits(elements) {
563
566
  const credits = collectElements(elements, "credit", (content, attrs) => {
564
- const credit = { _id: _chunkLLFU3JZAjs.generateId.call(void 0, ) };
567
+ const credit = { _id: _chunk2SI2QEEVjs.generateId.call(void 0, ) };
565
568
  if (attrs["page"]) credit.page = parseInt(attrs["page"], 10);
566
569
  const types = collectElements(content, "credit-type", (c) => extractText(c));
567
570
  const words = collectElements(content, "credit-words", (c, a) => {
568
- const cw = { text: extractText(c) };
571
+ const cw = { text: extractText(c, true) };
569
572
  if (a["default-x"]) cw.defaultX = parseFloat(a["default-x"]);
570
573
  if (a["default-y"]) cw.defaultY = parseFloat(a["default-y"]);
571
574
  if (a["font-family"]) cw.fontFamily = a["font-family"];
@@ -604,7 +607,7 @@ function parsePartList(elements) {
604
607
  const attrs = getAttributes(el);
605
608
  const content = el["score-part"];
606
609
  const partInfo = {
607
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
610
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
608
611
  type: "score-part",
609
612
  id: attrs["id"] || ""
610
613
  };
@@ -697,7 +700,7 @@ function parsePartList(elements) {
697
700
  const attrs = getAttributes(el);
698
701
  const content = el["part-group"];
699
702
  const group = {
700
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
703
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
701
704
  type: "part-group",
702
705
  groupType: attrs["type"] === "stop" ? "stop" : "start"
703
706
  };
@@ -733,7 +736,7 @@ function parseParts(elements) {
733
736
  const attrs = getAttributes(el);
734
737
  const content = el["part"];
735
738
  const part = {
736
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
739
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
737
740
  id: attrs["id"] || "",
738
741
  measures: []
739
742
  };
@@ -751,7 +754,7 @@ function parseParts(elements) {
751
754
  }
752
755
  function parseMeasure(elements, attrs) {
753
756
  const measure = {
754
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
757
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
755
758
  number: attrs["number"] || "0",
756
759
  // Keep as string per MusicXML spec (token type)
757
760
  entries: []
@@ -767,7 +770,7 @@ function parseMeasure(elements, attrs) {
767
770
  measure.attributes = parsedAttrs;
768
771
  } else {
769
772
  const attrEntry = {
770
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
773
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
771
774
  type: "attributes",
772
775
  attributes: parsedAttrs
773
776
  };
@@ -795,7 +798,7 @@ function parseMeasure(elements, attrs) {
795
798
  } else if (el["grouping"] !== void 0) {
796
799
  const grpAttrs = getAttributes(el);
797
800
  const grouping = {
798
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
801
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
799
802
  type: "grouping",
800
803
  groupingType: grpAttrs["type"] || "start"
801
804
  };
@@ -848,7 +851,7 @@ function parsePrint(elements, attrs) {
848
851
  return print;
849
852
  }
850
853
  function parseAttributes(elements) {
851
- const attrs = {};
854
+ const attrs = { _id: _chunk2SI2QEEVjs.generateId.call(void 0, ) };
852
855
  const divisions = getElementTextAsInt(elements, "divisions");
853
856
  if (divisions !== void 0) attrs.divisions = divisions;
854
857
  const staves = getElementTextAsInt(elements, "staves");
@@ -1011,7 +1014,7 @@ function parseTranspose(elements) {
1011
1014
  }
1012
1015
  function parseNote(elements, attrs) {
1013
1016
  const note = {
1014
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
1017
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
1015
1018
  type: "note",
1016
1019
  duration: getElementTextAsInt(elements, "duration", 0)
1017
1020
  };
@@ -1596,7 +1599,7 @@ function parseNotations(elements, notationsIndex = 0) {
1596
1599
  let text;
1597
1600
  for (const item of glissContent) {
1598
1601
  if (item["#text"] !== void 0) {
1599
- text = String(item["#text"]);
1602
+ text = String(item["#text"]).trim();
1600
1603
  break;
1601
1604
  }
1602
1605
  }
@@ -1634,7 +1637,7 @@ function parseLyric(elements, attrs) {
1634
1637
  const content = el["syllabic"];
1635
1638
  for (const item of content) {
1636
1639
  if (item["#text"] !== void 0) {
1637
- const syl = String(item["#text"]);
1640
+ const syl = String(item["#text"]).trim();
1638
1641
  if (syl === "single" || syl === "begin" || syl === "middle" || syl === "end") {
1639
1642
  currentSyllabic = syl;
1640
1643
  }
@@ -1715,14 +1718,14 @@ function parseLyric(elements, attrs) {
1715
1718
  }
1716
1719
  function parseBackup(elements) {
1717
1720
  return {
1718
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
1721
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
1719
1722
  type: "backup",
1720
1723
  duration: parseInt(getElementText(elements, "duration") || "0", 10)
1721
1724
  };
1722
1725
  }
1723
1726
  function parseForward(elements) {
1724
1727
  const forward = {
1725
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
1728
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
1726
1729
  type: "forward",
1727
1730
  duration: parseInt(getElementText(elements, "duration") || "0", 10)
1728
1731
  };
@@ -1734,7 +1737,7 @@ function parseForward(elements) {
1734
1737
  }
1735
1738
  function parseDirection(elements, attrs) {
1736
1739
  const direction = {
1737
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
1740
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
1738
1741
  type: "direction",
1739
1742
  directionTypes: []
1740
1743
  };
@@ -1882,7 +1885,7 @@ function parseDirectionTypes(elements) {
1882
1885
  const buContent = met["beat-unit"];
1883
1886
  for (const item of buContent) {
1884
1887
  if (item["#text"] !== void 0) {
1885
- beatUnits.push(String(item["#text"]));
1888
+ beatUnits.push(String(item["#text"]).trim());
1886
1889
  dotForPrev = true;
1887
1890
  break;
1888
1891
  }
@@ -1915,7 +1918,7 @@ function parseDirectionTypes(elements) {
1915
1918
  }
1916
1919
  if (el["words"]) {
1917
1920
  const a = getAttributes(el);
1918
- const text = extractText(el["words"]);
1921
+ const text = extractText(el["words"], true);
1919
1922
  const result = { kind: "words", text: text || "" };
1920
1923
  if (a["default-x"]) result.defaultX = parseFloat(a["default-x"]);
1921
1924
  if (a["default-y"]) result.defaultY = parseFloat(a["default-y"]);
@@ -2003,7 +2006,7 @@ function parseDirectionTypes(elements) {
2003
2006
  const otherContent = el["other-direction"];
2004
2007
  for (const o of otherContent) {
2005
2008
  if (o["#text"] !== void 0) {
2006
- const result = { kind: "other-direction", text: String(o["#text"]) };
2009
+ const result = { kind: "other-direction", text: String(o["#text"]).trim() };
2007
2010
  if (otherAttrs["default-x"]) result.defaultX = parseFloat(otherAttrs["default-x"]);
2008
2011
  if (otherAttrs["default-y"]) result.defaultY = parseFloat(otherAttrs["default-y"]);
2009
2012
  if (otherAttrs["halign"]) result.halign = otherAttrs["halign"];
@@ -2135,8 +2138,8 @@ function parseDirectionTypes(elements) {
2135
2138
  } else if (sw["swing-type"]) {
2136
2139
  const stContent = sw["swing-type"];
2137
2140
  for (const item of stContent) {
2138
- if (item["#text"] !== void 0 && isValidNoteType(String(item["#text"]))) {
2139
- result.swingType = String(item["#text"]);
2141
+ if (item["#text"] !== void 0 && isValidNoteType(String(item["#text"]).trim())) {
2142
+ result.swingType = String(item["#text"]).trim();
2140
2143
  break;
2141
2144
  }
2142
2145
  }
@@ -2150,7 +2153,7 @@ function parseDirectionTypes(elements) {
2150
2153
  }
2151
2154
  function parseBarline(elements, attrs) {
2152
2155
  const location = attrs["location"] || "right";
2153
- const barline = { _id: _chunkLLFU3JZAjs.generateId.call(void 0, ), location };
2156
+ const barline = { _id: _chunk2SI2QEEVjs.generateId.call(void 0, ), location };
2154
2157
  const barStyle = getElementText(elements, "bar-style");
2155
2158
  if (barStyle && isValidBarStyle(barStyle)) {
2156
2159
  barline.barStyle = barStyle;
@@ -2378,7 +2381,7 @@ function parseMeasureStyle(elements, attrs) {
2378
2381
  }
2379
2382
  function parseHarmony(elements, attrs) {
2380
2383
  const harmony = {
2381
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
2384
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
2382
2385
  type: "harmony",
2383
2386
  root: { rootStep: "C" },
2384
2387
  kind: "major"
@@ -2407,7 +2410,7 @@ function parseHarmony(elements, attrs) {
2407
2410
  const kindContent = el["kind"];
2408
2411
  for (const item of kindContent) {
2409
2412
  if (item["#text"] !== void 0) {
2410
- harmony.kind = String(item["#text"]);
2413
+ harmony.kind = String(item["#text"]).trim();
2411
2414
  break;
2412
2415
  }
2413
2416
  }
@@ -2512,7 +2515,7 @@ function parseHarmony(elements, attrs) {
2512
2515
  }
2513
2516
  function parseFiguredBass(elements, attrs) {
2514
2517
  const fb = {
2515
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
2518
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
2516
2519
  type: "figured-bass",
2517
2520
  figures: []
2518
2521
  };
@@ -2530,7 +2533,7 @@ function parseFiguredBass(elements, attrs) {
2530
2533
  const prefixContent = figEl["prefix"];
2531
2534
  for (const item of prefixContent) {
2532
2535
  if (item["#text"] !== void 0) {
2533
- figure.prefix = String(item["#text"]);
2536
+ figure.prefix = String(item["#text"]).trim();
2534
2537
  break;
2535
2538
  }
2536
2539
  }
@@ -2538,7 +2541,7 @@ function parseFiguredBass(elements, attrs) {
2538
2541
  const suffixContent = figEl["suffix"];
2539
2542
  for (const item of suffixContent) {
2540
2543
  if (item["#text"] !== void 0) {
2541
- figure.suffix = String(item["#text"]);
2544
+ figure.suffix = String(item["#text"]).trim();
2542
2545
  break;
2543
2546
  }
2544
2547
  }
@@ -2559,7 +2562,7 @@ function parseFiguredBass(elements, attrs) {
2559
2562
  }
2560
2563
  function parseSound(elements, attrs) {
2561
2564
  const sound = {
2562
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
2565
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
2563
2566
  type: "sound"
2564
2567
  };
2565
2568
  if (attrs["tempo"]) sound.tempo = parseFloat(attrs["tempo"]);
@@ -2601,7 +2604,7 @@ function parseSound(elements, attrs) {
2601
2604
  const typeContent = swingEl["swing-type"];
2602
2605
  for (const item of typeContent) {
2603
2606
  if (item["#text"] !== void 0) {
2604
- swing.swingType = String(item["#text"]);
2607
+ swing.swingType = String(item["#text"]).trim();
2605
2608
  break;
2606
2609
  }
2607
2610
  }
@@ -3589,7 +3592,7 @@ function buildScore(header, voiceTokensList, voiceIds, headerFieldOrder, inlineV
3589
3592
  const headerVoice = _optionalChain([header, 'access', _2 => _2.voices, 'optionalAccess', _3 => _3.find, 'call', _4 => _4((v) => v.id === voiceId)]) || header.voices && header.voices[voiceIndex];
3590
3593
  const voiceName = headerVoice ? headerVoice.name || `Voice ${voiceIndex + 1}` : voiceTokensList.length > 1 ? `Voice ${voiceIndex + 1}` : "Music";
3591
3594
  partListEntries.push({
3592
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3595
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3593
3596
  type: "score-part",
3594
3597
  id: partId,
3595
3598
  name: voiceName
@@ -3597,7 +3600,7 @@ function buildScore(header, voiceTokensList, voiceIds, headerFieldOrder, inlineV
3597
3600
  const voiceClef = headerVoice ? abcClefToMusicXml(headerVoice.clef) : void 0;
3598
3601
  const buildResult = buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDuration, voiceClef);
3599
3602
  parts.push({
3600
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3603
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3601
3604
  id: partId,
3602
3605
  measures: buildResult.measures
3603
3606
  });
@@ -3650,7 +3653,7 @@ function buildScore(header, voiceTokensList, voiceIds, headerFieldOrder, inlineV
3650
3653
  encoding.encoder = encoderValues;
3651
3654
  }
3652
3655
  return {
3653
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3656
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3654
3657
  metadata: {
3655
3658
  movementTitle: header.title,
3656
3659
  creators: creators.length > 0 ? creators : void 0,
@@ -3676,7 +3679,7 @@ function parseTempoToDirection(tempoStr) {
3676
3679
  if (found) beatUnit = found;
3677
3680
  }
3678
3681
  return {
3679
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3682
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3680
3683
  type: "direction",
3681
3684
  directionTypes: [{ kind: "metronome", beatUnit, perMinute }],
3682
3685
  placement: "above",
@@ -3732,7 +3735,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3732
3735
  if (dynDir) currentEntries.push(dynDir);
3733
3736
  } else if (item.kind === "decoration") {
3734
3737
  const decoDir = {
3735
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3738
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3736
3739
  type: "direction",
3737
3740
  directionTypes: [{ kind: "words", text: item.value }]
3738
3741
  };
@@ -3743,12 +3746,13 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3743
3746
  }
3744
3747
  function finalizeMeasure(endBarType) {
3745
3748
  const measure = {
3746
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3749
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3747
3750
  number: String(measureNumber),
3748
3751
  entries: currentEntries
3749
3752
  };
3750
3753
  if (isFirstMeasure) {
3751
3754
  measure.attributes = {
3755
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3752
3756
  divisions: DIVISIONS,
3753
3757
  time: timeSignature,
3754
3758
  key: keySignature,
@@ -3758,7 +3762,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3758
3762
  }
3759
3763
  if (pendingKeyChange) {
3760
3764
  if (!measure.attributes) {
3761
- measure.attributes = {};
3765
+ measure.attributes = { _id: _chunk2SI2QEEVjs.generateId.call(void 0, ) };
3762
3766
  }
3763
3767
  const kValue = pendingKeyChange.replace(/^K:\s*/, "");
3764
3768
  measure.attributes.key = parseKeySignature2(kValue);
@@ -3958,7 +3962,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3958
3962
  const rightBl = _optionalChain([lastMeasure, 'access', _9 => _9.barlines, 'optionalAccess', _10 => _10.find, 'call', _11 => _11((b) => b.location === "right")]);
3959
3963
  if (rightBl) {
3960
3964
  const endingBarline2 = {
3961
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3965
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3962
3966
  location: "left",
3963
3967
  barStyle: rightBl.barStyle,
3964
3968
  repeat: rightBl.repeat,
@@ -3970,7 +3974,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3970
3974
  }
3971
3975
  }
3972
3976
  const endingBarline = {
3973
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
3977
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
3974
3978
  location: "left",
3975
3979
  ending: {
3976
3980
  number: token.value,
@@ -4070,7 +4074,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
4070
4074
  case "overlay": {
4071
4075
  if (currentPosition > 0) {
4072
4076
  const backupEntry = {
4073
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4077
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4074
4078
  type: "backup",
4075
4079
  duration: currentPosition
4076
4080
  };
@@ -4084,7 +4088,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
4084
4088
  if (lMatch) {
4085
4089
  currentUnitNote = { num: parseInt(lMatch[1], 10), den: parseInt(lMatch[2], 10) };
4086
4090
  const inlineEntry = {
4087
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4091
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4088
4092
  type: "direction",
4089
4093
  directionTypes: [{ kind: "words", text: `[L:${lMatch[1]}/${lMatch[2]}]` }]
4090
4094
  };
@@ -4103,7 +4107,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
4103
4107
  if (currentEntries.length > 0) {
4104
4108
  const breakText = token.value === "\\\n" ? "__abc_line_cont__" : "__abc_line_break__";
4105
4109
  const lineBreakDir = {
4106
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4110
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4107
4111
  type: "direction",
4108
4112
  directionTypes: [{ kind: "words", text: breakText }]
4109
4113
  };
@@ -4207,7 +4211,7 @@ function createNoteEntry(token, unitNote, _hasTieStop, isGrace, tupletState) {
4207
4211
  }
4208
4212
  const { noteType, dots } = durationToNoteType(isGrace ? lengthToDuration(num, den, unitNote) : duration);
4209
4213
  const entry = {
4210
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4214
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4211
4215
  type: "note",
4212
4216
  pitch: token.pitch,
4213
4217
  duration,
@@ -4261,7 +4265,7 @@ function createRestEntry(token, unitNote, tupletState, measureDuration) {
4261
4265
  }
4262
4266
  const { noteType, dots } = durationToNoteType(duration);
4263
4267
  const entry = {
4264
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4268
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4265
4269
  type: "note",
4266
4270
  rest: isWholeMeasure ? { measure: true } : {},
4267
4271
  duration,
@@ -4276,7 +4280,7 @@ function createRestEntry(token, unitNote, tupletState, measureDuration) {
4276
4280
  }
4277
4281
  function createBarline(barType, location, endingNumber) {
4278
4282
  const barline = {
4279
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4283
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4280
4284
  location
4281
4285
  };
4282
4286
  switch (barType) {
@@ -4367,7 +4371,7 @@ function createHarmonyEntry(chordStr) {
4367
4371
  break;
4368
4372
  }
4369
4373
  const entry = {
4370
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4374
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4371
4375
  type: "harmony",
4372
4376
  root: { rootStep, rootAlter: rootAlter !== void 0 ? rootAlter : void 0 },
4373
4377
  kind
@@ -4386,7 +4390,7 @@ function createHarmonyEntry(chordStr) {
4386
4390
  function createDynamicsDirection(dynamic) {
4387
4391
  if (!DYNAMICS_VALUES.has(dynamic)) return null;
4388
4392
  return {
4389
- _id: _chunkLLFU3JZAjs.generateId.call(void 0, ),
4393
+ _id: _chunk2SI2QEEVjs.generateId.call(void 0, ),
4390
4394
  type: "direction",
4391
4395
  directionTypes: [{
4392
4396
  kind: "dynamics",
@@ -4415,13 +4419,13 @@ function serialize(score, options = {}) {
4415
4419
  const version = options.version || score.version || "4.0";
4416
4420
  const indent = _nullishCoalesce(options.indent, () => ( " "));
4417
4421
  if (options.validate) {
4418
- const result = _chunkLLFU3JZAjs.validate.call(void 0, score, options.validateOptions);
4422
+ const result = _chunk2SI2QEEVjs.validate.call(void 0, score, options.validateOptions);
4419
4423
  if (options.onValidation) {
4420
4424
  options.onValidation(result);
4421
4425
  }
4422
4426
  if (!result.valid && options.throwOnValidationError) {
4423
4427
  const errorMessages = result.errors.map((e) => `[${e.code}] ${e.message}`).join("\n");
4424
- throw new (0, _chunkLLFU3JZAjs.ValidationException)(result.errors, `Score validation failed:
4428
+ throw new (0, _chunk2SI2QEEVjs.ValidationException)(result.errors, `Score validation failed:
4425
4429
  ${errorMessages}`);
4426
4430
  }
4427
4431
  }
@@ -8092,4 +8096,4 @@ async function serializeToFile(score, filePath, options = {}) {
8092
8096
 
8093
8097
 
8094
8098
 
8095
- exports.STEPS = _chunk24XBPMRJjs.STEPS; exports.STEP_SEMITONES = _chunk24XBPMRJjs.STEP_SEMITONES; exports.ValidationException = _chunkLLFU3JZAjs.ValidationException; exports.addArticulation = _chunkLLFU3JZAjs.addArticulation; exports.addBeam = _chunkLLFU3JZAjs.addBeam; exports.addBowing = _chunkLLFU3JZAjs.addBowing; exports.addBreathMark = _chunkLLFU3JZAjs.addBreathMark; exports.addCaesura = _chunkLLFU3JZAjs.addCaesura; exports.addChord = _chunkLLFU3JZAjs.addChord; exports.addChordNote = _chunkLLFU3JZAjs.addChordNote; exports.addChordNoteChecked = _chunkLLFU3JZAjs.addChordNoteChecked; exports.addChordSymbol = _chunkLLFU3JZAjs.addChordSymbol; exports.addCoda = _chunkLLFU3JZAjs.addCoda; exports.addDaCapo = _chunkLLFU3JZAjs.addDaCapo; exports.addDalSegno = _chunkLLFU3JZAjs.addDalSegno; exports.addDynamics = _chunkLLFU3JZAjs.addDynamics; exports.addEnding = _chunkLLFU3JZAjs.addEnding; exports.addFermata = _chunkLLFU3JZAjs.addFermata; exports.addFine = _chunkLLFU3JZAjs.addFine; exports.addFingering = _chunkLLFU3JZAjs.addFingering; exports.addGraceNote = _chunkLLFU3JZAjs.addGraceNote; exports.addHarmony = _chunkLLFU3JZAjs.addHarmony; exports.addLyric = _chunkLLFU3JZAjs.addLyric; exports.addNote = _chunkLLFU3JZAjs.addNote; exports.addNoteChecked = _chunkLLFU3JZAjs.addNoteChecked; exports.addOctaveShift = _chunkLLFU3JZAjs.addOctaveShift; exports.addOrnament = _chunkLLFU3JZAjs.addOrnament; exports.addPart = _chunkLLFU3JZAjs.addPart; exports.addPedal = _chunkLLFU3JZAjs.addPedal; exports.addRehearsalMark = _chunkLLFU3JZAjs.addRehearsalMark; exports.addRepeat = _chunkLLFU3JZAjs.addRepeat; exports.addRepeatBarline = _chunkLLFU3JZAjs.addRepeatBarline; exports.addSegno = _chunkLLFU3JZAjs.addSegno; exports.addSlur = _chunkLLFU3JZAjs.addSlur; exports.addStringNumber = _chunkLLFU3JZAjs.addStringNumber; exports.addTempo = _chunkLLFU3JZAjs.addTempo; exports.addText = _chunkLLFU3JZAjs.addText; exports.addTextDirection = _chunkLLFU3JZAjs.addTextDirection; exports.addTie = _chunkLLFU3JZAjs.addTie; exports.addToCoda = _chunkLLFU3JZAjs.addToCoda; exports.addVoice = _chunkLLFU3JZAjs.addVoice; exports.addWedge = _chunkLLFU3JZAjs.addWedge; exports.assertMeasureValid = _chunkLLFU3JZAjs.assertMeasureValid; exports.assertValid = _chunkLLFU3JZAjs.assertValid; exports.autoBeam = _chunkLLFU3JZAjs.autoBeam; exports.buildVoiceToStaffMap = _chunk24XBPMRJjs.buildVoiceToStaffMap; exports.buildVoiceToStaffMapForPart = _chunk24XBPMRJjs.buildVoiceToStaffMapForPart; exports.changeBarline = _chunkLLFU3JZAjs.changeBarline; exports.changeClef = _chunkLLFU3JZAjs.changeClef; exports.changeKey = _chunkLLFU3JZAjs.changeKey; exports.changeNoteDuration = _chunkLLFU3JZAjs.changeNoteDuration; exports.changeTime = _chunkLLFU3JZAjs.changeTime; exports.convertToGrace = _chunkLLFU3JZAjs.convertToGrace; exports.copyNotes = _chunkLLFU3JZAjs.copyNotes; exports.copyNotesMultiMeasure = _chunkLLFU3JZAjs.copyNotesMultiMeasure; exports.countNotes = _chunk24XBPMRJjs.countNotes; exports.createTuplet = _chunkLLFU3JZAjs.createTuplet; exports.cutNotes = _chunkLLFU3JZAjs.cutNotes; exports.decodeBuffer = decodeBuffer; exports.deleteMeasure = _chunkLLFU3JZAjs.deleteMeasure; exports.deleteNote = _chunkLLFU3JZAjs.deleteNote; exports.deleteNoteChecked = _chunkLLFU3JZAjs.deleteNoteChecked; exports.duplicatePart = _chunkLLFU3JZAjs.duplicatePart; exports.exportMidi = exportMidi; exports.findBarlines = _chunk24XBPMRJjs.findBarlines; exports.findDirectionsByType = _chunk24XBPMRJjs.findDirectionsByType; exports.findNotes = _chunk24XBPMRJjs.findNotes; exports.findNotesWithNotation = _chunk24XBPMRJjs.findNotesWithNotation; exports.formatLocation = _chunkLLFU3JZAjs.formatLocation; exports.generateId = _chunkLLFU3JZAjs.generateId; exports.getAbsolutePosition = _chunk24XBPMRJjs.getAbsolutePosition; exports.getAdjacentNotes = _chunk24XBPMRJjs.getAdjacentNotes; exports.getAllNotes = _chunk24XBPMRJjs.getAllNotes; exports.getAllPartInfos = getAllPartInfos; exports.getAttributesAtMeasure = _chunk24XBPMRJjs.getAttributesAtMeasure; exports.getBeamGroups = _chunk24XBPMRJjs.getBeamGroups; exports.getChordProgression = _chunk24XBPMRJjs.getChordProgression; exports.getChords = _chunk24XBPMRJjs.getChords; exports.getClefChanges = _chunk24XBPMRJjs.getClefChanges; exports.getClefForStaff = _chunk24XBPMRJjs.getClefForStaff; exports.getDirectionOfKind = getDirectionOfKind; exports.getDirections = _chunk24XBPMRJjs.getDirections; exports.getDirectionsAtPosition = _chunk24XBPMRJjs.getDirectionsAtPosition; exports.getDirectionsOfKind = getDirectionsOfKind; exports.getDivisions = _chunk24XBPMRJjs.getDivisions; exports.getDuration = _chunk24XBPMRJjs.getDuration; exports.getDynamics = _chunk24XBPMRJjs.getDynamics; exports.getEffectiveStaff = _chunk24XBPMRJjs.getEffectiveStaff; exports.getEndings = _chunk24XBPMRJjs.getEndings; exports.getEntriesAtPosition = _chunk24XBPMRJjs.getEntriesAtPosition; exports.getEntriesForStaff = _chunk24XBPMRJjs.getEntriesForStaff; exports.getEntriesInRange = _chunk24XBPMRJjs.getEntriesInRange; exports.getHarmonies = _chunk24XBPMRJjs.getHarmonies; exports.getHarmonyAtPosition = _chunk24XBPMRJjs.getHarmonyAtPosition; exports.getKeyChanges = _chunk24XBPMRJjs.getKeyChanges; exports.getLyricText = _chunk24XBPMRJjs.getLyricText; exports.getLyrics = _chunk24XBPMRJjs.getLyrics; exports.getMeasure = _chunk24XBPMRJjs.getMeasure; exports.getMeasureByIndex = _chunk24XBPMRJjs.getMeasureByIndex; exports.getMeasureContext = _chunkLLFU3JZAjs.getMeasureContext; exports.getMeasureCount = _chunk24XBPMRJjs.getMeasureCount; exports.getMeasureEndPosition = _chunk24XBPMRJjs.getMeasureEndPosition; exports.getNextNote = _chunk24XBPMRJjs.getNextNote; exports.getNormalizedDuration = _chunk24XBPMRJjs.getNormalizedDuration; exports.getNormalizedPosition = _chunk24XBPMRJjs.getNormalizedPosition; exports.getNotesAtPosition = _chunk24XBPMRJjs.getNotesAtPosition; exports.getNotesForStaff = _chunk24XBPMRJjs.getNotesForStaff; exports.getNotesForVoice = _chunk24XBPMRJjs.getNotesForVoice; exports.getNotesInRange = _chunk24XBPMRJjs.getNotesInRange; exports.getOctaveShifts = _chunk24XBPMRJjs.getOctaveShifts; exports.getPartAbbreviation = getPartAbbreviation; exports.getPartById = _chunk24XBPMRJjs.getPartById; exports.getPartByIndex = _chunk24XBPMRJjs.getPartByIndex; exports.getPartCount = _chunk24XBPMRJjs.getPartCount; exports.getPartIds = _chunk24XBPMRJjs.getPartIds; exports.getPartIndex = _chunk24XBPMRJjs.getPartIndex; exports.getPartInfo = getPartInfo; exports.getPartName = getPartName; exports.getPartNameMap = getPartNameMap; exports.getPedalMarkings = _chunk24XBPMRJjs.getPedalMarkings; exports.getPrevNote = _chunk24XBPMRJjs.getPrevNote; exports.getRepeatStructure = _chunk24XBPMRJjs.getRepeatStructure; exports.getSlurSpans = _chunk24XBPMRJjs.getSlurSpans; exports.getSoundDamperPedal = getSoundDamperPedal; exports.getSoundDynamics = getSoundDynamics; exports.getSoundSoftPedal = getSoundSoftPedal; exports.getSoundSostenutoPedal = getSoundSostenutoPedal; exports.getSoundTempo = getSoundTempo; exports.getStaffRange = _chunk24XBPMRJjs.getStaffRange; exports.getStaveCount = _chunk24XBPMRJjs.getStaveCount; exports.getStaves = _chunk24XBPMRJjs.getStaves; exports.getStructuralChanges = _chunk24XBPMRJjs.getStructuralChanges; exports.getTempoMarkings = _chunk24XBPMRJjs.getTempoMarkings; exports.getTiedNoteGroups = _chunk24XBPMRJjs.getTiedNoteGroups; exports.getTimeChanges = _chunk24XBPMRJjs.getTimeChanges; exports.getTupletGroups = _chunk24XBPMRJjs.getTupletGroups; exports.getVerseCount = _chunk24XBPMRJjs.getVerseCount; exports.getVerticalSlice = _chunk24XBPMRJjs.getVerticalSlice; exports.getVoiceLine = _chunk24XBPMRJjs.getVoiceLine; exports.getVoiceLineInRange = _chunk24XBPMRJjs.getVoiceLineInRange; exports.getVoices = _chunk24XBPMRJjs.getVoices; exports.getVoicesForStaff = _chunk24XBPMRJjs.getVoicesForStaff; exports.getWedges = _chunk24XBPMRJjs.getWedges; exports.groupByStaff = _chunk24XBPMRJjs.groupByStaff; exports.groupByVoice = _chunk24XBPMRJjs.groupByVoice; exports.hasBeam = hasBeam; exports.hasDirectionOfKind = hasDirectionOfKind; exports.hasLyrics = hasLyrics; exports.hasMultipleStaves = _chunk24XBPMRJjs.hasMultipleStaves; exports.hasNotations = hasNotations; exports.hasNotes = _chunk24XBPMRJjs.hasNotes; exports.hasTie = hasTie; exports.hasTieStart = hasTieStart; exports.hasTieStop = hasTieStop; exports.hasTuplet = hasTuplet; exports.inferStaff = _chunk24XBPMRJjs.inferStaff; exports.insertClefChange = _chunkLLFU3JZAjs.insertClefChange; exports.insertMeasure = _chunkLLFU3JZAjs.insertMeasure; exports.insertNote = _chunkLLFU3JZAjs.insertNote; exports.isChordNote = isChordNote; exports.isCompressed = isCompressed; exports.isCueNote = isCueNote; exports.isGraceNote = isGraceNote; exports.isPartInfo = isPartInfo; exports.isPitchedNote = isPitchedNote; exports.isRest = isRest; exports.isRestMeasure = _chunk24XBPMRJjs.isRestMeasure; exports.isUnpitchedNote = isUnpitchedNote; exports.isValid = _chunkLLFU3JZAjs.isValid; exports.iterateEntries = _chunk24XBPMRJjs.iterateEntries; exports.iterateNotes = _chunk24XBPMRJjs.iterateNotes; exports.lowerAccidental = _chunkLLFU3JZAjs.lowerAccidental; exports.measureRoundtrip = _chunk24XBPMRJjs.measureRoundtrip; exports.modifyDynamics = _chunkLLFU3JZAjs.modifyDynamics; exports.modifyNoteDuration = _chunkLLFU3JZAjs.modifyNoteDuration; exports.modifyNoteDurationChecked = _chunkLLFU3JZAjs.modifyNoteDurationChecked; exports.modifyNotePitch = _chunkLLFU3JZAjs.modifyNotePitch; exports.modifyNotePitchChecked = _chunkLLFU3JZAjs.modifyNotePitchChecked; exports.modifyTempo = _chunkLLFU3JZAjs.modifyTempo; exports.moveNoteToStaff = _chunkLLFU3JZAjs.moveNoteToStaff; exports.parse = parse; exports.parseAbc = parseAbc; exports.parseAuto = parseAuto; exports.parseCompressed = parseCompressed; exports.parseFile = parseFile; exports.pasteNotes = _chunkLLFU3JZAjs.pasteNotes; exports.pasteNotesMultiMeasure = _chunkLLFU3JZAjs.pasteNotesMultiMeasure; exports.pitchToSemitone = _chunk24XBPMRJjs.pitchToSemitone; exports.raiseAccidental = _chunkLLFU3JZAjs.raiseAccidental; exports.removeArticulation = _chunkLLFU3JZAjs.removeArticulation; exports.removeBeam = _chunkLLFU3JZAjs.removeBeam; exports.removeBowing = _chunkLLFU3JZAjs.removeBowing; exports.removeBreathMark = _chunkLLFU3JZAjs.removeBreathMark; exports.removeCaesura = _chunkLLFU3JZAjs.removeCaesura; exports.removeChordSymbol = _chunkLLFU3JZAjs.removeChordSymbol; exports.removeDynamics = _chunkLLFU3JZAjs.removeDynamics; exports.removeEnding = _chunkLLFU3JZAjs.removeEnding; exports.removeFermata = _chunkLLFU3JZAjs.removeFermata; exports.removeFingering = _chunkLLFU3JZAjs.removeFingering; exports.removeGraceNote = _chunkLLFU3JZAjs.removeGraceNote; exports.removeHarmony = _chunkLLFU3JZAjs.removeHarmony; exports.removeLyric = _chunkLLFU3JZAjs.removeLyric; exports.removeNote = _chunkLLFU3JZAjs.removeNote; exports.removeOctaveShift = _chunkLLFU3JZAjs.removeOctaveShift; exports.removeOrnament = _chunkLLFU3JZAjs.removeOrnament; exports.removePart = _chunkLLFU3JZAjs.removePart; exports.removePedal = _chunkLLFU3JZAjs.removePedal; exports.removeRepeat = _chunkLLFU3JZAjs.removeRepeat; exports.removeRepeatBarline = _chunkLLFU3JZAjs.removeRepeatBarline; exports.removeSlur = _chunkLLFU3JZAjs.removeSlur; exports.removeStringNumber = _chunkLLFU3JZAjs.removeStringNumber; exports.removeTempo = _chunkLLFU3JZAjs.removeTempo; exports.removeTie = _chunkLLFU3JZAjs.removeTie; exports.removeTuplet = _chunkLLFU3JZAjs.removeTuplet; exports.removeWedge = _chunkLLFU3JZAjs.removeWedge; exports.scoresEqual = _chunk24XBPMRJjs.scoresEqual; exports.serialize = serialize; exports.serializeAbc = serializeAbc; exports.serializeCompressed = serializeCompressed; exports.serializeToFile = serializeToFile; exports.setBarline = _chunkLLFU3JZAjs.setBarline; exports.setBeaming = _chunkLLFU3JZAjs.setBeaming; exports.setNotePitch = _chunkLLFU3JZAjs.setNotePitch; exports.setNotePitchBySemitone = _chunkLLFU3JZAjs.setNotePitchBySemitone; exports.setStaves = _chunkLLFU3JZAjs.setStaves; exports.shiftNotePitch = _chunkLLFU3JZAjs.shiftNotePitch; exports.stopOctaveShift = _chunkLLFU3JZAjs.stopOctaveShift; exports.transpose = _chunkLLFU3JZAjs.transpose; exports.transposeChecked = _chunkLLFU3JZAjs.transposeChecked; exports.updateChordSymbol = _chunkLLFU3JZAjs.updateChordSymbol; exports.updateHarmony = _chunkLLFU3JZAjs.updateHarmony; exports.updateLyric = _chunkLLFU3JZAjs.updateLyric; exports.validate = _chunkLLFU3JZAjs.validate; exports.validateBackupForward = _chunkLLFU3JZAjs.validateBackupForward; exports.validateBeams = _chunkLLFU3JZAjs.validateBeams; exports.validateDivisions = _chunkLLFU3JZAjs.validateDivisions; exports.validateMeasureDuration = _chunkLLFU3JZAjs.validateMeasureDuration; exports.validateMeasureLocal = _chunkLLFU3JZAjs.validateMeasureLocal; exports.validatePartReferences = _chunkLLFU3JZAjs.validatePartReferences; exports.validatePartStructure = _chunkLLFU3JZAjs.validatePartStructure; exports.validateSlurs = _chunkLLFU3JZAjs.validateSlurs; exports.validateSlursAcrossMeasures = _chunkLLFU3JZAjs.validateSlursAcrossMeasures; exports.validateStaffStructure = _chunkLLFU3JZAjs.validateStaffStructure; exports.validateTies = _chunkLLFU3JZAjs.validateTies; exports.validateTiesAcrossMeasures = _chunkLLFU3JZAjs.validateTiesAcrossMeasures; exports.validateTuplets = _chunkLLFU3JZAjs.validateTuplets; exports.validateVoiceStaff = _chunkLLFU3JZAjs.validateVoiceStaff; exports.withAbsolutePositions = _chunk24XBPMRJjs.withAbsolutePositions;
8099
+ exports.STEPS = _chunk24XBPMRJjs.STEPS; exports.STEP_SEMITONES = _chunk24XBPMRJjs.STEP_SEMITONES; exports.ValidationException = _chunk2SI2QEEVjs.ValidationException; exports.addArticulation = _chunk2SI2QEEVjs.addArticulation; exports.addBeam = _chunk2SI2QEEVjs.addBeam; exports.addBowing = _chunk2SI2QEEVjs.addBowing; exports.addBreathMark = _chunk2SI2QEEVjs.addBreathMark; exports.addCaesura = _chunk2SI2QEEVjs.addCaesura; exports.addChord = _chunk2SI2QEEVjs.addChord; exports.addChordNote = _chunk2SI2QEEVjs.addChordNote; exports.addChordNoteChecked = _chunk2SI2QEEVjs.addChordNoteChecked; exports.addChordSymbol = _chunk2SI2QEEVjs.addChordSymbol; exports.addCoda = _chunk2SI2QEEVjs.addCoda; exports.addDaCapo = _chunk2SI2QEEVjs.addDaCapo; exports.addDalSegno = _chunk2SI2QEEVjs.addDalSegno; exports.addDynamics = _chunk2SI2QEEVjs.addDynamics; exports.addEnding = _chunk2SI2QEEVjs.addEnding; exports.addFermata = _chunk2SI2QEEVjs.addFermata; exports.addFine = _chunk2SI2QEEVjs.addFine; exports.addFingering = _chunk2SI2QEEVjs.addFingering; exports.addGraceNote = _chunk2SI2QEEVjs.addGraceNote; exports.addHarmony = _chunk2SI2QEEVjs.addHarmony; exports.addLyric = _chunk2SI2QEEVjs.addLyric; exports.addNote = _chunk2SI2QEEVjs.addNote; exports.addNoteChecked = _chunk2SI2QEEVjs.addNoteChecked; exports.addOctaveShift = _chunk2SI2QEEVjs.addOctaveShift; exports.addOrnament = _chunk2SI2QEEVjs.addOrnament; exports.addPart = _chunk2SI2QEEVjs.addPart; exports.addPedal = _chunk2SI2QEEVjs.addPedal; exports.addRehearsalMark = _chunk2SI2QEEVjs.addRehearsalMark; exports.addRepeat = _chunk2SI2QEEVjs.addRepeat; exports.addRepeatBarline = _chunk2SI2QEEVjs.addRepeatBarline; exports.addSegno = _chunk2SI2QEEVjs.addSegno; exports.addSlur = _chunk2SI2QEEVjs.addSlur; exports.addStringNumber = _chunk2SI2QEEVjs.addStringNumber; exports.addTempo = _chunk2SI2QEEVjs.addTempo; exports.addText = _chunk2SI2QEEVjs.addText; exports.addTextDirection = _chunk2SI2QEEVjs.addTextDirection; exports.addTie = _chunk2SI2QEEVjs.addTie; exports.addToCoda = _chunk2SI2QEEVjs.addToCoda; exports.addVoice = _chunk2SI2QEEVjs.addVoice; exports.addWedge = _chunk2SI2QEEVjs.addWedge; exports.assertMeasureValid = _chunk2SI2QEEVjs.assertMeasureValid; exports.assertValid = _chunk2SI2QEEVjs.assertValid; exports.autoBeam = _chunk2SI2QEEVjs.autoBeam; exports.buildVoiceToStaffMap = _chunk24XBPMRJjs.buildVoiceToStaffMap; exports.buildVoiceToStaffMapForPart = _chunk24XBPMRJjs.buildVoiceToStaffMapForPart; exports.changeBarline = _chunk2SI2QEEVjs.changeBarline; exports.changeClef = _chunk2SI2QEEVjs.changeClef; exports.changeKey = _chunk2SI2QEEVjs.changeKey; exports.changeNoteDuration = _chunk2SI2QEEVjs.changeNoteDuration; exports.changeTime = _chunk2SI2QEEVjs.changeTime; exports.convertToGrace = _chunk2SI2QEEVjs.convertToGrace; exports.copyNotes = _chunk2SI2QEEVjs.copyNotes; exports.copyNotesMultiMeasure = _chunk2SI2QEEVjs.copyNotesMultiMeasure; exports.countNotes = _chunk24XBPMRJjs.countNotes; exports.createTuplet = _chunk2SI2QEEVjs.createTuplet; exports.cutNotes = _chunk2SI2QEEVjs.cutNotes; exports.decodeBuffer = decodeBuffer; exports.deleteMeasure = _chunk2SI2QEEVjs.deleteMeasure; exports.deleteNote = _chunk2SI2QEEVjs.deleteNote; exports.deleteNoteChecked = _chunk2SI2QEEVjs.deleteNoteChecked; exports.duplicatePart = _chunk2SI2QEEVjs.duplicatePart; exports.exportMidi = exportMidi; exports.findBarlines = _chunk24XBPMRJjs.findBarlines; exports.findDirectionsByType = _chunk24XBPMRJjs.findDirectionsByType; exports.findNotes = _chunk24XBPMRJjs.findNotes; exports.findNotesWithNotation = _chunk24XBPMRJjs.findNotesWithNotation; exports.formatLocation = _chunk2SI2QEEVjs.formatLocation; exports.generateId = _chunk2SI2QEEVjs.generateId; exports.getAbsolutePosition = _chunk24XBPMRJjs.getAbsolutePosition; exports.getAdjacentNotes = _chunk24XBPMRJjs.getAdjacentNotes; exports.getAllNotes = _chunk24XBPMRJjs.getAllNotes; exports.getAllPartInfos = getAllPartInfos; exports.getAttributesAtMeasure = _chunk24XBPMRJjs.getAttributesAtMeasure; exports.getBeamGroups = _chunk24XBPMRJjs.getBeamGroups; exports.getChordProgression = _chunk24XBPMRJjs.getChordProgression; exports.getChords = _chunk24XBPMRJjs.getChords; exports.getClefChanges = _chunk24XBPMRJjs.getClefChanges; exports.getClefForStaff = _chunk24XBPMRJjs.getClefForStaff; exports.getDirectionOfKind = getDirectionOfKind; exports.getDirections = _chunk24XBPMRJjs.getDirections; exports.getDirectionsAtPosition = _chunk24XBPMRJjs.getDirectionsAtPosition; exports.getDirectionsOfKind = getDirectionsOfKind; exports.getDivisions = _chunk24XBPMRJjs.getDivisions; exports.getDuration = _chunk24XBPMRJjs.getDuration; exports.getDynamics = _chunk24XBPMRJjs.getDynamics; exports.getEffectiveStaff = _chunk24XBPMRJjs.getEffectiveStaff; exports.getEndings = _chunk24XBPMRJjs.getEndings; exports.getEntriesAtPosition = _chunk24XBPMRJjs.getEntriesAtPosition; exports.getEntriesForStaff = _chunk24XBPMRJjs.getEntriesForStaff; exports.getEntriesInRange = _chunk24XBPMRJjs.getEntriesInRange; exports.getHarmonies = _chunk24XBPMRJjs.getHarmonies; exports.getHarmonyAtPosition = _chunk24XBPMRJjs.getHarmonyAtPosition; exports.getKeyChanges = _chunk24XBPMRJjs.getKeyChanges; exports.getLyricText = _chunk24XBPMRJjs.getLyricText; exports.getLyrics = _chunk24XBPMRJjs.getLyrics; exports.getMeasure = _chunk24XBPMRJjs.getMeasure; exports.getMeasureByIndex = _chunk24XBPMRJjs.getMeasureByIndex; exports.getMeasureContext = _chunk2SI2QEEVjs.getMeasureContext; exports.getMeasureCount = _chunk24XBPMRJjs.getMeasureCount; exports.getMeasureEndPosition = _chunk24XBPMRJjs.getMeasureEndPosition; exports.getNextNote = _chunk24XBPMRJjs.getNextNote; exports.getNormalizedDuration = _chunk24XBPMRJjs.getNormalizedDuration; exports.getNormalizedPosition = _chunk24XBPMRJjs.getNormalizedPosition; exports.getNotesAtPosition = _chunk24XBPMRJjs.getNotesAtPosition; exports.getNotesForStaff = _chunk24XBPMRJjs.getNotesForStaff; exports.getNotesForVoice = _chunk24XBPMRJjs.getNotesForVoice; exports.getNotesInRange = _chunk24XBPMRJjs.getNotesInRange; exports.getOctaveShifts = _chunk24XBPMRJjs.getOctaveShifts; exports.getPartAbbreviation = getPartAbbreviation; exports.getPartById = _chunk24XBPMRJjs.getPartById; exports.getPartByIndex = _chunk24XBPMRJjs.getPartByIndex; exports.getPartCount = _chunk24XBPMRJjs.getPartCount; exports.getPartIds = _chunk24XBPMRJjs.getPartIds; exports.getPartIndex = _chunk24XBPMRJjs.getPartIndex; exports.getPartInfo = getPartInfo; exports.getPartName = getPartName; exports.getPartNameMap = getPartNameMap; exports.getPedalMarkings = _chunk24XBPMRJjs.getPedalMarkings; exports.getPrevNote = _chunk24XBPMRJjs.getPrevNote; exports.getRepeatStructure = _chunk24XBPMRJjs.getRepeatStructure; exports.getSlurSpans = _chunk24XBPMRJjs.getSlurSpans; exports.getSoundDamperPedal = getSoundDamperPedal; exports.getSoundDynamics = getSoundDynamics; exports.getSoundSoftPedal = getSoundSoftPedal; exports.getSoundSostenutoPedal = getSoundSostenutoPedal; exports.getSoundTempo = getSoundTempo; exports.getStaffRange = _chunk24XBPMRJjs.getStaffRange; exports.getStaveCount = _chunk24XBPMRJjs.getStaveCount; exports.getStaves = _chunk24XBPMRJjs.getStaves; exports.getStructuralChanges = _chunk24XBPMRJjs.getStructuralChanges; exports.getTempoMarkings = _chunk24XBPMRJjs.getTempoMarkings; exports.getTiedNoteGroups = _chunk24XBPMRJjs.getTiedNoteGroups; exports.getTimeChanges = _chunk24XBPMRJjs.getTimeChanges; exports.getTupletGroups = _chunk24XBPMRJjs.getTupletGroups; exports.getVerseCount = _chunk24XBPMRJjs.getVerseCount; exports.getVerticalSlice = _chunk24XBPMRJjs.getVerticalSlice; exports.getVoiceLine = _chunk24XBPMRJjs.getVoiceLine; exports.getVoiceLineInRange = _chunk24XBPMRJjs.getVoiceLineInRange; exports.getVoices = _chunk24XBPMRJjs.getVoices; exports.getVoicesForStaff = _chunk24XBPMRJjs.getVoicesForStaff; exports.getWedges = _chunk24XBPMRJjs.getWedges; exports.groupByStaff = _chunk24XBPMRJjs.groupByStaff; exports.groupByVoice = _chunk24XBPMRJjs.groupByVoice; exports.hasBeam = hasBeam; exports.hasDirectionOfKind = hasDirectionOfKind; exports.hasLyrics = hasLyrics; exports.hasMultipleStaves = _chunk24XBPMRJjs.hasMultipleStaves; exports.hasNotations = hasNotations; exports.hasNotes = _chunk24XBPMRJjs.hasNotes; exports.hasTie = hasTie; exports.hasTieStart = hasTieStart; exports.hasTieStop = hasTieStop; exports.hasTuplet = hasTuplet; exports.inferStaff = _chunk24XBPMRJjs.inferStaff; exports.insertClefChange = _chunk2SI2QEEVjs.insertClefChange; exports.insertMeasure = _chunk2SI2QEEVjs.insertMeasure; exports.insertNote = _chunk2SI2QEEVjs.insertNote; exports.isChordNote = isChordNote; exports.isCompressed = isCompressed; exports.isCueNote = isCueNote; exports.isGraceNote = isGraceNote; exports.isPartInfo = isPartInfo; exports.isPitchedNote = isPitchedNote; exports.isRest = isRest; exports.isRestMeasure = _chunk24XBPMRJjs.isRestMeasure; exports.isUnpitchedNote = isUnpitchedNote; exports.isValid = _chunk2SI2QEEVjs.isValid; exports.iterateEntries = _chunk24XBPMRJjs.iterateEntries; exports.iterateNotes = _chunk24XBPMRJjs.iterateNotes; exports.lowerAccidental = _chunk2SI2QEEVjs.lowerAccidental; exports.measureRoundtrip = _chunk24XBPMRJjs.measureRoundtrip; exports.modifyDynamics = _chunk2SI2QEEVjs.modifyDynamics; exports.modifyNoteDuration = _chunk2SI2QEEVjs.modifyNoteDuration; exports.modifyNoteDurationChecked = _chunk2SI2QEEVjs.modifyNoteDurationChecked; exports.modifyNotePitch = _chunk2SI2QEEVjs.modifyNotePitch; exports.modifyNotePitchChecked = _chunk2SI2QEEVjs.modifyNotePitchChecked; exports.modifyTempo = _chunk2SI2QEEVjs.modifyTempo; exports.moveNoteToStaff = _chunk2SI2QEEVjs.moveNoteToStaff; exports.parse = parse; exports.parseAbc = parseAbc; exports.parseAuto = parseAuto; exports.parseCompressed = parseCompressed; exports.parseFile = parseFile; exports.pasteNotes = _chunk2SI2QEEVjs.pasteNotes; exports.pasteNotesMultiMeasure = _chunk2SI2QEEVjs.pasteNotesMultiMeasure; exports.pitchToSemitone = _chunk24XBPMRJjs.pitchToSemitone; exports.raiseAccidental = _chunk2SI2QEEVjs.raiseAccidental; exports.removeArticulation = _chunk2SI2QEEVjs.removeArticulation; exports.removeBeam = _chunk2SI2QEEVjs.removeBeam; exports.removeBowing = _chunk2SI2QEEVjs.removeBowing; exports.removeBreathMark = _chunk2SI2QEEVjs.removeBreathMark; exports.removeCaesura = _chunk2SI2QEEVjs.removeCaesura; exports.removeChordSymbol = _chunk2SI2QEEVjs.removeChordSymbol; exports.removeDynamics = _chunk2SI2QEEVjs.removeDynamics; exports.removeEnding = _chunk2SI2QEEVjs.removeEnding; exports.removeFermata = _chunk2SI2QEEVjs.removeFermata; exports.removeFingering = _chunk2SI2QEEVjs.removeFingering; exports.removeGraceNote = _chunk2SI2QEEVjs.removeGraceNote; exports.removeHarmony = _chunk2SI2QEEVjs.removeHarmony; exports.removeLyric = _chunk2SI2QEEVjs.removeLyric; exports.removeNote = _chunk2SI2QEEVjs.removeNote; exports.removeOctaveShift = _chunk2SI2QEEVjs.removeOctaveShift; exports.removeOrnament = _chunk2SI2QEEVjs.removeOrnament; exports.removePart = _chunk2SI2QEEVjs.removePart; exports.removePedal = _chunk2SI2QEEVjs.removePedal; exports.removeRepeat = _chunk2SI2QEEVjs.removeRepeat; exports.removeRepeatBarline = _chunk2SI2QEEVjs.removeRepeatBarline; exports.removeSlur = _chunk2SI2QEEVjs.removeSlur; exports.removeStringNumber = _chunk2SI2QEEVjs.removeStringNumber; exports.removeTempo = _chunk2SI2QEEVjs.removeTempo; exports.removeTie = _chunk2SI2QEEVjs.removeTie; exports.removeTuplet = _chunk2SI2QEEVjs.removeTuplet; exports.removeWedge = _chunk2SI2QEEVjs.removeWedge; exports.scoresEqual = _chunk24XBPMRJjs.scoresEqual; exports.serialize = serialize; exports.serializeAbc = serializeAbc; exports.serializeCompressed = serializeCompressed; exports.serializeToFile = serializeToFile; exports.setBarline = _chunk2SI2QEEVjs.setBarline; exports.setBeaming = _chunk2SI2QEEVjs.setBeaming; exports.setNotePitch = _chunk2SI2QEEVjs.setNotePitch; exports.setNotePitchBySemitone = _chunk2SI2QEEVjs.setNotePitchBySemitone; exports.setStaves = _chunk2SI2QEEVjs.setStaves; exports.shiftNotePitch = _chunk2SI2QEEVjs.shiftNotePitch; exports.stopOctaveShift = _chunk2SI2QEEVjs.stopOctaveShift; exports.transpose = _chunk2SI2QEEVjs.transpose; exports.transposeChecked = _chunk2SI2QEEVjs.transposeChecked; exports.updateChordSymbol = _chunk2SI2QEEVjs.updateChordSymbol; exports.updateHarmony = _chunk2SI2QEEVjs.updateHarmony; exports.updateLyric = _chunk2SI2QEEVjs.updateLyric; exports.validate = _chunk2SI2QEEVjs.validate; exports.validateBackupForward = _chunk2SI2QEEVjs.validateBackupForward; exports.validateBeams = _chunk2SI2QEEVjs.validateBeams; exports.validateDivisions = _chunk2SI2QEEVjs.validateDivisions; exports.validateMeasureDuration = _chunk2SI2QEEVjs.validateMeasureDuration; exports.validateMeasureLocal = _chunk2SI2QEEVjs.validateMeasureLocal; exports.validatePartReferences = _chunk2SI2QEEVjs.validatePartReferences; exports.validatePartStructure = _chunk2SI2QEEVjs.validatePartStructure; exports.validateSlurs = _chunk2SI2QEEVjs.validateSlurs; exports.validateSlursAcrossMeasures = _chunk2SI2QEEVjs.validateSlursAcrossMeasures; exports.validateStaffStructure = _chunk2SI2QEEVjs.validateStaffStructure; exports.validateTies = _chunk2SI2QEEVjs.validateTies; exports.validateTiesAcrossMeasures = _chunk2SI2QEEVjs.validateTiesAcrossMeasures; exports.validateTuplets = _chunk2SI2QEEVjs.validateTuplets; exports.validateVoiceStaff = _chunk2SI2QEEVjs.validateVoiceStaff; exports.withAbsolutePositions = _chunk24XBPMRJjs.withAbsolutePositions;
package/dist/index.mjs CHANGED
@@ -127,7 +127,7 @@ import {
127
127
  validateTiesAcrossMeasures,
128
128
  validateTuplets,
129
129
  validateVoiceStaff
130
- } from "./chunk-AWYTZMJB.mjs";
130
+ } from "./chunk-OFI5WOC5.mjs";
131
131
  import {
132
132
  STEPS,
133
133
  STEP_SEMITONES,
@@ -220,7 +220,7 @@ var xmlParser = new XMLParser({
220
220
  textNodeName: "#text",
221
221
  parseAttributeValue: false,
222
222
  parseTagValue: false,
223
- trimValues: true,
223
+ trimValues: false,
224
224
  preserveOrder: true
225
225
  });
226
226
  function parse(xmlString) {
@@ -253,9 +253,12 @@ function findElement(elements, tagName) {
253
253
  function getElementContent(elements, tagName) {
254
254
  return findElement(elements, tagName);
255
255
  }
256
- function extractText(elements) {
256
+ function extractText(elements, preserveWhitespace = false) {
257
257
  for (const item of elements) {
258
- if (item["#text"] !== void 0) return String(item["#text"]);
258
+ if (item["#text"] !== void 0) {
259
+ const text = String(item["#text"]);
260
+ return preserveWhitespace ? text : text.trim();
261
+ }
259
262
  }
260
263
  return "";
261
264
  }
@@ -565,7 +568,7 @@ function parseCredits(elements) {
565
568
  if (attrs["page"]) credit.page = parseInt(attrs["page"], 10);
566
569
  const types = collectElements(content, "credit-type", (c) => extractText(c));
567
570
  const words = collectElements(content, "credit-words", (c, a) => {
568
- const cw = { text: extractText(c) };
571
+ const cw = { text: extractText(c, true) };
569
572
  if (a["default-x"]) cw.defaultX = parseFloat(a["default-x"]);
570
573
  if (a["default-y"]) cw.defaultY = parseFloat(a["default-y"]);
571
574
  if (a["font-family"]) cw.fontFamily = a["font-family"];
@@ -848,7 +851,7 @@ function parsePrint(elements, attrs) {
848
851
  return print;
849
852
  }
850
853
  function parseAttributes(elements) {
851
- const attrs = {};
854
+ const attrs = { _id: generateId() };
852
855
  const divisions = getElementTextAsInt(elements, "divisions");
853
856
  if (divisions !== void 0) attrs.divisions = divisions;
854
857
  const staves = getElementTextAsInt(elements, "staves");
@@ -1596,7 +1599,7 @@ function parseNotations(elements, notationsIndex = 0) {
1596
1599
  let text;
1597
1600
  for (const item of glissContent) {
1598
1601
  if (item["#text"] !== void 0) {
1599
- text = String(item["#text"]);
1602
+ text = String(item["#text"]).trim();
1600
1603
  break;
1601
1604
  }
1602
1605
  }
@@ -1634,7 +1637,7 @@ function parseLyric(elements, attrs) {
1634
1637
  const content = el["syllabic"];
1635
1638
  for (const item of content) {
1636
1639
  if (item["#text"] !== void 0) {
1637
- const syl = String(item["#text"]);
1640
+ const syl = String(item["#text"]).trim();
1638
1641
  if (syl === "single" || syl === "begin" || syl === "middle" || syl === "end") {
1639
1642
  currentSyllabic = syl;
1640
1643
  }
@@ -1882,7 +1885,7 @@ function parseDirectionTypes(elements) {
1882
1885
  const buContent = met["beat-unit"];
1883
1886
  for (const item of buContent) {
1884
1887
  if (item["#text"] !== void 0) {
1885
- beatUnits.push(String(item["#text"]));
1888
+ beatUnits.push(String(item["#text"]).trim());
1886
1889
  dotForPrev = true;
1887
1890
  break;
1888
1891
  }
@@ -1915,7 +1918,7 @@ function parseDirectionTypes(elements) {
1915
1918
  }
1916
1919
  if (el["words"]) {
1917
1920
  const a = getAttributes(el);
1918
- const text = extractText(el["words"]);
1921
+ const text = extractText(el["words"], true);
1919
1922
  const result = { kind: "words", text: text || "" };
1920
1923
  if (a["default-x"]) result.defaultX = parseFloat(a["default-x"]);
1921
1924
  if (a["default-y"]) result.defaultY = parseFloat(a["default-y"]);
@@ -2003,7 +2006,7 @@ function parseDirectionTypes(elements) {
2003
2006
  const otherContent = el["other-direction"];
2004
2007
  for (const o of otherContent) {
2005
2008
  if (o["#text"] !== void 0) {
2006
- const result = { kind: "other-direction", text: String(o["#text"]) };
2009
+ const result = { kind: "other-direction", text: String(o["#text"]).trim() };
2007
2010
  if (otherAttrs["default-x"]) result.defaultX = parseFloat(otherAttrs["default-x"]);
2008
2011
  if (otherAttrs["default-y"]) result.defaultY = parseFloat(otherAttrs["default-y"]);
2009
2012
  if (otherAttrs["halign"]) result.halign = otherAttrs["halign"];
@@ -2135,8 +2138,8 @@ function parseDirectionTypes(elements) {
2135
2138
  } else if (sw["swing-type"]) {
2136
2139
  const stContent = sw["swing-type"];
2137
2140
  for (const item of stContent) {
2138
- if (item["#text"] !== void 0 && isValidNoteType(String(item["#text"]))) {
2139
- result.swingType = String(item["#text"]);
2141
+ if (item["#text"] !== void 0 && isValidNoteType(String(item["#text"]).trim())) {
2142
+ result.swingType = String(item["#text"]).trim();
2140
2143
  break;
2141
2144
  }
2142
2145
  }
@@ -2407,7 +2410,7 @@ function parseHarmony(elements, attrs) {
2407
2410
  const kindContent = el["kind"];
2408
2411
  for (const item of kindContent) {
2409
2412
  if (item["#text"] !== void 0) {
2410
- harmony.kind = String(item["#text"]);
2413
+ harmony.kind = String(item["#text"]).trim();
2411
2414
  break;
2412
2415
  }
2413
2416
  }
@@ -2530,7 +2533,7 @@ function parseFiguredBass(elements, attrs) {
2530
2533
  const prefixContent = figEl["prefix"];
2531
2534
  for (const item of prefixContent) {
2532
2535
  if (item["#text"] !== void 0) {
2533
- figure.prefix = String(item["#text"]);
2536
+ figure.prefix = String(item["#text"]).trim();
2534
2537
  break;
2535
2538
  }
2536
2539
  }
@@ -2538,7 +2541,7 @@ function parseFiguredBass(elements, attrs) {
2538
2541
  const suffixContent = figEl["suffix"];
2539
2542
  for (const item of suffixContent) {
2540
2543
  if (item["#text"] !== void 0) {
2541
- figure.suffix = String(item["#text"]);
2544
+ figure.suffix = String(item["#text"]).trim();
2542
2545
  break;
2543
2546
  }
2544
2547
  }
@@ -2601,7 +2604,7 @@ function parseSound(elements, attrs) {
2601
2604
  const typeContent = swingEl["swing-type"];
2602
2605
  for (const item of typeContent) {
2603
2606
  if (item["#text"] !== void 0) {
2604
- swing.swingType = String(item["#text"]);
2607
+ swing.swingType = String(item["#text"]).trim();
2605
2608
  break;
2606
2609
  }
2607
2610
  }
@@ -3749,6 +3752,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3749
3752
  };
3750
3753
  if (isFirstMeasure) {
3751
3754
  measure.attributes = {
3755
+ _id: generateId(),
3752
3756
  divisions: DIVISIONS,
3753
3757
  time: timeSignature,
3754
3758
  key: keySignature,
@@ -3758,7 +3762,7 @@ function buildMeasures(tokens, unitNote, keySignature, timeSignature, measureDur
3758
3762
  }
3759
3763
  if (pendingKeyChange) {
3760
3764
  if (!measure.attributes) {
3761
- measure.attributes = {};
3765
+ measure.attributes = { _id: generateId() };
3762
3766
  }
3763
3767
  const kValue = pendingKeyChange.replace(/^K:\s*/, "");
3764
3768
  measure.attributes.key = parseKeySignature2(kValue);
@@ -1,2 +1,2 @@
1
- import '../types-CgndcKdd.mjs';
2
- export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, b0 as LowerAccidentalOptions, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, P as insertClefChange, E as insertMeasure, i as insertNote, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric } from '../index-BhQcAxLm.mjs';
1
+ import '../types-CkeI8vw6.mjs';
2
+ export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, b0 as LowerAccidentalOptions, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, P as insertClefChange, E as insertMeasure, i as insertNote, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric } from '../index-CqTQv7KL.mjs';
@@ -1,2 +1,2 @@
1
- import '../types-CgndcKdd.js';
2
- export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, b0 as LowerAccidentalOptions, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, P as insertClefChange, E as insertMeasure, i as insertNote, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric } from '../index-DUXUhmaM.js';
1
+ import '../types-CkeI8vw6.js';
2
+ export { ba as AddArticulationOptions, bj as AddBeamOptions, c8 as AddBowingOptions, ch as AddBreathMarkOptions, ck as AddCaesuraOptions, aW as AddChordOptions, c2 as AddChordSymbolOptions, bS as AddCodaOptions, bc as AddDynamicsOptions, bM as AddEndingOptions, bz as AddFermataOptions, c5 as AddFingeringOptions, bU as AddGraceNoteOptions, b$ as AddHarmonyOptions, bX as AddLyricOptions, bT as AddNavigationOptions, cd as AddOctaveShiftOptions, bB as AddOrnamentOptions, b2 as AddPartOptions, bD as AddPedalOptions, bH as AddRehearsalMarkOptions, bI as AddRepeatBarlineOptions, bK as AddRepeatOptions, bR as AddSegnoOptions, b8 as AddSlurOptions, ca as AddStringNumberOptions, bu as AddTempoOptions, bF as AddTextDirectionOptions, bG as AddTextOptions, b6 as AddTieOptions, b1 as AddVoiceOptions, bx as AddWedgeOptions, bl as AutoBeamOptions, bQ as BarStyle, c7 as BowingType, cg as BreathMarkValue, cj as CaesuraValue, bO as ChangeBarlineOptions, bg as ChangeClefOptions, aX as ChangeNoteDurationOptions, bW as ConvertToGraceOptions, br as CopyNotesMultiMeasureOptions, bo as CopyNotesOptions, bh as CreateTupletOptions, bq as CutNotesOptions, b3 as DuplicatePartOptions, b_ as HarmonyKind, bf as InsertClefChangeOptions, aU as InsertNoteOptions, b0 as LowerAccidentalOptions, be as ModifyDynamicsOptions, bw as ModifyTempoOptions, b5 as MoveNoteToStaffOptions, bs as MultiMeasureSelection, bn as NoteSelection, cc as OctaveShiftType, aT as OperationErrorCode, aS as OperationResult, bt as PasteNotesMultiMeasureOptions, bp as PasteNotesOptions, a$ as RaiseAccidentalOptions, bb as RemoveArticulationOptions, bk as RemoveBeamOptions, c9 as RemoveBowingOptions, ci as RemoveBreathMarkOptions, cl as RemoveCaesuraOptions, c3 as RemoveChordSymbolOptions, bd as RemoveDynamicsOptions, bN as RemoveEndingOptions, bA as RemoveFermataOptions, c6 as RemoveFingeringOptions, bV as RemoveGraceNoteOptions, c0 as RemoveHarmonyOptions, bY as RemoveLyricOptions, aV as RemoveNoteOptions, cf as RemoveOctaveShiftOptions, bC as RemoveOrnamentOptions, bE as RemovePedalOptions, bJ as RemoveRepeatBarlineOptions, bL as RemoveRepeatOptions, b9 as RemoveSlurOptions, cb as RemoveStringNumberOptions, bv as RemoveTempoOptions, b7 as RemoveTieOptions, bi as RemoveTupletOptions, by as RemoveWedgeOptions, bP as SetBarlineOptions, bm as SetBeamingOptions, aZ as SetNotePitchBySemitoneOptions, aY as SetNotePitchOptions, b4 as SetStavesOptions, a_ as ShiftNotePitchOptions, ce as StopOctaveShiftOptions, c4 as UpdateChordSymbolOptions, c1 as UpdateHarmonyOptions, bZ as UpdateLyricOptions, cH as ValidationError, K as addArticulation, T as addBeam, aH as addBowing, aO as addBreathMark, aQ as addCaesura, b as addChord, j as addChordNote, p as addChordNoteChecked, aC as addChordSymbol, ao as addCoda, ap as addDaCapo, aq as addDalSegno, M as addDynamics, aj as addEnding, a6 as addFermata, ar as addFine, aF as addFingering, at as addGraceNote, az as addHarmony, aw as addLyric, g as addNote, n as addNoteChecked, aL as addOctaveShift, a8 as addOrnament, x as addPart, aa as addPedal, ae as addRehearsalMark, ah as addRepeat, af as addRepeatBarline, an as addSegno, I as addSlur, aJ as addStringNumber, a1 as addTempo, ad as addText, ac as addTextDirection, G as addTie, as as addToCoda, w as addVoice, a4 as addWedge, W as autoBeam, al as changeBarline, Q as changeClef, C as changeKey, e as changeNoteDuration, D as changeTime, av as convertToGrace, Y as copyNotes, $ as copyNotesMultiMeasure, R as createTuplet, _ as cutNotes, F as deleteMeasure, h as deleteNote, o as deleteNoteChecked, z as duplicatePart, P as insertClefChange, E as insertMeasure, i as insertNote, l as lowerAccidental, O as modifyDynamics, k as modifyNoteDuration, u as modifyNoteDurationChecked, m as modifyNotePitch, q as modifyNotePitchChecked, a3 as modifyTempo, B as moveNoteToStaff, Z as pasteNotes, a0 as pasteNotesMultiMeasure, f as raiseAccidental, L as removeArticulation, U as removeBeam, aI as removeBowing, aP as removeBreathMark, aR as removeCaesura, aD as removeChordSymbol, N as removeDynamics, ak as removeEnding, a7 as removeFermata, aG as removeFingering, au as removeGraceNote, aA as removeHarmony, ax as removeLyric, r as removeNote, aN as removeOctaveShift, a9 as removeOrnament, y as removePart, ab as removePedal, ai as removeRepeat, ag as removeRepeatBarline, J as removeSlur, aK as removeStringNumber, a2 as removeTempo, H as removeTie, S as removeTuplet, a5 as removeWedge, am as setBarline, X as setBeaming, s as setNotePitch, c as setNotePitchBySemitone, A as setStaves, d as shiftNotePitch, aM as stopOctaveShift, t as transpose, v as transposeChecked, aE as updateChordSymbol, aB as updateHarmony, ay as updateLyric } from '../index-DyqMLT-2.js';
@@ -105,7 +105,7 @@
105
105
 
106
106
 
107
107
 
108
- var _chunkLLFU3JZAjs = require('../chunk-LLFU3JZA.js');
108
+ var _chunk2SI2QEEVjs = require('../chunk-2SI2QEEV.js');
109
109
  require('../chunk-24XBPMRJ.js');
110
110
 
111
111
 
@@ -214,4 +214,4 @@ require('../chunk-24XBPMRJ.js');
214
214
 
215
215
 
216
216
 
217
- exports.addArticulation = _chunkLLFU3JZAjs.addArticulation; exports.addBeam = _chunkLLFU3JZAjs.addBeam; exports.addBowing = _chunkLLFU3JZAjs.addBowing; exports.addBreathMark = _chunkLLFU3JZAjs.addBreathMark; exports.addCaesura = _chunkLLFU3JZAjs.addCaesura; exports.addChord = _chunkLLFU3JZAjs.addChord; exports.addChordNote = _chunkLLFU3JZAjs.addChordNote; exports.addChordNoteChecked = _chunkLLFU3JZAjs.addChordNoteChecked; exports.addChordSymbol = _chunkLLFU3JZAjs.addChordSymbol; exports.addCoda = _chunkLLFU3JZAjs.addCoda; exports.addDaCapo = _chunkLLFU3JZAjs.addDaCapo; exports.addDalSegno = _chunkLLFU3JZAjs.addDalSegno; exports.addDynamics = _chunkLLFU3JZAjs.addDynamics; exports.addEnding = _chunkLLFU3JZAjs.addEnding; exports.addFermata = _chunkLLFU3JZAjs.addFermata; exports.addFine = _chunkLLFU3JZAjs.addFine; exports.addFingering = _chunkLLFU3JZAjs.addFingering; exports.addGraceNote = _chunkLLFU3JZAjs.addGraceNote; exports.addHarmony = _chunkLLFU3JZAjs.addHarmony; exports.addLyric = _chunkLLFU3JZAjs.addLyric; exports.addNote = _chunkLLFU3JZAjs.addNote; exports.addNoteChecked = _chunkLLFU3JZAjs.addNoteChecked; exports.addOctaveShift = _chunkLLFU3JZAjs.addOctaveShift; exports.addOrnament = _chunkLLFU3JZAjs.addOrnament; exports.addPart = _chunkLLFU3JZAjs.addPart; exports.addPedal = _chunkLLFU3JZAjs.addPedal; exports.addRehearsalMark = _chunkLLFU3JZAjs.addRehearsalMark; exports.addRepeat = _chunkLLFU3JZAjs.addRepeat; exports.addRepeatBarline = _chunkLLFU3JZAjs.addRepeatBarline; exports.addSegno = _chunkLLFU3JZAjs.addSegno; exports.addSlur = _chunkLLFU3JZAjs.addSlur; exports.addStringNumber = _chunkLLFU3JZAjs.addStringNumber; exports.addTempo = _chunkLLFU3JZAjs.addTempo; exports.addText = _chunkLLFU3JZAjs.addText; exports.addTextDirection = _chunkLLFU3JZAjs.addTextDirection; exports.addTie = _chunkLLFU3JZAjs.addTie; exports.addToCoda = _chunkLLFU3JZAjs.addToCoda; exports.addVoice = _chunkLLFU3JZAjs.addVoice; exports.addWedge = _chunkLLFU3JZAjs.addWedge; exports.autoBeam = _chunkLLFU3JZAjs.autoBeam; exports.changeBarline = _chunkLLFU3JZAjs.changeBarline; exports.changeClef = _chunkLLFU3JZAjs.changeClef; exports.changeKey = _chunkLLFU3JZAjs.changeKey; exports.changeNoteDuration = _chunkLLFU3JZAjs.changeNoteDuration; exports.changeTime = _chunkLLFU3JZAjs.changeTime; exports.convertToGrace = _chunkLLFU3JZAjs.convertToGrace; exports.copyNotes = _chunkLLFU3JZAjs.copyNotes; exports.copyNotesMultiMeasure = _chunkLLFU3JZAjs.copyNotesMultiMeasure; exports.createTuplet = _chunkLLFU3JZAjs.createTuplet; exports.cutNotes = _chunkLLFU3JZAjs.cutNotes; exports.deleteMeasure = _chunkLLFU3JZAjs.deleteMeasure; exports.deleteNote = _chunkLLFU3JZAjs.deleteNote; exports.deleteNoteChecked = _chunkLLFU3JZAjs.deleteNoteChecked; exports.duplicatePart = _chunkLLFU3JZAjs.duplicatePart; exports.insertClefChange = _chunkLLFU3JZAjs.insertClefChange; exports.insertMeasure = _chunkLLFU3JZAjs.insertMeasure; exports.insertNote = _chunkLLFU3JZAjs.insertNote; exports.lowerAccidental = _chunkLLFU3JZAjs.lowerAccidental; exports.modifyDynamics = _chunkLLFU3JZAjs.modifyDynamics; exports.modifyNoteDuration = _chunkLLFU3JZAjs.modifyNoteDuration; exports.modifyNoteDurationChecked = _chunkLLFU3JZAjs.modifyNoteDurationChecked; exports.modifyNotePitch = _chunkLLFU3JZAjs.modifyNotePitch; exports.modifyNotePitchChecked = _chunkLLFU3JZAjs.modifyNotePitchChecked; exports.modifyTempo = _chunkLLFU3JZAjs.modifyTempo; exports.moveNoteToStaff = _chunkLLFU3JZAjs.moveNoteToStaff; exports.pasteNotes = _chunkLLFU3JZAjs.pasteNotes; exports.pasteNotesMultiMeasure = _chunkLLFU3JZAjs.pasteNotesMultiMeasure; exports.raiseAccidental = _chunkLLFU3JZAjs.raiseAccidental; exports.removeArticulation = _chunkLLFU3JZAjs.removeArticulation; exports.removeBeam = _chunkLLFU3JZAjs.removeBeam; exports.removeBowing = _chunkLLFU3JZAjs.removeBowing; exports.removeBreathMark = _chunkLLFU3JZAjs.removeBreathMark; exports.removeCaesura = _chunkLLFU3JZAjs.removeCaesura; exports.removeChordSymbol = _chunkLLFU3JZAjs.removeChordSymbol; exports.removeDynamics = _chunkLLFU3JZAjs.removeDynamics; exports.removeEnding = _chunkLLFU3JZAjs.removeEnding; exports.removeFermata = _chunkLLFU3JZAjs.removeFermata; exports.removeFingering = _chunkLLFU3JZAjs.removeFingering; exports.removeGraceNote = _chunkLLFU3JZAjs.removeGraceNote; exports.removeHarmony = _chunkLLFU3JZAjs.removeHarmony; exports.removeLyric = _chunkLLFU3JZAjs.removeLyric; exports.removeNote = _chunkLLFU3JZAjs.removeNote; exports.removeOctaveShift = _chunkLLFU3JZAjs.removeOctaveShift; exports.removeOrnament = _chunkLLFU3JZAjs.removeOrnament; exports.removePart = _chunkLLFU3JZAjs.removePart; exports.removePedal = _chunkLLFU3JZAjs.removePedal; exports.removeRepeat = _chunkLLFU3JZAjs.removeRepeat; exports.removeRepeatBarline = _chunkLLFU3JZAjs.removeRepeatBarline; exports.removeSlur = _chunkLLFU3JZAjs.removeSlur; exports.removeStringNumber = _chunkLLFU3JZAjs.removeStringNumber; exports.removeTempo = _chunkLLFU3JZAjs.removeTempo; exports.removeTie = _chunkLLFU3JZAjs.removeTie; exports.removeTuplet = _chunkLLFU3JZAjs.removeTuplet; exports.removeWedge = _chunkLLFU3JZAjs.removeWedge; exports.setBarline = _chunkLLFU3JZAjs.setBarline; exports.setBeaming = _chunkLLFU3JZAjs.setBeaming; exports.setNotePitch = _chunkLLFU3JZAjs.setNotePitch; exports.setNotePitchBySemitone = _chunkLLFU3JZAjs.setNotePitchBySemitone; exports.setStaves = _chunkLLFU3JZAjs.setStaves; exports.shiftNotePitch = _chunkLLFU3JZAjs.shiftNotePitch; exports.stopOctaveShift = _chunkLLFU3JZAjs.stopOctaveShift; exports.transpose = _chunkLLFU3JZAjs.transpose; exports.transposeChecked = _chunkLLFU3JZAjs.transposeChecked; exports.updateChordSymbol = _chunkLLFU3JZAjs.updateChordSymbol; exports.updateHarmony = _chunkLLFU3JZAjs.updateHarmony; exports.updateLyric = _chunkLLFU3JZAjs.updateLyric;
217
+ exports.addArticulation = _chunk2SI2QEEVjs.addArticulation; exports.addBeam = _chunk2SI2QEEVjs.addBeam; exports.addBowing = _chunk2SI2QEEVjs.addBowing; exports.addBreathMark = _chunk2SI2QEEVjs.addBreathMark; exports.addCaesura = _chunk2SI2QEEVjs.addCaesura; exports.addChord = _chunk2SI2QEEVjs.addChord; exports.addChordNote = _chunk2SI2QEEVjs.addChordNote; exports.addChordNoteChecked = _chunk2SI2QEEVjs.addChordNoteChecked; exports.addChordSymbol = _chunk2SI2QEEVjs.addChordSymbol; exports.addCoda = _chunk2SI2QEEVjs.addCoda; exports.addDaCapo = _chunk2SI2QEEVjs.addDaCapo; exports.addDalSegno = _chunk2SI2QEEVjs.addDalSegno; exports.addDynamics = _chunk2SI2QEEVjs.addDynamics; exports.addEnding = _chunk2SI2QEEVjs.addEnding; exports.addFermata = _chunk2SI2QEEVjs.addFermata; exports.addFine = _chunk2SI2QEEVjs.addFine; exports.addFingering = _chunk2SI2QEEVjs.addFingering; exports.addGraceNote = _chunk2SI2QEEVjs.addGraceNote; exports.addHarmony = _chunk2SI2QEEVjs.addHarmony; exports.addLyric = _chunk2SI2QEEVjs.addLyric; exports.addNote = _chunk2SI2QEEVjs.addNote; exports.addNoteChecked = _chunk2SI2QEEVjs.addNoteChecked; exports.addOctaveShift = _chunk2SI2QEEVjs.addOctaveShift; exports.addOrnament = _chunk2SI2QEEVjs.addOrnament; exports.addPart = _chunk2SI2QEEVjs.addPart; exports.addPedal = _chunk2SI2QEEVjs.addPedal; exports.addRehearsalMark = _chunk2SI2QEEVjs.addRehearsalMark; exports.addRepeat = _chunk2SI2QEEVjs.addRepeat; exports.addRepeatBarline = _chunk2SI2QEEVjs.addRepeatBarline; exports.addSegno = _chunk2SI2QEEVjs.addSegno; exports.addSlur = _chunk2SI2QEEVjs.addSlur; exports.addStringNumber = _chunk2SI2QEEVjs.addStringNumber; exports.addTempo = _chunk2SI2QEEVjs.addTempo; exports.addText = _chunk2SI2QEEVjs.addText; exports.addTextDirection = _chunk2SI2QEEVjs.addTextDirection; exports.addTie = _chunk2SI2QEEVjs.addTie; exports.addToCoda = _chunk2SI2QEEVjs.addToCoda; exports.addVoice = _chunk2SI2QEEVjs.addVoice; exports.addWedge = _chunk2SI2QEEVjs.addWedge; exports.autoBeam = _chunk2SI2QEEVjs.autoBeam; exports.changeBarline = _chunk2SI2QEEVjs.changeBarline; exports.changeClef = _chunk2SI2QEEVjs.changeClef; exports.changeKey = _chunk2SI2QEEVjs.changeKey; exports.changeNoteDuration = _chunk2SI2QEEVjs.changeNoteDuration; exports.changeTime = _chunk2SI2QEEVjs.changeTime; exports.convertToGrace = _chunk2SI2QEEVjs.convertToGrace; exports.copyNotes = _chunk2SI2QEEVjs.copyNotes; exports.copyNotesMultiMeasure = _chunk2SI2QEEVjs.copyNotesMultiMeasure; exports.createTuplet = _chunk2SI2QEEVjs.createTuplet; exports.cutNotes = _chunk2SI2QEEVjs.cutNotes; exports.deleteMeasure = _chunk2SI2QEEVjs.deleteMeasure; exports.deleteNote = _chunk2SI2QEEVjs.deleteNote; exports.deleteNoteChecked = _chunk2SI2QEEVjs.deleteNoteChecked; exports.duplicatePart = _chunk2SI2QEEVjs.duplicatePart; exports.insertClefChange = _chunk2SI2QEEVjs.insertClefChange; exports.insertMeasure = _chunk2SI2QEEVjs.insertMeasure; exports.insertNote = _chunk2SI2QEEVjs.insertNote; exports.lowerAccidental = _chunk2SI2QEEVjs.lowerAccidental; exports.modifyDynamics = _chunk2SI2QEEVjs.modifyDynamics; exports.modifyNoteDuration = _chunk2SI2QEEVjs.modifyNoteDuration; exports.modifyNoteDurationChecked = _chunk2SI2QEEVjs.modifyNoteDurationChecked; exports.modifyNotePitch = _chunk2SI2QEEVjs.modifyNotePitch; exports.modifyNotePitchChecked = _chunk2SI2QEEVjs.modifyNotePitchChecked; exports.modifyTempo = _chunk2SI2QEEVjs.modifyTempo; exports.moveNoteToStaff = _chunk2SI2QEEVjs.moveNoteToStaff; exports.pasteNotes = _chunk2SI2QEEVjs.pasteNotes; exports.pasteNotesMultiMeasure = _chunk2SI2QEEVjs.pasteNotesMultiMeasure; exports.raiseAccidental = _chunk2SI2QEEVjs.raiseAccidental; exports.removeArticulation = _chunk2SI2QEEVjs.removeArticulation; exports.removeBeam = _chunk2SI2QEEVjs.removeBeam; exports.removeBowing = _chunk2SI2QEEVjs.removeBowing; exports.removeBreathMark = _chunk2SI2QEEVjs.removeBreathMark; exports.removeCaesura = _chunk2SI2QEEVjs.removeCaesura; exports.removeChordSymbol = _chunk2SI2QEEVjs.removeChordSymbol; exports.removeDynamics = _chunk2SI2QEEVjs.removeDynamics; exports.removeEnding = _chunk2SI2QEEVjs.removeEnding; exports.removeFermata = _chunk2SI2QEEVjs.removeFermata; exports.removeFingering = _chunk2SI2QEEVjs.removeFingering; exports.removeGraceNote = _chunk2SI2QEEVjs.removeGraceNote; exports.removeHarmony = _chunk2SI2QEEVjs.removeHarmony; exports.removeLyric = _chunk2SI2QEEVjs.removeLyric; exports.removeNote = _chunk2SI2QEEVjs.removeNote; exports.removeOctaveShift = _chunk2SI2QEEVjs.removeOctaveShift; exports.removeOrnament = _chunk2SI2QEEVjs.removeOrnament; exports.removePart = _chunk2SI2QEEVjs.removePart; exports.removePedal = _chunk2SI2QEEVjs.removePedal; exports.removeRepeat = _chunk2SI2QEEVjs.removeRepeat; exports.removeRepeatBarline = _chunk2SI2QEEVjs.removeRepeatBarline; exports.removeSlur = _chunk2SI2QEEVjs.removeSlur; exports.removeStringNumber = _chunk2SI2QEEVjs.removeStringNumber; exports.removeTempo = _chunk2SI2QEEVjs.removeTempo; exports.removeTie = _chunk2SI2QEEVjs.removeTie; exports.removeTuplet = _chunk2SI2QEEVjs.removeTuplet; exports.removeWedge = _chunk2SI2QEEVjs.removeWedge; exports.setBarline = _chunk2SI2QEEVjs.setBarline; exports.setBeaming = _chunk2SI2QEEVjs.setBeaming; exports.setNotePitch = _chunk2SI2QEEVjs.setNotePitch; exports.setNotePitchBySemitone = _chunk2SI2QEEVjs.setNotePitchBySemitone; exports.setStaves = _chunk2SI2QEEVjs.setStaves; exports.shiftNotePitch = _chunk2SI2QEEVjs.shiftNotePitch; exports.stopOctaveShift = _chunk2SI2QEEVjs.stopOctaveShift; exports.transpose = _chunk2SI2QEEVjs.transpose; exports.transposeChecked = _chunk2SI2QEEVjs.transposeChecked; exports.updateChordSymbol = _chunk2SI2QEEVjs.updateChordSymbol; exports.updateHarmony = _chunk2SI2QEEVjs.updateHarmony; exports.updateLyric = _chunk2SI2QEEVjs.updateLyric;
@@ -105,7 +105,7 @@ import {
105
105
  updateChordSymbol,
106
106
  updateHarmony,
107
107
  updateLyric
108
- } from "../chunk-AWYTZMJB.mjs";
108
+ } from "../chunk-OFI5WOC5.mjs";
109
109
  import "../chunk-LYSKKBKA.mjs";
110
110
  export {
111
111
  addArticulation,
@@ -1,4 +1,4 @@
1
- import { M as Measure, N as NoteEntry, V as VoiceGroup, q as StaffGroup, r as NoteWithPosition, s as Chord, S as Score, t as NoteIteratorItem, h as MeasureEntry, x as VoiceToStaffMap, f as Part, C as Clef, G as StaffRange, H as PositionQueryOptions, I as VerticalSlice, J as VoiceLine, E as EntryWithContext, y as NoteWithContext, O as AdjacentNotes, z as DirectionWithContext, a as DirectionEntry, Q as DirectionKind, R as DynamicWithContext, U as TempoWithContext, W as PedalWithContext, X as WedgeWithContext, Y as OctaveShiftWithContext, Z as TiedNoteGroup, _ as SlurSpan, $ as TupletGroup, a0 as BeamGroup, a1 as NotationType, a2 as HarmonyWithContext, ae as HarmonyEntry, a3 as LyricWithContext, a4 as AssembledLyrics, a6 as RepeatInfo, a5 as BarlineWithContext, a7 as EndingInfo, a8 as KeyChangeInfo, a9 as TimeChangeInfo, aa as ClefChangeInfo, ab as StructuralChanges, g as MeasureAttributes, P as Pitch } from '../types-CgndcKdd.mjs';
1
+ import { M as Measure, N as NoteEntry, V as VoiceGroup, q as StaffGroup, r as NoteWithPosition, s as Chord, S as Score, t as NoteIteratorItem, h as MeasureEntry, x as VoiceToStaffMap, f as Part, C as Clef, G as StaffRange, H as PositionQueryOptions, I as VerticalSlice, J as VoiceLine, E as EntryWithContext, y as NoteWithContext, O as AdjacentNotes, z as DirectionWithContext, a as DirectionEntry, Q as DirectionKind, R as DynamicWithContext, U as TempoWithContext, W as PedalWithContext, X as WedgeWithContext, Y as OctaveShiftWithContext, Z as TiedNoteGroup, _ as SlurSpan, $ as TupletGroup, a0 as BeamGroup, a1 as NotationType, a2 as HarmonyWithContext, ae as HarmonyEntry, a3 as LyricWithContext, a4 as AssembledLyrics, a6 as RepeatInfo, a5 as BarlineWithContext, a7 as EndingInfo, a8 as KeyChangeInfo, a9 as TimeChangeInfo, aa as ClefChangeInfo, ab as StructuralChanges, g as MeasureAttributes, P as Pitch } from '../types-CkeI8vw6.mjs';
2
2
 
3
3
  /**
4
4
  * Filter options for voice/staff selection
@@ -1,4 +1,4 @@
1
- import { M as Measure, N as NoteEntry, V as VoiceGroup, q as StaffGroup, r as NoteWithPosition, s as Chord, S as Score, t as NoteIteratorItem, h as MeasureEntry, x as VoiceToStaffMap, f as Part, C as Clef, G as StaffRange, H as PositionQueryOptions, I as VerticalSlice, J as VoiceLine, E as EntryWithContext, y as NoteWithContext, O as AdjacentNotes, z as DirectionWithContext, a as DirectionEntry, Q as DirectionKind, R as DynamicWithContext, U as TempoWithContext, W as PedalWithContext, X as WedgeWithContext, Y as OctaveShiftWithContext, Z as TiedNoteGroup, _ as SlurSpan, $ as TupletGroup, a0 as BeamGroup, a1 as NotationType, a2 as HarmonyWithContext, ae as HarmonyEntry, a3 as LyricWithContext, a4 as AssembledLyrics, a6 as RepeatInfo, a5 as BarlineWithContext, a7 as EndingInfo, a8 as KeyChangeInfo, a9 as TimeChangeInfo, aa as ClefChangeInfo, ab as StructuralChanges, g as MeasureAttributes, P as Pitch } from '../types-CgndcKdd.js';
1
+ import { M as Measure, N as NoteEntry, V as VoiceGroup, q as StaffGroup, r as NoteWithPosition, s as Chord, S as Score, t as NoteIteratorItem, h as MeasureEntry, x as VoiceToStaffMap, f as Part, C as Clef, G as StaffRange, H as PositionQueryOptions, I as VerticalSlice, J as VoiceLine, E as EntryWithContext, y as NoteWithContext, O as AdjacentNotes, z as DirectionWithContext, a as DirectionEntry, Q as DirectionKind, R as DynamicWithContext, U as TempoWithContext, W as PedalWithContext, X as WedgeWithContext, Y as OctaveShiftWithContext, Z as TiedNoteGroup, _ as SlurSpan, $ as TupletGroup, a0 as BeamGroup, a1 as NotationType, a2 as HarmonyWithContext, ae as HarmonyEntry, a3 as LyricWithContext, a4 as AssembledLyrics, a6 as RepeatInfo, a5 as BarlineWithContext, a7 as EndingInfo, a8 as KeyChangeInfo, a9 as TimeChangeInfo, aa as ClefChangeInfo, ab as StructuralChanges, g as MeasureAttributes, P as Pitch } from '../types-CkeI8vw6.js';
2
2
 
3
3
  /**
4
4
  * Filter options for voice/staff selection
@@ -236,6 +236,7 @@ interface MeasureNumbering {
236
236
  system?: 'only-top' | 'only-bottom' | 'all-system-parts' | 'none';
237
237
  }
238
238
  interface MeasureAttributes {
239
+ _id?: string;
239
240
  divisions?: number;
240
241
  time?: TimeSignature;
241
242
  times?: TimeSignature[];
@@ -236,6 +236,7 @@ interface MeasureNumbering {
236
236
  system?: 'only-top' | 'only-bottom' | 'all-system-parts' | 'none';
237
237
  }
238
238
  interface MeasureAttributes {
239
+ _id?: string;
239
240
  divisions?: number;
240
241
  time?: TimeSignature;
241
242
  times?: TimeSignature[];
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "musicxml-io",
3
- "version": "0.3.7",
3
+ "version": "0.3.9",
4
4
  "description": "Parse and serialize MusicXML (.xml/.mxl) and ABC notation with high round-trip fidelity",
5
5
  "author": "tan-z-tan",
6
6
  "license": "MIT",