@viritura/score-engine 0.2.1-next.42 → 0.2.1-next.43

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/dist/index.js CHANGED
@@ -2265,9 +2265,9 @@ function interpolateBeatAnchors(bounds, beat, endX) {
2265
2265
 
2266
2266
  // packages/score-engine/src/buildInfo.ts
2267
2267
  init_define_import_meta_env();
2268
- var PACKAGE_VERSION = "0.2.1-next.42", BUNDLE_WORKER_FILE = "score-engine.worker.js";
2268
+ var PACKAGE_VERSION = "0.2.1-next.43", BUNDLE_WORKER_FILE = "score-engine.worker.js";
2269
2269
  function buildCommit() {
2270
- return "addcef3a89be5d1d76a3f918b2aacbdc0dd7c30a";
2270
+ return "8c7311437c884c21c263d29a5cd636cf11033153";
2271
2271
  }
2272
2272
  function bundledAssetBase() {
2273
2273
  let moduleUrl = import.meta.url;
@@ -7308,7 +7308,7 @@ function validate365(data, { instancePath = "", parentData, parentDataProperty,
7308
7308
  return validate365.errors = vErrors, errors === 0;
7309
7309
  }
7310
7310
  validate365.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
7311
- var schema334 = { type: "object", description: "Viritura vendor extensions on the MNX document root (the `_x.viritura` dict on the top-level score object).", properties: { metadata: { $ref: "#/$defs/score-metadata", description: "Score-level bibliographic metadata." }, textStyles: { $ref: "#/$defs/text-styles", description: "Per-document text style overrides." }, placement: { $ref: "#/$defs/placement", description: "Per-document placement (clearance) overrides keyed by dependent kind." }, timeSignatures: { $ref: "#/$defs/time-signature-styles", description: "Per-document time signature engraving styles for scores and parts." }, chordSymbolStyle: { $ref: "#/$defs/chord-symbol-style", description: "Score-wide chord-symbol engraving style." }, instrumentChangeStyle: { type: "object", additionalProperties: !1, properties: { showChangeLabel: { type: "boolean", default: !0 }, showAdvanceReminder: { type: "boolean", default: !0 } }, description: "Score-wide change-label visibility defaults. Per-instance hidden false explicitly shows; hidden true hides; absent inherits." }, soundProfile: { $ref: "#/$defs/sound-profile-assignment", description: "Per-part playback sound assignments keyed by stable MNX part ID." }, videoSync: { $ref: "#/$defs/video-sync", description: "Score-to-picture synchronization settings." }, lyricWorkflow: { $ref: "#/$defs/lyric-workflow", description: "Original lyric source text and stable token anchors for distribution and repair." } }, additionalProperties: !1 }, schema335 = { type: "object", description: "Score-level bibliographic metadata. Stored at `_x.viritura.metadata` on the score root. The engine consumes `title`/`subtitle`/`composer`/`arranger`/`copyright`; the remaining fields are preserved verbatim from MusicXML import (`work-title`, `movement-title`, etc.) for round-tripping.", properties: { title: { type: "string", description: "Display title (typically movement title, falling back to work title)." }, subtitle: { type: "string", description: "Work subtitle." }, composer: { type: "string", description: "Composer credit." }, lyricist: { type: "string", description: "Lyricist credit." }, arranger: { type: "string", description: "Arranger credit." }, copyright: { type: "string", description: "Copyright notice." }, workTitle: { type: "string", description: "MusicXML `work-title`." }, workNumber: { type: "string", description: "MusicXML `work-number`." }, movementTitle: { type: "string", description: "MusicXML `movement-title`." }, movementNumber: { type: "string", description: "MusicXML `movement-number`." } }, additionalProperties: !1 }, schema368 = { type: "object", description: "Score-wide chord-symbol engraving choices.", properties: { rootCase: { type: "string", enum: ["uppercase", "lowercaseMinor"] }, majorSeventh: { type: "string", enum: ["triangle", "maj", "M"] }, minor: { type: "string", enum: ["m", "min", "minus", "none"] }, diminished: { type: "string", enum: ["symbol", "dim"] }, halfDiminished: { type: "string", enum: ["symbol", "minorFlatFive"] }, augmented: { type: "string", enum: ["plus", "aug"] }, extensions: { type: "string", enum: ["superscript", "baseline"] } }, additionalProperties: !1 }, func1 = Object.prototype.hasOwnProperty, schema336 = { type: "object", description: "Per-document text style overrides keyed by role. Each entry is a partial override merged over the engine's built-in stylesheet at layout time. Stored at `_x.viritura.textStyles` on the score root.", properties: { title: { $ref: "#/$defs/text-style" }, subtitle: { $ref: "#/$defs/text-style" }, composer: { $ref: "#/$defs/text-style" }, arranger: { $ref: "#/$defs/text-style" }, staffLabel: { $ref: "#/$defs/text-style" }, pageNumber: { $ref: "#/$defs/text-style" }, tempo: { $ref: "#/$defs/text-style" }, pedalText: { $ref: "#/$defs/text-style" }, copyright: { $ref: "#/$defs/text-style" } }, additionalProperties: !1 };
7311
+ var schema334 = { type: "object", description: "Viritura vendor extensions on the MNX document root (the `_x.viritura` dict on the top-level score object).", properties: { metadata: { $ref: "#/$defs/score-metadata", description: "Score-level bibliographic metadata." }, textStyles: { $ref: "#/$defs/text-styles", description: "Per-document text style overrides." }, placement: { $ref: "#/$defs/placement", description: "Per-document placement (clearance) overrides keyed by dependent kind." }, timeSignatures: { $ref: "#/$defs/time-signature-styles", description: "Per-document time signature engraving styles for scores and parts." }, chordSymbolStyle: { $ref: "#/$defs/chord-symbol-style", description: "Score-wide chord-symbol engraving style." }, instrumentChangeStyle: { type: "object", additionalProperties: !1, properties: { showChangeLabel: { type: "boolean", default: !0 }, showAdvanceReminder: { type: "boolean", default: !0 } }, description: "Score-wide change-label visibility defaults. Per-instance hidden false explicitly shows; hidden true hides; absent inherits." }, soundProfile: { $ref: "#/$defs/sound-profile-assignment", description: "Per-part playback sound assignments keyed by stable MNX part ID." }, mixer: { $ref: "#/$defs/score-mixer-settings", description: "Score-scoped channel, group, and master mixer settings." }, videoSync: { $ref: "#/$defs/video-sync", description: "Score-to-picture synchronization settings." }, lyricWorkflow: { $ref: "#/$defs/lyric-workflow", description: "Original lyric source text and stable token anchors for distribution and repair." } }, additionalProperties: !1 }, schema335 = { type: "object", description: "Score-level bibliographic metadata. Stored at `_x.viritura.metadata` on the score root. The engine consumes `title`/`subtitle`/`composer`/`arranger`/`copyright`; the remaining fields are preserved verbatim from MusicXML import (`work-title`, `movement-title`, etc.) for round-tripping.", properties: { title: { type: "string", description: "Display title (typically movement title, falling back to work title)." }, subtitle: { type: "string", description: "Work subtitle." }, composer: { type: "string", description: "Composer credit." }, lyricist: { type: "string", description: "Lyricist credit." }, arranger: { type: "string", description: "Arranger credit." }, copyright: { type: "string", description: "Copyright notice." }, workTitle: { type: "string", description: "MusicXML `work-title`." }, workNumber: { type: "string", description: "MusicXML `work-number`." }, movementTitle: { type: "string", description: "MusicXML `movement-title`." }, movementNumber: { type: "string", description: "MusicXML `movement-number`." } }, additionalProperties: !1 }, schema368 = { type: "object", description: "Score-wide chord-symbol engraving choices.", properties: { rootCase: { type: "string", enum: ["uppercase", "lowercaseMinor"] }, majorSeventh: { type: "string", enum: ["triangle", "maj", "M"] }, minor: { type: "string", enum: ["m", "min", "minus", "none"] }, diminished: { type: "string", enum: ["symbol", "dim"] }, halfDiminished: { type: "string", enum: ["symbol", "minorFlatFive"] }, augmented: { type: "string", enum: ["plus", "aug"] }, extensions: { type: "string", enum: ["superscript", "baseline"] } }, additionalProperties: !1 }, func1 = Object.prototype.hasOwnProperty, schema336 = { type: "object", description: "Per-document text style overrides keyed by role. Each entry is a partial override merged over the engine's built-in stylesheet at layout time. Stored at `_x.viritura.textStyles` on the score root.", properties: { title: { $ref: "#/$defs/text-style" }, subtitle: { $ref: "#/$defs/text-style" }, composer: { $ref: "#/$defs/text-style" }, arranger: { $ref: "#/$defs/text-style" }, staffLabel: { $ref: "#/$defs/text-style" }, pageNumber: { $ref: "#/$defs/text-style" }, tempo: { $ref: "#/$defs/text-style" }, pedalText: { $ref: "#/$defs/text-style" }, copyright: { $ref: "#/$defs/text-style" } }, additionalProperties: !1 };
7312
7312
  var schema338 = { type: "string", enum: ["serif", "sans-serif", "monospace"], description: "Generic font family for a text style. Maps to a curated typeface (serif\u2248Times, sans-serif\u2248Helvetica, monospace\u2248Courier)." }, schema339 = { type: "string", enum: ["left", "center", "right"], description: "Horizontal alignment of a text style relative to its anchor." }, pattern38 = new RegExp("^#[0-9a-fA-F]{6}$", "u");
7313
7313
  function validate373(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
7314
7314
  let vErrors = null, errors = 0, evaluated0 = validate373.evaluated;
@@ -8669,10 +8669,163 @@ function validate393(data, { instancePath = "", parentData, parentDataProperty,
8669
8669
  return validate393.errors = vErrors, errors === 0;
8670
8670
  }
8671
8671
  validate393.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
8672
- var schema371 = { type: "object", description: "Score-to-picture synchronization settings for film/TV scoring. Stored at `_x.viritura.videoSync` on the score root. MNX has no concept of picture, so the whole feature lives in one versioned vendor object rather than scattering unrelated extensions.", required: ["version", "pictureOffsetSeconds"], properties: { version: { type: "integer", minimum: 1, description: "Schema version of this payload." }, media: { $ref: "#/$defs/video-media-identity", description: "Attached picture identity. Absent when settings exist but no media is attached." }, pictureOffsetSeconds: { type: "number", description: "Media time (seconds) corresponding to score time zero. 120 means the score starts two minutes into the picture. Negative values place the score before the first frame." }, pictureAudioEnabled: { type: "boolean", description: "Whether the picture's production audio is audible. Defaults to false so attaching a video never doubles up against score playback." }, startTimecodeSeconds: { type: "number", description: "Display-only offset applied to the picture timecode readout, for deliveries that start at e.g. 01:00:00:00. Never affects the media time Viritura seeks to." }, frameRate: { type: "string", enum: ["23.976", "24", "25", "29.97", "29.97df", "30", "50", "59.94", "59.94df", "60"], description: "Frame rate of the delivery, as an identifier rather than a decimal, because NTSC rates are rational (23.976 is exactly 24000/1001) and because drop-frame is a labelling convention rather than a distinct speed. Browsers expose neither the file's true rate nor its drop-frame flag, so this is declared by the user." }, hitPoints: { type: "array", description: "Spotted moments in the picture, in no guaranteed order. Kept alongside the picture identity because they describe the film rather than the score, and so must survive any amount of rewriting of the music.", items: { $ref: "#/$defs/hit-point" } } }, additionalProperties: !1 };
8673
- var pattern39 = new RegExp("^sha256:[0-9a-f]{64}$", "u");
8672
+ var schema372 = { type: "object", properties: { volume: { type: "number", minimum: 0, maximum: 1.9952623149688795 }, pan: { type: "number", minimum: -1, maximum: 1 }, muted: { type: "boolean" }, solo: { type: "boolean" }, ensembleEnabled: { type: "boolean" }, spatialMode: { enum: ["stereo", "stage"] } }, additionalProperties: !1 };
8674
8673
  function validate395(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
8675
8674
  let vErrors = null, errors = 0, evaluated0 = validate395.evaluated;
8675
+ if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
8676
+ for (let key0 in data)
8677
+ if (!(key0 === "channels" || key0 === "groups" || key0 === "masterVolume" || key0 === "masterMuted")) {
8678
+ let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
8679
+ vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
8680
+ }
8681
+ if (data.channels !== void 0) {
8682
+ let data0 = data.channels;
8683
+ if (data0 && typeof data0 == "object" && !Array.isArray(data0))
8684
+ for (let key1 in data0) {
8685
+ let data1 = data0[key1];
8686
+ if (data1 && typeof data1 == "object" && !Array.isArray(data1)) {
8687
+ for (let key2 in data1)
8688
+ if (!(key2 === "volume" || key2 === "pan" || key2 === "muted" || key2 === "solo" || key2 === "ensembleEnabled" || key2 === "spatialMode")) {
8689
+ let err1 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), schemaPath: "#/$defs/mixer-channel-settings/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key2 }, message: "must NOT have additional properties" };
8690
+ vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
8691
+ }
8692
+ if (data1.volume !== void 0) {
8693
+ let data2 = data1.volume;
8694
+ if (typeof data2 == "number") {
8695
+ if (data2 > 1.9952623149688795 || isNaN(data2)) {
8696
+ let err2 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/volume", schemaPath: "#/$defs/mixer-channel-settings/properties/volume/maximum", keyword: "maximum", params: { comparison: "<=", limit: 1.9952623149688795 }, message: "must be <= 1.9952623149688795" };
8697
+ vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
8698
+ }
8699
+ if (data2 < 0 || isNaN(data2)) {
8700
+ let err3 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/volume", schemaPath: "#/$defs/mixer-channel-settings/properties/volume/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
8701
+ vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
8702
+ }
8703
+ } else {
8704
+ let err4 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/volume", schemaPath: "#/$defs/mixer-channel-settings/properties/volume/type", keyword: "type", params: { type: "number" }, message: "must be number" };
8705
+ vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
8706
+ }
8707
+ }
8708
+ if (data1.pan !== void 0) {
8709
+ let data3 = data1.pan;
8710
+ if (typeof data3 == "number") {
8711
+ if (data3 > 1 || isNaN(data3)) {
8712
+ let err5 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/pan", schemaPath: "#/$defs/mixer-channel-settings/properties/pan/maximum", keyword: "maximum", params: { comparison: "<=", limit: 1 }, message: "must be <= 1" };
8713
+ vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
8714
+ }
8715
+ if (data3 < -1 || isNaN(data3)) {
8716
+ let err6 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/pan", schemaPath: "#/$defs/mixer-channel-settings/properties/pan/minimum", keyword: "minimum", params: { comparison: ">=", limit: -1 }, message: "must be >= -1" };
8717
+ vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
8718
+ }
8719
+ } else {
8720
+ let err7 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/pan", schemaPath: "#/$defs/mixer-channel-settings/properties/pan/type", keyword: "type", params: { type: "number" }, message: "must be number" };
8721
+ vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
8722
+ }
8723
+ }
8724
+ if (data1.muted !== void 0 && typeof data1.muted != "boolean") {
8725
+ let err8 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/muted", schemaPath: "#/$defs/mixer-channel-settings/properties/muted/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
8726
+ vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
8727
+ }
8728
+ if (data1.solo !== void 0 && typeof data1.solo != "boolean") {
8729
+ let err9 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/solo", schemaPath: "#/$defs/mixer-channel-settings/properties/solo/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
8730
+ vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
8731
+ }
8732
+ if (data1.ensembleEnabled !== void 0 && typeof data1.ensembleEnabled != "boolean") {
8733
+ let err10 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/ensembleEnabled", schemaPath: "#/$defs/mixer-channel-settings/properties/ensembleEnabled/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
8734
+ vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
8735
+ }
8736
+ if (data1.spatialMode !== void 0) {
8737
+ let data7 = data1.spatialMode;
8738
+ if (!(data7 === "stereo" || data7 === "stage")) {
8739
+ let err11 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1") + "/spatialMode", schemaPath: "#/$defs/mixer-channel-settings/properties/spatialMode/enum", keyword: "enum", params: { allowedValues: schema372.properties.spatialMode.enum }, message: "must be equal to one of the allowed values" };
8740
+ vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
8741
+ }
8742
+ }
8743
+ } else {
8744
+ let err12 = { instancePath: instancePath + "/channels/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), schemaPath: "#/$defs/mixer-channel-settings/type", keyword: "type", params: { type: "object" }, message: "must be object" };
8745
+ vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
8746
+ }
8747
+ }
8748
+ else {
8749
+ let err13 = { instancePath: instancePath + "/channels", schemaPath: "#/properties/channels/type", keyword: "type", params: { type: "object" }, message: "must be object" };
8750
+ vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
8751
+ }
8752
+ }
8753
+ if (data.groups !== void 0) {
8754
+ let data8 = data.groups;
8755
+ if (data8 && typeof data8 == "object" && !Array.isArray(data8))
8756
+ for (let key3 in data8) {
8757
+ let data9 = data8[key3];
8758
+ if (data9 && typeof data9 == "object" && !Array.isArray(data9)) {
8759
+ for (let key4 in data9)
8760
+ if (!(key4 === "volume" || key4 === "muted" || key4 === "solo")) {
8761
+ let err14 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1"), schemaPath: "#/$defs/mixer-bus-settings/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key4 }, message: "must NOT have additional properties" };
8762
+ vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
8763
+ }
8764
+ if (data9.volume !== void 0) {
8765
+ let data10 = data9.volume;
8766
+ if (typeof data10 == "number") {
8767
+ if (data10 > 1.9952623149688795 || isNaN(data10)) {
8768
+ let err15 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1") + "/volume", schemaPath: "#/$defs/mixer-bus-settings/properties/volume/maximum", keyword: "maximum", params: { comparison: "<=", limit: 1.9952623149688795 }, message: "must be <= 1.9952623149688795" };
8769
+ vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
8770
+ }
8771
+ if (data10 < 0 || isNaN(data10)) {
8772
+ let err16 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1") + "/volume", schemaPath: "#/$defs/mixer-bus-settings/properties/volume/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
8773
+ vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
8774
+ }
8775
+ } else {
8776
+ let err17 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1") + "/volume", schemaPath: "#/$defs/mixer-bus-settings/properties/volume/type", keyword: "type", params: { type: "number" }, message: "must be number" };
8777
+ vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
8778
+ }
8779
+ }
8780
+ if (data9.muted !== void 0 && typeof data9.muted != "boolean") {
8781
+ let err18 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1") + "/muted", schemaPath: "#/$defs/mixer-bus-settings/properties/muted/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
8782
+ vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
8783
+ }
8784
+ if (data9.solo !== void 0 && typeof data9.solo != "boolean") {
8785
+ let err19 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1") + "/solo", schemaPath: "#/$defs/mixer-bus-settings/properties/solo/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
8786
+ vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
8787
+ }
8788
+ } else {
8789
+ let err20 = { instancePath: instancePath + "/groups/" + key3.replace(/~/g, "~0").replace(/\//g, "~1"), schemaPath: "#/$defs/mixer-bus-settings/type", keyword: "type", params: { type: "object" }, message: "must be object" };
8790
+ vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
8791
+ }
8792
+ }
8793
+ else {
8794
+ let err21 = { instancePath: instancePath + "/groups", schemaPath: "#/properties/groups/type", keyword: "type", params: { type: "object" }, message: "must be object" };
8795
+ vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
8796
+ }
8797
+ }
8798
+ if (data.masterVolume !== void 0) {
8799
+ let data13 = data.masterVolume;
8800
+ if (typeof data13 == "number") {
8801
+ if (data13 > 1.9952623149688795 || isNaN(data13)) {
8802
+ let err22 = { instancePath: instancePath + "/masterVolume", schemaPath: "#/properties/masterVolume/maximum", keyword: "maximum", params: { comparison: "<=", limit: 1.9952623149688795 }, message: "must be <= 1.9952623149688795" };
8803
+ vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
8804
+ }
8805
+ if (data13 < 0 || isNaN(data13)) {
8806
+ let err23 = { instancePath: instancePath + "/masterVolume", schemaPath: "#/properties/masterVolume/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
8807
+ vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
8808
+ }
8809
+ } else {
8810
+ let err24 = { instancePath: instancePath + "/masterVolume", schemaPath: "#/properties/masterVolume/type", keyword: "type", params: { type: "number" }, message: "must be number" };
8811
+ vErrors === null ? vErrors = [err24] : vErrors.push(err24), errors++;
8812
+ }
8813
+ }
8814
+ if (data.masterMuted !== void 0 && typeof data.masterMuted != "boolean") {
8815
+ let err25 = { instancePath: instancePath + "/masterMuted", schemaPath: "#/properties/masterMuted/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
8816
+ vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
8817
+ }
8818
+ } else {
8819
+ let err26 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
8820
+ vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
8821
+ }
8822
+ return validate395.errors = vErrors, errors === 0;
8823
+ }
8824
+ validate395.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
8825
+ var schema374 = { type: "object", description: "Score-to-picture synchronization settings for film/TV scoring. Stored at `_x.viritura.videoSync` on the score root. MNX has no concept of picture, so the whole feature lives in one versioned vendor object rather than scattering unrelated extensions.", required: ["version", "pictureOffsetSeconds"], properties: { version: { type: "integer", minimum: 1, description: "Schema version of this payload." }, media: { $ref: "#/$defs/video-media-identity", description: "Attached picture identity. Absent when settings exist but no media is attached." }, pictureOffsetSeconds: { type: "number", description: "Media time (seconds) corresponding to score time zero. 120 means the score starts two minutes into the picture. Negative values place the score before the first frame." }, pictureAudioEnabled: { type: "boolean", description: "Whether the picture's production audio is audible. Defaults to false so attaching a video never doubles up against score playback." }, startTimecodeSeconds: { type: "number", description: "Display-only offset applied to the picture timecode readout, for deliveries that start at e.g. 01:00:00:00. Never affects the media time Viritura seeks to." }, frameRate: { type: "string", enum: ["23.976", "24", "25", "29.97", "29.97df", "30", "50", "59.94", "59.94df", "60"], description: "Frame rate of the delivery, as an identifier rather than a decimal, because NTSC rates are rational (23.976 is exactly 24000/1001) and because drop-frame is a labelling convention rather than a distinct speed. Browsers expose neither the file's true rate nor its drop-frame flag, so this is declared by the user." }, hitPoints: { type: "array", description: "Spotted moments in the picture, in no guaranteed order. Kept alongside the picture identity because they describe the film rather than the score, and so must survive any amount of rewriting of the music.", items: { $ref: "#/$defs/hit-point" } } }, additionalProperties: !1 };
8826
+ var pattern39 = new RegExp("^sha256:[0-9a-f]{64}$", "u");
8827
+ function validate397(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
8828
+ let vErrors = null, errors = 0, evaluated0 = validate397.evaluated;
8676
8829
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
8677
8830
  if (data.version === void 0) {
8678
8831
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "version" }, message: "must have required property 'version'" };
@@ -8782,7 +8935,7 @@ function validate395(data, { instancePath = "", parentData, parentDataProperty,
8782
8935
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
8783
8936
  }
8784
8937
  if (!(data9 === "23.976" || data9 === "24" || data9 === "25" || data9 === "29.97" || data9 === "29.97df" || data9 === "30" || data9 === "50" || data9 === "59.94" || data9 === "59.94df" || data9 === "60")) {
8785
- let err20 = { instancePath: instancePath + "/frameRate", schemaPath: "#/properties/frameRate/enum", keyword: "enum", params: { allowedValues: schema371.properties.frameRate.enum }, message: "must be equal to one of the allowed values" };
8938
+ let err20 = { instancePath: instancePath + "/frameRate", schemaPath: "#/properties/frameRate/enum", keyword: "enum", params: { allowedValues: schema374.properties.frameRate.enum }, message: "must be equal to one of the allowed values" };
8786
8939
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
8787
8940
  }
8788
8941
  }
@@ -8852,12 +9005,12 @@ function validate395(data, { instancePath = "", parentData, parentDataProperty,
8852
9005
  let err32 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
8853
9006
  vErrors === null ? vErrors = [err32] : vErrors.push(err32), errors++;
8854
9007
  }
8855
- return validate395.errors = vErrors, errors === 0;
9008
+ return validate397.errors = vErrors, errors === 0;
8856
9009
  }
8857
- validate395.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
8858
- var schema376 = { type: "object", description: "A stable token from a paste-and-distribute lyric source.", required: ["id"], properties: { id: { type: "string", minLength: 1, description: "Stable identity used by reflow and collaborative repair." }, text: { type: "string", description: "Authored syllable text. Omitted for an explicit melisma skip." }, type: { type: "string", enum: ["start", "middle", "end", "whole"], description: "MNX syllabic role for a visible token." }, skip: { type: "boolean", const: !0, description: "Marks an explicit underscore in the original source." }, eventId: { type: "string", minLength: 1, description: "Stable MNX event ID currently anchoring this token; absent when detached." }, partId: { type: "string", minLength: 1, description: "Part ID at the time the token was assigned." }, sequenceIndex: { type: "integer", minimum: 0, description: "Voice index at the time the token was assigned." } }, additionalProperties: !1 };
8859
- function validate398(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
8860
- let vErrors = null, errors = 0, evaluated0 = validate398.evaluated;
9010
+ validate397.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9011
+ var schema379 = { type: "object", description: "A stable token from a paste-and-distribute lyric source.", required: ["id"], properties: { id: { type: "string", minLength: 1, description: "Stable identity used by reflow and collaborative repair." }, text: { type: "string", description: "Authored syllable text. Omitted for an explicit melisma skip." }, type: { type: "string", enum: ["start", "middle", "end", "whole"], description: "MNX syllabic role for a visible token." }, skip: { type: "boolean", const: !0, description: "Marks an explicit underscore in the original source." }, eventId: { type: "string", minLength: 1, description: "Stable MNX event ID currently anchoring this token; absent when detached." }, partId: { type: "string", minLength: 1, description: "Part ID at the time the token was assigned." }, sequenceIndex: { type: "integer", minimum: 0, description: "Voice index at the time the token was assigned." } }, additionalProperties: !1 };
9012
+ function validate400(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9013
+ let vErrors = null, errors = 0, evaluated0 = validate400.evaluated;
8861
9014
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
8862
9015
  if (data.id === void 0) {
8863
9016
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -8959,7 +9112,7 @@ function validate398(data, { instancePath = "", parentData, parentDataProperty,
8959
9112
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
8960
9113
  }
8961
9114
  if (!(data8 === "start" || data8 === "middle" || data8 === "end" || data8 === "whole")) {
8962
- let err18 = { instancePath: instancePath + "/tokens/" + i0 + "/type", schemaPath: "#/$defs/lyric-workflow-token/properties/type/enum", keyword: "enum", params: { allowedValues: schema376.properties.type.enum }, message: "must be equal to one of the allowed values" };
9115
+ let err18 = { instancePath: instancePath + "/tokens/" + i0 + "/type", schemaPath: "#/$defs/lyric-workflow-token/properties/type/enum", keyword: "enum", params: { allowedValues: schema379.properties.type.enum }, message: "must be equal to one of the allowed values" };
8963
9116
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
8964
9117
  }
8965
9118
  }
@@ -9023,11 +9176,11 @@ function validate398(data, { instancePath = "", parentData, parentDataProperty,
9023
9176
  let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9024
9177
  vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
9025
9178
  }
9026
- return validate398.errors = vErrors, errors === 0;
9179
+ return validate400.errors = vErrors, errors === 0;
9027
9180
  }
9028
- validate398.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9029
- function validate397(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9030
- let vErrors = null, errors = 0, evaluated0 = validate397.evaluated;
9181
+ validate400.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9182
+ function validate399(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9183
+ let vErrors = null, errors = 0, evaluated0 = validate399.evaluated;
9031
9184
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9032
9185
  if (data.sources === void 0) {
9033
9186
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "sources" }, message: "must have required property 'sources'" };
@@ -9042,7 +9195,7 @@ function validate397(data, { instancePath = "", parentData, parentDataProperty,
9042
9195
  let data0 = data.sources;
9043
9196
  if (data0 && typeof data0 == "object" && !Array.isArray(data0))
9044
9197
  for (let key1 in data0)
9045
- validate398(data0[key1], { instancePath: instancePath + "/sources/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), parentData: data0, parentDataProperty: key1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate398.errors : vErrors.concat(validate398.errors), errors = vErrors.length);
9198
+ validate400(data0[key1], { instancePath: instancePath + "/sources/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), parentData: data0, parentDataProperty: key1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate400.errors : vErrors.concat(validate400.errors), errors = vErrors.length);
9046
9199
  else {
9047
9200
  let err2 = { instancePath: instancePath + "/sources", schemaPath: "#/properties/sources/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9048
9201
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
@@ -9052,9 +9205,9 @@ function validate397(data, { instancePath = "", parentData, parentDataProperty,
9052
9205
  let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9053
9206
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
9054
9207
  }
9055
- return validate397.errors = vErrors, errors === 0;
9208
+ return validate399.errors = vErrors, errors === 0;
9056
9209
  }
9057
- validate397.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9210
+ validate399.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9058
9211
  function validate371(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9059
9212
  let vErrors = null, errors = 0, evaluated0 = validate371.evaluated;
9060
9213
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
@@ -9227,7 +9380,7 @@ function validate371(data, { instancePath = "", parentData, parentDataProperty,
9227
9380
  vErrors === null ? vErrors = [err32] : vErrors.push(err32), errors++;
9228
9381
  }
9229
9382
  }
9230
- data.soundProfile !== void 0 && (validate393(data.soundProfile, { instancePath: instancePath + "/soundProfile", parentData: data, parentDataProperty: "soundProfile", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate393.errors : vErrors.concat(validate393.errors), errors = vErrors.length)), data.videoSync !== void 0 && (validate395(data.videoSync, { instancePath: instancePath + "/videoSync", parentData: data, parentDataProperty: "videoSync", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate395.errors : vErrors.concat(validate395.errors), errors = vErrors.length)), data.lyricWorkflow !== void 0 && (validate397(data.lyricWorkflow, { instancePath: instancePath + "/lyricWorkflow", parentData: data, parentDataProperty: "lyricWorkflow", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate397.errors : vErrors.concat(validate397.errors), errors = vErrors.length));
9383
+ data.soundProfile !== void 0 && (validate393(data.soundProfile, { instancePath: instancePath + "/soundProfile", parentData: data, parentDataProperty: "soundProfile", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate393.errors : vErrors.concat(validate393.errors), errors = vErrors.length)), data.mixer !== void 0 && (validate395(data.mixer, { instancePath: instancePath + "/mixer", parentData: data, parentDataProperty: "mixer", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate395.errors : vErrors.concat(validate395.errors), errors = vErrors.length)), data.videoSync !== void 0 && (validate397(data.videoSync, { instancePath: instancePath + "/videoSync", parentData: data, parentDataProperty: "videoSync", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate397.errors : vErrors.concat(validate397.errors), errors = vErrors.length)), data.lyricWorkflow !== void 0 && (validate399(data.lyricWorkflow, { instancePath: instancePath + "/lyricWorkflow", parentData: data, parentDataProperty: "lyricWorkflow", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate399.errors : vErrors.concat(validate399.errors), errors = vErrors.length));
9231
9384
  } else {
9232
9385
  let err33 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9233
9386
  vErrors === null ? vErrors = [err33] : vErrors.push(err33), errors++;
@@ -9235,11 +9388,11 @@ function validate371(data, { instancePath = "", parentData, parentDataProperty,
9235
9388
  return validate371.errors = vErrors, errors === 0;
9236
9389
  }
9237
9390
  validate371.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9238
- var measureGlobalExtensions = validate401;
9239
- var schema378 = { type: "object", description: "Unified tempo marking. BPM and value occur together; BPM-free markings carry explicit swing or nonempty cosmetic text.", properties: { bpm: { type: "number", exclusiveMinimum: 0 }, value: { type: "object", required: ["base"], properties: { base: { type: "string", enum: ["duplexMaxima", "maxima", "longa", "breve", "whole", "half", "quarter", "eighth", "16th", "32nd", "64th", "128th", "256th", "512th", "1024th", "2048th", "4096th"] }, dots: { type: "integer", minimum: 0 } }, additionalProperties: !1 }, location: { type: "object", required: ["fraction"], properties: { fraction: { type: "array", prefixItems: [{ type: "integer", minimum: 0, maximum: 9007199254740991 }, { type: "integer", minimum: 1, maximum: 9007199254740991 }], items: !1, minItems: 2, maxItems: 2 } }, additionalProperties: !1 }, swing: { $ref: "#/$defs/swing" }, text: { $ref: "#/$defs/text-content" }, showMetronomeMark: { type: "boolean" }, showText: { type: "boolean" }, manualOffset: { $ref: "#/$defs/sp-delta" }, avoidCollisions: { type: "boolean" } }, oneOf: [{ required: ["bpm", "value"] }, { required: ["swing"], not: { anyOf: [{ required: ["bpm"] }, { required: ["value"] }] } }, { required: ["text"], properties: { text: { minItems: 1 } }, not: { anyOf: [{ required: ["bpm"] }, { required: ["value"] }, { required: ["swing"] }] } }], additionalProperties: !1 }, schema379 = { description: "Explicit rhythm instruction, independent of the metronome beat unit. Omission means inherit; straight explicitly resets swing.", oneOf: [{ type: "object", required: ["mode"], properties: { mode: { const: "straight", type: "string" } }, additionalProperties: !1 }, { type: "object", required: ["mode", "subdivision", "ratio"], properties: { mode: { const: "swing", type: "string" }, subdivision: { type: "string", enum: ["eighth", "16th"] }, ratio: { type: "array", items: { type: "integer", minimum: 1, maximum: 9007199254740991 }, minItems: 2, maxItems: 2, description: "Exact positive long:short ratio, not a percentage or a guessed source value." } }, additionalProperties: !1 }] };
9240
- var schema382 = { type: "object", description: "Inline text formatting. Omitted fields inherit the owning text role's style.", properties: { font: { type: "string", enum: ["serif", "sans-serif", "monospace"] }, size: { type: "number", exclusiveMinimum: 0, maximum: 12, description: "Relative size as a multiple of the owning text role's resolved size (the CSS 'em' equivalent), not an absolute point size. Distinct from text-style.size, which counts staff spaces for a whole role." }, weight: { oneOf: [{ type: "string", enum: ["normal", "bold"] }, { type: "number", minimum: 1, maximum: 1e3 }] }, fontStyle: { type: "string", enum: ["normal", "italic", "oblique"] }, decorations: { type: "array", description: "Line decorations applied together. A set rather than a single value, because both MusicXML and Finale treat underline, overline and strikethrough as independent.", items: { type: "string", enum: ["underline", "overline", "strikethrough"] }, uniqueItems: !0, minItems: 1 }, enclosure: { type: "string", enum: ["box", "circle"] }, color: { type: "string", pattern: "^#[0-9a-fA-F]{6}$" } }, additionalProperties: !1 };
9241
- function validate404(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9242
- let vErrors = null, errors = 0, evaluated0 = validate404.evaluated;
9391
+ var measureGlobalExtensions = validate403;
9392
+ var schema381 = { type: "object", description: "Unified tempo marking. BPM and value occur together; BPM-free markings carry explicit swing or nonempty cosmetic text.", properties: { bpm: { type: "number", exclusiveMinimum: 0 }, value: { type: "object", required: ["base"], properties: { base: { type: "string", enum: ["duplexMaxima", "maxima", "longa", "breve", "whole", "half", "quarter", "eighth", "16th", "32nd", "64th", "128th", "256th", "512th", "1024th", "2048th", "4096th"] }, dots: { type: "integer", minimum: 0 } }, additionalProperties: !1 }, location: { type: "object", required: ["fraction"], properties: { fraction: { type: "array", prefixItems: [{ type: "integer", minimum: 0, maximum: 9007199254740991 }, { type: "integer", minimum: 1, maximum: 9007199254740991 }], items: !1, minItems: 2, maxItems: 2 } }, additionalProperties: !1 }, swing: { $ref: "#/$defs/swing" }, text: { $ref: "#/$defs/text-content" }, showMetronomeMark: { type: "boolean" }, showText: { type: "boolean" }, manualOffset: { $ref: "#/$defs/sp-delta" }, avoidCollisions: { type: "boolean" } }, oneOf: [{ required: ["bpm", "value"] }, { required: ["swing"], not: { anyOf: [{ required: ["bpm"] }, { required: ["value"] }] } }, { required: ["text"], properties: { text: { minItems: 1 } }, not: { anyOf: [{ required: ["bpm"] }, { required: ["value"] }, { required: ["swing"] }] } }], additionalProperties: !1 }, schema382 = { description: "Explicit rhythm instruction, independent of the metronome beat unit. Omission means inherit; straight explicitly resets swing.", oneOf: [{ type: "object", required: ["mode"], properties: { mode: { const: "straight", type: "string" } }, additionalProperties: !1 }, { type: "object", required: ["mode", "subdivision", "ratio"], properties: { mode: { const: "swing", type: "string" }, subdivision: { type: "string", enum: ["eighth", "16th"] }, ratio: { type: "array", items: { type: "integer", minimum: 1, maximum: 9007199254740991 }, minItems: 2, maxItems: 2, description: "Exact positive long:short ratio, not a percentage or a guessed source value." } }, additionalProperties: !1 }] };
9393
+ var schema385 = { type: "object", description: "Inline text formatting. Omitted fields inherit the owning text role's style.", properties: { font: { type: "string", enum: ["serif", "sans-serif", "monospace"] }, size: { type: "number", exclusiveMinimum: 0, maximum: 12, description: "Relative size as a multiple of the owning text role's resolved size (the CSS 'em' equivalent), not an absolute point size. Distinct from text-style.size, which counts staff spaces for a whole role." }, weight: { oneOf: [{ type: "string", enum: ["normal", "bold"] }, { type: "number", minimum: 1, maximum: 1e3 }] }, fontStyle: { type: "string", enum: ["normal", "italic", "oblique"] }, decorations: { type: "array", description: "Line decorations applied together. A set rather than a single value, because both MusicXML and Finale treat underline, overline and strikethrough as independent.", items: { type: "string", enum: ["underline", "overline", "strikethrough"] }, uniqueItems: !0, minItems: 1 }, enclosure: { type: "string", enum: ["box", "circle"] }, color: { type: "string", pattern: "^#[0-9a-fA-F]{6}$" } }, additionalProperties: !1 };
9394
+ function validate406(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9395
+ let vErrors = null, errors = 0, evaluated0 = validate406.evaluated;
9243
9396
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9244
9397
  if (data.text === void 0) {
9245
9398
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
@@ -9269,7 +9422,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9269
9422
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
9270
9423
  }
9271
9424
  if (!(data2 === "serif" || data2 === "sans-serif" || data2 === "monospace")) {
9272
- let err5 = { instancePath: instancePath + "/style/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema382.properties.font.enum }, message: "must be equal to one of the allowed values" };
9425
+ let err5 = { instancePath: instancePath + "/style/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema385.properties.font.enum }, message: "must be equal to one of the allowed values" };
9273
9426
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
9274
9427
  }
9275
9428
  }
@@ -9296,7 +9449,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9296
9449
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
9297
9450
  }
9298
9451
  if (!(data4 === "normal" || data4 === "bold")) {
9299
- let err10 = { instancePath: instancePath + "/style/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema382.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9452
+ let err10 = { instancePath: instancePath + "/style/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema385.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9300
9453
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
9301
9454
  }
9302
9455
  var _valid0 = _errs14 === errors;
@@ -9330,7 +9483,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9330
9483
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
9331
9484
  }
9332
9485
  if (!(data5 === "normal" || data5 === "italic" || data5 === "oblique")) {
9333
- let err16 = { instancePath: instancePath + "/style/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema382.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9486
+ let err16 = { instancePath: instancePath + "/style/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema385.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9334
9487
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
9335
9488
  }
9336
9489
  }
@@ -9349,7 +9502,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9349
9502
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
9350
9503
  }
9351
9504
  if (!(data7 === "underline" || data7 === "overline" || data7 === "strikethrough")) {
9352
- let err19 = { instancePath: instancePath + "/style/decorations/" + i0, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema382.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9505
+ let err19 = { instancePath: instancePath + "/style/decorations/" + i0, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema385.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9353
9506
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
9354
9507
  }
9355
9508
  }
@@ -9381,7 +9534,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9381
9534
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
9382
9535
  }
9383
9536
  if (!(data8 === "box" || data8 === "circle")) {
9384
- let err23 = { instancePath: instancePath + "/style/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema382.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9537
+ let err23 = { instancePath: instancePath + "/style/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema385.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9385
9538
  vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
9386
9539
  }
9387
9540
  }
@@ -9406,11 +9559,11 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9406
9559
  let err27 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9407
9560
  vErrors === null ? vErrors = [err27] : vErrors.push(err27), errors++;
9408
9561
  }
9409
- return validate404.errors = vErrors, errors === 0;
9562
+ return validate406.errors = vErrors, errors === 0;
9410
9563
  }
9411
- validate404.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9412
- function validate406(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9413
- let vErrors = null, errors = 0, evaluated0 = validate406.evaluated;
9564
+ validate406.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9565
+ function validate408(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9566
+ let vErrors = null, errors = 0, evaluated0 = validate408.evaluated;
9414
9567
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9415
9568
  if (data.glyphs === void 0) {
9416
9569
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "glyphs" }, message: "must have required property 'glyphs'" };
@@ -9461,7 +9614,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9461
9614
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
9462
9615
  }
9463
9616
  if (!(data3 === "serif" || data3 === "sans-serif" || data3 === "monospace")) {
9464
- let err8 = { instancePath: instancePath + "/style/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema382.properties.font.enum }, message: "must be equal to one of the allowed values" };
9617
+ let err8 = { instancePath: instancePath + "/style/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema385.properties.font.enum }, message: "must be equal to one of the allowed values" };
9465
9618
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
9466
9619
  }
9467
9620
  }
@@ -9488,7 +9641,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9488
9641
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
9489
9642
  }
9490
9643
  if (!(data5 === "normal" || data5 === "bold")) {
9491
- let err13 = { instancePath: instancePath + "/style/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema382.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9644
+ let err13 = { instancePath: instancePath + "/style/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema385.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9492
9645
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
9493
9646
  }
9494
9647
  var _valid0 = _errs16 === errors;
@@ -9522,7 +9675,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9522
9675
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
9523
9676
  }
9524
9677
  if (!(data6 === "normal" || data6 === "italic" || data6 === "oblique")) {
9525
- let err19 = { instancePath: instancePath + "/style/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema382.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9678
+ let err19 = { instancePath: instancePath + "/style/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema385.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9526
9679
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
9527
9680
  }
9528
9681
  }
@@ -9541,7 +9694,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9541
9694
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
9542
9695
  }
9543
9696
  if (!(data8 === "underline" || data8 === "overline" || data8 === "strikethrough")) {
9544
- let err22 = { instancePath: instancePath + "/style/decorations/" + i1, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema382.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9697
+ let err22 = { instancePath: instancePath + "/style/decorations/" + i1, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema385.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9545
9698
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
9546
9699
  }
9547
9700
  }
@@ -9573,7 +9726,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9573
9726
  vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
9574
9727
  }
9575
9728
  if (!(data9 === "box" || data9 === "circle")) {
9576
- let err26 = { instancePath: instancePath + "/style/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema382.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9729
+ let err26 = { instancePath: instancePath + "/style/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema385.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9577
9730
  vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
9578
9731
  }
9579
9732
  }
@@ -9609,7 +9762,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9609
9762
  vErrors === null ? vErrors = [err31] : vErrors.push(err31), errors++;
9610
9763
  }
9611
9764
  if (!(data12 === "serif" || data12 === "sans-serif" || data12 === "monospace")) {
9612
- let err32 = { instancePath: instancePath + "/smuflStyle/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema382.properties.font.enum }, message: "must be equal to one of the allowed values" };
9765
+ let err32 = { instancePath: instancePath + "/smuflStyle/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema385.properties.font.enum }, message: "must be equal to one of the allowed values" };
9613
9766
  vErrors === null ? vErrors = [err32] : vErrors.push(err32), errors++;
9614
9767
  }
9615
9768
  }
@@ -9636,7 +9789,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9636
9789
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
9637
9790
  }
9638
9791
  if (!(data14 === "normal" || data14 === "bold")) {
9639
- let err37 = { instancePath: instancePath + "/smuflStyle/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema382.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9792
+ let err37 = { instancePath: instancePath + "/smuflStyle/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema385.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9640
9793
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
9641
9794
  }
9642
9795
  var _valid1 = _errs40 === errors;
@@ -9670,7 +9823,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9670
9823
  vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
9671
9824
  }
9672
9825
  if (!(data15 === "normal" || data15 === "italic" || data15 === "oblique")) {
9673
- let err43 = { instancePath: instancePath + "/smuflStyle/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema382.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9826
+ let err43 = { instancePath: instancePath + "/smuflStyle/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema385.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9674
9827
  vErrors === null ? vErrors = [err43] : vErrors.push(err43), errors++;
9675
9828
  }
9676
9829
  }
@@ -9689,7 +9842,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9689
9842
  vErrors === null ? vErrors = [err45] : vErrors.push(err45), errors++;
9690
9843
  }
9691
9844
  if (!(data17 === "underline" || data17 === "overline" || data17 === "strikethrough")) {
9692
- let err46 = { instancePath: instancePath + "/smuflStyle/decorations/" + i3, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema382.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9845
+ let err46 = { instancePath: instancePath + "/smuflStyle/decorations/" + i3, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema385.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9693
9846
  vErrors === null ? vErrors = [err46] : vErrors.push(err46), errors++;
9694
9847
  }
9695
9848
  }
@@ -9721,7 +9874,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9721
9874
  vErrors === null ? vErrors = [err49] : vErrors.push(err49), errors++;
9722
9875
  }
9723
9876
  if (!(data18 === "box" || data18 === "circle")) {
9724
- let err50 = { instancePath: instancePath + "/smuflStyle/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema382.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9877
+ let err50 = { instancePath: instancePath + "/smuflStyle/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema385.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9725
9878
  vErrors === null ? vErrors = [err50] : vErrors.push(err50), errors++;
9726
9879
  }
9727
9880
  }
@@ -9746,23 +9899,23 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9746
9899
  let err54 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9747
9900
  vErrors === null ? vErrors = [err54] : vErrors.push(err54), errors++;
9748
9901
  }
9749
- return validate406.errors = vErrors, errors === 0;
9902
+ return validate408.errors = vErrors, errors === 0;
9750
9903
  }
9751
- validate406.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9752
- function validate403(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9753
- let vErrors = null, errors = 0, evaluated0 = validate403.evaluated;
9904
+ validate408.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9905
+ function validate405(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9906
+ let vErrors = null, errors = 0, evaluated0 = validate405.evaluated;
9754
9907
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), Array.isArray(data)) {
9755
9908
  let len0 = data.length;
9756
9909
  for (let i0 = 0; i0 < len0; i0++) {
9757
9910
  let data0 = data[i0], _errs2 = errors, valid2 = !1, passing0 = null, _errs3 = errors;
9758
- validate404(data0, { instancePath: instancePath + "/" + i0, parentData: data, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate404.errors : vErrors.concat(validate404.errors), errors = vErrors.length);
9911
+ validate406(data0, { instancePath: instancePath + "/" + i0, parentData: data, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate406.errors : vErrors.concat(validate406.errors), errors = vErrors.length);
9759
9912
  var _valid0 = _errs3 === errors;
9760
9913
  if (_valid0) {
9761
9914
  valid2 = !0, passing0 = 0;
9762
9915
  var props0 = !0;
9763
9916
  }
9764
9917
  let _errs4 = errors;
9765
- validate406(data0, { instancePath: instancePath + "/" + i0, parentData: data, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate406.errors : vErrors.concat(validate406.errors), errors = vErrors.length);
9918
+ validate408(data0, { instancePath: instancePath + "/" + i0, parentData: data, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate408.errors : vErrors.concat(validate408.errors), errors = vErrors.length);
9766
9919
  var _valid0 = _errs4 === errors;
9767
9920
  if (_valid0 && valid2 ? (valid2 = !1, passing0 = [passing0, 1]) : _valid0 && (valid2 = !0, passing0 = 1, props0 !== !0 && (props0 = !0)), valid2)
9768
9921
  errors = _errs2, vErrors !== null && (_errs2 ? vErrors.length = _errs2 : vErrors = null);
@@ -9775,11 +9928,11 @@ function validate403(data, { instancePath = "", parentData, parentDataProperty,
9775
9928
  let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "array" }, message: "must be array" };
9776
9929
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
9777
9930
  }
9778
- return validate403.errors = vErrors, errors === 0;
9931
+ return validate405.errors = vErrors, errors === 0;
9779
9932
  }
9780
- validate403.evaluated = { items: !0, dynamicProps: !1, dynamicItems: !1 };
9781
- function validate402(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9782
- let vErrors = null, errors = 0, evaluated0 = validate402.evaluated;
9933
+ validate405.evaluated = { items: !0, dynamicProps: !1, dynamicItems: !1 };
9934
+ function validate404(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9935
+ let vErrors = null, errors = 0, evaluated0 = validate404.evaluated;
9783
9936
  evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
9784
9937
  let _errs1 = errors, valid0 = !1, passing0 = null, _errs2 = errors;
9785
9938
  if (data && typeof data == "object" && !Array.isArray(data)) {
@@ -9905,7 +10058,7 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
9905
10058
  }
9906
10059
  if (data && typeof data == "object" && !Array.isArray(data)) {
9907
10060
  for (let key0 in data)
9908
- if (!func1.call(schema378.properties, key0)) {
10061
+ if (!func1.call(schema381.properties, key0)) {
9909
10062
  let err15 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
9910
10063
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
9911
10064
  }
@@ -9940,7 +10093,7 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
9940
10093
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
9941
10094
  }
9942
10095
  if (!(data3 === "duplexMaxima" || data3 === "maxima" || data3 === "longa" || data3 === "breve" || data3 === "whole" || data3 === "half" || data3 === "quarter" || data3 === "eighth" || data3 === "16th" || data3 === "32nd" || data3 === "64th" || data3 === "128th" || data3 === "256th" || data3 === "512th" || data3 === "1024th" || data3 === "2048th" || data3 === "4096th")) {
9943
- let err21 = { instancePath: instancePath + "/value/base", schemaPath: "#/properties/value/properties/base/enum", keyword: "enum", params: { allowedValues: schema378.properties.value.properties.base.enum }, message: "must be equal to one of the allowed values" };
10096
+ let err21 = { instancePath: instancePath + "/value/base", schemaPath: "#/properties/value/properties/base/enum", keyword: "enum", params: { allowedValues: schema381.properties.value.properties.base.enum }, message: "must be equal to one of the allowed values" };
9944
10097
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
9945
10098
  }
9946
10099
  }
@@ -10101,7 +10254,7 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
10101
10254
  vErrors === null ? vErrors = [err49] : vErrors.push(err49), errors++;
10102
10255
  }
10103
10256
  if (!(data12 === "eighth" || data12 === "16th")) {
10104
- let err50 = { instancePath: instancePath + "/swing/subdivision", schemaPath: "#/$defs/swing/oneOf/1/properties/subdivision/enum", keyword: "enum", params: { allowedValues: schema379.oneOf[1].properties.subdivision.enum }, message: "must be equal to one of the allowed values" };
10257
+ let err50 = { instancePath: instancePath + "/swing/subdivision", schemaPath: "#/$defs/swing/oneOf/1/properties/subdivision/enum", keyword: "enum", params: { allowedValues: schema382.oneOf[1].properties.subdivision.enum }, message: "must be equal to one of the allowed values" };
10105
10258
  vErrors === null ? vErrors = [err50] : vErrors.push(err50), errors++;
10106
10259
  }
10107
10260
  }
@@ -10151,7 +10304,7 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
10151
10304
  vErrors === null ? vErrors = [err58] : vErrors.push(err58), errors++;
10152
10305
  }
10153
10306
  }
10154
- if (data.text !== void 0 && (validate403(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.showMetronomeMark !== void 0 && typeof data.showMetronomeMark != "boolean") {
10307
+ if (data.text !== void 0 && (validate405(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.showMetronomeMark !== void 0 && typeof data.showMetronomeMark != "boolean") {
10155
10308
  let err59 = { instancePath: instancePath + "/showMetronomeMark", schemaPath: "#/properties/showMetronomeMark/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10156
10309
  vErrors === null ? vErrors = [err59] : vErrors.push(err59), errors++;
10157
10310
  }
@@ -10189,12 +10342,12 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
10189
10342
  let err66 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10190
10343
  vErrors === null ? vErrors = [err66] : vErrors.push(err66), errors++;
10191
10344
  }
10192
- return validate402.errors = vErrors, errors === 0;
10345
+ return validate404.errors = vErrors, errors === 0;
10193
10346
  }
10194
- validate402.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10195
- var schema387 = { type: "object", description: "A rehearsal mark displayed above the staff (e.g. 'A', 'B', '1'). Typically rendered in a box or circle.", required: ["text"], properties: { text: { $ref: "#/$defs/text-content" }, style: { type: "string", enum: ["boxed", "circled", "plain"], description: "Display style. Default: 'boxed'." }, manualOffset: { $ref: "#/$defs/sp-delta", description: "Manual [dx, dy] offset in spatia (sp); +x right, +y up." }, avoidCollisions: { type: "boolean", description: "Whether automatic collision avoidance may re-flow this mark. Default/unset: true." } }, additionalProperties: !1 };
10196
- function validate410(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10197
- let vErrors = null, errors = 0, evaluated0 = validate410.evaluated;
10347
+ validate404.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10348
+ var schema390 = { type: "object", description: "A rehearsal mark displayed above the staff (e.g. 'A', 'B', '1'). Typically rendered in a box or circle.", required: ["text"], properties: { text: { $ref: "#/$defs/text-content" }, style: { type: "string", enum: ["boxed", "circled", "plain"], description: "Display style. Default: 'boxed'." }, manualOffset: { $ref: "#/$defs/sp-delta", description: "Manual [dx, dy] offset in spatia (sp); +x right, +y up." }, avoidCollisions: { type: "boolean", description: "Whether automatic collision avoidance may re-flow this mark. Default/unset: true." } }, additionalProperties: !1 };
10349
+ function validate412(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10350
+ let vErrors = null, errors = 0, evaluated0 = validate412.evaluated;
10198
10351
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10199
10352
  if (data.text === void 0) {
10200
10353
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
@@ -10205,14 +10358,14 @@ function validate410(data, { instancePath = "", parentData, parentDataProperty,
10205
10358
  let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10206
10359
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10207
10360
  }
10208
- if (data.text !== void 0 && (validate403(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.style !== void 0) {
10361
+ if (data.text !== void 0 && (validate405(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.style !== void 0) {
10209
10362
  let data1 = data.style;
10210
10363
  if (typeof data1 != "string") {
10211
10364
  let err2 = { instancePath: instancePath + "/style", schemaPath: "#/properties/style/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10212
10365
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10213
10366
  }
10214
10367
  if (!(data1 === "boxed" || data1 === "circled" || data1 === "plain")) {
10215
- let err3 = { instancePath: instancePath + "/style", schemaPath: "#/properties/style/enum", keyword: "enum", params: { allowedValues: schema387.properties.style.enum }, message: "must be equal to one of the allowed values" };
10368
+ let err3 = { instancePath: instancePath + "/style", schemaPath: "#/properties/style/enum", keyword: "enum", params: { allowedValues: schema390.properties.style.enum }, message: "must be equal to one of the allowed values" };
10216
10369
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
10217
10370
  }
10218
10371
  }
@@ -10246,12 +10399,12 @@ function validate410(data, { instancePath = "", parentData, parentDataProperty,
10246
10399
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10247
10400
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
10248
10401
  }
10249
- return validate410.errors = vErrors, errors === 0;
10402
+ return validate412.errors = vErrors, errors === 0;
10250
10403
  }
10251
- validate410.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10252
- var schema390 = { type: "object", description: "Authored display text owned by one navigation marker. The owning marker remains authoritative for playback and navigation.", required: ["content", "placement"], properties: { content: { $ref: "#/$defs/text-content", description: "Ordered authored text and SMuFL glyph runs." }, placement: { type: "string", enum: ["before", "after", "replace"], description: "Whether authored content precedes, follows, or replaces the marker's generated glyph or label." } }, additionalProperties: !1 };
10253
- function validate414(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10254
- let vErrors = null, errors = 0, evaluated0 = validate414.evaluated;
10404
+ validate412.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10405
+ var schema393 = { type: "object", description: "Authored display text owned by one navigation marker. The owning marker remains authoritative for playback and navigation.", required: ["content", "placement"], properties: { content: { $ref: "#/$defs/text-content", description: "Ordered authored text and SMuFL glyph runs." }, placement: { type: "string", enum: ["before", "after", "replace"], description: "Whether authored content precedes, follows, or replaces the marker's generated glyph or label." } }, additionalProperties: !1 };
10406
+ function validate416(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10407
+ let vErrors = null, errors = 0, evaluated0 = validate416.evaluated;
10255
10408
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10256
10409
  if (data.content === void 0) {
10257
10410
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "content" }, message: "must have required property 'content'" };
@@ -10266,14 +10419,14 @@ function validate414(data, { instancePath = "", parentData, parentDataProperty,
10266
10419
  let err2 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10267
10420
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10268
10421
  }
10269
- if (data.content !== void 0 && (validate403(data.content, { instancePath: instancePath + "/content", parentData: data, parentDataProperty: "content", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.placement !== void 0) {
10422
+ if (data.content !== void 0 && (validate405(data.content, { instancePath: instancePath + "/content", parentData: data, parentDataProperty: "content", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.placement !== void 0) {
10270
10423
  let data1 = data.placement;
10271
10424
  if (typeof data1 != "string") {
10272
10425
  let err3 = { instancePath: instancePath + "/placement", schemaPath: "#/properties/placement/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10273
10426
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
10274
10427
  }
10275
10428
  if (!(data1 === "before" || data1 === "after" || data1 === "replace")) {
10276
- let err4 = { instancePath: instancePath + "/placement", schemaPath: "#/properties/placement/enum", keyword: "enum", params: { allowedValues: schema390.properties.placement.enum }, message: "must be equal to one of the allowed values" };
10429
+ let err4 = { instancePath: instancePath + "/placement", schemaPath: "#/properties/placement/enum", keyword: "enum", params: { allowedValues: schema393.properties.placement.enum }, message: "must be equal to one of the allowed values" };
10277
10430
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
10278
10431
  }
10279
10432
  }
@@ -10281,11 +10434,11 @@ function validate414(data, { instancePath = "", parentData, parentDataProperty,
10281
10434
  let err5 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10282
10435
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
10283
10436
  }
10284
- return validate414.errors = vErrors, errors === 0;
10437
+ return validate416.errors = vErrors, errors === 0;
10285
10438
  }
10286
- validate414.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10287
- function validate413(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10288
- let vErrors = null, errors = 0, evaluated0 = validate413.evaluated;
10439
+ validate416.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10440
+ function validate415(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10441
+ let vErrors = null, errors = 0, evaluated0 = validate415.evaluated;
10289
10442
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10290
10443
  if (Object.keys(data).length < 1) {
10291
10444
  let err0 = { instancePath, schemaPath: "#/minProperties", keyword: "minProperties", params: { limit: 1 }, message: "must NOT have fewer than 1 properties" };
@@ -10296,18 +10449,18 @@ function validate413(data, { instancePath = "", parentData, parentDataProperty,
10296
10449
  let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10297
10450
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10298
10451
  }
10299
- data.segno !== void 0 && (validate414(data.segno, { instancePath: instancePath + "/segno", parentData: data, parentDataProperty: "segno", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate414.errors : vErrors.concat(validate414.errors), errors = vErrors.length)), data.coda !== void 0 && (validate414(data.coda, { instancePath: instancePath + "/coda", parentData: data, parentDataProperty: "coda", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate414.errors : vErrors.concat(validate414.errors), errors = vErrors.length)), data.fine !== void 0 && (validate414(data.fine, { instancePath: instancePath + "/fine", parentData: data, parentDataProperty: "fine", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate414.errors : vErrors.concat(validate414.errors), errors = vErrors.length)), data.jump !== void 0 && (validate414(data.jump, { instancePath: instancePath + "/jump", parentData: data, parentDataProperty: "jump", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate414.errors : vErrors.concat(validate414.errors), errors = vErrors.length));
10452
+ data.segno !== void 0 && (validate416(data.segno, { instancePath: instancePath + "/segno", parentData: data, parentDataProperty: "segno", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate416.errors : vErrors.concat(validate416.errors), errors = vErrors.length)), data.coda !== void 0 && (validate416(data.coda, { instancePath: instancePath + "/coda", parentData: data, parentDataProperty: "coda", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate416.errors : vErrors.concat(validate416.errors), errors = vErrors.length)), data.fine !== void 0 && (validate416(data.fine, { instancePath: instancePath + "/fine", parentData: data, parentDataProperty: "fine", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate416.errors : vErrors.concat(validate416.errors), errors = vErrors.length)), data.jump !== void 0 && (validate416(data.jump, { instancePath: instancePath + "/jump", parentData: data, parentDataProperty: "jump", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate416.errors : vErrors.concat(validate416.errors), errors = vErrors.length));
10300
10453
  } else {
10301
10454
  let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10302
10455
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10303
10456
  }
10304
- return validate413.errors = vErrors, errors === 0;
10457
+ return validate415.errors = vErrors, errors === 0;
10305
10458
  }
10306
- validate413.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10307
- var schema392 = { type: "object", description: "Optional shared frame presentation on staff text. No width means natural width; a staff-space width enables word wrapping. Height is automatic.", properties: { width: { type: "object", required: ["unit", "value"], properties: { unit: { const: "staffSpaces" }, value: { type: "number", exclusiveMinimum: 0 } }, additionalProperties: !1 }, horizontalAlignment: { type: "string", enum: ["left", "center", "right"] }, paragraphJustification: { type: "string", enum: ["left", "center", "right", "justify"] }, padding: { type: "number", minimum: 0 }, border: { type: "string", enum: ["none", "solid"] }, eraseBackground: { type: "boolean", description: "Erase underlying ink within the frame using the surface background. Omitted or false preserves underlying ink; no color is stored." } }, additionalProperties: !1 };
10308
- var schema394 = { type: "string", enum: ["below", "above"], description: "Placement of a text expression relative to the staff. Default: 'below'." };
10309
- function validate421(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10310
- let vErrors = null, errors = 0, evaluated0 = validate421.evaluated;
10459
+ validate415.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10460
+ var schema395 = { type: "object", description: "Optional shared frame presentation on staff text. No width means natural width; a staff-space width enables word wrapping. Height is automatic.", properties: { width: { type: "object", required: ["unit", "value"], properties: { unit: { const: "staffSpaces" }, value: { type: "number", exclusiveMinimum: 0 } }, additionalProperties: !1 }, horizontalAlignment: { type: "string", enum: ["left", "center", "right"] }, paragraphJustification: { type: "string", enum: ["left", "center", "right", "justify"] }, padding: { type: "number", minimum: 0 }, border: { type: "string", enum: ["none", "solid"] }, eraseBackground: { type: "boolean", description: "Erase underlying ink within the frame using the surface background. Omitted or false preserves underlying ink; no color is stored." } }, additionalProperties: !1 };
10461
+ var schema397 = { type: "string", enum: ["below", "above"], description: "Placement of a text expression relative to the staff. Default: 'below'." };
10462
+ function validate423(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10463
+ let vErrors = null, errors = 0, evaluated0 = validate423.evaluated;
10311
10464
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10312
10465
  if (data.id === void 0) {
10313
10466
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -10338,7 +10491,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10338
10491
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
10339
10492
  }
10340
10493
  }
10341
- if (data.text !== void 0 && (validate403(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.frame !== void 0) {
10494
+ if (data.text !== void 0 && (validate405(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.frame !== void 0) {
10342
10495
  let data2 = data.frame;
10343
10496
  if (data2 && typeof data2 == "object" && !Array.isArray(data2)) {
10344
10497
  for (let key1 in data2)
@@ -10390,7 +10543,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10390
10543
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
10391
10544
  }
10392
10545
  if (!(data6 === "left" || data6 === "center" || data6 === "right")) {
10393
- let err15 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema392.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
10546
+ let err15 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema395.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
10394
10547
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
10395
10548
  }
10396
10549
  }
@@ -10401,7 +10554,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10401
10554
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
10402
10555
  }
10403
10556
  if (!(data7 === "left" || data7 === "center" || data7 === "right" || data7 === "justify")) {
10404
- let err17 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema392.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
10557
+ let err17 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema395.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
10405
10558
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
10406
10559
  }
10407
10560
  }
@@ -10424,7 +10577,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10424
10577
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
10425
10578
  }
10426
10579
  if (!(data9 === "none" || data9 === "solid")) {
10427
- let err21 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema392.properties.border.enum }, message: "must be equal to one of the allowed values" };
10580
+ let err21 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema395.properties.border.enum }, message: "must be equal to one of the allowed values" };
10428
10581
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
10429
10582
  }
10430
10583
  }
@@ -10513,7 +10666,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10513
10666
  vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
10514
10667
  }
10515
10668
  if (!(data17 === "below" || data17 === "above")) {
10516
- let err36 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema394.enum }, message: "must be equal to one of the allowed values" };
10669
+ let err36 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema397.enum }, message: "must be equal to one of the allowed values" };
10517
10670
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
10518
10671
  }
10519
10672
  }
@@ -10547,12 +10700,12 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10547
10700
  let err42 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10548
10701
  vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
10549
10702
  }
10550
- return validate421.errors = vErrors, errors === 0;
10703
+ return validate423.errors = vErrors, errors === 0;
10551
10704
  }
10552
- validate421.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10553
- var schema396 = { type: "object", description: "A gradual tempo change (ritardando / accelerando) playback curve. MNX has no gradual-tempo field, so Viritura models the playback ramp as a vendor extension on the global measure where it begins. The tempo ramps linearly in BPM from the tempo active at `position` (or `startBpm` if given) to `endBpm` at `end`. This is playback data only; the printed 'rit.'/'accel.' text is an ordinary text-expression.", required: ["position", "end", "endBpm"], properties: { position: { $ref: "#/$defs/rhythmic-position", description: "Start position within this measure." }, end: { $ref: "#/$defs/measure-rhythmic-position", description: "End position (may reference a later measure)." }, endBpm: { type: "number", exclusiveMinimum: 0, description: "Quarter-note BPM reached at the end of the ramp." }, startBpm: { type: "number", exclusiveMinimum: 0, description: "Optional start BPM (quarter-note). Defaults to the tempo active at `position`." }, kind: { type: "string", enum: ["rit", "accel"], description: "Optional classification. Cosmetic only; the BPM direction determines the audible behavior." } }, additionalProperties: !1 };
10554
- function validate425(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10555
- let vErrors = null, errors = 0, evaluated0 = validate425.evaluated;
10705
+ validate423.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10706
+ var schema399 = { type: "object", description: "A gradual tempo change (ritardando / accelerando) playback curve. MNX has no gradual-tempo field, so Viritura models the playback ramp as a vendor extension on the global measure where it begins. The tempo ramps linearly in BPM from the tempo active at `position` (or `startBpm` if given) to `endBpm` at `end`. This is playback data only; the printed 'rit.'/'accel.' text is an ordinary text-expression.", required: ["position", "end", "endBpm"], properties: { position: { $ref: "#/$defs/rhythmic-position", description: "Start position within this measure." }, end: { $ref: "#/$defs/measure-rhythmic-position", description: "End position (may reference a later measure)." }, endBpm: { type: "number", exclusiveMinimum: 0, description: "Quarter-note BPM reached at the end of the ramp." }, startBpm: { type: "number", exclusiveMinimum: 0, description: "Optional start BPM (quarter-note). Defaults to the tempo active at `position`." }, kind: { type: "string", enum: ["rit", "accel"], description: "Optional classification. Cosmetic only; the BPM direction determines the audible behavior." } }, additionalProperties: !1 };
10707
+ function validate427(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10708
+ let vErrors = null, errors = 0, evaluated0 = validate427.evaluated;
10556
10709
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10557
10710
  if (data.measure === void 0) {
10558
10711
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "measure" }, message: "must have required property 'measure'" };
@@ -10616,11 +10769,11 @@ function validate425(data, { instancePath = "", parentData, parentDataProperty,
10616
10769
  let err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10617
10770
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
10618
10771
  }
10619
- return validate425.errors = vErrors, errors === 0;
10772
+ return validate427.errors = vErrors, errors === 0;
10620
10773
  }
10621
- validate425.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10622
- function validate424(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10623
- let vErrors = null, errors = 0, evaluated0 = validate424.evaluated;
10774
+ validate427.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10775
+ function validate426(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10776
+ let vErrors = null, errors = 0, evaluated0 = validate426.evaluated;
10624
10777
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10625
10778
  if (data.position === void 0) {
10626
10779
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "position" }, message: "must have required property 'position'" };
@@ -10680,7 +10833,7 @@ function validate424(data, { instancePath = "", parentData, parentDataProperty,
10680
10833
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
10681
10834
  }
10682
10835
  }
10683
- if (data.end !== void 0 && (validate425(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate425.errors : vErrors.concat(validate425.errors), errors = vErrors.length)), data.endBpm !== void 0) {
10836
+ if (data.end !== void 0 && (validate427(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate427.errors : vErrors.concat(validate427.errors), errors = vErrors.length)), data.endBpm !== void 0) {
10684
10837
  let data4 = data.endBpm;
10685
10838
  if (typeof data4 == "number") {
10686
10839
  if (data4 <= 0 || isNaN(data4)) {
@@ -10711,7 +10864,7 @@ function validate424(data, { instancePath = "", parentData, parentDataProperty,
10711
10864
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
10712
10865
  }
10713
10866
  if (!(data6 === "rit" || data6 === "accel")) {
10714
- let err16 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/enum", keyword: "enum", params: { allowedValues: schema396.properties.kind.enum }, message: "must be equal to one of the allowed values" };
10867
+ let err16 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/enum", keyword: "enum", params: { allowedValues: schema399.properties.kind.enum }, message: "must be equal to one of the allowed values" };
10715
10868
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
10716
10869
  }
10717
10870
  }
@@ -10719,12 +10872,12 @@ function validate424(data, { instancePath = "", parentData, parentDataProperty,
10719
10872
  let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10720
10873
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
10721
10874
  }
10722
- return validate424.errors = vErrors, errors === 0;
10875
+ return validate426.errors = vErrors, errors === 0;
10723
10876
  }
10724
- validate424.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10725
- var schema400 = { type: "object", description: "A score-wide harmony event on a global measure. Either a structured root or authored rawText is required; rawText may preserve malformed or unrecognized symbols and no-chord (NC) declarations without inventing a root.", $comment: "The parser enforces root or rawText. The code generators cannot represent the anyOf required-property constraint while preserving both fields.", required: ["position"], properties: { position: { $ref: "#/$defs/rhythmic-position", description: "Rhythmic position within the measure." }, root: { $ref: "#/$defs/chord-root", description: "Structured root note, optional for raw authored symbols and no-chord declarations. When present, it must agree semantically with rawText." }, rawText: { type: "string", description: "Original authored chord text, preserved verbatim even when structured fields are available. Rootless text preserves malformed or unrecognized symbols and NC. The semantic resolver checks agreement with any structured fields." }, quality: { $ref: "#/$defs/chord-quality" }, kindText: { type: "string", description: "Authored quality spelling retained alongside the normalized quality." }, bass: { $ref: "#/$defs/chord-root", description: "Bass note for slash chords (e.g. the 'E' in 'C/E')." }, extension: { type: "integer", enum: [6, 7, 9, 11, 13], description: "Chord extension (6th, 7th, 9th, 11th, 13th)." }, textOverride: { type: "string", description: "Visual override of the computed display text, not a semantic replacement. The semantic resolver rejects parseable contradictions or unsupported non-equivalent overrides." } }, additionalProperties: !1 }, schema402 = { type: "object", description: "Root or bass note of a chord symbol.", required: ["step"], properties: { step: { type: "string", enum: ["A", "B", "C", "D", "E", "F", "G"], description: "Note letter name." }, alter: { type: "integer", description: "Chromatic alteration in semitones (-1 = flat, 1 = sharp)." } }, additionalProperties: !1 }, schema403 = { type: "string", enum: ["major", "minor", "dominant", "diminished", "augmented", "half-diminished", "minor-major", "power", "suspended2", "suspended4", "other"], description: "Harmonic quality of a chord symbol." };
10726
- function validate428(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10727
- let vErrors = null, errors = 0, evaluated0 = validate428.evaluated;
10877
+ validate426.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10878
+ var schema403 = { type: "object", description: "A score-wide harmony event on a global measure. Either a structured root or authored rawText is required; rawText may preserve malformed or unrecognized symbols and no-chord (NC) declarations without inventing a root.", $comment: "The parser enforces root or rawText. The code generators cannot represent the anyOf required-property constraint while preserving both fields.", required: ["position"], properties: { position: { $ref: "#/$defs/rhythmic-position", description: "Rhythmic position within the measure." }, root: { $ref: "#/$defs/chord-root", description: "Structured root note, optional for raw authored symbols and no-chord declarations. When present, it must agree semantically with rawText." }, rawText: { type: "string", description: "Original authored chord text, preserved verbatim even when structured fields are available. Rootless text preserves malformed or unrecognized symbols and NC. The semantic resolver checks agreement with any structured fields." }, quality: { $ref: "#/$defs/chord-quality" }, kindText: { type: "string", description: "Authored quality spelling retained alongside the normalized quality." }, bass: { $ref: "#/$defs/chord-root", description: "Bass note for slash chords (e.g. the 'E' in 'C/E')." }, extension: { type: "integer", enum: [6, 7, 9, 11, 13], description: "Chord extension (6th, 7th, 9th, 11th, 13th)." }, textOverride: { type: "string", description: "Visual override of the computed display text, not a semantic replacement. The semantic resolver rejects parseable contradictions or unsupported non-equivalent overrides." } }, additionalProperties: !1 }, schema405 = { type: "object", description: "Root or bass note of a chord symbol.", required: ["step"], properties: { step: { type: "string", enum: ["A", "B", "C", "D", "E", "F", "G"], description: "Note letter name." }, alter: { type: "integer", description: "Chromatic alteration in semitones (-1 = flat, 1 = sharp)." } }, additionalProperties: !1 }, schema406 = { type: "string", enum: ["major", "minor", "dominant", "diminished", "augmented", "half-diminished", "minor-major", "power", "suspended2", "suspended4", "other"], description: "Harmonic quality of a chord symbol." };
10879
+ function validate430(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10880
+ let vErrors = null, errors = 0, evaluated0 = validate430.evaluated;
10728
10881
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10729
10882
  if (data.position === void 0) {
10730
10883
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "position" }, message: "must have required property 'position'" };
@@ -10795,7 +10948,7 @@ function validate428(data, { instancePath = "", parentData, parentDataProperty,
10795
10948
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
10796
10949
  }
10797
10950
  if (!(data4 === "A" || data4 === "B" || data4 === "C" || data4 === "D" || data4 === "E" || data4 === "F" || data4 === "G")) {
10798
- let err12 = { instancePath: instancePath + "/root/step", schemaPath: "#/$defs/chord-root/properties/step/enum", keyword: "enum", params: { allowedValues: schema402.properties.step.enum }, message: "must be equal to one of the allowed values" };
10951
+ let err12 = { instancePath: instancePath + "/root/step", schemaPath: "#/$defs/chord-root/properties/step/enum", keyword: "enum", params: { allowedValues: schema405.properties.step.enum }, message: "must be equal to one of the allowed values" };
10799
10952
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
10800
10953
  }
10801
10954
  }
@@ -10822,7 +10975,7 @@ function validate428(data, { instancePath = "", parentData, parentDataProperty,
10822
10975
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
10823
10976
  }
10824
10977
  if (!(data7 === "major" || data7 === "minor" || data7 === "dominant" || data7 === "diminished" || data7 === "augmented" || data7 === "half-diminished" || data7 === "minor-major" || data7 === "power" || data7 === "suspended2" || data7 === "suspended4" || data7 === "other")) {
10825
- let err17 = { instancePath: instancePath + "/quality", schemaPath: "#/$defs/chord-quality/enum", keyword: "enum", params: { allowedValues: schema403.enum }, message: "must be equal to one of the allowed values" };
10978
+ let err17 = { instancePath: instancePath + "/quality", schemaPath: "#/$defs/chord-quality/enum", keyword: "enum", params: { allowedValues: schema406.enum }, message: "must be equal to one of the allowed values" };
10826
10979
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
10827
10980
  }
10828
10981
  }
@@ -10849,7 +11002,7 @@ function validate428(data, { instancePath = "", parentData, parentDataProperty,
10849
11002
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
10850
11003
  }
10851
11004
  if (!(data10 === "A" || data10 === "B" || data10 === "C" || data10 === "D" || data10 === "E" || data10 === "F" || data10 === "G")) {
10852
- let err22 = { instancePath: instancePath + "/bass/step", schemaPath: "#/$defs/chord-root/properties/step/enum", keyword: "enum", params: { allowedValues: schema402.properties.step.enum }, message: "must be equal to one of the allowed values" };
11005
+ let err22 = { instancePath: instancePath + "/bass/step", schemaPath: "#/$defs/chord-root/properties/step/enum", keyword: "enum", params: { allowedValues: schema405.properties.step.enum }, message: "must be equal to one of the allowed values" };
10853
11006
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
10854
11007
  }
10855
11008
  }
@@ -10872,7 +11025,7 @@ function validate428(data, { instancePath = "", parentData, parentDataProperty,
10872
11025
  vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
10873
11026
  }
10874
11027
  if (!(data12 === 6 || data12 === 7 || data12 === 9 || data12 === 11 || data12 === 13)) {
10875
- let err26 = { instancePath: instancePath + "/extension", schemaPath: "#/properties/extension/enum", keyword: "enum", params: { allowedValues: schema400.properties.extension.enum }, message: "must be equal to one of the allowed values" };
11028
+ let err26 = { instancePath: instancePath + "/extension", schemaPath: "#/properties/extension/enum", keyword: "enum", params: { allowedValues: schema403.properties.extension.enum }, message: "must be equal to one of the allowed values" };
10876
11029
  vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
10877
11030
  }
10878
11031
  }
@@ -10884,11 +11037,11 @@ function validate428(data, { instancePath = "", parentData, parentDataProperty,
10884
11037
  let err28 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10885
11038
  vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
10886
11039
  }
10887
- return validate428.errors = vErrors, errors === 0;
11040
+ return validate430.errors = vErrors, errors === 0;
10888
11041
  }
10889
- validate428.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10890
- function validate401(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10891
- let vErrors = null, errors = 0, evaluated0 = validate401.evaluated;
11042
+ validate430.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11043
+ function validate403(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11044
+ let vErrors = null, errors = 0, evaluated0 = validate403.evaluated;
10892
11045
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10893
11046
  for (let key0 in data)
10894
11047
  if (!(key0 === "tempos" || key0 === "rehearsalMark" || key0 === "markerText" || key0 === "systemText" || key0 === "gradualTempo" || key0 === "chordSymbols" || key0 === "senzaMisura")) {
@@ -10904,29 +11057,29 @@ function validate401(data, { instancePath = "", parentData, parentDataProperty,
10904
11057
  }
10905
11058
  let len0 = data0.length;
10906
11059
  for (let i0 = 0; i0 < len0; i0++)
10907
- validate402(data0[i0], { instancePath: instancePath + "/tempos/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate402.errors : vErrors.concat(validate402.errors), errors = vErrors.length);
11060
+ validate404(data0[i0], { instancePath: instancePath + "/tempos/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate404.errors : vErrors.concat(validate404.errors), errors = vErrors.length);
10908
11061
  } else {
10909
11062
  let err2 = { instancePath: instancePath + "/tempos", schemaPath: "#/properties/tempos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10910
11063
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10911
11064
  }
10912
11065
  }
10913
- if (data.rehearsalMark !== void 0 && (validate410(data.rehearsalMark, { instancePath: instancePath + "/rehearsalMark", parentData: data, parentDataProperty: "rehearsalMark", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate410.errors : vErrors.concat(validate410.errors), errors = vErrors.length)), data.markerText !== void 0 && (validate413(data.markerText, { instancePath: instancePath + "/markerText", parentData: data, parentDataProperty: "markerText", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate413.errors : vErrors.concat(validate413.errors), errors = vErrors.length)), data.systemText !== void 0) {
11066
+ if (data.rehearsalMark !== void 0 && (validate412(data.rehearsalMark, { instancePath: instancePath + "/rehearsalMark", parentData: data, parentDataProperty: "rehearsalMark", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate412.errors : vErrors.concat(validate412.errors), errors = vErrors.length)), data.markerText !== void 0 && (validate415(data.markerText, { instancePath: instancePath + "/markerText", parentData: data, parentDataProperty: "markerText", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate415.errors : vErrors.concat(validate415.errors), errors = vErrors.length)), data.systemText !== void 0) {
10914
11067
  let data4 = data.systemText;
10915
11068
  if (Array.isArray(data4)) {
10916
11069
  let len1 = data4.length;
10917
11070
  for (let i1 = 0; i1 < len1; i1++)
10918
- validate421(data4[i1], { instancePath: instancePath + "/systemText/" + i1, parentData: data4, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate421.errors : vErrors.concat(validate421.errors), errors = vErrors.length);
11071
+ validate423(data4[i1], { instancePath: instancePath + "/systemText/" + i1, parentData: data4, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate423.errors : vErrors.concat(validate423.errors), errors = vErrors.length);
10919
11072
  } else {
10920
11073
  let err3 = { instancePath: instancePath + "/systemText", schemaPath: "#/properties/systemText/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10921
11074
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
10922
11075
  }
10923
11076
  }
10924
- if (data.gradualTempo !== void 0 && (validate424(data.gradualTempo, { instancePath: instancePath + "/gradualTempo", parentData: data, parentDataProperty: "gradualTempo", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate424.errors : vErrors.concat(validate424.errors), errors = vErrors.length)), data.chordSymbols !== void 0) {
11077
+ if (data.gradualTempo !== void 0 && (validate426(data.gradualTempo, { instancePath: instancePath + "/gradualTempo", parentData: data, parentDataProperty: "gradualTempo", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate426.errors : vErrors.concat(validate426.errors), errors = vErrors.length)), data.chordSymbols !== void 0) {
10925
11078
  let data7 = data.chordSymbols;
10926
11079
  if (Array.isArray(data7)) {
10927
11080
  let len2 = data7.length;
10928
11081
  for (let i2 = 0; i2 < len2; i2++)
10929
- validate428(data7[i2], { instancePath: instancePath + "/chordSymbols/" + i2, parentData: data7, parentDataProperty: i2, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate428.errors : vErrors.concat(validate428.errors), errors = vErrors.length);
11082
+ validate430(data7[i2], { instancePath: instancePath + "/chordSymbols/" + i2, parentData: data7, parentDataProperty: i2, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate430.errors : vErrors.concat(validate430.errors), errors = vErrors.length);
10930
11083
  } else {
10931
11084
  let err4 = { instancePath: instancePath + "/chordSymbols", schemaPath: "#/properties/chordSymbols/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10932
11085
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
@@ -10947,11 +11100,11 @@ function validate401(data, { instancePath = "", parentData, parentDataProperty,
10947
11100
  let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10948
11101
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
10949
11102
  }
10950
- return validate401.errors = vErrors, errors === 0;
11103
+ return validate403.errors = vErrors, errors === 0;
10951
11104
  }
10952
- validate401.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10953
- function validate430(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10954
- let vErrors = null, errors = 0, evaluated0 = validate430.evaluated;
11105
+ validate403.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11106
+ function validate432(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11107
+ let vErrors = null, errors = 0, evaluated0 = validate432.evaluated;
10955
11108
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10956
11109
  for (let key0 in data)
10957
11110
  if (!(key0 === "beatStructure" || key0 === "groupingDisplay" || key0 === "display")) {
@@ -11008,11 +11161,11 @@ function validate430(data, { instancePath = "", parentData, parentDataProperty,
11008
11161
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11009
11162
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
11010
11163
  }
11011
- return validate430.errors = vErrors, errors === 0;
11164
+ return validate432.errors = vErrors, errors === 0;
11012
11165
  }
11013
- validate430.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11014
- function validate431(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11015
- let vErrors = null, errors = 0, evaluated0 = validate431.evaluated;
11166
+ validate432.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11167
+ function validate433(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11168
+ let vErrors = null, errors = 0, evaluated0 = validate433.evaluated;
11016
11169
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11017
11170
  for (let key0 in data)
11018
11171
  if (key0 !== "atonal") {
@@ -11034,11 +11187,11 @@ function validate431(data, { instancePath = "", parentData, parentDataProperty,
11034
11187
  let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11035
11188
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
11036
11189
  }
11037
- return validate431.errors = vErrors, errors === 0;
11190
+ return validate433.errors = vErrors, errors === 0;
11038
11191
  }
11039
- validate431.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11040
- function validate432(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11041
- let vErrors = null, errors = 0, evaluated0 = validate432.evaluated;
11192
+ validate433.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11193
+ function validate434(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11194
+ let vErrors = null, errors = 0, evaluated0 = validate434.evaluated;
11042
11195
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11043
11196
  for (let key0 in data)
11044
11197
  if (!(key0 === "swing" || key0 === "text" || key0 === "showMetronomeMark" || key0 === "showText" || key0 === "manualOffset" || key0 === "avoidCollisions")) {
@@ -11114,7 +11267,7 @@ function validate432(data, { instancePath = "", parentData, parentDataProperty,
11114
11267
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11115
11268
  }
11116
11269
  if (!(data3 === "eighth" || data3 === "16th")) {
11117
- let err13 = { instancePath: instancePath + "/swing/subdivision", schemaPath: "#/$defs/swing/oneOf/1/properties/subdivision/enum", keyword: "enum", params: { allowedValues: schema379.oneOf[1].properties.subdivision.enum }, message: "must be equal to one of the allowed values" };
11270
+ let err13 = { instancePath: instancePath + "/swing/subdivision", schemaPath: "#/$defs/swing/oneOf/1/properties/subdivision/enum", keyword: "enum", params: { allowedValues: schema382.oneOf[1].properties.subdivision.enum }, message: "must be equal to one of the allowed values" };
11118
11271
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
11119
11272
  }
11120
11273
  }
@@ -11164,7 +11317,7 @@ function validate432(data, { instancePath = "", parentData, parentDataProperty,
11164
11317
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
11165
11318
  }
11166
11319
  }
11167
- if (data.text !== void 0 && (validate403(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.showMetronomeMark !== void 0 && typeof data.showMetronomeMark != "boolean") {
11320
+ if (data.text !== void 0 && (validate405(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.showMetronomeMark !== void 0 && typeof data.showMetronomeMark != "boolean") {
11168
11321
  let err22 = { instancePath: instancePath + "/showMetronomeMark", schemaPath: "#/properties/showMetronomeMark/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
11169
11322
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
11170
11323
  }
@@ -11202,12 +11355,12 @@ function validate432(data, { instancePath = "", parentData, parentDataProperty,
11202
11355
  let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11203
11356
  vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
11204
11357
  }
11205
- return validate432.errors = vErrors, errors === 0;
11358
+ return validate434.errors = vErrors, errors === 0;
11206
11359
  }
11207
- validate432.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11208
- var swing = validate434;
11209
- function validate434(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11210
- let vErrors = null, errors = 0, evaluated0 = validate434.evaluated;
11360
+ validate434.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11361
+ var swing = validate436;
11362
+ function validate436(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11363
+ let vErrors = null, errors = 0, evaluated0 = validate436.evaluated;
11211
11364
  evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
11212
11365
  let _errs0 = errors, valid0 = !1, passing0 = null, _errs1 = errors;
11213
11366
  if (data && typeof data == "object" && !Array.isArray(data)) {
@@ -11277,7 +11430,7 @@ function validate434(data, { instancePath = "", parentData, parentDataProperty,
11277
11430
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
11278
11431
  }
11279
11432
  if (!(data2 === "eighth" || data2 === "16th")) {
11280
- let err12 = { instancePath: instancePath + "/subdivision", schemaPath: "#/oneOf/1/properties/subdivision/enum", keyword: "enum", params: { allowedValues: schema379.oneOf[1].properties.subdivision.enum }, message: "must be equal to one of the allowed values" };
11433
+ let err12 = { instancePath: instancePath + "/subdivision", schemaPath: "#/oneOf/1/properties/subdivision/enum", keyword: "enum", params: { allowedValues: schema382.oneOf[1].properties.subdivision.enum }, message: "must be equal to one of the allowed values" };
11281
11434
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11282
11435
  }
11283
11436
  }
@@ -11326,12 +11479,12 @@ function validate434(data, { instancePath = "", parentData, parentDataProperty,
11326
11479
  let err20 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
11327
11480
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
11328
11481
  }
11329
- return validate434.errors = vErrors, evaluated0.props = props0, errors === 0;
11482
+ return validate436.errors = vErrors, evaluated0.props = props0, errors === 0;
11330
11483
  }
11331
- validate434.evaluated = { dynamicProps: !0, dynamicItems: !1 };
11332
- var schema412 = { type: "object", description: "Viritura vendor extensions on an MNX part object (the `_x.viritura` dict on a part). Carries instrument identity so the editor and audio engine can resolve a part to a stable instrument without fuzzy name matching, plus its spatial-audio stage placement.", properties: { instrumentId: { type: "string", description: "MusicXML standard sound ID identifying the part's instrument (e.g. 'wind.flutes.flute', 'wind.reed.clarinet.bflat'). With `instruments`, this is the initial instrument's ID." }, instruments: { type: "object", description: "Provisional: instruments this part can switch between, keyed by a document-local key referenced by `initialInstrument` and part-measure `instrumentChanges`.", minProperties: 1, additionalProperties: { $ref: "#/$defs/instrument-definition" } }, initialInstrument: { type: "string", minLength: 1, description: "Key into `instruments` for the instrument active at the start of the part. Required when `instruments` is present." }, midiProgram: { type: "integer", minimum: 0, maximum: 127, description: "General-MIDI program (0..127). Used directly by the audio engine." }, family: { type: "string", description: "Instrument family for spatial placement / catalog routing." }, spatial: { $ref: "#/$defs/stage-position", description: "Spatial-audio stage position in concert-hall meters, persisted from Play mode so a user's instrument arrangement survives reload." }, chordSymbolVisibility: { type: "string", enum: ["auto", "show", "hide"], description: "Source-part display policy for the score-wide harmony track. Unset or auto uses automatic placement; show or hide explicitly controls this part. This is not a layout-staff or per-chord switch." } }, additionalProperties: !1 };
11333
- function validate436(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11334
- let vErrors = null, errors = 0, evaluated0 = validate436.evaluated;
11484
+ validate436.evaluated = { dynamicProps: !0, dynamicItems: !1 };
11485
+ var schema415 = { type: "object", description: "Viritura vendor extensions on an MNX part object (the `_x.viritura` dict on a part). Carries instrument identity so the editor and audio engine can resolve a part to a stable instrument without fuzzy name matching, plus its spatial-audio stage placement.", properties: { instrumentId: { type: "string", description: "MusicXML standard sound ID identifying the part's instrument (e.g. 'wind.flutes.flute', 'wind.reed.clarinet.bflat'). With `instruments`, this is the initial instrument's ID." }, instruments: { type: "object", description: "Provisional: instruments this part can switch between, keyed by a document-local key referenced by `initialInstrument` and part-measure `instrumentChanges`.", minProperties: 1, additionalProperties: { $ref: "#/$defs/instrument-definition" } }, initialInstrument: { type: "string", minLength: 1, description: "Key into `instruments` for the instrument active at the start of the part. Required when `instruments` is present." }, midiProgram: { type: "integer", minimum: 0, maximum: 127, description: "General-MIDI program (0..127). Used directly by the audio engine." }, family: { type: "string", description: "Instrument family for spatial placement / catalog routing." }, spatial: { $ref: "#/$defs/stage-position", description: "Spatial-audio stage position in concert-hall meters, persisted from Play mode so a user's instrument arrangement survives reload." }, chordSymbolVisibility: { type: "string", enum: ["auto", "show", "hide"], description: "Source-part display policy for the score-wide harmony track. Unset or auto uses automatic placement; show or hide explicitly controls this part. This is not a layout-staff or per-chord switch." } }, additionalProperties: !1 };
11486
+ function validate438(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11487
+ let vErrors = null, errors = 0, evaluated0 = validate438.evaluated;
11335
11488
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11336
11489
  if (data.instrumentId === void 0) {
11337
11490
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "instrumentId" }, message: "must have required property 'instrumentId'" };
@@ -11446,11 +11599,11 @@ function validate436(data, { instancePath = "", parentData, parentDataProperty,
11446
11599
  let err20 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11447
11600
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
11448
11601
  }
11449
- return validate436.errors = vErrors, errors === 0;
11602
+ return validate438.errors = vErrors, errors === 0;
11450
11603
  }
11451
- validate436.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11452
- function validate435(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11453
- let vErrors = null, errors = 0, evaluated0 = validate435.evaluated;
11604
+ validate438.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11605
+ function validate437(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11606
+ let vErrors = null, errors = 0, evaluated0 = validate437.evaluated;
11454
11607
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11455
11608
  for (let key0 in data)
11456
11609
  if (!(key0 === "instrumentId" || key0 === "instruments" || key0 === "initialInstrument" || key0 === "midiProgram" || key0 === "family" || key0 === "spatial" || key0 === "chordSymbolVisibility")) {
@@ -11469,7 +11622,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
11469
11622
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
11470
11623
  }
11471
11624
  for (let key1 in data1)
11472
- validate436(data1[key1], { instancePath: instancePath + "/instruments/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), parentData: data1, parentDataProperty: key1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate436.errors : vErrors.concat(validate436.errors), errors = vErrors.length);
11625
+ validate438(data1[key1], { instancePath: instancePath + "/instruments/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), parentData: data1, parentDataProperty: key1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate438.errors : vErrors.concat(validate438.errors), errors = vErrors.length);
11473
11626
  } else {
11474
11627
  let err3 = { instancePath: instancePath + "/instruments", schemaPath: "#/properties/instruments/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11475
11628
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
@@ -11544,7 +11697,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
11544
11697
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
11545
11698
  }
11546
11699
  if (!(data9 === "auto" || data9 === "show" || data9 === "hide")) {
11547
- let err17 = { instancePath: instancePath + "/chordSymbolVisibility", schemaPath: "#/properties/chordSymbolVisibility/enum", keyword: "enum", params: { allowedValues: schema412.properties.chordSymbolVisibility.enum }, message: "must be equal to one of the allowed values" };
11700
+ let err17 = { instancePath: instancePath + "/chordSymbolVisibility", schemaPath: "#/properties/chordSymbolVisibility/enum", keyword: "enum", params: { allowedValues: schema415.properties.chordSymbolVisibility.enum }, message: "must be equal to one of the allowed values" };
11548
11701
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
11549
11702
  }
11550
11703
  }
@@ -11552,12 +11705,12 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
11552
11705
  let err18 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11553
11706
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
11554
11707
  }
11555
- return validate435.errors = vErrors, errors === 0;
11708
+ return validate437.errors = vErrors, errors === 0;
11556
11709
  }
11557
- validate435.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11558
- var schema417 = { type: "string", enum: ["normal", "x", "circleX", "diamond", "slash", "triangleUp", "triangleDown"], description: "A notehead shape. MNX has no notehead field on note, kit-note or kit-component (W3C MNX issue #249); Viritura tracks it as a vendor extension on the kit-component (per-instrument) and optionally on a pitched note (per-note override)." };
11559
- function validate438(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11560
- let vErrors = null, errors = 0, evaluated0 = validate438.evaluated;
11710
+ validate437.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11711
+ var schema420 = { type: "string", enum: ["normal", "x", "circleX", "diamond", "slash", "triangleUp", "triangleDown"], description: "A notehead shape. MNX has no notehead field on note, kit-note or kit-component (W3C MNX issue #249); Viritura tracks it as a vendor extension on the kit-component (per-instrument) and optionally on a pitched note (per-note override)." };
11712
+ function validate440(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11713
+ let vErrors = null, errors = 0, evaluated0 = validate440.evaluated;
11561
11714
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11562
11715
  for (let key0 in data)
11563
11716
  if (!(key0 === "notehead" || key0 === "drumKit")) {
@@ -11571,7 +11724,7 @@ function validate438(data, { instancePath = "", parentData, parentDataProperty,
11571
11724
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
11572
11725
  }
11573
11726
  if (!(data0 === "normal" || data0 === "x" || data0 === "circleX" || data0 === "diamond" || data0 === "slash" || data0 === "triangleUp" || data0 === "triangleDown")) {
11574
- let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema417.enum }, message: "must be equal to one of the allowed values" };
11727
+ let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema420.enum }, message: "must be equal to one of the allowed values" };
11575
11728
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
11576
11729
  }
11577
11730
  }
@@ -11596,13 +11749,13 @@ function validate438(data, { instancePath = "", parentData, parentDataProperty,
11596
11749
  let err6 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11597
11750
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
11598
11751
  }
11599
- return validate438.errors = vErrors, errors === 0;
11752
+ return validate440.errors = vErrors, errors === 0;
11600
11753
  }
11601
- validate438.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11602
- var schema418 = { type: "object", description: "Viritura vendor extensions on a part measure object.", properties: { pedals: { type: "array", items: { $ref: "#/$defs/pedal" }, description: "Piano pedal markings." }, expressions: { type: "array", items: { $ref: "#/$defs/text-expression" }, description: "Text expressions and performance directions." }, condensingOverride: { type: "string", enum: ["unison", "solo1", "solo2", "amalgamate", "divisi"], description: "User-specified condensing mode override for this measure." }, groupingDisplayOverrides: { type: "array", items: { $ref: "#/$defs/staff-grouping-display-override" }, description: "Per-staff grouping-display occurrence overrides, presentation-only and taking precedence over the time signature's own occurrence override and the document house style." }, staffMeters: { type: "array", items: { $ref: "#/$defs/staff-meter-change" }, description: "Per-staff synchronous local meter changes/resets, effective from this measure onward until changed or reset. Each staff either follows the global meter (the default, no entry needed) or a declared staff-local meter that still shares the global barline grid (`sharedDuration` or `fitMeasure` synchronization). Non-aligning/independent polymeter is out of scope." }, instrumentChanges: { type: "array", items: { $ref: "#/$defs/instrument-change" }, description: "Provisional mid-part instrument and/or transposition changes, effective from their position onward until the next change. Positions within one measure must be unique." } }, additionalProperties: !1 };
11603
- var schema420 = { type: "string", enum: ["sustain", "sostenuto", "una-corda"], description: "Piano pedal type." }, schema422 = { type: "string", enum: ["text", "bracket"], description: "Pedal marking display style. 'text' shows Ped/*, 'bracket' shows a horizontal line with hooks." };
11604
- function validate440(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11605
- let vErrors = null, errors = 0, evaluated0 = validate440.evaluated;
11754
+ validate440.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11755
+ var schema421 = { type: "object", description: "Viritura vendor extensions on a part measure object.", properties: { pedals: { type: "array", items: { $ref: "#/$defs/pedal" }, description: "Piano pedal markings." }, expressions: { type: "array", items: { $ref: "#/$defs/text-expression" }, description: "Text expressions and performance directions." }, condensingOverride: { type: "string", enum: ["unison", "solo1", "solo2", "amalgamate", "divisi"], description: "User-specified condensing mode override for this measure." }, groupingDisplayOverrides: { type: "array", items: { $ref: "#/$defs/staff-grouping-display-override" }, description: "Per-staff grouping-display occurrence overrides, presentation-only and taking precedence over the time signature's own occurrence override and the document house style." }, staffMeters: { type: "array", items: { $ref: "#/$defs/staff-meter-change" }, description: "Per-staff synchronous local meter changes/resets, effective from this measure onward until changed or reset. Each staff either follows the global meter (the default, no entry needed) or a declared staff-local meter that still shares the global barline grid (`sharedDuration` or `fitMeasure` synchronization). Non-aligning/independent polymeter is out of scope." }, instrumentChanges: { type: "array", items: { $ref: "#/$defs/instrument-change" }, description: "Provisional mid-part instrument and/or transposition changes, effective from their position onward until the next change. Positions within one measure must be unique." } }, additionalProperties: !1 };
11756
+ var schema423 = { type: "string", enum: ["sustain", "sostenuto", "una-corda"], description: "Piano pedal type." }, schema425 = { type: "string", enum: ["text", "bracket"], description: "Pedal marking display style. 'text' shows Ped/*, 'bracket' shows a horizontal line with hooks." };
11757
+ function validate442(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11758
+ let vErrors = null, errors = 0, evaluated0 = validate442.evaluated;
11606
11759
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11607
11760
  if (data.type === void 0) {
11608
11761
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "type" }, message: "must have required property 'type'" };
@@ -11628,7 +11781,7 @@ function validate440(data, { instancePath = "", parentData, parentDataProperty,
11628
11781
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
11629
11782
  }
11630
11783
  if (!(data0 === "sustain" || data0 === "sostenuto" || data0 === "una-corda")) {
11631
- let err5 = { instancePath: instancePath + "/type", schemaPath: "#/$defs/pedal-type/enum", keyword: "enum", params: { allowedValues: schema420.enum }, message: "must be equal to one of the allowed values" };
11784
+ let err5 = { instancePath: instancePath + "/type", schemaPath: "#/$defs/pedal-type/enum", keyword: "enum", params: { allowedValues: schema423.enum }, message: "must be equal to one of the allowed values" };
11632
11785
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
11633
11786
  }
11634
11787
  }
@@ -11673,14 +11826,14 @@ function validate440(data, { instancePath = "", parentData, parentDataProperty,
11673
11826
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11674
11827
  }
11675
11828
  }
11676
- if (data.end !== void 0 && (validate425(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate425.errors : vErrors.concat(validate425.errors), errors = vErrors.length)), data.style !== void 0) {
11829
+ if (data.end !== void 0 && (validate427(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate427.errors : vErrors.concat(validate427.errors), errors = vErrors.length)), data.style !== void 0) {
11677
11830
  let data5 = data.style;
11678
11831
  if (typeof data5 != "string") {
11679
11832
  let err13 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/type", keyword: "type", params: { type: "string" }, message: "must be string" };
11680
11833
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
11681
11834
  }
11682
11835
  if (!(data5 === "text" || data5 === "bracket")) {
11683
- let err14 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/enum", keyword: "enum", params: { allowedValues: schema422.enum }, message: "must be equal to one of the allowed values" };
11836
+ let err14 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/enum", keyword: "enum", params: { allowedValues: schema425.enum }, message: "must be equal to one of the allowed values" };
11684
11837
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
11685
11838
  }
11686
11839
  }
@@ -11703,13 +11856,13 @@ function validate440(data, { instancePath = "", parentData, parentDataProperty,
11703
11856
  let err18 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11704
11857
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
11705
11858
  }
11706
- return validate440.errors = vErrors, errors === 0;
11859
+ return validate442.errors = vErrors, errors === 0;
11707
11860
  }
11708
- validate440.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11709
- var schema423 = { type: "object", description: "A text expression or direction at a rhythmic position (e.g. 'dolce', 'rit.', 'a tempo'). Rendered in italic serif font.", required: ["text", "position"], properties: { text: { $ref: "#/$defs/text-content" }, frame: { $ref: "#/$defs/staff-text-frame-presentation" }, pagePosition: { $ref: "#/$defs/text-frame-page-position" }, position: { $ref: "#/$defs/rhythmic-position", description: "Rhythmic position within the measure." }, placement: { $ref: "#/$defs/expression-placement" }, staff: { type: "integer", minimum: 1, description: "Staff number (1-based)." }, voice: { type: "string", description: "Voice name." }, manualOffset: { $ref: "#/$defs/sp-delta", description: "Manual [dx, dy] offset in spatia (sp), applied after automatic placement." }, avoidCollisions: { type: "boolean", description: "Whether automatic collision avoidance may re-flow this expression outward to clear other directions. Default (and when unset): true. Set false when the user manually places the expression (e.g. by dragging) so it stays exactly where put and others flow around it." } }, additionalProperties: !1 };
11710
- var schema427 = { type: "object", required: ["anchor", "offset"], properties: { anchor: { type: "string", enum: ["top", "right", "bottom", "left", "top-left", "top-right", "bottom-right", "bottom-left"] }, offset: { type: "object", required: ["x", "y"], properties: { x: { type: "number", description: "Horizontal offset in staff spaces; positive moves right." }, y: { type: "number", description: "Vertical offset in staff spaces; positive moves down." } }, additionalProperties: !1 } }, additionalProperties: !1 };
11711
- function validate445(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11712
- let vErrors = null, errors = 0, evaluated0 = validate445.evaluated;
11861
+ validate442.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11862
+ var schema426 = { type: "object", description: "A text expression or direction at a rhythmic position (e.g. 'dolce', 'rit.', 'a tempo'). Rendered in italic serif font.", required: ["text", "position"], properties: { text: { $ref: "#/$defs/text-content" }, frame: { $ref: "#/$defs/staff-text-frame-presentation" }, pagePosition: { $ref: "#/$defs/text-frame-page-position" }, position: { $ref: "#/$defs/rhythmic-position", description: "Rhythmic position within the measure." }, placement: { $ref: "#/$defs/expression-placement" }, staff: { type: "integer", minimum: 1, description: "Staff number (1-based)." }, voice: { type: "string", description: "Voice name." }, manualOffset: { $ref: "#/$defs/sp-delta", description: "Manual [dx, dy] offset in spatia (sp), applied after automatic placement." }, avoidCollisions: { type: "boolean", description: "Whether automatic collision avoidance may re-flow this expression outward to clear other directions. Default (and when unset): true. Set false when the user manually places the expression (e.g. by dragging) so it stays exactly where put and others flow around it." } }, additionalProperties: !1 };
11863
+ var schema430 = { type: "object", required: ["anchor", "offset"], properties: { anchor: { type: "string", enum: ["top", "right", "bottom", "left", "top-left", "top-right", "bottom-right", "bottom-left"] }, offset: { type: "object", required: ["x", "y"], properties: { x: { type: "number", description: "Horizontal offset in staff spaces; positive moves right." }, y: { type: "number", description: "Vertical offset in staff spaces; positive moves down." } }, additionalProperties: !1 } }, additionalProperties: !1 };
11864
+ function validate447(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11865
+ let vErrors = null, errors = 0, evaluated0 = validate447.evaluated;
11713
11866
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11714
11867
  if (data.id === void 0) {
11715
11868
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -11919,7 +12072,7 @@ function validate445(data, { instancePath = "", parentData, parentDataProperty,
11919
12072
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
11920
12073
  }
11921
12074
  if (!(data11 === "top" || data11 === "right" || data11 === "bottom" || data11 === "left" || data11 === "top-left" || data11 === "top-right" || data11 === "bottom-right" || data11 === "bottom-left")) {
11922
- let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema427.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
12075
+ let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema430.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
11923
12076
  vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
11924
12077
  }
11925
12078
  }
@@ -12090,11 +12243,11 @@ function validate445(data, { instancePath = "", parentData, parentDataProperty,
12090
12243
  let err69 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12091
12244
  vErrors === null ? vErrors = [err69] : vErrors.push(err69), errors++;
12092
12245
  }
12093
- return validate445.errors = vErrors, errors === 0;
12246
+ return validate447.errors = vErrors, errors === 0;
12094
12247
  }
12095
- validate445.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12096
- function validate443(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12097
- let vErrors = null, errors = 0, evaluated0 = validate443.evaluated;
12248
+ validate447.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12249
+ function validate445(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12250
+ let vErrors = null, errors = 0, evaluated0 = validate445.evaluated;
12098
12251
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12099
12252
  if (data.text === void 0) {
12100
12253
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
@@ -12105,11 +12258,11 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12105
12258
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
12106
12259
  }
12107
12260
  for (let key0 in data)
12108
- if (!func1.call(schema423.properties, key0)) {
12261
+ if (!func1.call(schema426.properties, key0)) {
12109
12262
  let err2 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
12110
12263
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12111
12264
  }
12112
- if (data.text !== void 0 && (validate403(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.frame !== void 0) {
12265
+ if (data.text !== void 0 && (validate405(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.frame !== void 0) {
12113
12266
  let data1 = data.frame;
12114
12267
  if (data1 && typeof data1 == "object" && !Array.isArray(data1)) {
12115
12268
  for (let key1 in data1)
@@ -12161,7 +12314,7 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12161
12314
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
12162
12315
  }
12163
12316
  if (!(data5 === "left" || data5 === "center" || data5 === "right")) {
12164
- let err12 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema392.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
12317
+ let err12 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema395.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
12165
12318
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
12166
12319
  }
12167
12320
  }
@@ -12172,7 +12325,7 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12172
12325
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
12173
12326
  }
12174
12327
  if (!(data6 === "left" || data6 === "center" || data6 === "right" || data6 === "justify")) {
12175
- let err14 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema392.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
12328
+ let err14 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema395.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
12176
12329
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
12177
12330
  }
12178
12331
  }
@@ -12195,7 +12348,7 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12195
12348
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
12196
12349
  }
12197
12350
  if (!(data8 === "none" || data8 === "solid")) {
12198
- let err18 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema392.properties.border.enum }, message: "must be equal to one of the allowed values" };
12351
+ let err18 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema395.properties.border.enum }, message: "must be equal to one of the allowed values" };
12199
12352
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
12200
12353
  }
12201
12354
  }
@@ -12208,7 +12361,7 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12208
12361
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
12209
12362
  }
12210
12363
  }
12211
- if (data.pagePosition !== void 0 && (validate445(data.pagePosition, { instancePath: instancePath + "/pagePosition", parentData: data, parentDataProperty: "pagePosition", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate445.errors : vErrors.concat(validate445.errors), errors = vErrors.length)), data.position !== void 0) {
12364
+ if (data.pagePosition !== void 0 && (validate447(data.pagePosition, { instancePath: instancePath + "/pagePosition", parentData: data, parentDataProperty: "pagePosition", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate447.errors : vErrors.concat(validate447.errors), errors = vErrors.length)), data.position !== void 0) {
12212
12365
  let data11 = data.position;
12213
12366
  if (data11 && typeof data11 == "object" && !Array.isArray(data11)) {
12214
12367
  if (data11.fraction === void 0) {
@@ -12256,7 +12409,7 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12256
12409
  vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
12257
12410
  }
12258
12411
  if (!(data14 === "below" || data14 === "above")) {
12259
- let err29 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema394.enum }, message: "must be equal to one of the allowed values" };
12412
+ let err29 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema397.enum }, message: "must be equal to one of the allowed values" };
12260
12413
  vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
12261
12414
  }
12262
12415
  }
@@ -12305,11 +12458,11 @@ function validate443(data, { instancePath = "", parentData, parentDataProperty,
12305
12458
  let err38 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12306
12459
  vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
12307
12460
  }
12308
- return validate443.errors = vErrors, errors === 0;
12461
+ return validate445.errors = vErrors, errors === 0;
12309
12462
  }
12310
- validate443.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12311
- function validate448(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12312
- let vErrors = null, errors = 0, evaluated0 = validate448.evaluated;
12463
+ validate445.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12464
+ function validate450(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12465
+ let vErrors = null, errors = 0, evaluated0 = validate450.evaluated;
12313
12466
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12314
12467
  if (data.staff === void 0) {
12315
12468
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "staff" }, message: "must have required property 'staff'" };
@@ -12350,12 +12503,12 @@ function validate448(data, { instancePath = "", parentData, parentDataProperty,
12350
12503
  let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12351
12504
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
12352
12505
  }
12353
- return validate448.errors = vErrors, errors === 0;
12506
+ return validate450.errors = vErrors, errors === 0;
12354
12507
  }
12355
- validate448.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12356
- var schema437 = { type: "object", description: "A staff-local meter distinct from the global (`global.measures[].time`) meter. Semantically identical in shape to a time signature, but never engraved on other staves and never establishes the score's barline duration by itself.", required: ["count", "unit"], properties: { count: { type: "integer", minimum: 1, description: "Numerator (beats per measure) of the staff-local meter." }, unit: { type: "integer", enum: [1, 2, 4, 8, 16, 32, 64, 128], description: "Denominator (beat unit) of the staff-local meter." }, beatStructure: { type: "array", items: { type: "integer", minimum: 1 }, minItems: 1, description: "Ordered beat-group lengths in units of the staff-local meter's denominator. Values must sum to count. When omitted, Viritura resolves the conventional default structure for this count/unit, same as a global time signature." } }, additionalProperties: !1 }, schema438 = { type: "string", enum: ["sharedDuration", "fitMeasure"], description: "How a staff-local meter's measure duration relates to the global measure it shares a barline with. `sharedDuration` requires the staff-local meter's measure duration to equal the global measure's duration exactly, so ordinary written note durations already line up \u2014 no scaling. `fitMeasure` maps one complete staff-local measure onto one complete global measure by a derived exact ratio (e.g. a local 6/8 measure of two dotted-quarter pulses onto a global 2/4 measure of two quarter-note pulses), so the staff's written durations are proportionally scaled for spacing and playback while the notated meter keeps its own conventional note values." };
12357
- function validate451(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12358
- let vErrors = null, errors = 0, evaluated0 = validate451.evaluated;
12508
+ validate450.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12509
+ var schema440 = { type: "object", description: "A staff-local meter distinct from the global (`global.measures[].time`) meter. Semantically identical in shape to a time signature, but never engraved on other staves and never establishes the score's barline duration by itself.", required: ["count", "unit"], properties: { count: { type: "integer", minimum: 1, description: "Numerator (beats per measure) of the staff-local meter." }, unit: { type: "integer", enum: [1, 2, 4, 8, 16, 32, 64, 128], description: "Denominator (beat unit) of the staff-local meter." }, beatStructure: { type: "array", items: { type: "integer", minimum: 1 }, minItems: 1, description: "Ordered beat-group lengths in units of the staff-local meter's denominator. Values must sum to count. When omitted, Viritura resolves the conventional default structure for this count/unit, same as a global time signature." } }, additionalProperties: !1 }, schema441 = { type: "string", enum: ["sharedDuration", "fitMeasure"], description: "How a staff-local meter's measure duration relates to the global measure it shares a barline with. `sharedDuration` requires the staff-local meter's measure duration to equal the global measure's duration exactly, so ordinary written note durations already line up \u2014 no scaling. `fitMeasure` maps one complete staff-local measure onto one complete global measure by a derived exact ratio (e.g. a local 6/8 measure of two dotted-quarter pulses onto a global 2/4 measure of two quarter-note pulses), so the staff's written durations are proportionally scaled for spacing and playback while the notated meter keeps its own conventional note values." };
12510
+ function validate453(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12511
+ let vErrors = null, errors = 0, evaluated0 = validate453.evaluated;
12359
12512
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12360
12513
  if (data.staff === void 0) {
12361
12514
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "staff" }, message: "must have required property 'staff'" };
@@ -12419,7 +12572,7 @@ function validate451(data, { instancePath = "", parentData, parentDataProperty,
12419
12572
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
12420
12573
  }
12421
12574
  if (!(data3 === 1 || data3 === 2 || data3 === 4 || data3 === 8 || data3 === 16 || data3 === 32 || data3 === 64 || data3 === 128)) {
12422
- let err12 = { instancePath: instancePath + "/meter/unit", schemaPath: "#/$defs/staff-meter/properties/unit/enum", keyword: "enum", params: { allowedValues: schema437.properties.unit.enum }, message: "must be equal to one of the allowed values" };
12575
+ let err12 = { instancePath: instancePath + "/meter/unit", schemaPath: "#/$defs/staff-meter/properties/unit/enum", keyword: "enum", params: { allowedValues: schema440.properties.unit.enum }, message: "must be equal to one of the allowed values" };
12423
12576
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
12424
12577
  }
12425
12578
  }
@@ -12459,7 +12612,7 @@ function validate451(data, { instancePath = "", parentData, parentDataProperty,
12459
12612
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
12460
12613
  }
12461
12614
  if (!(data6 === "sharedDuration" || data6 === "fitMeasure")) {
12462
- let err19 = { instancePath: instancePath + "/synchronization", schemaPath: "#/$defs/staff-meter-synchronization/enum", keyword: "enum", params: { allowedValues: schema438.enum }, message: "must be equal to one of the allowed values" };
12615
+ let err19 = { instancePath: instancePath + "/synchronization", schemaPath: "#/$defs/staff-meter-synchronization/enum", keyword: "enum", params: { allowedValues: schema441.enum }, message: "must be equal to one of the allowed values" };
12463
12616
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
12464
12617
  }
12465
12618
  }
@@ -12467,14 +12620,14 @@ function validate451(data, { instancePath = "", parentData, parentDataProperty,
12467
12620
  let err20 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12468
12621
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
12469
12622
  }
12470
- return validate451.errors = vErrors, errors === 0;
12623
+ return validate453.errors = vErrors, errors === 0;
12471
12624
  }
12472
- validate451.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12473
- function validate450(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12474
- let vErrors = null, errors = 0, evaluated0 = validate450.evaluated;
12625
+ validate453.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12626
+ function validate452(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12627
+ let vErrors = null, errors = 0, evaluated0 = validate452.evaluated;
12475
12628
  evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
12476
12629
  let _errs0 = errors, valid0 = !1, passing0 = null, _errs1 = errors;
12477
- validate451(data, { instancePath, parentData, parentDataProperty, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate451.errors : vErrors.concat(validate451.errors), errors = vErrors.length);
12630
+ validate453(data, { instancePath, parentData, parentDataProperty, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate453.errors : vErrors.concat(validate453.errors), errors = vErrors.length);
12478
12631
  var _valid0 = _errs1 === errors;
12479
12632
  if (_valid0) {
12480
12633
  valid0 = !0, passing0 = 0;
@@ -12528,11 +12681,11 @@ function validate450(data, { instancePath = "", parentData, parentDataProperty,
12528
12681
  let err8 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
12529
12682
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
12530
12683
  }
12531
- return validate450.errors = vErrors, evaluated0.props = props0, errors === 0;
12684
+ return validate452.errors = vErrors, evaluated0.props = props0, errors === 0;
12532
12685
  }
12533
- validate450.evaluated = { dynamicProps: !0, dynamicItems: !1 };
12534
- function validate454(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12535
- let vErrors = null, errors = 0, evaluated0 = validate454.evaluated;
12686
+ validate452.evaluated = { dynamicProps: !0, dynamicItems: !1 };
12687
+ function validate456(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12688
+ let vErrors = null, errors = 0, evaluated0 = validate456.evaluated;
12536
12689
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12537
12690
  for (let key0 in data)
12538
12691
  if (!(key0 === "position" || key0 === "instrument" || key0 === "transposition" || key0 === "instruction" || key0 === "reminder")) {
@@ -12701,11 +12854,11 @@ function validate454(data, { instancePath = "", parentData, parentDataProperty,
12701
12854
  let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12702
12855
  vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
12703
12856
  }
12704
- return validate454.errors = vErrors, errors === 0;
12857
+ return validate456.errors = vErrors, errors === 0;
12705
12858
  }
12706
- validate454.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12707
- function validate439(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12708
- let vErrors = null, errors = 0, evaluated0 = validate439.evaluated;
12859
+ validate456.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12860
+ function validate441(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12861
+ let vErrors = null, errors = 0, evaluated0 = validate441.evaluated;
12709
12862
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12710
12863
  for (let key0 in data)
12711
12864
  if (!(key0 === "pedals" || key0 === "expressions" || key0 === "condensingOverride" || key0 === "groupingDisplayOverrides" || key0 === "staffMeters" || key0 === "instrumentChanges")) {
@@ -12717,7 +12870,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12717
12870
  if (Array.isArray(data0)) {
12718
12871
  let len0 = data0.length;
12719
12872
  for (let i0 = 0; i0 < len0; i0++)
12720
- validate440(data0[i0], { instancePath: instancePath + "/pedals/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate440.errors : vErrors.concat(validate440.errors), errors = vErrors.length);
12873
+ validate442(data0[i0], { instancePath: instancePath + "/pedals/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate442.errors : vErrors.concat(validate442.errors), errors = vErrors.length);
12721
12874
  } else {
12722
12875
  let err1 = { instancePath: instancePath + "/pedals", schemaPath: "#/properties/pedals/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12723
12876
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
@@ -12728,7 +12881,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12728
12881
  if (Array.isArray(data2)) {
12729
12882
  let len1 = data2.length;
12730
12883
  for (let i1 = 0; i1 < len1; i1++)
12731
- validate443(data2[i1], { instancePath: instancePath + "/expressions/" + i1, parentData: data2, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate443.errors : vErrors.concat(validate443.errors), errors = vErrors.length);
12884
+ validate445(data2[i1], { instancePath: instancePath + "/expressions/" + i1, parentData: data2, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate445.errors : vErrors.concat(validate445.errors), errors = vErrors.length);
12732
12885
  } else {
12733
12886
  let err2 = { instancePath: instancePath + "/expressions", schemaPath: "#/properties/expressions/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12734
12887
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
@@ -12741,7 +12894,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12741
12894
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12742
12895
  }
12743
12896
  if (!(data4 === "unison" || data4 === "solo1" || data4 === "solo2" || data4 === "amalgamate" || data4 === "divisi")) {
12744
- let err4 = { instancePath: instancePath + "/condensingOverride", schemaPath: "#/properties/condensingOverride/enum", keyword: "enum", params: { allowedValues: schema418.properties.condensingOverride.enum }, message: "must be equal to one of the allowed values" };
12897
+ let err4 = { instancePath: instancePath + "/condensingOverride", schemaPath: "#/properties/condensingOverride/enum", keyword: "enum", params: { allowedValues: schema421.properties.condensingOverride.enum }, message: "must be equal to one of the allowed values" };
12745
12898
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
12746
12899
  }
12747
12900
  }
@@ -12750,7 +12903,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12750
12903
  if (Array.isArray(data5)) {
12751
12904
  let len2 = data5.length;
12752
12905
  for (let i2 = 0; i2 < len2; i2++)
12753
- validate448(data5[i2], { instancePath: instancePath + "/groupingDisplayOverrides/" + i2, parentData: data5, parentDataProperty: i2, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate448.errors : vErrors.concat(validate448.errors), errors = vErrors.length);
12906
+ validate450(data5[i2], { instancePath: instancePath + "/groupingDisplayOverrides/" + i2, parentData: data5, parentDataProperty: i2, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate450.errors : vErrors.concat(validate450.errors), errors = vErrors.length);
12754
12907
  } else {
12755
12908
  let err5 = { instancePath: instancePath + "/groupingDisplayOverrides", schemaPath: "#/properties/groupingDisplayOverrides/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12756
12909
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
@@ -12761,7 +12914,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12761
12914
  if (Array.isArray(data7)) {
12762
12915
  let len3 = data7.length;
12763
12916
  for (let i3 = 0; i3 < len3; i3++)
12764
- validate450(data7[i3], { instancePath: instancePath + "/staffMeters/" + i3, parentData: data7, parentDataProperty: i3, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate450.errors : vErrors.concat(validate450.errors), errors = vErrors.length);
12917
+ validate452(data7[i3], { instancePath: instancePath + "/staffMeters/" + i3, parentData: data7, parentDataProperty: i3, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate452.errors : vErrors.concat(validate452.errors), errors = vErrors.length);
12765
12918
  } else {
12766
12919
  let err6 = { instancePath: instancePath + "/staffMeters", schemaPath: "#/properties/staffMeters/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12767
12920
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
@@ -12772,7 +12925,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12772
12925
  if (Array.isArray(data9)) {
12773
12926
  let len4 = data9.length;
12774
12927
  for (let i4 = 0; i4 < len4; i4++)
12775
- validate454(data9[i4], { instancePath: instancePath + "/instrumentChanges/" + i4, parentData: data9, parentDataProperty: i4, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate454.errors : vErrors.concat(validate454.errors), errors = vErrors.length);
12928
+ validate456(data9[i4], { instancePath: instancePath + "/instrumentChanges/" + i4, parentData: data9, parentDataProperty: i4, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate456.errors : vErrors.concat(validate456.errors), errors = vErrors.length);
12776
12929
  } else {
12777
12930
  let err7 = { instancePath: instancePath + "/instrumentChanges", schemaPath: "#/properties/instrumentChanges/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12778
12931
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
@@ -12782,12 +12935,12 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
12782
12935
  let err8 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12783
12936
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
12784
12937
  }
12785
- return validate439.errors = vErrors, errors === 0;
12938
+ return validate441.errors = vErrors, errors === 0;
12786
12939
  }
12787
- validate439.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12788
- var schema446 = { type: "object", description: "Links measure-local tuplet fragments into one logical tuplet spanning barlines. The same id and ratio must be used by contiguous fragments.", required: ["id", "type"], properties: { id: { type: "string", minLength: 1, description: "Stable identity shared by every fragment of the logical tuplet." }, type: { type: "string", enum: ["start", "continue", "stop"], description: "The fragment's position within the logical tuplet." } }, additionalProperties: !1 };
12789
- function validate456(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12790
- let vErrors = null, errors = 0, evaluated0 = validate456.evaluated;
12940
+ validate441.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12941
+ var schema449 = { type: "object", description: "Links measure-local tuplet fragments into one logical tuplet spanning barlines. The same id and ratio must be used by contiguous fragments.", required: ["id", "type"], properties: { id: { type: "string", minLength: 1, description: "Stable identity shared by every fragment of the logical tuplet." }, type: { type: "string", enum: ["start", "continue", "stop"], description: "The fragment's position within the logical tuplet." } }, additionalProperties: !1 };
12942
+ function validate458(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12943
+ let vErrors = null, errors = 0, evaluated0 = validate458.evaluated;
12791
12944
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12792
12945
  for (let key0 in data)
12793
12946
  if (key0 !== "span") {
@@ -12829,7 +12982,7 @@ function validate456(data, { instancePath = "", parentData, parentDataProperty,
12829
12982
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12830
12983
  }
12831
12984
  if (!(data2 === "start" || data2 === "continue" || data2 === "stop")) {
12832
- let err7 = { instancePath: instancePath + "/span/type", schemaPath: "#/$defs/tuplet-span/properties/type/enum", keyword: "enum", params: { allowedValues: schema446.properties.type.enum }, message: "must be equal to one of the allowed values" };
12985
+ let err7 = { instancePath: instancePath + "/span/type", schemaPath: "#/$defs/tuplet-span/properties/type/enum", keyword: "enum", params: { allowedValues: schema449.properties.type.enum }, message: "must be equal to one of the allowed values" };
12833
12986
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
12834
12987
  }
12835
12988
  }
@@ -12842,11 +12995,11 @@ function validate456(data, { instancePath = "", parentData, parentDataProperty,
12842
12995
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12843
12996
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
12844
12997
  }
12845
- return validate456.errors = vErrors, errors === 0;
12998
+ return validate458.errors = vErrors, errors === 0;
12846
12999
  }
12847
- validate456.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12848
- function validate457(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12849
- let vErrors = null, errors = 0, evaluated0 = validate457.evaluated;
13000
+ validate458.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13001
+ function validate459(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13002
+ let vErrors = null, errors = 0, evaluated0 = validate459.evaluated;
12850
13003
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12851
13004
  for (let key0 in data)
12852
13005
  if (key0 !== "staffLineRangeRestore") {
@@ -12861,11 +13014,11 @@ function validate457(data, { instancePath = "", parentData, parentDataProperty,
12861
13014
  let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12862
13015
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12863
13016
  }
12864
- return validate457.errors = vErrors, errors === 0;
13017
+ return validate459.errors = vErrors, errors === 0;
12865
13018
  }
12866
- validate457.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12867
- function validate458(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12868
- let vErrors = null, errors = 0, evaluated0 = validate458.evaluated;
13019
+ validate459.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13020
+ function validate460(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13021
+ let vErrors = null, errors = 0, evaluated0 = validate460.evaluated;
12869
13022
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12870
13023
  for (let key0 in data)
12871
13024
  if (!(key0 === "manualOffset" || key0 === "avoidCollisions")) {
@@ -12902,12 +13055,12 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
12902
13055
  let err6 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12903
13056
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12904
13057
  }
12905
- return validate458.errors = vErrors, errors === 0;
13058
+ return validate460.errors = vErrors, errors === 0;
12906
13059
  }
12907
- validate458.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12908
- var schema452 = { type: "string", enum: ["glissando", "portamento"], description: "Semantic kind of a glissando-family line." }, schema453 = { type: "string", enum: ["straight", "wavy"], description: "Glissando/portamento line style." };
12909
- function validate460(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12910
- let vErrors = null, errors = 0, evaluated0 = validate460.evaluated;
13060
+ validate460.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13061
+ var schema455 = { type: "string", enum: ["glissando", "portamento"], description: "Semantic kind of a glissando-family line." }, schema456 = { type: "string", enum: ["straight", "wavy"], description: "Glissando/portamento line style." };
13062
+ function validate462(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13063
+ let vErrors = null, errors = 0, evaluated0 = validate462.evaluated;
12911
13064
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12912
13065
  if (data.target === void 0) {
12913
13066
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "target" }, message: "must have required property 'target'" };
@@ -12929,7 +13082,7 @@ function validate460(data, { instancePath = "", parentData, parentDataProperty,
12929
13082
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12930
13083
  }
12931
13084
  if (!(data1 === "glissando" || data1 === "portamento")) {
12932
- let err4 = { instancePath: instancePath + "/kind", schemaPath: "#/$defs/glissando-kind/enum", keyword: "enum", params: { allowedValues: schema452.enum }, message: "must be equal to one of the allowed values" };
13085
+ let err4 = { instancePath: instancePath + "/kind", schemaPath: "#/$defs/glissando-kind/enum", keyword: "enum", params: { allowedValues: schema455.enum }, message: "must be equal to one of the allowed values" };
12933
13086
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
12934
13087
  }
12935
13088
  }
@@ -12940,7 +13093,7 @@ function validate460(data, { instancePath = "", parentData, parentDataProperty,
12940
13093
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
12941
13094
  }
12942
13095
  if (!(data2 === "straight" || data2 === "wavy")) {
12943
- let err6 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/glissando-style/enum", keyword: "enum", params: { allowedValues: schema453.enum }, message: "must be equal to one of the allowed values" };
13096
+ let err6 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/glissando-style/enum", keyword: "enum", params: { allowedValues: schema456.enum }, message: "must be equal to one of the allowed values" };
12944
13097
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12945
13098
  }
12946
13099
  }
@@ -12956,11 +13109,11 @@ function validate460(data, { instancePath = "", parentData, parentDataProperty,
12956
13109
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12957
13110
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
12958
13111
  }
12959
- return validate460.errors = vErrors, errors === 0;
13112
+ return validate462.errors = vErrors, errors === 0;
12960
13113
  }
12961
- validate460.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12962
- function validate459(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12963
- let vErrors = null, errors = 0, evaluated0 = validate459.evaluated;
13114
+ validate462.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13115
+ function validate461(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13116
+ let vErrors = null, errors = 0, evaluated0 = validate461.evaluated;
12964
13117
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12965
13118
  for (let key0 in data)
12966
13119
  if (key0 !== "glissandos") {
@@ -12972,7 +13125,7 @@ function validate459(data, { instancePath = "", parentData, parentDataProperty,
12972
13125
  if (Array.isArray(data0)) {
12973
13126
  let len0 = data0.length;
12974
13127
  for (let i0 = 0; i0 < len0; i0++)
12975
- validate460(data0[i0], { instancePath: instancePath + "/glissandos/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate460.errors : vErrors.concat(validate460.errors), errors = vErrors.length);
13128
+ validate462(data0[i0], { instancePath: instancePath + "/glissandos/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate462.errors : vErrors.concat(validate462.errors), errors = vErrors.length);
12976
13129
  } else {
12977
13130
  let err1 = { instancePath: instancePath + "/glissandos", schemaPath: "#/properties/glissandos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12978
13131
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
@@ -12982,13 +13135,13 @@ function validate459(data, { instancePath = "", parentData, parentDataProperty,
12982
13135
  let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12983
13136
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12984
13137
  }
12985
- return validate459.errors = vErrors, errors === 0;
13138
+ return validate461.errors = vErrors, errors === 0;
12986
13139
  }
12987
- validate459.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12988
- var schema454 = { type: "object", description: "Viritura vendor extensions on an event-markings object.", properties: { staccatissimoWedge: { type: "object", description: "Staccatissimo wedge articulation variant (SMuFL articStaccatissimoWedge).", properties: { placement: { type: "string", enum: ["above", "below", "auto"], description: "Vertical placement relative to the staff." } }, additionalProperties: !1 }, trill: { $ref: "#/$defs/trill" }, ornaments: { type: "array", items: { $ref: "#/$defs/ornament-type" }, description: "Ornament markings (turn, mordent, etc.)." }, fingerings: { type: "array", items: { $ref: "#/$defs/fingering" }, description: "Fingering annotations." }, arpeggio: { $ref: "#/$defs/arpeggio" } }, additionalProperties: !1 }, schema457 = { type: "string", enum: ["turn", "invertedTurn", "mordent", "invertedMordent", "shortTrill", "trillMordent", "delayedTurn", "schleifer"], description: "Ornament type. Each maps to a SMuFL ornament glyph." };
12989
- var schema459 = { type: "object", description: "A rolled-chord (arpeggio) indication on a chord event: a wavy vertical line to the left of the chord. Created on MusicXML `<arpeggiate>` import and authored natively.", properties: { direction: { type: "string", enum: ["up", "down", "auto"], description: "Roll direction. Omitted means the renderer's default (upward) arpeggio." } }, additionalProperties: !1 }, schema455 = { type: "object", description: "A trill marking on a note, optionally followed by a wavy extension line.", properties: { accidental: { type: "integer", enum: [-1, 0, 1], description: "Accidental on the auxiliary note: -1 = flat, 0 = natural, 1 = sharp." }, showSymbol: { type: "boolean", description: "Whether to display the initial trill symbol. Defaults to true; set false for an extension-only line." }, extension: { $ref: "#/$defs/trill-extension" } }, additionalProperties: !1 }, schema456 = { type: "object", description: "A wavy trill-extension line from this event to a target event.", required: ["target"], properties: { target: { type: "string", description: "ID of the event where the trill-extension line ends." }, targetEdge: { type: "string", enum: ["start", "end"], description: "Which rhythmic edge of the target event ends the line. Defaults to 'start'." } }, additionalProperties: !1 };
12990
- function validate463(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12991
- let vErrors = null, errors = 0, evaluated0 = validate463.evaluated;
13140
+ validate461.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13141
+ var schema457 = { type: "object", description: "Viritura vendor extensions on an event-markings object.", properties: { staccatissimoWedge: { type: "object", description: "Staccatissimo wedge articulation variant (SMuFL articStaccatissimoWedge).", properties: { placement: { type: "string", enum: ["above", "below", "auto"], description: "Vertical placement relative to the staff." } }, additionalProperties: !1 }, trill: { $ref: "#/$defs/trill" }, ornaments: { type: "array", items: { $ref: "#/$defs/ornament-type" }, description: "Ornament markings (turn, mordent, etc.)." }, fingerings: { type: "array", items: { $ref: "#/$defs/fingering" }, description: "Fingering annotations." }, arpeggio: { $ref: "#/$defs/arpeggio" } }, additionalProperties: !1 }, schema460 = { type: "string", enum: ["turn", "invertedTurn", "mordent", "invertedMordent", "shortTrill", "trillMordent", "delayedTurn", "schleifer"], description: "Ornament type. Each maps to a SMuFL ornament glyph." };
13142
+ var schema462 = { type: "object", description: "A rolled-chord (arpeggio) indication on a chord event: a wavy vertical line to the left of the chord. Created on MusicXML `<arpeggiate>` import and authored natively.", properties: { direction: { type: "string", enum: ["up", "down", "auto"], description: "Roll direction. Omitted means the renderer's default (upward) arpeggio." } }, additionalProperties: !1 }, schema458 = { type: "object", description: "A trill marking on a note, optionally followed by a wavy extension line.", properties: { accidental: { type: "integer", enum: [-1, 0, 1], description: "Accidental on the auxiliary note: -1 = flat, 0 = natural, 1 = sharp." }, showSymbol: { type: "boolean", description: "Whether to display the initial trill symbol. Defaults to true; set false for an extension-only line." }, extension: { $ref: "#/$defs/trill-extension" } }, additionalProperties: !1 }, schema459 = { type: "object", description: "A wavy trill-extension line from this event to a target event.", required: ["target"], properties: { target: { type: "string", description: "ID of the event where the trill-extension line ends." }, targetEdge: { type: "string", enum: ["start", "end"], description: "Which rhythmic edge of the target event ends the line. Defaults to 'start'." } }, additionalProperties: !1 };
13143
+ function validate465(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13144
+ let vErrors = null, errors = 0, evaluated0 = validate465.evaluated;
12992
13145
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12993
13146
  for (let key0 in data)
12994
13147
  if (!(key0 === "accidental" || key0 === "showSymbol" || key0 === "extension")) {
@@ -13002,7 +13155,7 @@ function validate463(data, { instancePath = "", parentData, parentDataProperty,
13002
13155
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
13003
13156
  }
13004
13157
  if (!(data0 === -1 || data0 === 0 || data0 === 1)) {
13005
- let err2 = { instancePath: instancePath + "/accidental", schemaPath: "#/properties/accidental/enum", keyword: "enum", params: { allowedValues: schema455.properties.accidental.enum }, message: "must be equal to one of the allowed values" };
13158
+ let err2 = { instancePath: instancePath + "/accidental", schemaPath: "#/properties/accidental/enum", keyword: "enum", params: { allowedValues: schema458.properties.accidental.enum }, message: "must be equal to one of the allowed values" };
13006
13159
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
13007
13160
  }
13008
13161
  }
@@ -13033,7 +13186,7 @@ function validate463(data, { instancePath = "", parentData, parentDataProperty,
13033
13186
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
13034
13187
  }
13035
13188
  if (!(data4 === "start" || data4 === "end")) {
13036
- let err8 = { instancePath: instancePath + "/extension/targetEdge", schemaPath: "#/$defs/trill-extension/properties/targetEdge/enum", keyword: "enum", params: { allowedValues: schema456.properties.targetEdge.enum }, message: "must be equal to one of the allowed values" };
13189
+ let err8 = { instancePath: instancePath + "/extension/targetEdge", schemaPath: "#/$defs/trill-extension/properties/targetEdge/enum", keyword: "enum", params: { allowedValues: schema459.properties.targetEdge.enum }, message: "must be equal to one of the allowed values" };
13037
13190
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
13038
13191
  }
13039
13192
  }
@@ -13046,11 +13199,11 @@ function validate463(data, { instancePath = "", parentData, parentDataProperty,
13046
13199
  let err10 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13047
13200
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
13048
13201
  }
13049
- return validate463.errors = vErrors, errors === 0;
13202
+ return validate465.errors = vErrors, errors === 0;
13050
13203
  }
13051
- validate463.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13052
- function validate462(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13053
- let vErrors = null, errors = 0, evaluated0 = validate462.evaluated;
13204
+ validate465.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13205
+ function validate464(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13206
+ let vErrors = null, errors = 0, evaluated0 = validate464.evaluated;
13054
13207
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13055
13208
  for (let key0 in data)
13056
13209
  if (!(key0 === "staccatissimoWedge" || key0 === "trill" || key0 === "ornaments" || key0 === "fingerings" || key0 === "arpeggio")) {
@@ -13072,7 +13225,7 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
13072
13225
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
13073
13226
  }
13074
13227
  if (!(data1 === "above" || data1 === "below" || data1 === "auto")) {
13075
- let err3 = { instancePath: instancePath + "/staccatissimoWedge/placement", schemaPath: "#/properties/staccatissimoWedge/properties/placement/enum", keyword: "enum", params: { allowedValues: schema454.properties.staccatissimoWedge.properties.placement.enum }, message: "must be equal to one of the allowed values" };
13228
+ let err3 = { instancePath: instancePath + "/staccatissimoWedge/placement", schemaPath: "#/properties/staccatissimoWedge/properties/placement/enum", keyword: "enum", params: { allowedValues: schema457.properties.staccatissimoWedge.properties.placement.enum }, message: "must be equal to one of the allowed values" };
13076
13229
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
13077
13230
  }
13078
13231
  }
@@ -13081,7 +13234,7 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
13081
13234
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13082
13235
  }
13083
13236
  }
13084
- if (data.trill !== void 0 && (validate463(data.trill, { instancePath: instancePath + "/trill", parentData: data, parentDataProperty: "trill", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate463.errors : vErrors.concat(validate463.errors), errors = vErrors.length)), data.ornaments !== void 0) {
13237
+ if (data.trill !== void 0 && (validate465(data.trill, { instancePath: instancePath + "/trill", parentData: data, parentDataProperty: "trill", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate465.errors : vErrors.concat(validate465.errors), errors = vErrors.length)), data.ornaments !== void 0) {
13085
13238
  let data3 = data.ornaments;
13086
13239
  if (Array.isArray(data3)) {
13087
13240
  let len0 = data3.length;
@@ -13092,7 +13245,7 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
13092
13245
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13093
13246
  }
13094
13247
  if (!(data4 === "turn" || data4 === "invertedTurn" || data4 === "mordent" || data4 === "invertedMordent" || data4 === "shortTrill" || data4 === "trillMordent" || data4 === "delayedTurn" || data4 === "schleifer")) {
13095
- let err6 = { instancePath: instancePath + "/ornaments/" + i0, schemaPath: "#/$defs/ornament-type/enum", keyword: "enum", params: { allowedValues: schema457.enum }, message: "must be equal to one of the allowed values" };
13248
+ let err6 = { instancePath: instancePath + "/ornaments/" + i0, schemaPath: "#/$defs/ornament-type/enum", keyword: "enum", params: { allowedValues: schema460.enum }, message: "must be equal to one of the allowed values" };
13096
13249
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
13097
13250
  }
13098
13251
  }
@@ -13159,7 +13312,7 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
13159
13312
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
13160
13313
  }
13161
13314
  if (!(data9 === "up" || data9 === "down" || data9 === "auto")) {
13162
- let err17 = { instancePath: instancePath + "/arpeggio/direction", schemaPath: "#/$defs/arpeggio/properties/direction/enum", keyword: "enum", params: { allowedValues: schema459.properties.direction.enum }, message: "must be equal to one of the allowed values" };
13315
+ let err17 = { instancePath: instancePath + "/arpeggio/direction", schemaPath: "#/$defs/arpeggio/properties/direction/enum", keyword: "enum", params: { allowedValues: schema462.properties.direction.enum }, message: "must be equal to one of the allowed values" };
13163
13316
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
13164
13317
  }
13165
13318
  }
@@ -13172,11 +13325,11 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
13172
13325
  let err19 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13173
13326
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
13174
13327
  }
13175
- return validate462.errors = vErrors, errors === 0;
13328
+ return validate464.errors = vErrors, errors === 0;
13176
13329
  }
13177
- validate462.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13178
- function validate465(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13179
- let vErrors = null, errors = 0, evaluated0 = validate465.evaluated;
13330
+ validate464.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13331
+ function validate467(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13332
+ let vErrors = null, errors = 0, evaluated0 = validate467.evaluated;
13180
13333
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13181
13334
  for (let key0 in data)
13182
13335
  if (key0 !== "notehead") {
@@ -13190,7 +13343,7 @@ function validate465(data, { instancePath = "", parentData, parentDataProperty,
13190
13343
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
13191
13344
  }
13192
13345
  if (!(data0 === "normal" || data0 === "x" || data0 === "circleX" || data0 === "diamond" || data0 === "slash" || data0 === "triangleUp" || data0 === "triangleDown")) {
13193
- let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema417.enum }, message: "must be equal to one of the allowed values" };
13346
+ let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema420.enum }, message: "must be equal to one of the allowed values" };
13194
13347
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
13195
13348
  }
13196
13349
  }
@@ -13198,11 +13351,11 @@ function validate465(data, { instancePath = "", parentData, parentDataProperty,
13198
13351
  let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13199
13352
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
13200
13353
  }
13201
- return validate465.errors = vErrors, errors === 0;
13354
+ return validate467.errors = vErrors, errors === 0;
13202
13355
  }
13203
- validate465.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13204
- function validate467(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13205
- let vErrors = null, errors = 0, evaluated0 = validate467.evaluated;
13356
+ validate467.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13357
+ function validate469(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13358
+ let vErrors = null, errors = 0, evaluated0 = validate469.evaluated;
13206
13359
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13207
13360
  for (let key0 in data)
13208
13361
  if (!(key0 === "p0" || key0 === "p1" || key0 === "p2" || key0 === "p3")) {
@@ -13301,27 +13454,27 @@ function validate467(data, { instancePath = "", parentData, parentDataProperty,
13301
13454
  let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13302
13455
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
13303
13456
  }
13304
- return validate467.errors = vErrors, errors === 0;
13457
+ return validate469.errors = vErrors, errors === 0;
13305
13458
  }
13306
- validate467.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13307
- function validate466(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13308
- let vErrors = null, errors = 0, evaluated0 = validate466.evaluated;
13459
+ validate469.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13460
+ function validate468(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13461
+ let vErrors = null, errors = 0, evaluated0 = validate468.evaluated;
13309
13462
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13310
13463
  for (let key0 in data)
13311
13464
  if (key0 !== "shape") {
13312
13465
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
13313
13466
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
13314
13467
  }
13315
- data.shape !== void 0 && (validate467(data.shape, { instancePath: instancePath + "/shape", parentData: data, parentDataProperty: "shape", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate467.errors : vErrors.concat(validate467.errors), errors = vErrors.length));
13468
+ data.shape !== void 0 && (validate469(data.shape, { instancePath: instancePath + "/shape", parentData: data, parentDataProperty: "shape", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate469.errors : vErrors.concat(validate469.errors), errors = vErrors.length));
13316
13469
  } else {
13317
13470
  let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13318
13471
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
13319
13472
  }
13320
- return validate466.errors = vErrors, errors === 0;
13473
+ return validate468.errors = vErrors, errors === 0;
13321
13474
  }
13322
- validate466.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13323
- function validate469(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13324
- let vErrors = null, errors = 0, evaluated0 = validate469.evaluated;
13475
+ validate468.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13476
+ function validate471(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13477
+ let vErrors = null, errors = 0, evaluated0 = validate471.evaluated;
13325
13478
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13326
13479
  for (let key0 in data)
13327
13480
  if (key0 !== "derived") {
@@ -13343,11 +13496,11 @@ function validate469(data, { instancePath = "", parentData, parentDataProperty,
13343
13496
  let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13344
13497
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
13345
13498
  }
13346
- return validate469.errors = vErrors, errors === 0;
13499
+ return validate471.errors = vErrors, errors === 0;
13347
13500
  }
13348
- validate469.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13349
- function validate470(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13350
- let vErrors = null, errors = 0, evaluated0 = validate470.evaluated;
13501
+ validate471.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13502
+ function validate472(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13503
+ let vErrors = null, errors = 0, evaluated0 = validate472.evaluated;
13351
13504
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data))
13352
13505
  for (let key0 in data) {
13353
13506
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
@@ -13357,20 +13510,20 @@ function validate470(data, { instancePath = "", parentData, parentDataProperty,
13357
13510
  let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13358
13511
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
13359
13512
  }
13360
- return validate470.errors = vErrors, errors === 0;
13513
+ return validate472.errors = vErrors, errors === 0;
13361
13514
  }
13362
- validate470.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13363
- var schema487 = { type: "object", description: "A forced system or page start within otherwise automatic score flow.", required: ["measure", "kind"], properties: { measure: { type: "string", minLength: 1 }, kind: { type: "string", enum: ["system", "page"] } }, additionalProperties: !1 }, schema471 = { type: "object", properties: { width: { type: "number", exclusiveMinimum: 0 }, height: { type: "number", exclusiveMinimum: 0 }, orientation: { type: "string", enum: ["portrait", "landscape"] }, margins: { $ref: "#/$defs/page-margins" }, spatiumMm: { type: "number", exclusiveMinimum: 0 }, pageTurns: { $ref: "#/$defs/page-turn-settings" } }, additionalProperties: !1 };
13364
- var schema473 = { type: "object", required: ["enabled"], properties: { enabled: { type: "boolean" }, preset: { type: "string", enum: ["relaxed", "professional"] }, comfortableSecs: { type: "number", minimum: 0 }, vsSecs: { type: "number", minimum: 0 }, minAcceptableSecs: { type: "number", minimum: 0 }, targetFillFraction: { type: "number", minimum: 0, maximum: 1 }, minFillFraction: { type: "number", minimum: 0, maximum: 1 }, verticalJustifyThreshold: { type: "number", minimum: 0, maximum: 1 }, allowPartialPages: { type: "boolean" }, allowIntentionalBlanks: { type: "boolean" }, titlePage: { type: "string", enum: ["auto", "always", "never"] }, firstPageRecto: { type: "boolean" }, emitVsMarks: { type: "boolean" }, defaultBpm: { type: "number", exclusiveMinimum: 0 }, weights: { $ref: "#/$defs/page-turn-weights" } }, additionalProperties: !1 };
13365
- function validate473(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13366
- let vErrors = null, errors = 0, evaluated0 = validate473.evaluated;
13515
+ validate472.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13516
+ var schema490 = { type: "object", description: "A forced system or page start within otherwise automatic score flow.", required: ["measure", "kind"], properties: { measure: { type: "string", minLength: 1 }, kind: { type: "string", enum: ["system", "page"] } }, additionalProperties: !1 }, schema474 = { type: "object", properties: { width: { type: "number", exclusiveMinimum: 0 }, height: { type: "number", exclusiveMinimum: 0 }, orientation: { type: "string", enum: ["portrait", "landscape"] }, margins: { $ref: "#/$defs/page-margins" }, spatiumMm: { type: "number", exclusiveMinimum: 0 }, pageTurns: { $ref: "#/$defs/page-turn-settings" } }, additionalProperties: !1 };
13517
+ var schema476 = { type: "object", required: ["enabled"], properties: { enabled: { type: "boolean" }, preset: { type: "string", enum: ["relaxed", "professional"] }, comfortableSecs: { type: "number", minimum: 0 }, vsSecs: { type: "number", minimum: 0 }, minAcceptableSecs: { type: "number", minimum: 0 }, targetFillFraction: { type: "number", minimum: 0, maximum: 1 }, minFillFraction: { type: "number", minimum: 0, maximum: 1 }, verticalJustifyThreshold: { type: "number", minimum: 0, maximum: 1 }, allowPartialPages: { type: "boolean" }, allowIntentionalBlanks: { type: "boolean" }, titlePage: { type: "string", enum: ["auto", "always", "never"] }, firstPageRecto: { type: "boolean" }, emitVsMarks: { type: "boolean" }, defaultBpm: { type: "number", exclusiveMinimum: 0 }, weights: { $ref: "#/$defs/page-turn-weights" } }, additionalProperties: !1 };
13518
+ function validate475(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13519
+ let vErrors = null, errors = 0, evaluated0 = validate475.evaluated;
13367
13520
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13368
13521
  if (data.enabled === void 0) {
13369
13522
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "enabled" }, message: "must have required property 'enabled'" };
13370
13523
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
13371
13524
  }
13372
13525
  for (let key0 in data)
13373
- if (!func1.call(schema473.properties, key0)) {
13526
+ if (!func1.call(schema476.properties, key0)) {
13374
13527
  let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
13375
13528
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
13376
13529
  }
@@ -13385,7 +13538,7 @@ function validate473(data, { instancePath = "", parentData, parentDataProperty,
13385
13538
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
13386
13539
  }
13387
13540
  if (!(data1 === "relaxed" || data1 === "professional")) {
13388
- let err4 = { instancePath: instancePath + "/preset", schemaPath: "#/properties/preset/enum", keyword: "enum", params: { allowedValues: schema473.properties.preset.enum }, message: "must be equal to one of the allowed values" };
13541
+ let err4 = { instancePath: instancePath + "/preset", schemaPath: "#/properties/preset/enum", keyword: "enum", params: { allowedValues: schema476.properties.preset.enum }, message: "must be equal to one of the allowed values" };
13389
13542
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13390
13543
  }
13391
13544
  }
@@ -13488,7 +13641,7 @@ function validate473(data, { instancePath = "", parentData, parentDataProperty,
13488
13641
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
13489
13642
  }
13490
13643
  if (!(data10 === "auto" || data10 === "always" || data10 === "never")) {
13491
- let err23 = { instancePath: instancePath + "/titlePage", schemaPath: "#/properties/titlePage/enum", keyword: "enum", params: { allowedValues: schema473.properties.titlePage.enum }, message: "must be equal to one of the allowed values" };
13644
+ let err23 = { instancePath: instancePath + "/titlePage", schemaPath: "#/properties/titlePage/enum", keyword: "enum", params: { allowedValues: schema476.properties.titlePage.enum }, message: "must be equal to one of the allowed values" };
13492
13645
  vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
13493
13646
  }
13494
13647
  }
@@ -13553,11 +13706,11 @@ function validate473(data, { instancePath = "", parentData, parentDataProperty,
13553
13706
  let err36 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13554
13707
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
13555
13708
  }
13556
- return validate473.errors = vErrors, errors === 0;
13709
+ return validate475.errors = vErrors, errors === 0;
13557
13710
  }
13558
- validate473.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13559
- function validate472(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13560
- let vErrors = null, errors = 0, evaluated0 = validate472.evaluated;
13711
+ validate475.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13712
+ function validate474(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13713
+ let vErrors = null, errors = 0, evaluated0 = validate474.evaluated;
13561
13714
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13562
13715
  for (let key0 in data)
13563
13716
  if (!(key0 === "width" || key0 === "height" || key0 === "orientation" || key0 === "margins" || key0 === "spatiumMm" || key0 === "pageTurns")) {
@@ -13595,7 +13748,7 @@ function validate472(data, { instancePath = "", parentData, parentDataProperty,
13595
13748
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13596
13749
  }
13597
13750
  if (!(data2 === "portrait" || data2 === "landscape")) {
13598
- let err6 = { instancePath: instancePath + "/orientation", schemaPath: "#/properties/orientation/enum", keyword: "enum", params: { allowedValues: schema471.properties.orientation.enum }, message: "must be equal to one of the allowed values" };
13751
+ let err6 = { instancePath: instancePath + "/orientation", schemaPath: "#/properties/orientation/enum", keyword: "enum", params: { allowedValues: schema474.properties.orientation.enum }, message: "must be equal to one of the allowed values" };
13599
13752
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
13600
13753
  }
13601
13754
  }
@@ -13688,17 +13841,17 @@ function validate472(data, { instancePath = "", parentData, parentDataProperty,
13688
13841
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
13689
13842
  }
13690
13843
  }
13691
- data.pageTurns !== void 0 && (validate473(data.pageTurns, { instancePath: instancePath + "/pageTurns", parentData: data, parentDataProperty: "pageTurns", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate473.errors : vErrors.concat(validate473.errors), errors = vErrors.length));
13844
+ data.pageTurns !== void 0 && (validate475(data.pageTurns, { instancePath: instancePath + "/pageTurns", parentData: data, parentDataProperty: "pageTurns", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate475.errors : vErrors.concat(validate475.errors), errors = vErrors.length));
13692
13845
  } else {
13693
13846
  let err23 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13694
13847
  vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
13695
13848
  }
13696
- return validate472.errors = vErrors, errors === 0;
13849
+ return validate474.errors = vErrors, errors === 0;
13697
13850
  }
13698
- validate472.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13699
- var schema476 = { type: "string", enum: ["full", "short", "hidden"] };
13700
- function validate476(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13701
- let vErrors = null, errors = 0, evaluated0 = validate476.evaluated;
13851
+ validate474.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13852
+ var schema479 = { type: "string", enum: ["full", "short", "hidden"] };
13853
+ function validate478(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13854
+ let vErrors = null, errors = 0, evaluated0 = validate478.evaluated;
13702
13855
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13703
13856
  if (data.firstSystem === void 0) {
13704
13857
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "firstSystem" }, message: "must have required property 'firstSystem'" };
@@ -13720,7 +13873,7 @@ function validate476(data, { instancePath = "", parentData, parentDataProperty,
13720
13873
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
13721
13874
  }
13722
13875
  if (!(data0 === "full" || data0 === "short" || data0 === "hidden")) {
13723
- let err4 = { instancePath: instancePath + "/firstSystem", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema476.enum }, message: "must be equal to one of the allowed values" };
13876
+ let err4 = { instancePath: instancePath + "/firstSystem", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema479.enum }, message: "must be equal to one of the allowed values" };
13724
13877
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13725
13878
  }
13726
13879
  }
@@ -13731,7 +13884,7 @@ function validate476(data, { instancePath = "", parentData, parentDataProperty,
13731
13884
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13732
13885
  }
13733
13886
  if (!(data1 === "full" || data1 === "short" || data1 === "hidden")) {
13734
- let err6 = { instancePath: instancePath + "/subsequentSystems", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema476.enum }, message: "must be equal to one of the allowed values" };
13887
+ let err6 = { instancePath: instancePath + "/subsequentSystems", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema479.enum }, message: "must be equal to one of the allowed values" };
13735
13888
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
13736
13889
  }
13737
13890
  }
@@ -13739,12 +13892,12 @@ function validate476(data, { instancePath = "", parentData, parentDataProperty,
13739
13892
  let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13740
13893
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
13741
13894
  }
13742
- return validate476.errors = vErrors, errors === 0;
13895
+ return validate478.errors = vErrors, errors === 0;
13743
13896
  }
13744
- validate476.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13745
- var schema478 = { type: "object", required: ["id", "locator", "placement", "width", "content"], properties: { id: { type: "string", minLength: 1 }, locator: { $ref: "#/$defs/text-frame-locator" }, placement: { $ref: "#/$defs/text-frame-placement" }, width: { $ref: "#/$defs/text-frame-width" }, content: { $ref: "#/$defs/text-content" }, horizontalAlignment: { type: "string", enum: ["left", "center", "right"], description: "Horizontal alignment of the frame at its page anchor, independent of paragraph justification." }, paragraphJustification: { type: "string", enum: ["left", "center", "right", "justify"], description: "Paragraph line justification within the frame, independent of frame alignment." }, padding: { type: "number", minimum: 0, description: "Optional inset on all sides in staff spaces." }, border: { type: "string", enum: ["none", "solid"], description: "Optional frame border style." }, eraseBackground: { type: "boolean", description: "Erase underlying ink within the frame using the surface background. Omitted or false preserves underlying ink; no color is stored." }, sourceReference: { $ref: "#/$defs/text-frame-source-reference" }, staffAttachment: { $ref: "#/$defs/text-frame-staff-attachment" } }, additionalProperties: !1 };
13746
- function validate480(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13747
- let vErrors = null, errors = 0, evaluated0 = validate480.evaluated;
13897
+ validate478.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13898
+ var schema481 = { type: "object", required: ["id", "locator", "placement", "width", "content"], properties: { id: { type: "string", minLength: 1 }, locator: { $ref: "#/$defs/text-frame-locator" }, placement: { $ref: "#/$defs/text-frame-placement" }, width: { $ref: "#/$defs/text-frame-width" }, content: { $ref: "#/$defs/text-content" }, horizontalAlignment: { type: "string", enum: ["left", "center", "right"], description: "Horizontal alignment of the frame at its page anchor, independent of paragraph justification." }, paragraphJustification: { type: "string", enum: ["left", "center", "right", "justify"], description: "Paragraph line justification within the frame, independent of frame alignment." }, padding: { type: "number", minimum: 0, description: "Optional inset on all sides in staff spaces." }, border: { type: "string", enum: ["none", "solid"], description: "Optional frame border style." }, eraseBackground: { type: "boolean", description: "Erase underlying ink within the frame using the surface background. Omitted or false preserves underlying ink; no color is stored." }, sourceReference: { $ref: "#/$defs/text-frame-source-reference" }, staffAttachment: { $ref: "#/$defs/text-frame-staff-attachment" } }, additionalProperties: !1 };
13899
+ function validate482(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13900
+ let vErrors = null, errors = 0, evaluated0 = validate482.evaluated;
13748
13901
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13749
13902
  if (data.partId === void 0) {
13750
13903
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "partId" }, message: "must have required property 'partId'" };
@@ -13847,7 +14000,7 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
13847
14000
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
13848
14001
  }
13849
14002
  if (!(data6 === "below" || data6 === "above")) {
13850
- let err18 = { instancePath: instancePath + "/expression/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema394.enum }, message: "must be equal to one of the allowed values" };
14003
+ let err18 = { instancePath: instancePath + "/expression/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema397.enum }, message: "must be equal to one of the allowed values" };
13851
14004
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
13852
14005
  }
13853
14006
  }
@@ -13938,11 +14091,11 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
13938
14091
  let err35 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13939
14092
  vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
13940
14093
  }
13941
- return validate480.errors = vErrors, errors === 0;
14094
+ return validate482.errors = vErrors, errors === 0;
13942
14095
  }
13943
- validate480.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13944
- function validate478(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13945
- let vErrors = null, errors = 0, evaluated0 = validate478.evaluated;
14096
+ validate482.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14097
+ function validate480(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14098
+ let vErrors = null, errors = 0, evaluated0 = validate480.evaluated;
13946
14099
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13947
14100
  if (data.id === void 0) {
13948
14101
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -13965,7 +14118,7 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
13965
14118
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13966
14119
  }
13967
14120
  for (let key0 in data)
13968
- if (!func1.call(schema478.properties, key0)) {
14121
+ if (!func1.call(schema481.properties, key0)) {
13969
14122
  let err5 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
13970
14123
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13971
14124
  }
@@ -14145,7 +14298,7 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
14145
14298
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
14146
14299
  }
14147
14300
  if (!(data10 === "top" || data10 === "right" || data10 === "bottom" || data10 === "left" || data10 === "top-left" || data10 === "top-right" || data10 === "bottom-right" || data10 === "bottom-left")) {
14148
- let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema427.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
14301
+ let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema430.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
14149
14302
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
14150
14303
  }
14151
14304
  }
@@ -14271,14 +14424,14 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
14271
14424
  vErrors === null ? vErrors = [err60] : vErrors.push(err60), errors++;
14272
14425
  }
14273
14426
  }
14274
- if (data.content !== void 0 && (validate403(data.content, { instancePath: instancePath + "/content", parentData: data, parentDataProperty: "content", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.horizontalAlignment !== void 0) {
14427
+ if (data.content !== void 0 && (validate405(data.content, { instancePath: instancePath + "/content", parentData: data, parentDataProperty: "content", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.horizontalAlignment !== void 0) {
14275
14428
  let data20 = data.horizontalAlignment;
14276
14429
  if (typeof data20 != "string") {
14277
14430
  let err61 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/type", keyword: "type", params: { type: "string" }, message: "must be string" };
14278
14431
  vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
14279
14432
  }
14280
14433
  if (!(data20 === "left" || data20 === "center" || data20 === "right")) {
14281
- let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema478.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14434
+ let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema481.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14282
14435
  vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
14283
14436
  }
14284
14437
  }
@@ -14289,7 +14442,7 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
14289
14442
  vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
14290
14443
  }
14291
14444
  if (!(data21 === "left" || data21 === "center" || data21 === "right" || data21 === "justify")) {
14292
- let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema478.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14445
+ let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema481.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14293
14446
  vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
14294
14447
  }
14295
14448
  }
@@ -14312,7 +14465,7 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
14312
14465
  vErrors === null ? vErrors = [err67] : vErrors.push(err67), errors++;
14313
14466
  }
14314
14467
  if (!(data23 === "none" || data23 === "solid")) {
14315
- let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema478.properties.border.enum }, message: "must be equal to one of the allowed values" };
14468
+ let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema481.properties.border.enum }, message: "must be equal to one of the allowed values" };
14316
14469
  vErrors === null ? vErrors = [err68] : vErrors.push(err68), errors++;
14317
14470
  }
14318
14471
  }
@@ -14361,28 +14514,28 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
14361
14514
  vErrors === null ? vErrors = [err76] : vErrors.push(err76), errors++;
14362
14515
  }
14363
14516
  }
14364
- data.staffAttachment !== void 0 && (validate480(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate480.errors : vErrors.concat(validate480.errors), errors = vErrors.length));
14517
+ data.staffAttachment !== void 0 && (validate482(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate482.errors : vErrors.concat(validate482.errors), errors = vErrors.length));
14365
14518
  } else {
14366
14519
  let err77 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14367
14520
  vErrors === null ? vErrors = [err77] : vErrors.push(err77), errors++;
14368
14521
  }
14369
- return validate478.errors = vErrors, errors === 0;
14522
+ return validate480.errors = vErrors, errors === 0;
14370
14523
  }
14371
- validate478.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14372
- function validate471(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14373
- let vErrors = null, errors = 0, evaluated0 = validate471.evaluated;
14524
+ validate480.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14525
+ function validate473(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14526
+ let vErrors = null, errors = 0, evaluated0 = validate473.evaluated;
14374
14527
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
14375
14528
  for (let key0 in data)
14376
14529
  if (!(key0 === "pageSetup" || key0 === "instrumentNameDisplay" || key0 === "textFrames" || key0 === "layoutBreaks")) {
14377
14530
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
14378
14531
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
14379
14532
  }
14380
- if (data.pageSetup !== void 0 && (validate472(data.pageSetup, { instancePath: instancePath + "/pageSetup", parentData: data, parentDataProperty: "pageSetup", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate472.errors : vErrors.concat(validate472.errors), errors = vErrors.length)), data.instrumentNameDisplay !== void 0 && (validate476(data.instrumentNameDisplay, { instancePath: instancePath + "/instrumentNameDisplay", parentData: data, parentDataProperty: "instrumentNameDisplay", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate476.errors : vErrors.concat(validate476.errors), errors = vErrors.length)), data.textFrames !== void 0) {
14533
+ if (data.pageSetup !== void 0 && (validate474(data.pageSetup, { instancePath: instancePath + "/pageSetup", parentData: data, parentDataProperty: "pageSetup", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate474.errors : vErrors.concat(validate474.errors), errors = vErrors.length)), data.instrumentNameDisplay !== void 0 && (validate478(data.instrumentNameDisplay, { instancePath: instancePath + "/instrumentNameDisplay", parentData: data, parentDataProperty: "instrumentNameDisplay", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate478.errors : vErrors.concat(validate478.errors), errors = vErrors.length)), data.textFrames !== void 0) {
14381
14534
  let data2 = data.textFrames;
14382
14535
  if (Array.isArray(data2)) {
14383
14536
  let len0 = data2.length;
14384
14537
  for (let i0 = 0; i0 < len0; i0++)
14385
- validate478(data2[i0], { instancePath: instancePath + "/textFrames/" + i0, parentData: data2, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate478.errors : vErrors.concat(validate478.errors), errors = vErrors.length);
14538
+ validate480(data2[i0], { instancePath: instancePath + "/textFrames/" + i0, parentData: data2, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate480.errors : vErrors.concat(validate480.errors), errors = vErrors.length);
14386
14539
  } else {
14387
14540
  let err1 = { instancePath: instancePath + "/textFrames", schemaPath: "#/properties/textFrames/type", keyword: "type", params: { type: "array" }, message: "must be array" };
14388
14541
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
@@ -14427,7 +14580,7 @@ function validate471(data, { instancePath = "", parentData, parentDataProperty,
14427
14580
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
14428
14581
  }
14429
14582
  if (!(data7 === "system" || data7 === "page")) {
14430
- let err8 = { instancePath: instancePath + "/layoutBreaks/" + i1 + "/kind", schemaPath: "#/$defs/layout-break/properties/kind/enum", keyword: "enum", params: { allowedValues: schema487.properties.kind.enum }, message: "must be equal to one of the allowed values" };
14583
+ let err8 = { instancePath: instancePath + "/layoutBreaks/" + i1 + "/kind", schemaPath: "#/$defs/layout-break/properties/kind/enum", keyword: "enum", params: { allowedValues: schema490.properties.kind.enum }, message: "must be equal to one of the allowed values" };
14431
14584
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
14432
14585
  }
14433
14586
  }
@@ -14445,12 +14598,12 @@ function validate471(data, { instancePath = "", parentData, parentDataProperty,
14445
14598
  let err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14446
14599
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
14447
14600
  }
14448
- return validate471.errors = vErrors, errors === 0;
14601
+ return validate473.errors = vErrors, errors === 0;
14449
14602
  }
14450
- validate471.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14451
- var textFrame = validate483;
14452
- function validate483(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14453
- let vErrors = null, errors = 0, evaluated0 = validate483.evaluated;
14603
+ validate473.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14604
+ var textFrame = validate485;
14605
+ function validate485(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14606
+ let vErrors = null, errors = 0, evaluated0 = validate485.evaluated;
14454
14607
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
14455
14608
  if (data.id === void 0) {
14456
14609
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -14473,7 +14626,7 @@ function validate483(data, { instancePath = "", parentData, parentDataProperty,
14473
14626
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
14474
14627
  }
14475
14628
  for (let key0 in data)
14476
- if (!func1.call(schema478.properties, key0)) {
14629
+ if (!func1.call(schema481.properties, key0)) {
14477
14630
  let err5 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
14478
14631
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
14479
14632
  }
@@ -14653,7 +14806,7 @@ function validate483(data, { instancePath = "", parentData, parentDataProperty,
14653
14806
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
14654
14807
  }
14655
14808
  if (!(data10 === "top" || data10 === "right" || data10 === "bottom" || data10 === "left" || data10 === "top-left" || data10 === "top-right" || data10 === "bottom-right" || data10 === "bottom-left")) {
14656
- let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema427.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
14809
+ let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema430.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
14657
14810
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
14658
14811
  }
14659
14812
  }
@@ -14779,14 +14932,14 @@ function validate483(data, { instancePath = "", parentData, parentDataProperty,
14779
14932
  vErrors === null ? vErrors = [err60] : vErrors.push(err60), errors++;
14780
14933
  }
14781
14934
  }
14782
- if (data.content !== void 0 && (validate403(data.content, { instancePath: instancePath + "/content", parentData: data, parentDataProperty: "content", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.horizontalAlignment !== void 0) {
14935
+ if (data.content !== void 0 && (validate405(data.content, { instancePath: instancePath + "/content", parentData: data, parentDataProperty: "content", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.horizontalAlignment !== void 0) {
14783
14936
  let data20 = data.horizontalAlignment;
14784
14937
  if (typeof data20 != "string") {
14785
14938
  let err61 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/type", keyword: "type", params: { type: "string" }, message: "must be string" };
14786
14939
  vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
14787
14940
  }
14788
14941
  if (!(data20 === "left" || data20 === "center" || data20 === "right")) {
14789
- let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema478.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14942
+ let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema481.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14790
14943
  vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
14791
14944
  }
14792
14945
  }
@@ -14797,7 +14950,7 @@ function validate483(data, { instancePath = "", parentData, parentDataProperty,
14797
14950
  vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
14798
14951
  }
14799
14952
  if (!(data21 === "left" || data21 === "center" || data21 === "right" || data21 === "justify")) {
14800
- let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema478.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14953
+ let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema481.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14801
14954
  vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
14802
14955
  }
14803
14956
  }
@@ -14820,7 +14973,7 @@ function validate483(data, { instancePath = "", parentData, parentDataProperty,
14820
14973
  vErrors === null ? vErrors = [err67] : vErrors.push(err67), errors++;
14821
14974
  }
14822
14975
  if (!(data23 === "none" || data23 === "solid")) {
14823
- let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema478.properties.border.enum }, message: "must be equal to one of the allowed values" };
14976
+ let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema481.properties.border.enum }, message: "must be equal to one of the allowed values" };
14824
14977
  vErrors === null ? vErrors = [err68] : vErrors.push(err68), errors++;
14825
14978
  }
14826
14979
  }
@@ -14869,17 +15022,17 @@ function validate483(data, { instancePath = "", parentData, parentDataProperty,
14869
15022
  vErrors === null ? vErrors = [err76] : vErrors.push(err76), errors++;
14870
15023
  }
14871
15024
  }
14872
- data.staffAttachment !== void 0 && (validate480(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate480.errors : vErrors.concat(validate480.errors), errors = vErrors.length));
15025
+ data.staffAttachment !== void 0 && (validate482(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate482.errors : vErrors.concat(validate482.errors), errors = vErrors.length));
14873
15026
  } else {
14874
15027
  let err77 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14875
15028
  vErrors === null ? vErrors = [err77] : vErrors.push(err77), errors++;
14876
15029
  }
14877
- return validate483.errors = vErrors, errors === 0;
15030
+ return validate485.errors = vErrors, errors === 0;
14878
15031
  }
14879
- validate483.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14880
- var systemText = validate486;
14881
- function validate486(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14882
- let vErrors = null, errors = 0, evaluated0 = validate486.evaluated;
15032
+ validate485.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15033
+ var systemText = validate488;
15034
+ function validate488(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15035
+ let vErrors = null, errors = 0, evaluated0 = validate488.evaluated;
14883
15036
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
14884
15037
  if (data.id === void 0) {
14885
15038
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -14910,7 +15063,7 @@ function validate486(data, { instancePath = "", parentData, parentDataProperty,
14910
15063
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
14911
15064
  }
14912
15065
  }
14913
- if (data.text !== void 0 && (validate403(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate403.errors : vErrors.concat(validate403.errors), errors = vErrors.length)), data.frame !== void 0) {
15066
+ if (data.text !== void 0 && (validate405(data.text, { instancePath: instancePath + "/text", parentData: data, parentDataProperty: "text", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate405.errors : vErrors.concat(validate405.errors), errors = vErrors.length)), data.frame !== void 0) {
14914
15067
  let data2 = data.frame;
14915
15068
  if (data2 && typeof data2 == "object" && !Array.isArray(data2)) {
14916
15069
  for (let key1 in data2)
@@ -14962,7 +15115,7 @@ function validate486(data, { instancePath = "", parentData, parentDataProperty,
14962
15115
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
14963
15116
  }
14964
15117
  if (!(data6 === "left" || data6 === "center" || data6 === "right")) {
14965
- let err15 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema392.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
15118
+ let err15 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema395.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14966
15119
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
14967
15120
  }
14968
15121
  }
@@ -14973,7 +15126,7 @@ function validate486(data, { instancePath = "", parentData, parentDataProperty,
14973
15126
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
14974
15127
  }
14975
15128
  if (!(data7 === "left" || data7 === "center" || data7 === "right" || data7 === "justify")) {
14976
- let err17 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema392.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
15129
+ let err17 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema395.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14977
15130
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
14978
15131
  }
14979
15132
  }
@@ -14996,7 +15149,7 @@ function validate486(data, { instancePath = "", parentData, parentDataProperty,
14996
15149
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
14997
15150
  }
14998
15151
  if (!(data9 === "none" || data9 === "solid")) {
14999
- let err21 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema392.properties.border.enum }, message: "must be equal to one of the allowed values" };
15152
+ let err21 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema395.properties.border.enum }, message: "must be equal to one of the allowed values" };
15000
15153
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
15001
15154
  }
15002
15155
  }
@@ -15085,7 +15238,7 @@ function validate486(data, { instancePath = "", parentData, parentDataProperty,
15085
15238
  vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
15086
15239
  }
15087
15240
  if (!(data17 === "below" || data17 === "above")) {
15088
- let err36 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema394.enum }, message: "must be equal to one of the allowed values" };
15241
+ let err36 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema397.enum }, message: "must be equal to one of the allowed values" };
15089
15242
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
15090
15243
  }
15091
15244
  }
@@ -15119,12 +15272,12 @@ function validate486(data, { instancePath = "", parentData, parentDataProperty,
15119
15272
  let err42 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
15120
15273
  vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
15121
15274
  }
15122
- return validate486.errors = vErrors, errors === 0;
15275
+ return validate488.errors = vErrors, errors === 0;
15123
15276
  }
15124
- validate486.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15125
- var staffTextFramePresentation = validate488;
15126
- function validate488(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15127
- let vErrors = null, errors = 0, evaluated0 = validate488.evaluated;
15277
+ validate488.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15278
+ var staffTextFramePresentation = validate490;
15279
+ function validate490(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15280
+ let vErrors = null, errors = 0, evaluated0 = validate490.evaluated;
15128
15281
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
15129
15282
  for (let key0 in data)
15130
15283
  if (!(key0 === "width" || key0 === "horizontalAlignment" || key0 === "paragraphJustification" || key0 === "padding" || key0 === "border" || key0 === "eraseBackground")) {
@@ -15175,7 +15328,7 @@ function validate488(data, { instancePath = "", parentData, parentDataProperty,
15175
15328
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
15176
15329
  }
15177
15330
  if (!(data3 === "left" || data3 === "center" || data3 === "right")) {
15178
- let err9 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema392.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
15331
+ let err9 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema395.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
15179
15332
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
15180
15333
  }
15181
15334
  }
@@ -15186,7 +15339,7 @@ function validate488(data, { instancePath = "", parentData, parentDataProperty,
15186
15339
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
15187
15340
  }
15188
15341
  if (!(data4 === "left" || data4 === "center" || data4 === "right" || data4 === "justify")) {
15189
- let err11 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema392.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
15342
+ let err11 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema395.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
15190
15343
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
15191
15344
  }
15192
15345
  }
@@ -15209,7 +15362,7 @@ function validate488(data, { instancePath = "", parentData, parentDataProperty,
15209
15362
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
15210
15363
  }
15211
15364
  if (!(data6 === "none" || data6 === "solid")) {
15212
- let err15 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema392.properties.border.enum }, message: "must be equal to one of the allowed values" };
15365
+ let err15 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema395.properties.border.enum }, message: "must be equal to one of the allowed values" };
15213
15366
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
15214
15367
  }
15215
15368
  }
@@ -15221,12 +15374,12 @@ function validate488(data, { instancePath = "", parentData, parentDataProperty,
15221
15374
  let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
15222
15375
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
15223
15376
  }
15224
- return validate488.errors = vErrors, errors === 0;
15377
+ return validate490.errors = vErrors, errors === 0;
15225
15378
  }
15226
- validate488.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15227
- var textFramePagePosition = validate489;
15228
- function validate489(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15229
- let vErrors = null, errors = 0, evaluated0 = validate489.evaluated;
15379
+ validate490.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15380
+ var textFramePagePosition = validate491;
15381
+ function validate491(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15382
+ let vErrors = null, errors = 0, evaluated0 = validate491.evaluated;
15230
15383
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
15231
15384
  if (data.id === void 0) {
15232
15385
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -15436,7 +15589,7 @@ function validate489(data, { instancePath = "", parentData, parentDataProperty,
15436
15589
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
15437
15590
  }
15438
15591
  if (!(data11 === "top" || data11 === "right" || data11 === "bottom" || data11 === "left" || data11 === "top-left" || data11 === "top-right" || data11 === "bottom-right" || data11 === "bottom-left")) {
15439
- let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema427.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
15592
+ let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema430.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
15440
15593
  vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
15441
15594
  }
15442
15595
  }
@@ -15607,9 +15760,9 @@ function validate489(data, { instancePath = "", parentData, parentDataProperty,
15607
15760
  let err69 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
15608
15761
  vErrors === null ? vErrors = [err69] : vErrors.push(err69), errors++;
15609
15762
  }
15610
- return validate489.errors = vErrors, errors === 0;
15763
+ return validate491.errors = vErrors, errors === 0;
15611
15764
  }
15612
- validate489.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15765
+ validate491.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15613
15766
 
15614
15767
  // packages/format/src/mnx/staffTextFrame.ts
15615
15768
  function parseTextFramePagePosition(raw) {
@@ -16300,6 +16453,49 @@ function parseRootInstrumentChangeStyle(rootX) {
16300
16453
  };
16301
16454
  }
16302
16455
 
16456
+ // packages/format/src/mnx/mixerSettings.ts
16457
+ init_define_import_meta_env();
16458
+ function isObject(value) {
16459
+ return value !== null && typeof value == "object" && !Array.isArray(value);
16460
+ }
16461
+ function optionalGain(value) {
16462
+ return value === void 0 || typeof value == "number" && value >= 0 && value <= 10 ** (6 / 20);
16463
+ }
16464
+ function optionalBoolean(value) {
16465
+ return value === void 0 || typeof value == "boolean";
16466
+ }
16467
+ function isBus(value) {
16468
+ return isObject(value) && optionalGain(value.volume) && optionalBoolean(value.muted) && optionalBoolean(value.solo);
16469
+ }
16470
+ function isChannel(value) {
16471
+ if (!isObject(value) || !isBus(value)) return !1;
16472
+ let pan = value.pan;
16473
+ return (pan === void 0 || typeof pan == "number" && pan >= -1 && pan <= 1) && optionalBoolean(value.ensembleEnabled) && (value.spatialMode === void 0 || value.spatialMode === "stereo" || value.spatialMode === "stage");
16474
+ }
16475
+ function parseMap(value, name, guard) {
16476
+ if (value !== void 0) {
16477
+ if (!isObject(value)) throw new Error(`Invalid _x.viritura.mixer.${name}`);
16478
+ return Object.fromEntries(
16479
+ Object.entries(value).map(([id, settings]) => {
16480
+ if (!guard(settings)) throw new Error(`Invalid _x.viritura.mixer.${name}.${id}`);
16481
+ return [id, { ...settings }];
16482
+ })
16483
+ );
16484
+ }
16485
+ }
16486
+ function parseMixerSettings(value) {
16487
+ if (value === void 0) return;
16488
+ if (!isObject(value) || !optionalGain(value.masterVolume) || !optionalBoolean(value.masterMuted))
16489
+ throw new Error("Invalid _x.viritura.mixer master settings");
16490
+ let channels = parseMap(value.channels, "channels", isChannel), groups = parseMap(value.groups, "groups", isBus);
16491
+ return {
16492
+ ...channels ? { channels } : {},
16493
+ ...groups ? { groups } : {},
16494
+ ...typeof value.masterVolume == "number" ? { masterVolume: value.masterVolume } : {},
16495
+ ...typeof value.masterMuted == "boolean" ? { masterMuted: value.masterMuted } : {}
16496
+ };
16497
+ }
16498
+
16303
16499
  // packages/format/src/mnx/parseLayout.ts
16304
16500
  init_define_import_meta_env();
16305
16501
 
@@ -16775,6 +16971,8 @@ function applyRootExtensions(score, rootX) {
16775
16971
  instrumentChangeStyle && (score.instrumentChangeStyle = instrumentChangeStyle);
16776
16972
  let soundProfile = parseRootSoundProfile(rootX);
16777
16973
  soundProfile && (score.soundProfile = soundProfile);
16974
+ let mixer = parseMixerSettings(rootX?.viritura?.mixer);
16975
+ mixer && (score.mixer = mixer);
16778
16976
  let videoSync = parseRootVideoSync(rootX);
16779
16977
  videoSync && (score.videoSync = videoSync);
16780
16978
  let lyricWorkflow = parseRootLyricWorkflow(rootX);