@viritura/score-engine 0.2.1-next.38 → 0.2.1-next.40

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
@@ -2231,9 +2231,9 @@ function interpolateBeatAnchors(bounds, beat, endX) {
2231
2231
 
2232
2232
  // packages/score-engine/src/buildInfo.ts
2233
2233
  init_define_import_meta_env();
2234
- var PACKAGE_VERSION = "0.2.1-next.38", BUNDLE_WORKER_FILE = "score-engine.worker.js";
2234
+ var PACKAGE_VERSION = "0.2.1-next.40", BUNDLE_WORKER_FILE = "score-engine.worker.js";
2235
2235
  function buildCommit() {
2236
- return "c86711b1e69702ccabce35a06741343697305fdc";
2236
+ return "aa2b59d2a29c0334fa5cf09255eae831c99f366d";
2237
2237
  }
2238
2238
  function bundledAssetBase() {
2239
2239
  let moduleUrl = import.meta.url;
@@ -9201,8 +9201,9 @@ function validate371(data, { instancePath = "", parentData, parentDataProperty,
9201
9201
  return validate371.errors = vErrors, errors === 0;
9202
9202
  }
9203
9203
  validate371.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9204
- var schema378 = { 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 };
9205
- var schema381 = { 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 };
9204
+ var measureGlobalExtensions = validate401;
9205
+ 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 }] };
9206
+ 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 };
9206
9207
  function validate404(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9207
9208
  let vErrors = null, errors = 0, evaluated0 = validate404.evaluated;
9208
9209
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
@@ -9234,7 +9235,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9234
9235
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
9235
9236
  }
9236
9237
  if (!(data2 === "serif" || data2 === "sans-serif" || data2 === "monospace")) {
9237
- let err5 = { instancePath: instancePath + "/style/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema381.properties.font.enum }, message: "must be equal to one of the allowed values" };
9238
+ 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" };
9238
9239
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
9239
9240
  }
9240
9241
  }
@@ -9261,7 +9262,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9261
9262
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
9262
9263
  }
9263
9264
  if (!(data4 === "normal" || data4 === "bold")) {
9264
- let err10 = { instancePath: instancePath + "/style/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema381.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9265
+ 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" };
9265
9266
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
9266
9267
  }
9267
9268
  var _valid0 = _errs14 === errors;
@@ -9295,7 +9296,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9295
9296
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
9296
9297
  }
9297
9298
  if (!(data5 === "normal" || data5 === "italic" || data5 === "oblique")) {
9298
- let err16 = { instancePath: instancePath + "/style/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema381.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9299
+ 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" };
9299
9300
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
9300
9301
  }
9301
9302
  }
@@ -9314,7 +9315,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9314
9315
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
9315
9316
  }
9316
9317
  if (!(data7 === "underline" || data7 === "overline" || data7 === "strikethrough")) {
9317
- let err19 = { instancePath: instancePath + "/style/decorations/" + i0, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema381.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9318
+ 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" };
9318
9319
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
9319
9320
  }
9320
9321
  }
@@ -9346,7 +9347,7 @@ function validate404(data, { instancePath = "", parentData, parentDataProperty,
9346
9347
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
9347
9348
  }
9348
9349
  if (!(data8 === "box" || data8 === "circle")) {
9349
- let err23 = { instancePath: instancePath + "/style/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema381.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9350
+ 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" };
9350
9351
  vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
9351
9352
  }
9352
9353
  }
@@ -9426,7 +9427,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9426
9427
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
9427
9428
  }
9428
9429
  if (!(data3 === "serif" || data3 === "sans-serif" || data3 === "monospace")) {
9429
- let err8 = { instancePath: instancePath + "/style/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema381.properties.font.enum }, message: "must be equal to one of the allowed values" };
9430
+ 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" };
9430
9431
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
9431
9432
  }
9432
9433
  }
@@ -9453,7 +9454,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9453
9454
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
9454
9455
  }
9455
9456
  if (!(data5 === "normal" || data5 === "bold")) {
9456
- let err13 = { instancePath: instancePath + "/style/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema381.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9457
+ 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" };
9457
9458
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
9458
9459
  }
9459
9460
  var _valid0 = _errs16 === errors;
@@ -9487,7 +9488,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9487
9488
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
9488
9489
  }
9489
9490
  if (!(data6 === "normal" || data6 === "italic" || data6 === "oblique")) {
9490
- let err19 = { instancePath: instancePath + "/style/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema381.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9491
+ 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" };
9491
9492
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
9492
9493
  }
9493
9494
  }
@@ -9506,7 +9507,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9506
9507
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
9507
9508
  }
9508
9509
  if (!(data8 === "underline" || data8 === "overline" || data8 === "strikethrough")) {
9509
- let err22 = { instancePath: instancePath + "/style/decorations/" + i1, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema381.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9510
+ 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" };
9510
9511
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
9511
9512
  }
9512
9513
  }
@@ -9538,7 +9539,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9538
9539
  vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
9539
9540
  }
9540
9541
  if (!(data9 === "box" || data9 === "circle")) {
9541
- let err26 = { instancePath: instancePath + "/style/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema381.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9542
+ 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" };
9542
9543
  vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
9543
9544
  }
9544
9545
  }
@@ -9574,7 +9575,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9574
9575
  vErrors === null ? vErrors = [err31] : vErrors.push(err31), errors++;
9575
9576
  }
9576
9577
  if (!(data12 === "serif" || data12 === "sans-serif" || data12 === "monospace")) {
9577
- let err32 = { instancePath: instancePath + "/smuflStyle/font", schemaPath: "#/$defs/text-run-style/properties/font/enum", keyword: "enum", params: { allowedValues: schema381.properties.font.enum }, message: "must be equal to one of the allowed values" };
9578
+ 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" };
9578
9579
  vErrors === null ? vErrors = [err32] : vErrors.push(err32), errors++;
9579
9580
  }
9580
9581
  }
@@ -9601,7 +9602,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9601
9602
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
9602
9603
  }
9603
9604
  if (!(data14 === "normal" || data14 === "bold")) {
9604
- let err37 = { instancePath: instancePath + "/smuflStyle/weight", schemaPath: "#/$defs/text-run-style/properties/weight/oneOf/0/enum", keyword: "enum", params: { allowedValues: schema381.properties.weight.oneOf[0].enum }, message: "must be equal to one of the allowed values" };
9605
+ 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" };
9605
9606
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
9606
9607
  }
9607
9608
  var _valid1 = _errs40 === errors;
@@ -9635,7 +9636,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9635
9636
  vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
9636
9637
  }
9637
9638
  if (!(data15 === "normal" || data15 === "italic" || data15 === "oblique")) {
9638
- let err43 = { instancePath: instancePath + "/smuflStyle/fontStyle", schemaPath: "#/$defs/text-run-style/properties/fontStyle/enum", keyword: "enum", params: { allowedValues: schema381.properties.fontStyle.enum }, message: "must be equal to one of the allowed values" };
9639
+ 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" };
9639
9640
  vErrors === null ? vErrors = [err43] : vErrors.push(err43), errors++;
9640
9641
  }
9641
9642
  }
@@ -9654,7 +9655,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9654
9655
  vErrors === null ? vErrors = [err45] : vErrors.push(err45), errors++;
9655
9656
  }
9656
9657
  if (!(data17 === "underline" || data17 === "overline" || data17 === "strikethrough")) {
9657
- let err46 = { instancePath: instancePath + "/smuflStyle/decorations/" + i3, schemaPath: "#/$defs/text-run-style/properties/decorations/items/enum", keyword: "enum", params: { allowedValues: schema381.properties.decorations.items.enum }, message: "must be equal to one of the allowed values" };
9658
+ 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" };
9658
9659
  vErrors === null ? vErrors = [err46] : vErrors.push(err46), errors++;
9659
9660
  }
9660
9661
  }
@@ -9686,7 +9687,7 @@ function validate406(data, { instancePath = "", parentData, parentDataProperty,
9686
9687
  vErrors === null ? vErrors = [err49] : vErrors.push(err49), errors++;
9687
9688
  }
9688
9689
  if (!(data18 === "box" || data18 === "circle")) {
9689
- let err50 = { instancePath: instancePath + "/smuflStyle/enclosure", schemaPath: "#/$defs/text-run-style/properties/enclosure/enum", keyword: "enum", params: { allowedValues: schema381.properties.enclosure.enum }, message: "must be equal to one of the allowed values" };
9690
+ 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" };
9690
9691
  vErrors === null ? vErrors = [err50] : vErrors.push(err50), errors++;
9691
9692
  }
9692
9693
  }
@@ -9745,6 +9746,421 @@ function validate403(data, { instancePath = "", parentData, parentDataProperty,
9745
9746
  validate403.evaluated = { items: !0, dynamicProps: !1, dynamicItems: !1 };
9746
9747
  function validate402(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9747
9748
  let vErrors = null, errors = 0, evaluated0 = validate402.evaluated;
9749
+ evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
9750
+ let _errs1 = errors, valid0 = !1, passing0 = null, _errs2 = errors;
9751
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9752
+ if (data.bpm === void 0) {
9753
+ let err0 = { instancePath, schemaPath: "#/oneOf/0/required", keyword: "required", params: { missingProperty: "bpm" }, message: "must have required property 'bpm'" };
9754
+ vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
9755
+ }
9756
+ if (data.value === void 0) {
9757
+ let err1 = { instancePath, schemaPath: "#/oneOf/0/required", keyword: "required", params: { missingProperty: "value" }, message: "must have required property 'value'" };
9758
+ vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
9759
+ }
9760
+ }
9761
+ var _valid0 = _errs2 === errors;
9762
+ _valid0 && (valid0 = !0, passing0 = 0);
9763
+ let _errs3 = errors, _errs4 = errors, _errs5 = errors, _errs6 = errors, valid2 = !1, _errs7 = errors;
9764
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9765
+ let missing0;
9766
+ if (data.bpm === void 0 && (missing0 = "bpm")) {
9767
+ let err2 = {};
9768
+ vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
9769
+ }
9770
+ }
9771
+ var _valid1 = _errs7 === errors;
9772
+ valid2 = valid2 || _valid1;
9773
+ let _errs8 = errors;
9774
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9775
+ let missing1;
9776
+ if (data.value === void 0 && (missing1 = "value")) {
9777
+ let err3 = {};
9778
+ vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
9779
+ }
9780
+ }
9781
+ var _valid1 = _errs8 === errors;
9782
+ if (valid2 = valid2 || _valid1, valid2)
9783
+ errors = _errs6, vErrors !== null && (_errs6 ? vErrors.length = _errs6 : vErrors = null);
9784
+ else {
9785
+ let err4 = {};
9786
+ vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
9787
+ }
9788
+ var valid1 = _errs5 === errors;
9789
+ if (valid1) {
9790
+ let err5 = { instancePath, schemaPath: "#/oneOf/1/not", keyword: "not", params: {}, message: "must NOT be valid" };
9791
+ vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
9792
+ } else
9793
+ errors = _errs4, vErrors !== null && (_errs4 ? vErrors.length = _errs4 : vErrors = null);
9794
+ if (data && typeof data == "object" && !Array.isArray(data) && data.swing === void 0) {
9795
+ let err6 = { instancePath, schemaPath: "#/oneOf/1/required", keyword: "required", params: { missingProperty: "swing" }, message: "must have required property 'swing'" };
9796
+ vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
9797
+ }
9798
+ var _valid0 = _errs3 === errors;
9799
+ if (_valid0 && valid0)
9800
+ valid0 = !1, passing0 = [passing0, 1];
9801
+ else {
9802
+ _valid0 && (valid0 = !0, passing0 = 1);
9803
+ let _errs9 = errors, _errs10 = errors, _errs11 = errors, _errs12 = errors, valid4 = !1, _errs13 = errors;
9804
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9805
+ let missing2;
9806
+ if (data.bpm === void 0 && (missing2 = "bpm")) {
9807
+ let err7 = {};
9808
+ vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
9809
+ }
9810
+ }
9811
+ var _valid2 = _errs13 === errors;
9812
+ valid4 = valid4 || _valid2;
9813
+ let _errs14 = errors;
9814
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9815
+ let missing3;
9816
+ if (data.value === void 0 && (missing3 = "value")) {
9817
+ let err8 = {};
9818
+ vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
9819
+ }
9820
+ }
9821
+ var _valid2 = _errs14 === errors;
9822
+ valid4 = valid4 || _valid2;
9823
+ let _errs15 = errors;
9824
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9825
+ let missing4;
9826
+ if (data.swing === void 0 && (missing4 = "swing")) {
9827
+ let err9 = {};
9828
+ vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
9829
+ }
9830
+ }
9831
+ var _valid2 = _errs15 === errors;
9832
+ if (valid4 = valid4 || _valid2, valid4)
9833
+ errors = _errs12, vErrors !== null && (_errs12 ? vErrors.length = _errs12 : vErrors = null);
9834
+ else {
9835
+ let err10 = {};
9836
+ vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
9837
+ }
9838
+ var valid3 = _errs11 === errors;
9839
+ if (valid3) {
9840
+ let err11 = { instancePath, schemaPath: "#/oneOf/2/not", keyword: "not", params: {}, message: "must NOT be valid" };
9841
+ vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
9842
+ } else
9843
+ errors = _errs10, vErrors !== null && (_errs10 ? vErrors.length = _errs10 : vErrors = null);
9844
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9845
+ if (data.text === void 0) {
9846
+ let err12 = { instancePath, schemaPath: "#/oneOf/2/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
9847
+ vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
9848
+ }
9849
+ if (data.text !== void 0) {
9850
+ let data0 = data.text;
9851
+ if (Array.isArray(data0) && data0.length < 1) {
9852
+ let err13 = { instancePath: instancePath + "/text", schemaPath: "#/oneOf/2/properties/text/minItems", keyword: "minItems", params: { limit: 1 }, message: "must NOT have fewer than 1 items" };
9853
+ vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
9854
+ }
9855
+ }
9856
+ }
9857
+ var _valid0 = _errs9 === errors;
9858
+ if (_valid0 && valid0)
9859
+ valid0 = !1, passing0 = [passing0, 2];
9860
+ else if (_valid0) {
9861
+ valid0 = !0, passing0 = 2;
9862
+ var props0 = {};
9863
+ props0.text = !0;
9864
+ }
9865
+ }
9866
+ if (valid0)
9867
+ errors = _errs1, vErrors !== null && (_errs1 ? vErrors.length = _errs1 : vErrors = null);
9868
+ else {
9869
+ let err14 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
9870
+ vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
9871
+ }
9872
+ if (data && typeof data == "object" && !Array.isArray(data)) {
9873
+ for (let key0 in data)
9874
+ if (!func1.call(schema378.properties, key0)) {
9875
+ let err15 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
9876
+ vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
9877
+ }
9878
+ if (data.bpm !== void 0) {
9879
+ let data1 = data.bpm;
9880
+ if (typeof data1 == "number") {
9881
+ if (data1 <= 0 || isNaN(data1)) {
9882
+ let err16 = { instancePath: instancePath + "/bpm", schemaPath: "#/properties/bpm/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
9883
+ vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
9884
+ }
9885
+ } else {
9886
+ let err17 = { instancePath: instancePath + "/bpm", schemaPath: "#/properties/bpm/type", keyword: "type", params: { type: "number" }, message: "must be number" };
9887
+ vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
9888
+ }
9889
+ }
9890
+ if (data.value !== void 0) {
9891
+ let data2 = data.value;
9892
+ if (data2 && typeof data2 == "object" && !Array.isArray(data2)) {
9893
+ if (data2.base === void 0) {
9894
+ let err18 = { instancePath: instancePath + "/value", schemaPath: "#/properties/value/required", keyword: "required", params: { missingProperty: "base" }, message: "must have required property 'base'" };
9895
+ vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
9896
+ }
9897
+ for (let key1 in data2)
9898
+ if (!(key1 === "base" || key1 === "dots")) {
9899
+ let err19 = { instancePath: instancePath + "/value", schemaPath: "#/properties/value/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
9900
+ vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
9901
+ }
9902
+ if (data2.base !== void 0) {
9903
+ let data3 = data2.base;
9904
+ if (typeof data3 != "string") {
9905
+ let err20 = { instancePath: instancePath + "/value/base", schemaPath: "#/properties/value/properties/base/type", keyword: "type", params: { type: "string" }, message: "must be string" };
9906
+ vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
9907
+ }
9908
+ 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")) {
9909
+ 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" };
9910
+ vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
9911
+ }
9912
+ }
9913
+ if (data2.dots !== void 0) {
9914
+ let data4 = data2.dots;
9915
+ if (!(typeof data4 == "number" && !(data4 % 1) && !isNaN(data4))) {
9916
+ let err22 = { instancePath: instancePath + "/value/dots", schemaPath: "#/properties/value/properties/dots/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
9917
+ vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
9918
+ }
9919
+ if (typeof data4 == "number" && (data4 < 0 || isNaN(data4))) {
9920
+ let err23 = { instancePath: instancePath + "/value/dots", schemaPath: "#/properties/value/properties/dots/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
9921
+ vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
9922
+ }
9923
+ }
9924
+ } else {
9925
+ let err24 = { instancePath: instancePath + "/value", schemaPath: "#/properties/value/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9926
+ vErrors === null ? vErrors = [err24] : vErrors.push(err24), errors++;
9927
+ }
9928
+ }
9929
+ if (data.location !== void 0) {
9930
+ let data5 = data.location;
9931
+ if (data5 && typeof data5 == "object" && !Array.isArray(data5)) {
9932
+ if (data5.fraction === void 0) {
9933
+ let err25 = { instancePath: instancePath + "/location", schemaPath: "#/properties/location/required", keyword: "required", params: { missingProperty: "fraction" }, message: "must have required property 'fraction'" };
9934
+ vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
9935
+ }
9936
+ for (let key2 in data5)
9937
+ if (key2 !== "fraction") {
9938
+ let err26 = { instancePath: instancePath + "/location", schemaPath: "#/properties/location/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key2 }, message: "must NOT have additional properties" };
9939
+ vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
9940
+ }
9941
+ if (data5.fraction !== void 0) {
9942
+ let data6 = data5.fraction;
9943
+ if (Array.isArray(data6)) {
9944
+ if (data6.length > 2) {
9945
+ let err27 = { instancePath: instancePath + "/location/fraction", schemaPath: "#/properties/location/properties/fraction/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
9946
+ vErrors === null ? vErrors = [err27] : vErrors.push(err27), errors++;
9947
+ }
9948
+ if (data6.length < 2) {
9949
+ let err28 = { instancePath: instancePath + "/location/fraction", schemaPath: "#/properties/location/properties/fraction/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
9950
+ vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
9951
+ }
9952
+ let len0 = data6.length;
9953
+ if (len0 > 0) {
9954
+ let data7 = data6[0];
9955
+ if (!(typeof data7 == "number" && !(data7 % 1) && !isNaN(data7))) {
9956
+ let err29 = { instancePath: instancePath + "/location/fraction/0", schemaPath: "#/properties/location/properties/fraction/prefixItems/0/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
9957
+ vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
9958
+ }
9959
+ if (typeof data7 == "number") {
9960
+ if (data7 > 9007199254740991 || isNaN(data7)) {
9961
+ let err30 = { instancePath: instancePath + "/location/fraction/0", schemaPath: "#/properties/location/properties/fraction/prefixItems/0/maximum", keyword: "maximum", params: { comparison: "<=", limit: 9007199254740991 }, message: "must be <= 9007199254740991" };
9962
+ vErrors === null ? vErrors = [err30] : vErrors.push(err30), errors++;
9963
+ }
9964
+ if (data7 < 0 || isNaN(data7)) {
9965
+ let err31 = { instancePath: instancePath + "/location/fraction/0", schemaPath: "#/properties/location/properties/fraction/prefixItems/0/minimum", keyword: "minimum", params: { comparison: ">=", limit: 0 }, message: "must be >= 0" };
9966
+ vErrors === null ? vErrors = [err31] : vErrors.push(err31), errors++;
9967
+ }
9968
+ }
9969
+ }
9970
+ if (len0 > 1) {
9971
+ let data8 = data6[1];
9972
+ if (!(typeof data8 == "number" && !(data8 % 1) && !isNaN(data8))) {
9973
+ let err32 = { instancePath: instancePath + "/location/fraction/1", schemaPath: "#/properties/location/properties/fraction/prefixItems/1/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
9974
+ vErrors === null ? vErrors = [err32] : vErrors.push(err32), errors++;
9975
+ }
9976
+ if (typeof data8 == "number") {
9977
+ if (data8 > 9007199254740991 || isNaN(data8)) {
9978
+ let err33 = { instancePath: instancePath + "/location/fraction/1", schemaPath: "#/properties/location/properties/fraction/prefixItems/1/maximum", keyword: "maximum", params: { comparison: "<=", limit: 9007199254740991 }, message: "must be <= 9007199254740991" };
9979
+ vErrors === null ? vErrors = [err33] : vErrors.push(err33), errors++;
9980
+ }
9981
+ if (data8 < 1 || isNaN(data8)) {
9982
+ let err34 = { instancePath: instancePath + "/location/fraction/1", schemaPath: "#/properties/location/properties/fraction/prefixItems/1/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
9983
+ vErrors === null ? vErrors = [err34] : vErrors.push(err34), errors++;
9984
+ }
9985
+ }
9986
+ }
9987
+ if (!(data6.length <= 2)) {
9988
+ let err35 = { instancePath: instancePath + "/location/fraction", schemaPath: "#/properties/location/properties/fraction/items", keyword: "items", params: { limit: 2 }, message: "must NOT have more than 2 items" };
9989
+ vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
9990
+ }
9991
+ } else {
9992
+ let err36 = { instancePath: instancePath + "/location/fraction", schemaPath: "#/properties/location/properties/fraction/type", keyword: "type", params: { type: "array" }, message: "must be array" };
9993
+ vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
9994
+ }
9995
+ }
9996
+ } else {
9997
+ let err37 = { instancePath: instancePath + "/location", schemaPath: "#/properties/location/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9998
+ vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
9999
+ }
10000
+ }
10001
+ if (data.swing !== void 0) {
10002
+ let data9 = data.swing, _errs38 = errors, valid11 = !1, passing1 = null, _errs39 = errors;
10003
+ if (data9 && typeof data9 == "object" && !Array.isArray(data9)) {
10004
+ if (data9.mode === void 0) {
10005
+ let err38 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/0/required", keyword: "required", params: { missingProperty: "mode" }, message: "must have required property 'mode'" };
10006
+ vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
10007
+ }
10008
+ for (let key3 in data9)
10009
+ if (key3 !== "mode") {
10010
+ let err39 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/0/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key3 }, message: "must NOT have additional properties" };
10011
+ vErrors === null ? vErrors = [err39] : vErrors.push(err39), errors++;
10012
+ }
10013
+ if (data9.mode !== void 0) {
10014
+ let data10 = data9.mode;
10015
+ if (typeof data10 != "string") {
10016
+ let err40 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/0/properties/mode/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10017
+ vErrors === null ? vErrors = [err40] : vErrors.push(err40), errors++;
10018
+ }
10019
+ if (data10 !== "straight") {
10020
+ let err41 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/0/properties/mode/const", keyword: "const", params: { allowedValue: "straight" }, message: "must be equal to constant" };
10021
+ vErrors === null ? vErrors = [err41] : vErrors.push(err41), errors++;
10022
+ }
10023
+ }
10024
+ } else {
10025
+ let err42 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/0/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10026
+ vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
10027
+ }
10028
+ var _valid3 = _errs39 === errors;
10029
+ if (_valid3) {
10030
+ valid11 = !0, passing1 = 0;
10031
+ var props1 = !0;
10032
+ }
10033
+ let _errs44 = errors;
10034
+ if (data9 && typeof data9 == "object" && !Array.isArray(data9)) {
10035
+ if (data9.mode === void 0) {
10036
+ let err43 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/required", keyword: "required", params: { missingProperty: "mode" }, message: "must have required property 'mode'" };
10037
+ vErrors === null ? vErrors = [err43] : vErrors.push(err43), errors++;
10038
+ }
10039
+ if (data9.subdivision === void 0) {
10040
+ let err44 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/required", keyword: "required", params: { missingProperty: "subdivision" }, message: "must have required property 'subdivision'" };
10041
+ vErrors === null ? vErrors = [err44] : vErrors.push(err44), errors++;
10042
+ }
10043
+ if (data9.ratio === void 0) {
10044
+ let err45 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/required", keyword: "required", params: { missingProperty: "ratio" }, message: "must have required property 'ratio'" };
10045
+ vErrors === null ? vErrors = [err45] : vErrors.push(err45), errors++;
10046
+ }
10047
+ for (let key4 in data9)
10048
+ if (!(key4 === "mode" || key4 === "subdivision" || key4 === "ratio")) {
10049
+ let err46 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key4 }, message: "must NOT have additional properties" };
10050
+ vErrors === null ? vErrors = [err46] : vErrors.push(err46), errors++;
10051
+ }
10052
+ if (data9.mode !== void 0) {
10053
+ let data11 = data9.mode;
10054
+ if (typeof data11 != "string") {
10055
+ let err47 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/1/properties/mode/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10056
+ vErrors === null ? vErrors = [err47] : vErrors.push(err47), errors++;
10057
+ }
10058
+ if (data11 !== "swing") {
10059
+ let err48 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/1/properties/mode/const", keyword: "const", params: { allowedValue: "swing" }, message: "must be equal to constant" };
10060
+ vErrors === null ? vErrors = [err48] : vErrors.push(err48), errors++;
10061
+ }
10062
+ }
10063
+ if (data9.subdivision !== void 0) {
10064
+ let data12 = data9.subdivision;
10065
+ if (typeof data12 != "string") {
10066
+ let err49 = { instancePath: instancePath + "/swing/subdivision", schemaPath: "#/$defs/swing/oneOf/1/properties/subdivision/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10067
+ vErrors === null ? vErrors = [err49] : vErrors.push(err49), errors++;
10068
+ }
10069
+ if (!(data12 === "eighth" || data12 === "16th")) {
10070
+ 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" };
10071
+ vErrors === null ? vErrors = [err50] : vErrors.push(err50), errors++;
10072
+ }
10073
+ }
10074
+ if (data9.ratio !== void 0) {
10075
+ let data13 = data9.ratio;
10076
+ if (Array.isArray(data13)) {
10077
+ if (data13.length > 2) {
10078
+ let err51 = { instancePath: instancePath + "/swing/ratio", schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
10079
+ vErrors === null ? vErrors = [err51] : vErrors.push(err51), errors++;
10080
+ }
10081
+ if (data13.length < 2) {
10082
+ let err52 = { instancePath: instancePath + "/swing/ratio", schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
10083
+ vErrors === null ? vErrors = [err52] : vErrors.push(err52), errors++;
10084
+ }
10085
+ let len2 = data13.length;
10086
+ for (let i0 = 0; i0 < len2; i0++) {
10087
+ let data14 = data13[i0];
10088
+ if (!(typeof data14 == "number" && !(data14 % 1) && !isNaN(data14))) {
10089
+ let err53 = { instancePath: instancePath + "/swing/ratio/" + i0, schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/items/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
10090
+ vErrors === null ? vErrors = [err53] : vErrors.push(err53), errors++;
10091
+ }
10092
+ if (typeof data14 == "number") {
10093
+ if (data14 > 9007199254740991 || isNaN(data14)) {
10094
+ let err54 = { instancePath: instancePath + "/swing/ratio/" + i0, schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/items/maximum", keyword: "maximum", params: { comparison: "<=", limit: 9007199254740991 }, message: "must be <= 9007199254740991" };
10095
+ vErrors === null ? vErrors = [err54] : vErrors.push(err54), errors++;
10096
+ }
10097
+ if (data14 < 1 || isNaN(data14)) {
10098
+ let err55 = { instancePath: instancePath + "/swing/ratio/" + i0, schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/items/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
10099
+ vErrors === null ? vErrors = [err55] : vErrors.push(err55), errors++;
10100
+ }
10101
+ }
10102
+ }
10103
+ } else {
10104
+ let err56 = { instancePath: instancePath + "/swing/ratio", schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10105
+ vErrors === null ? vErrors = [err56] : vErrors.push(err56), errors++;
10106
+ }
10107
+ }
10108
+ } else {
10109
+ let err57 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10110
+ vErrors === null ? vErrors = [err57] : vErrors.push(err57), errors++;
10111
+ }
10112
+ var _valid3 = _errs44 === errors;
10113
+ if (_valid3 && valid11 ? (valid11 = !1, passing1 = [passing1, 1]) : _valid3 && (valid11 = !0, passing1 = 1, props1 !== !0 && (props1 = !0)), valid11)
10114
+ errors = _errs38, vErrors !== null && (_errs38 ? vErrors.length = _errs38 : vErrors = null);
10115
+ else {
10116
+ let err58 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf", keyword: "oneOf", params: { passingSchemas: passing1 }, message: "must match exactly one schema in oneOf" };
10117
+ vErrors === null ? vErrors = [err58] : vErrors.push(err58), errors++;
10118
+ }
10119
+ }
10120
+ 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") {
10121
+ let err59 = { instancePath: instancePath + "/showMetronomeMark", schemaPath: "#/properties/showMetronomeMark/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10122
+ vErrors === null ? vErrors = [err59] : vErrors.push(err59), errors++;
10123
+ }
10124
+ if (data.showText !== void 0 && typeof data.showText != "boolean") {
10125
+ let err60 = { instancePath: instancePath + "/showText", schemaPath: "#/properties/showText/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10126
+ vErrors === null ? vErrors = [err60] : vErrors.push(err60), errors++;
10127
+ }
10128
+ if (data.manualOffset !== void 0) {
10129
+ let data18 = data.manualOffset;
10130
+ if (Array.isArray(data18)) {
10131
+ if (data18.length > 2) {
10132
+ let err61 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
10133
+ vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
10134
+ }
10135
+ if (data18.length < 2) {
10136
+ let err62 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
10137
+ vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
10138
+ }
10139
+ let len3 = data18.length;
10140
+ for (let i1 = 0; i1 < len3; i1++)
10141
+ if (typeof data18[i1] != "number") {
10142
+ let err63 = { instancePath: instancePath + "/manualOffset/" + i1, schemaPath: "#/$defs/sp-delta/items/type", keyword: "type", params: { type: "number" }, message: "must be number" };
10143
+ vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
10144
+ }
10145
+ } else {
10146
+ let err64 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10147
+ vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
10148
+ }
10149
+ }
10150
+ if (data.avoidCollisions !== void 0 && typeof data.avoidCollisions != "boolean") {
10151
+ let err65 = { instancePath: instancePath + "/avoidCollisions", schemaPath: "#/properties/avoidCollisions/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10152
+ vErrors === null ? vErrors = [err65] : vErrors.push(err65), errors++;
10153
+ }
10154
+ } else {
10155
+ let err66 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10156
+ vErrors === null ? vErrors = [err66] : vErrors.push(err66), errors++;
10157
+ }
10158
+ return validate402.errors = vErrors, errors === 0;
10159
+ }
10160
+ validate402.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10161
+ 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 };
10162
+ function validate410(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10163
+ let vErrors = null, errors = 0, evaluated0 = validate410.evaluated;
9748
10164
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9749
10165
  if (data.text === void 0) {
9750
10166
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
@@ -9762,7 +10178,7 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
9762
10178
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
9763
10179
  }
9764
10180
  if (!(data1 === "boxed" || data1 === "circled" || data1 === "plain")) {
9765
- let err3 = { instancePath: instancePath + "/style", schemaPath: "#/properties/style/enum", keyword: "enum", params: { allowedValues: schema378.properties.style.enum }, message: "must be equal to one of the allowed values" };
10181
+ 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" };
9766
10182
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
9767
10183
  }
9768
10184
  }
@@ -9796,12 +10212,12 @@ function validate402(data, { instancePath = "", parentData, parentDataProperty,
9796
10212
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9797
10213
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
9798
10214
  }
9799
- return validate402.errors = vErrors, errors === 0;
10215
+ return validate410.errors = vErrors, errors === 0;
9800
10216
  }
9801
- validate402.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9802
- var schema387 = { 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 };
9803
- function validate411(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9804
- let vErrors = null, errors = 0, evaluated0 = validate411.evaluated;
10217
+ validate410.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10218
+ 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 };
10219
+ function validate414(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10220
+ let vErrors = null, errors = 0, evaluated0 = validate414.evaluated;
9805
10221
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9806
10222
  if (data.content === void 0) {
9807
10223
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "content" }, message: "must have required property 'content'" };
@@ -9823,7 +10239,7 @@ function validate411(data, { instancePath = "", parentData, parentDataProperty,
9823
10239
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
9824
10240
  }
9825
10241
  if (!(data1 === "before" || data1 === "after" || data1 === "replace")) {
9826
- let err4 = { instancePath: instancePath + "/placement", schemaPath: "#/properties/placement/enum", keyword: "enum", params: { allowedValues: schema387.properties.placement.enum }, message: "must be equal to one of the allowed values" };
10242
+ 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" };
9827
10243
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
9828
10244
  }
9829
10245
  }
@@ -9831,11 +10247,11 @@ function validate411(data, { instancePath = "", parentData, parentDataProperty,
9831
10247
  let err5 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9832
10248
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
9833
10249
  }
9834
- return validate411.errors = vErrors, errors === 0;
10250
+ return validate414.errors = vErrors, errors === 0;
9835
10251
  }
9836
- validate411.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9837
- function validate410(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9838
- let vErrors = null, errors = 0, evaluated0 = validate410.evaluated;
10252
+ validate414.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10253
+ function validate413(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10254
+ let vErrors = null, errors = 0, evaluated0 = validate413.evaluated;
9839
10255
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9840
10256
  if (Object.keys(data).length < 1) {
9841
10257
  let err0 = { instancePath, schemaPath: "#/minProperties", keyword: "minProperties", params: { limit: 1 }, message: "must NOT have fewer than 1 properties" };
@@ -9846,18 +10262,18 @@ function validate410(data, { instancePath = "", parentData, parentDataProperty,
9846
10262
  let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
9847
10263
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
9848
10264
  }
9849
- data.segno !== void 0 && (validate411(data.segno, { instancePath: instancePath + "/segno", parentData: data, parentDataProperty: "segno", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate411.errors : vErrors.concat(validate411.errors), errors = vErrors.length)), data.coda !== void 0 && (validate411(data.coda, { instancePath: instancePath + "/coda", parentData: data, parentDataProperty: "coda", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate411.errors : vErrors.concat(validate411.errors), errors = vErrors.length)), data.fine !== void 0 && (validate411(data.fine, { instancePath: instancePath + "/fine", parentData: data, parentDataProperty: "fine", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate411.errors : vErrors.concat(validate411.errors), errors = vErrors.length)), data.jump !== void 0 && (validate411(data.jump, { instancePath: instancePath + "/jump", parentData: data, parentDataProperty: "jump", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate411.errors : vErrors.concat(validate411.errors), errors = vErrors.length));
10265
+ 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));
9850
10266
  } else {
9851
10267
  let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
9852
10268
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
9853
10269
  }
9854
- return validate410.errors = vErrors, errors === 0;
10270
+ return validate413.errors = vErrors, errors === 0;
9855
10271
  }
9856
- validate410.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
9857
- var schema389 = { 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 };
9858
- var schema391 = { type: "string", enum: ["below", "above"], description: "Placement of a text expression relative to the staff. Default: 'below'." };
9859
- function validate418(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
9860
- let vErrors = null, errors = 0, evaluated0 = validate418.evaluated;
10272
+ validate413.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10273
+ 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 };
10274
+ var schema394 = { type: "string", enum: ["below", "above"], description: "Placement of a text expression relative to the staff. Default: 'below'." };
10275
+ function validate421(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10276
+ let vErrors = null, errors = 0, evaluated0 = validate421.evaluated;
9861
10277
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
9862
10278
  if (data.id === void 0) {
9863
10279
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -9940,7 +10356,7 @@ function validate418(data, { instancePath = "", parentData, parentDataProperty,
9940
10356
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
9941
10357
  }
9942
10358
  if (!(data6 === "left" || data6 === "center" || data6 === "right")) {
9943
- let err15 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema389.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
10359
+ 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" };
9944
10360
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
9945
10361
  }
9946
10362
  }
@@ -9951,7 +10367,7 @@ function validate418(data, { instancePath = "", parentData, parentDataProperty,
9951
10367
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
9952
10368
  }
9953
10369
  if (!(data7 === "left" || data7 === "center" || data7 === "right" || data7 === "justify")) {
9954
- let err17 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema389.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
10370
+ 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" };
9955
10371
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
9956
10372
  }
9957
10373
  }
@@ -9974,7 +10390,7 @@ function validate418(data, { instancePath = "", parentData, parentDataProperty,
9974
10390
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
9975
10391
  }
9976
10392
  if (!(data9 === "none" || data9 === "solid")) {
9977
- let err21 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema389.properties.border.enum }, message: "must be equal to one of the allowed values" };
10393
+ 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" };
9978
10394
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
9979
10395
  }
9980
10396
  }
@@ -10063,7 +10479,7 @@ function validate418(data, { instancePath = "", parentData, parentDataProperty,
10063
10479
  vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
10064
10480
  }
10065
10481
  if (!(data17 === "below" || data17 === "above")) {
10066
- let err36 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema391.enum }, message: "must be equal to one of the allowed values" };
10482
+ 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" };
10067
10483
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
10068
10484
  }
10069
10485
  }
@@ -10097,12 +10513,12 @@ function validate418(data, { instancePath = "", parentData, parentDataProperty,
10097
10513
  let err42 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10098
10514
  vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
10099
10515
  }
10100
- return validate418.errors = vErrors, errors === 0;
10516
+ return validate421.errors = vErrors, errors === 0;
10101
10517
  }
10102
- validate418.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10103
- var schema393 = { 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 };
10104
- function validate422(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10105
- let vErrors = null, errors = 0, evaluated0 = validate422.evaluated;
10518
+ validate421.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10519
+ 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 };
10520
+ function validate425(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10521
+ let vErrors = null, errors = 0, evaluated0 = validate425.evaluated;
10106
10522
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10107
10523
  if (data.measure === void 0) {
10108
10524
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "measure" }, message: "must have required property 'measure'" };
@@ -10166,11 +10582,11 @@ function validate422(data, { instancePath = "", parentData, parentDataProperty,
10166
10582
  let err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10167
10583
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
10168
10584
  }
10169
- return validate422.errors = vErrors, errors === 0;
10585
+ return validate425.errors = vErrors, errors === 0;
10170
10586
  }
10171
- validate422.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10172
- function validate421(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10173
- let vErrors = null, errors = 0, evaluated0 = validate421.evaluated;
10587
+ validate425.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10588
+ function validate424(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10589
+ let vErrors = null, errors = 0, evaluated0 = validate424.evaluated;
10174
10590
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10175
10591
  if (data.position === void 0) {
10176
10592
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "position" }, message: "must have required property 'position'" };
@@ -10230,7 +10646,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10230
10646
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
10231
10647
  }
10232
10648
  }
10233
- if (data.end !== void 0 && (validate422(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate422.errors : vErrors.concat(validate422.errors), errors = vErrors.length)), data.endBpm !== void 0) {
10649
+ 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) {
10234
10650
  let data4 = data.endBpm;
10235
10651
  if (typeof data4 == "number") {
10236
10652
  if (data4 <= 0 || isNaN(data4)) {
@@ -10261,7 +10677,7 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10261
10677
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
10262
10678
  }
10263
10679
  if (!(data6 === "rit" || data6 === "accel")) {
10264
- let err16 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/enum", keyword: "enum", params: { allowedValues: schema393.properties.kind.enum }, message: "must be equal to one of the allowed values" };
10680
+ 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" };
10265
10681
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
10266
10682
  }
10267
10683
  }
@@ -10269,12 +10685,12 @@ function validate421(data, { instancePath = "", parentData, parentDataProperty,
10269
10685
  let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10270
10686
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
10271
10687
  }
10272
- return validate421.errors = vErrors, errors === 0;
10688
+ return validate424.errors = vErrors, errors === 0;
10273
10689
  }
10274
- validate421.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10275
- var schema397 = { 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 }, schema399 = { 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 }, schema400 = { type: "string", enum: ["major", "minor", "dominant", "diminished", "augmented", "half-diminished", "minor-major", "power", "suspended2", "suspended4", "other"], description: "Harmonic quality of a chord symbol." };
10276
- function validate425(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10277
- let vErrors = null, errors = 0, evaluated0 = validate425.evaluated;
10690
+ validate424.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10691
+ 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." };
10692
+ function validate428(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10693
+ let vErrors = null, errors = 0, evaluated0 = validate428.evaluated;
10278
10694
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10279
10695
  if (data.position === void 0) {
10280
10696
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "position" }, message: "must have required property 'position'" };
@@ -10345,7 +10761,7 @@ function validate425(data, { instancePath = "", parentData, parentDataProperty,
10345
10761
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
10346
10762
  }
10347
10763
  if (!(data4 === "A" || data4 === "B" || data4 === "C" || data4 === "D" || data4 === "E" || data4 === "F" || data4 === "G")) {
10348
- let err12 = { instancePath: instancePath + "/root/step", schemaPath: "#/$defs/chord-root/properties/step/enum", keyword: "enum", params: { allowedValues: schema399.properties.step.enum }, message: "must be equal to one of the allowed values" };
10764
+ 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" };
10349
10765
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
10350
10766
  }
10351
10767
  }
@@ -10372,7 +10788,7 @@ function validate425(data, { instancePath = "", parentData, parentDataProperty,
10372
10788
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
10373
10789
  }
10374
10790
  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")) {
10375
- let err17 = { instancePath: instancePath + "/quality", schemaPath: "#/$defs/chord-quality/enum", keyword: "enum", params: { allowedValues: schema400.enum }, message: "must be equal to one of the allowed values" };
10791
+ 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" };
10376
10792
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
10377
10793
  }
10378
10794
  }
@@ -10399,7 +10815,7 @@ function validate425(data, { instancePath = "", parentData, parentDataProperty,
10399
10815
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
10400
10816
  }
10401
10817
  if (!(data10 === "A" || data10 === "B" || data10 === "C" || data10 === "D" || data10 === "E" || data10 === "F" || data10 === "G")) {
10402
- let err22 = { instancePath: instancePath + "/bass/step", schemaPath: "#/$defs/chord-root/properties/step/enum", keyword: "enum", params: { allowedValues: schema399.properties.step.enum }, message: "must be equal to one of the allowed values" };
10818
+ 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" };
10403
10819
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
10404
10820
  }
10405
10821
  }
@@ -10422,7 +10838,7 @@ function validate425(data, { instancePath = "", parentData, parentDataProperty,
10422
10838
  vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
10423
10839
  }
10424
10840
  if (!(data12 === 6 || data12 === 7 || data12 === 9 || data12 === 11 || data12 === 13)) {
10425
- let err26 = { instancePath: instancePath + "/extension", schemaPath: "#/properties/extension/enum", keyword: "enum", params: { allowedValues: schema397.properties.extension.enum }, message: "must be equal to one of the allowed values" };
10841
+ 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" };
10426
10842
  vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
10427
10843
  }
10428
10844
  }
@@ -10434,59 +10850,74 @@ function validate425(data, { instancePath = "", parentData, parentDataProperty,
10434
10850
  let err28 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10435
10851
  vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
10436
10852
  }
10437
- return validate425.errors = vErrors, errors === 0;
10853
+ return validate428.errors = vErrors, errors === 0;
10438
10854
  }
10439
- validate425.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10855
+ validate428.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10440
10856
  function validate401(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10441
10857
  let vErrors = null, errors = 0, evaluated0 = validate401.evaluated;
10442
10858
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10443
10859
  for (let key0 in data)
10444
- if (!(key0 === "rehearsalMark" || key0 === "markerText" || key0 === "systemText" || key0 === "gradualTempo" || key0 === "chordSymbols" || key0 === "senzaMisura")) {
10860
+ if (!(key0 === "tempos" || key0 === "rehearsalMark" || key0 === "markerText" || key0 === "systemText" || key0 === "gradualTempo" || key0 === "chordSymbols" || key0 === "senzaMisura")) {
10445
10861
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10446
10862
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
10447
10863
  }
10448
- if (data.rehearsalMark !== void 0 && (validate402(data.rehearsalMark, { instancePath: instancePath + "/rehearsalMark", parentData: data, parentDataProperty: "rehearsalMark", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate402.errors : vErrors.concat(validate402.errors), errors = vErrors.length)), data.markerText !== void 0 && (validate410(data.markerText, { instancePath: instancePath + "/markerText", parentData: data, parentDataProperty: "markerText", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate410.errors : vErrors.concat(validate410.errors), errors = vErrors.length)), data.systemText !== void 0) {
10449
- let data2 = data.systemText;
10450
- if (Array.isArray(data2)) {
10451
- let len0 = data2.length;
10864
+ if (data.tempos !== void 0) {
10865
+ let data0 = data.tempos;
10866
+ if (Array.isArray(data0)) {
10867
+ if (data0.length < 1) {
10868
+ let err1 = { instancePath: instancePath + "/tempos", schemaPath: "#/properties/tempos/minItems", keyword: "minItems", params: { limit: 1 }, message: "must NOT have fewer than 1 items" };
10869
+ vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10870
+ }
10871
+ let len0 = data0.length;
10452
10872
  for (let i0 = 0; i0 < len0; i0++)
10453
- validate418(data2[i0], { instancePath: instancePath + "/systemText/" + i0, parentData: data2, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate418.errors : vErrors.concat(validate418.errors), errors = vErrors.length);
10873
+ 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);
10454
10874
  } else {
10455
- let err1 = { instancePath: instancePath + "/systemText", schemaPath: "#/properties/systemText/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10456
- vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10875
+ let err2 = { instancePath: instancePath + "/tempos", schemaPath: "#/properties/tempos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10876
+ vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10457
10877
  }
10458
10878
  }
10459
- if (data.gradualTempo !== void 0 && (validate421(data.gradualTempo, { instancePath: instancePath + "/gradualTempo", parentData: data, parentDataProperty: "gradualTempo", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate421.errors : vErrors.concat(validate421.errors), errors = vErrors.length)), data.chordSymbols !== void 0) {
10460
- let data5 = data.chordSymbols;
10461
- if (Array.isArray(data5)) {
10462
- let len1 = data5.length;
10879
+ 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) {
10880
+ let data4 = data.systemText;
10881
+ if (Array.isArray(data4)) {
10882
+ let len1 = data4.length;
10463
10883
  for (let i1 = 0; i1 < len1; i1++)
10464
- validate425(data5[i1], { instancePath: instancePath + "/chordSymbols/" + i1, parentData: data5, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate425.errors : vErrors.concat(validate425.errors), errors = vErrors.length);
10884
+ 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);
10465
10885
  } else {
10466
- let err2 = { instancePath: instancePath + "/chordSymbols", schemaPath: "#/properties/chordSymbols/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10467
- vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10886
+ let err3 = { instancePath: instancePath + "/systemText", schemaPath: "#/properties/systemText/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10887
+ vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
10888
+ }
10889
+ }
10890
+ 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) {
10891
+ let data7 = data.chordSymbols;
10892
+ if (Array.isArray(data7)) {
10893
+ let len2 = data7.length;
10894
+ for (let i2 = 0; i2 < len2; i2++)
10895
+ 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);
10896
+ } else {
10897
+ let err4 = { instancePath: instancePath + "/chordSymbols", schemaPath: "#/properties/chordSymbols/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10898
+ vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
10468
10899
  }
10469
10900
  }
10470
10901
  if (data.senzaMisura !== void 0) {
10471
- let data7 = data.senzaMisura;
10472
- if (typeof data7 != "boolean") {
10473
- let err3 = { instancePath: instancePath + "/senzaMisura", schemaPath: "#/properties/senzaMisura/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10474
- vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
10902
+ let data9 = data.senzaMisura;
10903
+ if (typeof data9 != "boolean") {
10904
+ let err5 = { instancePath: instancePath + "/senzaMisura", schemaPath: "#/properties/senzaMisura/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10905
+ vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
10475
10906
  }
10476
- if (data7 !== !0) {
10477
- let err4 = { instancePath: instancePath + "/senzaMisura", schemaPath: "#/properties/senzaMisura/const", keyword: "const", params: { allowedValue: !0 }, message: "must be equal to constant" };
10478
- vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
10907
+ if (data9 !== !0) {
10908
+ let err6 = { instancePath: instancePath + "/senzaMisura", schemaPath: "#/properties/senzaMisura/const", keyword: "const", params: { allowedValue: !0 }, message: "must be equal to constant" };
10909
+ vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
10479
10910
  }
10480
10911
  }
10481
10912
  } else {
10482
- let err5 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10483
- vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
10913
+ let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10914
+ vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
10484
10915
  }
10485
10916
  return validate401.errors = vErrors, errors === 0;
10486
10917
  }
10487
10918
  validate401.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10488
- function validate427(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10489
- let vErrors = null, errors = 0, evaluated0 = validate427.evaluated;
10919
+ function validate430(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10920
+ let vErrors = null, errors = 0, evaluated0 = validate430.evaluated;
10490
10921
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10491
10922
  for (let key0 in data)
10492
10923
  if (!(key0 === "beatStructure" || key0 === "groupingDisplay" || key0 === "display")) {
@@ -10528,102 +10959,345 @@ function validate427(data, { instancePath = "", parentData, parentDataProperty,
10528
10959
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
10529
10960
  }
10530
10961
  }
10531
- if (data.display !== void 0) {
10532
- let data3 = data.display;
10533
- if (typeof data3 != "string") {
10534
- let err7 = { instancePath: instancePath + "/display", schemaPath: "#/properties/display/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10535
- vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
10536
- }
10537
- if (data3 !== "note") {
10538
- let err8 = { instancePath: instancePath + "/display", schemaPath: "#/properties/display/const", keyword: "const", params: { allowedValue: "note" }, message: "must be equal to constant" };
10539
- vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
10540
- }
10962
+ if (data.display !== void 0) {
10963
+ let data3 = data.display;
10964
+ if (typeof data3 != "string") {
10965
+ let err7 = { instancePath: instancePath + "/display", schemaPath: "#/properties/display/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10966
+ vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
10967
+ }
10968
+ if (data3 !== "note") {
10969
+ let err8 = { instancePath: instancePath + "/display", schemaPath: "#/properties/display/const", keyword: "const", params: { allowedValue: "note" }, message: "must be equal to constant" };
10970
+ vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
10971
+ }
10972
+ }
10973
+ } else {
10974
+ let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10975
+ vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
10976
+ }
10977
+ return validate430.errors = vErrors, errors === 0;
10978
+ }
10979
+ validate430.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10980
+ function validate431(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10981
+ let vErrors = null, errors = 0, evaluated0 = validate431.evaluated;
10982
+ if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10983
+ for (let key0 in data)
10984
+ if (key0 !== "atonal") {
10985
+ let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10986
+ vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
10987
+ }
10988
+ if (data.atonal !== void 0) {
10989
+ let data0 = data.atonal;
10990
+ if (typeof data0 != "boolean") {
10991
+ let err1 = { instancePath: instancePath + "/atonal", schemaPath: "#/properties/atonal/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10992
+ vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10993
+ }
10994
+ if (data0 !== !0) {
10995
+ let err2 = { instancePath: instancePath + "/atonal", schemaPath: "#/properties/atonal/const", keyword: "const", params: { allowedValue: !0 }, message: "must be equal to constant" };
10996
+ vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10997
+ }
10998
+ }
10999
+ } else {
11000
+ let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11001
+ vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
11002
+ }
11003
+ return validate431.errors = vErrors, errors === 0;
11004
+ }
11005
+ validate431.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11006
+ function validate432(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11007
+ let vErrors = null, errors = 0, evaluated0 = validate432.evaluated;
11008
+ if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11009
+ for (let key0 in data)
11010
+ if (!(key0 === "swing" || key0 === "text" || key0 === "showMetronomeMark" || key0 === "showText" || key0 === "manualOffset" || key0 === "avoidCollisions")) {
11011
+ let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
11012
+ vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
11013
+ }
11014
+ if (data.swing !== void 0) {
11015
+ let data0 = data.swing, _errs4 = errors, valid2 = !1, passing0 = null, _errs5 = errors;
11016
+ if (data0 && typeof data0 == "object" && !Array.isArray(data0)) {
11017
+ if (data0.mode === void 0) {
11018
+ let err1 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/0/required", keyword: "required", params: { missingProperty: "mode" }, message: "must have required property 'mode'" };
11019
+ vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
11020
+ }
11021
+ for (let key1 in data0)
11022
+ if (key1 !== "mode") {
11023
+ let err2 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/0/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
11024
+ vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
11025
+ }
11026
+ if (data0.mode !== void 0) {
11027
+ let data1 = data0.mode;
11028
+ if (typeof data1 != "string") {
11029
+ let err3 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/0/properties/mode/type", keyword: "type", params: { type: "string" }, message: "must be string" };
11030
+ vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
11031
+ }
11032
+ if (data1 !== "straight") {
11033
+ let err4 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/0/properties/mode/const", keyword: "const", params: { allowedValue: "straight" }, message: "must be equal to constant" };
11034
+ vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
11035
+ }
11036
+ }
11037
+ } else {
11038
+ let err5 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/0/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11039
+ vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
11040
+ }
11041
+ var _valid0 = _errs5 === errors;
11042
+ if (_valid0) {
11043
+ valid2 = !0, passing0 = 0;
11044
+ var props0 = !0;
11045
+ }
11046
+ let _errs10 = errors;
11047
+ if (data0 && typeof data0 == "object" && !Array.isArray(data0)) {
11048
+ if (data0.mode === void 0) {
11049
+ let err6 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/required", keyword: "required", params: { missingProperty: "mode" }, message: "must have required property 'mode'" };
11050
+ vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
11051
+ }
11052
+ if (data0.subdivision === void 0) {
11053
+ let err7 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/required", keyword: "required", params: { missingProperty: "subdivision" }, message: "must have required property 'subdivision'" };
11054
+ vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
11055
+ }
11056
+ if (data0.ratio === void 0) {
11057
+ let err8 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/required", keyword: "required", params: { missingProperty: "ratio" }, message: "must have required property 'ratio'" };
11058
+ vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
11059
+ }
11060
+ for (let key2 in data0)
11061
+ if (!(key2 === "mode" || key2 === "subdivision" || key2 === "ratio")) {
11062
+ let err9 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key2 }, message: "must NOT have additional properties" };
11063
+ vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
11064
+ }
11065
+ if (data0.mode !== void 0) {
11066
+ let data2 = data0.mode;
11067
+ if (typeof data2 != "string") {
11068
+ let err10 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/1/properties/mode/type", keyword: "type", params: { type: "string" }, message: "must be string" };
11069
+ vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
11070
+ }
11071
+ if (data2 !== "swing") {
11072
+ let err11 = { instancePath: instancePath + "/swing/mode", schemaPath: "#/$defs/swing/oneOf/1/properties/mode/const", keyword: "const", params: { allowedValue: "swing" }, message: "must be equal to constant" };
11073
+ vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
11074
+ }
11075
+ }
11076
+ if (data0.subdivision !== void 0) {
11077
+ let data3 = data0.subdivision;
11078
+ if (typeof data3 != "string") {
11079
+ let err12 = { instancePath: instancePath + "/swing/subdivision", schemaPath: "#/$defs/swing/oneOf/1/properties/subdivision/type", keyword: "type", params: { type: "string" }, message: "must be string" };
11080
+ vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11081
+ }
11082
+ if (!(data3 === "eighth" || data3 === "16th")) {
11083
+ 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" };
11084
+ vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
11085
+ }
11086
+ }
11087
+ if (data0.ratio !== void 0) {
11088
+ let data4 = data0.ratio;
11089
+ if (Array.isArray(data4)) {
11090
+ if (data4.length > 2) {
11091
+ let err14 = { instancePath: instancePath + "/swing/ratio", schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
11092
+ vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
11093
+ }
11094
+ if (data4.length < 2) {
11095
+ let err15 = { instancePath: instancePath + "/swing/ratio", schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
11096
+ vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
11097
+ }
11098
+ let len0 = data4.length;
11099
+ for (let i0 = 0; i0 < len0; i0++) {
11100
+ let data5 = data4[i0];
11101
+ if (!(typeof data5 == "number" && !(data5 % 1) && !isNaN(data5))) {
11102
+ let err16 = { instancePath: instancePath + "/swing/ratio/" + i0, schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/items/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
11103
+ vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
11104
+ }
11105
+ if (typeof data5 == "number") {
11106
+ if (data5 > 9007199254740991 || isNaN(data5)) {
11107
+ let err17 = { instancePath: instancePath + "/swing/ratio/" + i0, schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/items/maximum", keyword: "maximum", params: { comparison: "<=", limit: 9007199254740991 }, message: "must be <= 9007199254740991" };
11108
+ vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
11109
+ }
11110
+ if (data5 < 1 || isNaN(data5)) {
11111
+ let err18 = { instancePath: instancePath + "/swing/ratio/" + i0, schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/items/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
11112
+ vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
11113
+ }
11114
+ }
11115
+ }
11116
+ } else {
11117
+ let err19 = { instancePath: instancePath + "/swing/ratio", schemaPath: "#/$defs/swing/oneOf/1/properties/ratio/type", keyword: "type", params: { type: "array" }, message: "must be array" };
11118
+ vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
11119
+ }
11120
+ }
11121
+ } else {
11122
+ let err20 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf/1/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11123
+ vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
11124
+ }
11125
+ var _valid0 = _errs10 === errors;
11126
+ if (_valid0 && valid2 ? (valid2 = !1, passing0 = [passing0, 1]) : _valid0 && (valid2 = !0, passing0 = 1, props0 !== !0 && (props0 = !0)), valid2)
11127
+ errors = _errs4, vErrors !== null && (_errs4 ? vErrors.length = _errs4 : vErrors = null);
11128
+ else {
11129
+ let err21 = { instancePath: instancePath + "/swing", schemaPath: "#/$defs/swing/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
11130
+ vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
11131
+ }
11132
+ }
11133
+ 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") {
11134
+ let err22 = { instancePath: instancePath + "/showMetronomeMark", schemaPath: "#/properties/showMetronomeMark/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
11135
+ vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
11136
+ }
11137
+ if (data.showText !== void 0 && typeof data.showText != "boolean") {
11138
+ let err23 = { instancePath: instancePath + "/showText", schemaPath: "#/properties/showText/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
11139
+ vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
11140
+ }
11141
+ if (data.manualOffset !== void 0) {
11142
+ let data9 = data.manualOffset;
11143
+ if (Array.isArray(data9)) {
11144
+ if (data9.length > 2) {
11145
+ let err24 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
11146
+ vErrors === null ? vErrors = [err24] : vErrors.push(err24), errors++;
11147
+ }
11148
+ if (data9.length < 2) {
11149
+ let err25 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
11150
+ vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
11151
+ }
11152
+ let len1 = data9.length;
11153
+ for (let i1 = 0; i1 < len1; i1++)
11154
+ if (typeof data9[i1] != "number") {
11155
+ let err26 = { instancePath: instancePath + "/manualOffset/" + i1, schemaPath: "#/$defs/sp-delta/items/type", keyword: "type", params: { type: "number" }, message: "must be number" };
11156
+ vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
11157
+ }
11158
+ } else {
11159
+ let err27 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/type", keyword: "type", params: { type: "array" }, message: "must be array" };
11160
+ vErrors === null ? vErrors = [err27] : vErrors.push(err27), errors++;
11161
+ }
11162
+ }
11163
+ if (data.avoidCollisions !== void 0 && typeof data.avoidCollisions != "boolean") {
11164
+ let err28 = { instancePath: instancePath + "/avoidCollisions", schemaPath: "#/properties/avoidCollisions/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
11165
+ vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
10541
11166
  }
10542
11167
  } else {
10543
- let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10544
- vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
11168
+ let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11169
+ vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
10545
11170
  }
10546
- return validate427.errors = vErrors, errors === 0;
11171
+ return validate432.errors = vErrors, errors === 0;
10547
11172
  }
10548
- validate427.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10549
- function validate428(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10550
- let vErrors = null, errors = 0, evaluated0 = validate428.evaluated;
10551
- if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11173
+ validate432.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11174
+ var swing = validate434;
11175
+ function validate434(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11176
+ let vErrors = null, errors = 0, evaluated0 = validate434.evaluated;
11177
+ evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
11178
+ let _errs0 = errors, valid0 = !1, passing0 = null, _errs1 = errors;
11179
+ if (data && typeof data == "object" && !Array.isArray(data)) {
11180
+ if (data.mode === void 0) {
11181
+ let err0 = { instancePath, schemaPath: "#/oneOf/0/required", keyword: "required", params: { missingProperty: "mode" }, message: "must have required property 'mode'" };
11182
+ vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
11183
+ }
10552
11184
  for (let key0 in data)
10553
- if (key0 !== "atonal") {
10554
- let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10555
- vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
10556
- }
10557
- if (data.atonal !== void 0) {
10558
- let data0 = data.atonal;
10559
- if (typeof data0 != "boolean") {
10560
- let err1 = { instancePath: instancePath + "/atonal", schemaPath: "#/properties/atonal/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
11185
+ if (key0 !== "mode") {
11186
+ let err1 = { instancePath, schemaPath: "#/oneOf/0/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10561
11187
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10562
11188
  }
10563
- if (data0 !== !0) {
10564
- let err2 = { instancePath: instancePath + "/atonal", schemaPath: "#/properties/atonal/const", keyword: "const", params: { allowedValue: !0 }, message: "must be equal to constant" };
11189
+ if (data.mode !== void 0) {
11190
+ let data0 = data.mode;
11191
+ if (typeof data0 != "string") {
11192
+ let err2 = { instancePath: instancePath + "/mode", schemaPath: "#/oneOf/0/properties/mode/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10565
11193
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10566
11194
  }
11195
+ if (data0 !== "straight") {
11196
+ let err3 = { instancePath: instancePath + "/mode", schemaPath: "#/oneOf/0/properties/mode/const", keyword: "const", params: { allowedValue: "straight" }, message: "must be equal to constant" };
11197
+ vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
11198
+ }
10567
11199
  }
10568
11200
  } else {
10569
- let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10570
- vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
11201
+ let err4 = { instancePath, schemaPath: "#/oneOf/0/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11202
+ vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
10571
11203
  }
10572
- return validate428.errors = vErrors, errors === 0;
10573
- }
10574
- validate428.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10575
- function validate429(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10576
- let vErrors = null, errors = 0, evaluated0 = validate429.evaluated;
10577
- if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10578
- for (let key0 in data)
10579
- if (!(key0 === "text" || key0 === "showMetronomeMark" || key0 === "showText" || key0 === "manualOffset" || key0 === "avoidCollisions")) {
10580
- let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
10581
- vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
11204
+ var _valid0 = _errs1 === errors;
11205
+ if (_valid0) {
11206
+ valid0 = !0, passing0 = 0;
11207
+ var props0 = !0;
11208
+ }
11209
+ let _errs6 = errors;
11210
+ if (data && typeof data == "object" && !Array.isArray(data)) {
11211
+ if (data.mode === void 0) {
11212
+ let err5 = { instancePath, schemaPath: "#/oneOf/1/required", keyword: "required", params: { missingProperty: "mode" }, message: "must have required property 'mode'" };
11213
+ vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
11214
+ }
11215
+ if (data.subdivision === void 0) {
11216
+ let err6 = { instancePath, schemaPath: "#/oneOf/1/required", keyword: "required", params: { missingProperty: "subdivision" }, message: "must have required property 'subdivision'" };
11217
+ vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
11218
+ }
11219
+ if (data.ratio === void 0) {
11220
+ let err7 = { instancePath, schemaPath: "#/oneOf/1/required", keyword: "required", params: { missingProperty: "ratio" }, message: "must have required property 'ratio'" };
11221
+ vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
11222
+ }
11223
+ for (let key1 in data)
11224
+ if (!(key1 === "mode" || key1 === "subdivision" || key1 === "ratio")) {
11225
+ let err8 = { instancePath, schemaPath: "#/oneOf/1/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
11226
+ vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
11227
+ }
11228
+ if (data.mode !== void 0) {
11229
+ let data1 = data.mode;
11230
+ if (typeof data1 != "string") {
11231
+ let err9 = { instancePath: instancePath + "/mode", schemaPath: "#/oneOf/1/properties/mode/type", keyword: "type", params: { type: "string" }, message: "must be string" };
11232
+ vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
11233
+ }
11234
+ if (data1 !== "swing") {
11235
+ let err10 = { instancePath: instancePath + "/mode", schemaPath: "#/oneOf/1/properties/mode/const", keyword: "const", params: { allowedValue: "swing" }, message: "must be equal to constant" };
11236
+ vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
10582
11237
  }
10583
- 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") {
10584
- let err1 = { instancePath: instancePath + "/showMetronomeMark", schemaPath: "#/properties/showMetronomeMark/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10585
- vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10586
11238
  }
10587
- if (data.showText !== void 0 && typeof data.showText != "boolean") {
10588
- let err2 = { instancePath: instancePath + "/showText", schemaPath: "#/properties/showText/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10589
- vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
11239
+ if (data.subdivision !== void 0) {
11240
+ let data2 = data.subdivision;
11241
+ if (typeof data2 != "string") {
11242
+ let err11 = { instancePath: instancePath + "/subdivision", schemaPath: "#/oneOf/1/properties/subdivision/type", keyword: "type", params: { type: "string" }, message: "must be string" };
11243
+ vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
11244
+ }
11245
+ if (!(data2 === "eighth" || data2 === "16th")) {
11246
+ 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" };
11247
+ vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11248
+ }
10590
11249
  }
10591
- if (data.manualOffset !== void 0) {
10592
- let data3 = data.manualOffset;
11250
+ if (data.ratio !== void 0) {
11251
+ let data3 = data.ratio;
10593
11252
  if (Array.isArray(data3)) {
10594
11253
  if (data3.length > 2) {
10595
- let err3 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
10596
- vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
11254
+ let err13 = { instancePath: instancePath + "/ratio", schemaPath: "#/oneOf/1/properties/ratio/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
11255
+ vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
10597
11256
  }
10598
11257
  if (data3.length < 2) {
10599
- let err4 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
10600
- vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
11258
+ let err14 = { instancePath: instancePath + "/ratio", schemaPath: "#/oneOf/1/properties/ratio/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
11259
+ vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
10601
11260
  }
10602
11261
  let len0 = data3.length;
10603
- for (let i0 = 0; i0 < len0; i0++)
10604
- if (typeof data3[i0] != "number") {
10605
- let err5 = { instancePath: instancePath + "/manualOffset/" + i0, schemaPath: "#/$defs/sp-delta/items/type", keyword: "type", params: { type: "number" }, message: "must be number" };
10606
- vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
11262
+ for (let i0 = 0; i0 < len0; i0++) {
11263
+ let data4 = data3[i0];
11264
+ if (!(typeof data4 == "number" && !(data4 % 1) && !isNaN(data4))) {
11265
+ let err15 = { instancePath: instancePath + "/ratio/" + i0, schemaPath: "#/oneOf/1/properties/ratio/items/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
11266
+ vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
11267
+ }
11268
+ if (typeof data4 == "number") {
11269
+ if (data4 > 9007199254740991 || isNaN(data4)) {
11270
+ let err16 = { instancePath: instancePath + "/ratio/" + i0, schemaPath: "#/oneOf/1/properties/ratio/items/maximum", keyword: "maximum", params: { comparison: "<=", limit: 9007199254740991 }, message: "must be <= 9007199254740991" };
11271
+ vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
11272
+ }
11273
+ if (data4 < 1 || isNaN(data4)) {
11274
+ let err17 = { instancePath: instancePath + "/ratio/" + i0, schemaPath: "#/oneOf/1/properties/ratio/items/minimum", keyword: "minimum", params: { comparison: ">=", limit: 1 }, message: "must be >= 1" };
11275
+ vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
11276
+ }
10607
11277
  }
11278
+ }
10608
11279
  } else {
10609
- let err6 = { instancePath: instancePath + "/manualOffset", schemaPath: "#/$defs/sp-delta/type", keyword: "type", params: { type: "array" }, message: "must be array" };
10610
- vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
11280
+ let err18 = { instancePath: instancePath + "/ratio", schemaPath: "#/oneOf/1/properties/ratio/type", keyword: "type", params: { type: "array" }, message: "must be array" };
11281
+ vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
10611
11282
  }
10612
11283
  }
10613
- if (data.avoidCollisions !== void 0 && typeof data.avoidCollisions != "boolean") {
10614
- let err7 = { instancePath: instancePath + "/avoidCollisions", schemaPath: "#/properties/avoidCollisions/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
10615
- vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
10616
- }
10617
11284
  } else {
10618
- let err8 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10619
- vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
11285
+ let err19 = { instancePath, schemaPath: "#/oneOf/1/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11286
+ vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
11287
+ }
11288
+ var _valid0 = _errs6 === errors;
11289
+ if (_valid0 && valid0 ? (valid0 = !1, passing0 = [passing0, 1]) : _valid0 && (valid0 = !0, passing0 = 1, props0 !== !0 && (props0 = !0)), valid0)
11290
+ errors = _errs0, vErrors !== null && (_errs0 ? vErrors.length = _errs0 : vErrors = null);
11291
+ else {
11292
+ let err20 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
11293
+ vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
10620
11294
  }
10621
- return validate429.errors = vErrors, errors === 0;
11295
+ return validate434.errors = vErrors, evaluated0.props = props0, errors === 0;
10622
11296
  }
10623
- validate429.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10624
- var schema407 = { 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 };
10625
- function validate432(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10626
- let vErrors = null, errors = 0, evaluated0 = validate432.evaluated;
11297
+ validate434.evaluated = { dynamicProps: !0, dynamicItems: !1 };
11298
+ 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 };
11299
+ function validate436(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11300
+ let vErrors = null, errors = 0, evaluated0 = validate436.evaluated;
10627
11301
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10628
11302
  if (data.instrumentId === void 0) {
10629
11303
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "instrumentId" }, message: "must have required property 'instrumentId'" };
@@ -10738,11 +11412,11 @@ function validate432(data, { instancePath = "", parentData, parentDataProperty,
10738
11412
  let err20 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10739
11413
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
10740
11414
  }
10741
- return validate432.errors = vErrors, errors === 0;
11415
+ return validate436.errors = vErrors, errors === 0;
10742
11416
  }
10743
- validate432.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10744
- function validate431(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10745
- let vErrors = null, errors = 0, evaluated0 = validate431.evaluated;
11417
+ validate436.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11418
+ function validate435(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11419
+ let vErrors = null, errors = 0, evaluated0 = validate435.evaluated;
10746
11420
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10747
11421
  for (let key0 in data)
10748
11422
  if (!(key0 === "instrumentId" || key0 === "instruments" || key0 === "initialInstrument" || key0 === "midiProgram" || key0 === "family" || key0 === "spatial" || key0 === "chordSymbolVisibility")) {
@@ -10761,7 +11435,7 @@ function validate431(data, { instancePath = "", parentData, parentDataProperty,
10761
11435
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10762
11436
  }
10763
11437
  for (let key1 in data1)
10764
- validate432(data1[key1], { instancePath: instancePath + "/instruments/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), parentData: data1, parentDataProperty: key1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate432.errors : vErrors.concat(validate432.errors), errors = vErrors.length);
11438
+ 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);
10765
11439
  } else {
10766
11440
  let err3 = { instancePath: instancePath + "/instruments", schemaPath: "#/properties/instruments/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10767
11441
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
@@ -10836,7 +11510,7 @@ function validate431(data, { instancePath = "", parentData, parentDataProperty,
10836
11510
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
10837
11511
  }
10838
11512
  if (!(data9 === "auto" || data9 === "show" || data9 === "hide")) {
10839
- let err17 = { instancePath: instancePath + "/chordSymbolVisibility", schemaPath: "#/properties/chordSymbolVisibility/enum", keyword: "enum", params: { allowedValues: schema407.properties.chordSymbolVisibility.enum }, message: "must be equal to one of the allowed values" };
11513
+ 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" };
10840
11514
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
10841
11515
  }
10842
11516
  }
@@ -10844,12 +11518,12 @@ function validate431(data, { instancePath = "", parentData, parentDataProperty,
10844
11518
  let err18 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10845
11519
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
10846
11520
  }
10847
- return validate431.errors = vErrors, errors === 0;
11521
+ return validate435.errors = vErrors, errors === 0;
10848
11522
  }
10849
- validate431.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10850
- var schema412 = { 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)." };
10851
- function validate434(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10852
- let vErrors = null, errors = 0, evaluated0 = validate434.evaluated;
11523
+ validate435.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11524
+ 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)." };
11525
+ function validate438(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11526
+ let vErrors = null, errors = 0, evaluated0 = validate438.evaluated;
10853
11527
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10854
11528
  for (let key0 in data)
10855
11529
  if (!(key0 === "notehead" || key0 === "drumKit")) {
@@ -10863,7 +11537,7 @@ function validate434(data, { instancePath = "", parentData, parentDataProperty,
10863
11537
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
10864
11538
  }
10865
11539
  if (!(data0 === "normal" || data0 === "x" || data0 === "circleX" || data0 === "diamond" || data0 === "slash" || data0 === "triangleUp" || data0 === "triangleDown")) {
10866
- let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema412.enum }, message: "must be equal to one of the allowed values" };
11540
+ 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" };
10867
11541
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
10868
11542
  }
10869
11543
  }
@@ -10888,13 +11562,13 @@ function validate434(data, { instancePath = "", parentData, parentDataProperty,
10888
11562
  let err6 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10889
11563
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
10890
11564
  }
10891
- return validate434.errors = vErrors, errors === 0;
11565
+ return validate438.errors = vErrors, errors === 0;
10892
11566
  }
10893
- validate434.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
10894
- var schema413 = { 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 };
10895
- var schema415 = { type: "string", enum: ["sustain", "sostenuto", "una-corda"], description: "Piano pedal type." }, schema417 = { type: "string", enum: ["text", "bracket"], description: "Pedal marking display style. 'text' shows Ped/*, 'bracket' shows a horizontal line with hooks." };
10896
- function validate436(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
10897
- let vErrors = null, errors = 0, evaluated0 = validate436.evaluated;
11567
+ validate438.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11568
+ 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 };
11569
+ 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." };
11570
+ function validate440(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11571
+ let vErrors = null, errors = 0, evaluated0 = validate440.evaluated;
10898
11572
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
10899
11573
  if (data.type === void 0) {
10900
11574
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "type" }, message: "must have required property 'type'" };
@@ -10920,7 +11594,7 @@ function validate436(data, { instancePath = "", parentData, parentDataProperty,
10920
11594
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
10921
11595
  }
10922
11596
  if (!(data0 === "sustain" || data0 === "sostenuto" || data0 === "una-corda")) {
10923
- let err5 = { instancePath: instancePath + "/type", schemaPath: "#/$defs/pedal-type/enum", keyword: "enum", params: { allowedValues: schema415.enum }, message: "must be equal to one of the allowed values" };
11597
+ 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" };
10924
11598
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
10925
11599
  }
10926
11600
  }
@@ -10965,14 +11639,14 @@ function validate436(data, { instancePath = "", parentData, parentDataProperty,
10965
11639
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
10966
11640
  }
10967
11641
  }
10968
- if (data.end !== void 0 && (validate422(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate422.errors : vErrors.concat(validate422.errors), errors = vErrors.length)), data.style !== void 0) {
11642
+ 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) {
10969
11643
  let data5 = data.style;
10970
11644
  if (typeof data5 != "string") {
10971
11645
  let err13 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/type", keyword: "type", params: { type: "string" }, message: "must be string" };
10972
11646
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
10973
11647
  }
10974
11648
  if (!(data5 === "text" || data5 === "bracket")) {
10975
- let err14 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/enum", keyword: "enum", params: { allowedValues: schema417.enum }, message: "must be equal to one of the allowed values" };
11649
+ 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" };
10976
11650
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
10977
11651
  }
10978
11652
  }
@@ -10995,13 +11669,13 @@ function validate436(data, { instancePath = "", parentData, parentDataProperty,
10995
11669
  let err18 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
10996
11670
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
10997
11671
  }
10998
- return validate436.errors = vErrors, errors === 0;
11672
+ return validate440.errors = vErrors, errors === 0;
10999
11673
  }
11000
- validate436.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11001
- var schema418 = { 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 };
11002
- var schema422 = { 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 };
11003
- function validate441(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11004
- let vErrors = null, errors = 0, evaluated0 = validate441.evaluated;
11674
+ validate440.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11675
+ 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 };
11676
+ 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 };
11677
+ function validate445(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11678
+ let vErrors = null, errors = 0, evaluated0 = validate445.evaluated;
11005
11679
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11006
11680
  if (data.id === void 0) {
11007
11681
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -11211,7 +11885,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
11211
11885
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
11212
11886
  }
11213
11887
  if (!(data11 === "top" || data11 === "right" || data11 === "bottom" || data11 === "left" || data11 === "top-left" || data11 === "top-right" || data11 === "bottom-right" || data11 === "bottom-left")) {
11214
- let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema422.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
11888
+ 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" };
11215
11889
  vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
11216
11890
  }
11217
11891
  }
@@ -11382,11 +12056,11 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
11382
12056
  let err69 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11383
12057
  vErrors === null ? vErrors = [err69] : vErrors.push(err69), errors++;
11384
12058
  }
11385
- return validate441.errors = vErrors, errors === 0;
12059
+ return validate445.errors = vErrors, errors === 0;
11386
12060
  }
11387
- validate441.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11388
- function validate439(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11389
- let vErrors = null, errors = 0, evaluated0 = validate439.evaluated;
12061
+ validate445.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12062
+ function validate443(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12063
+ let vErrors = null, errors = 0, evaluated0 = validate443.evaluated;
11390
12064
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11391
12065
  if (data.text === void 0) {
11392
12066
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
@@ -11397,7 +12071,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11397
12071
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
11398
12072
  }
11399
12073
  for (let key0 in data)
11400
- if (!func1.call(schema418.properties, key0)) {
12074
+ if (!func1.call(schema423.properties, key0)) {
11401
12075
  let err2 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
11402
12076
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
11403
12077
  }
@@ -11453,7 +12127,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11453
12127
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
11454
12128
  }
11455
12129
  if (!(data5 === "left" || data5 === "center" || data5 === "right")) {
11456
- let err12 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema389.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
12130
+ 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" };
11457
12131
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11458
12132
  }
11459
12133
  }
@@ -11464,7 +12138,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11464
12138
  vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
11465
12139
  }
11466
12140
  if (!(data6 === "left" || data6 === "center" || data6 === "right" || data6 === "justify")) {
11467
- let err14 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema389.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
12141
+ 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" };
11468
12142
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
11469
12143
  }
11470
12144
  }
@@ -11487,7 +12161,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11487
12161
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
11488
12162
  }
11489
12163
  if (!(data8 === "none" || data8 === "solid")) {
11490
- let err18 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema389.properties.border.enum }, message: "must be equal to one of the allowed values" };
12164
+ 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" };
11491
12165
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
11492
12166
  }
11493
12167
  }
@@ -11500,7 +12174,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11500
12174
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
11501
12175
  }
11502
12176
  }
11503
- if (data.pagePosition !== void 0 && (validate441(data.pagePosition, { instancePath: instancePath + "/pagePosition", parentData: data, parentDataProperty: "pagePosition", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate441.errors : vErrors.concat(validate441.errors), errors = vErrors.length)), data.position !== void 0) {
12177
+ 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) {
11504
12178
  let data11 = data.position;
11505
12179
  if (data11 && typeof data11 == "object" && !Array.isArray(data11)) {
11506
12180
  if (data11.fraction === void 0) {
@@ -11548,7 +12222,7 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11548
12222
  vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
11549
12223
  }
11550
12224
  if (!(data14 === "below" || data14 === "above")) {
11551
- let err29 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema391.enum }, message: "must be equal to one of the allowed values" };
12225
+ 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" };
11552
12226
  vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
11553
12227
  }
11554
12228
  }
@@ -11597,11 +12271,11 @@ function validate439(data, { instancePath = "", parentData, parentDataProperty,
11597
12271
  let err38 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11598
12272
  vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
11599
12273
  }
11600
- return validate439.errors = vErrors, errors === 0;
12274
+ return validate443.errors = vErrors, errors === 0;
11601
12275
  }
11602
- validate439.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11603
- function validate444(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11604
- let vErrors = null, errors = 0, evaluated0 = validate444.evaluated;
12276
+ validate443.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12277
+ function validate448(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12278
+ let vErrors = null, errors = 0, evaluated0 = validate448.evaluated;
11605
12279
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11606
12280
  if (data.staff === void 0) {
11607
12281
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "staff" }, message: "must have required property 'staff'" };
@@ -11642,12 +12316,12 @@ function validate444(data, { instancePath = "", parentData, parentDataProperty,
11642
12316
  let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11643
12317
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
11644
12318
  }
11645
- return validate444.errors = vErrors, errors === 0;
12319
+ return validate448.errors = vErrors, errors === 0;
11646
12320
  }
11647
- validate444.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11648
- var schema432 = { 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 }, schema433 = { 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." };
11649
- function validate447(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11650
- let vErrors = null, errors = 0, evaluated0 = validate447.evaluated;
12321
+ validate448.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12322
+ 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." };
12323
+ function validate451(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12324
+ let vErrors = null, errors = 0, evaluated0 = validate451.evaluated;
11651
12325
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11652
12326
  if (data.staff === void 0) {
11653
12327
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "staff" }, message: "must have required property 'staff'" };
@@ -11711,7 +12385,7 @@ function validate447(data, { instancePath = "", parentData, parentDataProperty,
11711
12385
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
11712
12386
  }
11713
12387
  if (!(data3 === 1 || data3 === 2 || data3 === 4 || data3 === 8 || data3 === 16 || data3 === 32 || data3 === 64 || data3 === 128)) {
11714
- let err12 = { instancePath: instancePath + "/meter/unit", schemaPath: "#/$defs/staff-meter/properties/unit/enum", keyword: "enum", params: { allowedValues: schema432.properties.unit.enum }, message: "must be equal to one of the allowed values" };
12388
+ 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" };
11715
12389
  vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
11716
12390
  }
11717
12391
  }
@@ -11751,7 +12425,7 @@ function validate447(data, { instancePath = "", parentData, parentDataProperty,
11751
12425
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
11752
12426
  }
11753
12427
  if (!(data6 === "sharedDuration" || data6 === "fitMeasure")) {
11754
- let err19 = { instancePath: instancePath + "/synchronization", schemaPath: "#/$defs/staff-meter-synchronization/enum", keyword: "enum", params: { allowedValues: schema433.enum }, message: "must be equal to one of the allowed values" };
12428
+ 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" };
11755
12429
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
11756
12430
  }
11757
12431
  }
@@ -11759,14 +12433,14 @@ function validate447(data, { instancePath = "", parentData, parentDataProperty,
11759
12433
  let err20 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11760
12434
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
11761
12435
  }
11762
- return validate447.errors = vErrors, errors === 0;
12436
+ return validate451.errors = vErrors, errors === 0;
11763
12437
  }
11764
- validate447.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11765
- function validate446(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11766
- let vErrors = null, errors = 0, evaluated0 = validate446.evaluated;
12438
+ validate451.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12439
+ function validate450(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12440
+ let vErrors = null, errors = 0, evaluated0 = validate450.evaluated;
11767
12441
  evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
11768
12442
  let _errs0 = errors, valid0 = !1, passing0 = null, _errs1 = errors;
11769
- validate447(data, { instancePath, parentData, parentDataProperty, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate447.errors : vErrors.concat(validate447.errors), errors = vErrors.length);
12443
+ validate451(data, { instancePath, parentData, parentDataProperty, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate451.errors : vErrors.concat(validate451.errors), errors = vErrors.length);
11770
12444
  var _valid0 = _errs1 === errors;
11771
12445
  if (_valid0) {
11772
12446
  valid0 = !0, passing0 = 0;
@@ -11820,11 +12494,11 @@ function validate446(data, { instancePath = "", parentData, parentDataProperty,
11820
12494
  let err8 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
11821
12495
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
11822
12496
  }
11823
- return validate446.errors = vErrors, evaluated0.props = props0, errors === 0;
12497
+ return validate450.errors = vErrors, evaluated0.props = props0, errors === 0;
11824
12498
  }
11825
- validate446.evaluated = { dynamicProps: !0, dynamicItems: !1 };
11826
- function validate450(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
11827
- let vErrors = null, errors = 0, evaluated0 = validate450.evaluated;
12499
+ validate450.evaluated = { dynamicProps: !0, dynamicItems: !1 };
12500
+ function validate454(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12501
+ let vErrors = null, errors = 0, evaluated0 = validate454.evaluated;
11828
12502
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
11829
12503
  for (let key0 in data)
11830
12504
  if (!(key0 === "position" || key0 === "instrument" || key0 === "transposition" || key0 === "instruction" || key0 === "reminder")) {
@@ -11993,11 +12667,11 @@ function validate450(data, { instancePath = "", parentData, parentDataProperty,
11993
12667
  let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
11994
12668
  vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
11995
12669
  }
11996
- return validate450.errors = vErrors, errors === 0;
12670
+ return validate454.errors = vErrors, errors === 0;
11997
12671
  }
11998
- validate450.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
11999
- function validate435(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12000
- let vErrors = null, errors = 0, evaluated0 = validate435.evaluated;
12672
+ validate454.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12673
+ function validate439(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12674
+ let vErrors = null, errors = 0, evaluated0 = validate439.evaluated;
12001
12675
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12002
12676
  for (let key0 in data)
12003
12677
  if (!(key0 === "pedals" || key0 === "expressions" || key0 === "condensingOverride" || key0 === "groupingDisplayOverrides" || key0 === "staffMeters" || key0 === "instrumentChanges")) {
@@ -12009,7 +12683,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12009
12683
  if (Array.isArray(data0)) {
12010
12684
  let len0 = data0.length;
12011
12685
  for (let i0 = 0; i0 < len0; i0++)
12012
- validate436(data0[i0], { instancePath: instancePath + "/pedals/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate436.errors : vErrors.concat(validate436.errors), errors = vErrors.length);
12686
+ 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);
12013
12687
  } else {
12014
12688
  let err1 = { instancePath: instancePath + "/pedals", schemaPath: "#/properties/pedals/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12015
12689
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
@@ -12020,7 +12694,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12020
12694
  if (Array.isArray(data2)) {
12021
12695
  let len1 = data2.length;
12022
12696
  for (let i1 = 0; i1 < len1; i1++)
12023
- validate439(data2[i1], { instancePath: instancePath + "/expressions/" + i1, parentData: data2, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate439.errors : vErrors.concat(validate439.errors), errors = vErrors.length);
12697
+ 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);
12024
12698
  } else {
12025
12699
  let err2 = { instancePath: instancePath + "/expressions", schemaPath: "#/properties/expressions/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12026
12700
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
@@ -12033,7 +12707,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12033
12707
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12034
12708
  }
12035
12709
  if (!(data4 === "unison" || data4 === "solo1" || data4 === "solo2" || data4 === "amalgamate" || data4 === "divisi")) {
12036
- let err4 = { instancePath: instancePath + "/condensingOverride", schemaPath: "#/properties/condensingOverride/enum", keyword: "enum", params: { allowedValues: schema413.properties.condensingOverride.enum }, message: "must be equal to one of the allowed values" };
12710
+ 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" };
12037
12711
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
12038
12712
  }
12039
12713
  }
@@ -12042,7 +12716,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12042
12716
  if (Array.isArray(data5)) {
12043
12717
  let len2 = data5.length;
12044
12718
  for (let i2 = 0; i2 < len2; i2++)
12045
- validate444(data5[i2], { instancePath: instancePath + "/groupingDisplayOverrides/" + i2, parentData: data5, parentDataProperty: i2, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate444.errors : vErrors.concat(validate444.errors), errors = vErrors.length);
12719
+ 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);
12046
12720
  } else {
12047
12721
  let err5 = { instancePath: instancePath + "/groupingDisplayOverrides", schemaPath: "#/properties/groupingDisplayOverrides/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12048
12722
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
@@ -12053,7 +12727,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12053
12727
  if (Array.isArray(data7)) {
12054
12728
  let len3 = data7.length;
12055
12729
  for (let i3 = 0; i3 < len3; i3++)
12056
- validate446(data7[i3], { instancePath: instancePath + "/staffMeters/" + i3, parentData: data7, parentDataProperty: i3, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate446.errors : vErrors.concat(validate446.errors), errors = vErrors.length);
12730
+ 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);
12057
12731
  } else {
12058
12732
  let err6 = { instancePath: instancePath + "/staffMeters", schemaPath: "#/properties/staffMeters/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12059
12733
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
@@ -12064,7 +12738,7 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12064
12738
  if (Array.isArray(data9)) {
12065
12739
  let len4 = data9.length;
12066
12740
  for (let i4 = 0; i4 < len4; i4++)
12067
- validate450(data9[i4], { instancePath: instancePath + "/instrumentChanges/" + i4, parentData: data9, parentDataProperty: i4, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate450.errors : vErrors.concat(validate450.errors), errors = vErrors.length);
12741
+ 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);
12068
12742
  } else {
12069
12743
  let err7 = { instancePath: instancePath + "/instrumentChanges", schemaPath: "#/properties/instrumentChanges/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12070
12744
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
@@ -12074,12 +12748,12 @@ function validate435(data, { instancePath = "", parentData, parentDataProperty,
12074
12748
  let err8 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12075
12749
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
12076
12750
  }
12077
- return validate435.errors = vErrors, errors === 0;
12751
+ return validate439.errors = vErrors, errors === 0;
12078
12752
  }
12079
- validate435.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12080
- var schema441 = { 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 };
12081
- function validate452(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12082
- let vErrors = null, errors = 0, evaluated0 = validate452.evaluated;
12753
+ validate439.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12754
+ 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 };
12755
+ function validate456(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12756
+ let vErrors = null, errors = 0, evaluated0 = validate456.evaluated;
12083
12757
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12084
12758
  for (let key0 in data)
12085
12759
  if (key0 !== "span") {
@@ -12121,7 +12795,7 @@ function validate452(data, { instancePath = "", parentData, parentDataProperty,
12121
12795
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12122
12796
  }
12123
12797
  if (!(data2 === "start" || data2 === "continue" || data2 === "stop")) {
12124
- let err7 = { instancePath: instancePath + "/span/type", schemaPath: "#/$defs/tuplet-span/properties/type/enum", keyword: "enum", params: { allowedValues: schema441.properties.type.enum }, message: "must be equal to one of the allowed values" };
12798
+ 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" };
12125
12799
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
12126
12800
  }
12127
12801
  }
@@ -12134,11 +12808,11 @@ function validate452(data, { instancePath = "", parentData, parentDataProperty,
12134
12808
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12135
12809
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
12136
12810
  }
12137
- return validate452.errors = vErrors, errors === 0;
12811
+ return validate456.errors = vErrors, errors === 0;
12138
12812
  }
12139
- validate452.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12140
- function validate453(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12141
- let vErrors = null, errors = 0, evaluated0 = validate453.evaluated;
12813
+ validate456.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12814
+ function validate457(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12815
+ let vErrors = null, errors = 0, evaluated0 = validate457.evaluated;
12142
12816
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12143
12817
  for (let key0 in data)
12144
12818
  if (key0 !== "staffLineRangeRestore") {
@@ -12153,11 +12827,11 @@ function validate453(data, { instancePath = "", parentData, parentDataProperty,
12153
12827
  let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12154
12828
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12155
12829
  }
12156
- return validate453.errors = vErrors, errors === 0;
12830
+ return validate457.errors = vErrors, errors === 0;
12157
12831
  }
12158
- validate453.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12159
- function validate454(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12160
- let vErrors = null, errors = 0, evaluated0 = validate454.evaluated;
12832
+ validate457.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12833
+ function validate458(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12834
+ let vErrors = null, errors = 0, evaluated0 = validate458.evaluated;
12161
12835
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12162
12836
  for (let key0 in data)
12163
12837
  if (!(key0 === "manualOffset" || key0 === "avoidCollisions")) {
@@ -12194,12 +12868,12 @@ function validate454(data, { instancePath = "", parentData, parentDataProperty,
12194
12868
  let err6 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12195
12869
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12196
12870
  }
12197
- return validate454.errors = vErrors, errors === 0;
12871
+ return validate458.errors = vErrors, errors === 0;
12198
12872
  }
12199
- validate454.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12200
- var schema447 = { type: "string", enum: ["glissando", "portamento"], description: "Semantic kind of a glissando-family line." }, schema448 = { type: "string", enum: ["straight", "wavy"], description: "Glissando/portamento line style." };
12201
- function validate456(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12202
- let vErrors = null, errors = 0, evaluated0 = validate456.evaluated;
12873
+ validate458.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12874
+ 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." };
12875
+ function validate460(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12876
+ let vErrors = null, errors = 0, evaluated0 = validate460.evaluated;
12203
12877
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12204
12878
  if (data.target === void 0) {
12205
12879
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "target" }, message: "must have required property 'target'" };
@@ -12221,7 +12895,7 @@ function validate456(data, { instancePath = "", parentData, parentDataProperty,
12221
12895
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12222
12896
  }
12223
12897
  if (!(data1 === "glissando" || data1 === "portamento")) {
12224
- let err4 = { instancePath: instancePath + "/kind", schemaPath: "#/$defs/glissando-kind/enum", keyword: "enum", params: { allowedValues: schema447.enum }, message: "must be equal to one of the allowed values" };
12898
+ 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" };
12225
12899
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
12226
12900
  }
12227
12901
  }
@@ -12232,7 +12906,7 @@ function validate456(data, { instancePath = "", parentData, parentDataProperty,
12232
12906
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
12233
12907
  }
12234
12908
  if (!(data2 === "straight" || data2 === "wavy")) {
12235
- let err6 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/glissando-style/enum", keyword: "enum", params: { allowedValues: schema448.enum }, message: "must be equal to one of the allowed values" };
12909
+ 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" };
12236
12910
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12237
12911
  }
12238
12912
  }
@@ -12248,11 +12922,11 @@ function validate456(data, { instancePath = "", parentData, parentDataProperty,
12248
12922
  let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12249
12923
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
12250
12924
  }
12251
- return validate456.errors = vErrors, errors === 0;
12925
+ return validate460.errors = vErrors, errors === 0;
12252
12926
  }
12253
- validate456.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12254
- function validate455(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12255
- let vErrors = null, errors = 0, evaluated0 = validate455.evaluated;
12927
+ validate460.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12928
+ function validate459(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12929
+ let vErrors = null, errors = 0, evaluated0 = validate459.evaluated;
12256
12930
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12257
12931
  for (let key0 in data)
12258
12932
  if (key0 !== "glissandos") {
@@ -12264,7 +12938,7 @@ function validate455(data, { instancePath = "", parentData, parentDataProperty,
12264
12938
  if (Array.isArray(data0)) {
12265
12939
  let len0 = data0.length;
12266
12940
  for (let i0 = 0; i0 < len0; i0++)
12267
- validate456(data0[i0], { instancePath: instancePath + "/glissandos/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate456.errors : vErrors.concat(validate456.errors), errors = vErrors.length);
12941
+ 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);
12268
12942
  } else {
12269
12943
  let err1 = { instancePath: instancePath + "/glissandos", schemaPath: "#/properties/glissandos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
12270
12944
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
@@ -12274,13 +12948,13 @@ function validate455(data, { instancePath = "", parentData, parentDataProperty,
12274
12948
  let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12275
12949
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12276
12950
  }
12277
- return validate455.errors = vErrors, errors === 0;
12951
+ return validate459.errors = vErrors, errors === 0;
12278
12952
  }
12279
- validate455.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12280
- var schema449 = { 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 }, schema452 = { type: "string", enum: ["turn", "invertedTurn", "mordent", "invertedMordent", "shortTrill", "trillMordent", "delayedTurn", "schleifer"], description: "Ornament type. Each maps to a SMuFL ornament glyph." };
12281
- var schema454 = { 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 }, schema450 = { 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 }, schema451 = { 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 };
12282
- function validate459(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12283
- let vErrors = null, errors = 0, evaluated0 = validate459.evaluated;
12953
+ validate459.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12954
+ 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." };
12955
+ 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 };
12956
+ function validate463(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12957
+ let vErrors = null, errors = 0, evaluated0 = validate463.evaluated;
12284
12958
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12285
12959
  for (let key0 in data)
12286
12960
  if (!(key0 === "accidental" || key0 === "showSymbol" || key0 === "extension")) {
@@ -12294,7 +12968,7 @@ function validate459(data, { instancePath = "", parentData, parentDataProperty,
12294
12968
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
12295
12969
  }
12296
12970
  if (!(data0 === -1 || data0 === 0 || data0 === 1)) {
12297
- let err2 = { instancePath: instancePath + "/accidental", schemaPath: "#/properties/accidental/enum", keyword: "enum", params: { allowedValues: schema450.properties.accidental.enum }, message: "must be equal to one of the allowed values" };
12971
+ 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" };
12298
12972
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12299
12973
  }
12300
12974
  }
@@ -12325,7 +12999,7 @@ function validate459(data, { instancePath = "", parentData, parentDataProperty,
12325
12999
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
12326
13000
  }
12327
13001
  if (!(data4 === "start" || data4 === "end")) {
12328
- let err8 = { instancePath: instancePath + "/extension/targetEdge", schemaPath: "#/$defs/trill-extension/properties/targetEdge/enum", keyword: "enum", params: { allowedValues: schema451.properties.targetEdge.enum }, message: "must be equal to one of the allowed values" };
13002
+ 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" };
12329
13003
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
12330
13004
  }
12331
13005
  }
@@ -12338,11 +13012,11 @@ function validate459(data, { instancePath = "", parentData, parentDataProperty,
12338
13012
  let err10 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12339
13013
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
12340
13014
  }
12341
- return validate459.errors = vErrors, errors === 0;
13015
+ return validate463.errors = vErrors, errors === 0;
12342
13016
  }
12343
- validate459.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12344
- function validate458(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12345
- let vErrors = null, errors = 0, evaluated0 = validate458.evaluated;
13017
+ validate463.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13018
+ function validate462(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13019
+ let vErrors = null, errors = 0, evaluated0 = validate462.evaluated;
12346
13020
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12347
13021
  for (let key0 in data)
12348
13022
  if (!(key0 === "staccatissimoWedge" || key0 === "trill" || key0 === "ornaments" || key0 === "fingerings" || key0 === "arpeggio")) {
@@ -12364,7 +13038,7 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
12364
13038
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12365
13039
  }
12366
13040
  if (!(data1 === "above" || data1 === "below" || data1 === "auto")) {
12367
- let err3 = { instancePath: instancePath + "/staccatissimoWedge/placement", schemaPath: "#/properties/staccatissimoWedge/properties/placement/enum", keyword: "enum", params: { allowedValues: schema449.properties.staccatissimoWedge.properties.placement.enum }, message: "must be equal to one of the allowed values" };
13041
+ 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" };
12368
13042
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12369
13043
  }
12370
13044
  }
@@ -12373,7 +13047,7 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
12373
13047
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
12374
13048
  }
12375
13049
  }
12376
- if (data.trill !== void 0 && (validate459(data.trill, { instancePath: instancePath + "/trill", parentData: data, parentDataProperty: "trill", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate459.errors : vErrors.concat(validate459.errors), errors = vErrors.length)), data.ornaments !== void 0) {
13050
+ 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) {
12377
13051
  let data3 = data.ornaments;
12378
13052
  if (Array.isArray(data3)) {
12379
13053
  let len0 = data3.length;
@@ -12384,7 +13058,7 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
12384
13058
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
12385
13059
  }
12386
13060
  if (!(data4 === "turn" || data4 === "invertedTurn" || data4 === "mordent" || data4 === "invertedMordent" || data4 === "shortTrill" || data4 === "trillMordent" || data4 === "delayedTurn" || data4 === "schleifer")) {
12387
- let err6 = { instancePath: instancePath + "/ornaments/" + i0, schemaPath: "#/$defs/ornament-type/enum", keyword: "enum", params: { allowedValues: schema452.enum }, message: "must be equal to one of the allowed values" };
13061
+ 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" };
12388
13062
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12389
13063
  }
12390
13064
  }
@@ -12451,7 +13125,7 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
12451
13125
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
12452
13126
  }
12453
13127
  if (!(data9 === "up" || data9 === "down" || data9 === "auto")) {
12454
- let err17 = { instancePath: instancePath + "/arpeggio/direction", schemaPath: "#/$defs/arpeggio/properties/direction/enum", keyword: "enum", params: { allowedValues: schema454.properties.direction.enum }, message: "must be equal to one of the allowed values" };
13128
+ 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" };
12455
13129
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
12456
13130
  }
12457
13131
  }
@@ -12464,11 +13138,11 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
12464
13138
  let err19 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12465
13139
  vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
12466
13140
  }
12467
- return validate458.errors = vErrors, errors === 0;
13141
+ return validate462.errors = vErrors, errors === 0;
12468
13142
  }
12469
- validate458.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12470
- function validate461(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12471
- let vErrors = null, errors = 0, evaluated0 = validate461.evaluated;
13143
+ validate462.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13144
+ function validate465(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13145
+ let vErrors = null, errors = 0, evaluated0 = validate465.evaluated;
12472
13146
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12473
13147
  for (let key0 in data)
12474
13148
  if (key0 !== "notehead") {
@@ -12482,7 +13156,7 @@ function validate461(data, { instancePath = "", parentData, parentDataProperty,
12482
13156
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
12483
13157
  }
12484
13158
  if (!(data0 === "normal" || data0 === "x" || data0 === "circleX" || data0 === "diamond" || data0 === "slash" || data0 === "triangleUp" || data0 === "triangleDown")) {
12485
- let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema412.enum }, message: "must be equal to one of the allowed values" };
13159
+ 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" };
12486
13160
  vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
12487
13161
  }
12488
13162
  }
@@ -12490,11 +13164,11 @@ function validate461(data, { instancePath = "", parentData, parentDataProperty,
12490
13164
  let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12491
13165
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12492
13166
  }
12493
- return validate461.errors = vErrors, errors === 0;
13167
+ return validate465.errors = vErrors, errors === 0;
12494
13168
  }
12495
- validate461.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12496
- function validate463(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12497
- let vErrors = null, errors = 0, evaluated0 = validate463.evaluated;
13169
+ validate465.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13170
+ function validate467(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13171
+ let vErrors = null, errors = 0, evaluated0 = validate467.evaluated;
12498
13172
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12499
13173
  for (let key0 in data)
12500
13174
  if (!(key0 === "p0" || key0 === "p1" || key0 === "p2" || key0 === "p3")) {
@@ -12593,27 +13267,27 @@ function validate463(data, { instancePath = "", parentData, parentDataProperty,
12593
13267
  let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12594
13268
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
12595
13269
  }
12596
- return validate463.errors = vErrors, errors === 0;
13270
+ return validate467.errors = vErrors, errors === 0;
12597
13271
  }
12598
- validate463.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12599
- function validate462(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12600
- let vErrors = null, errors = 0, evaluated0 = validate462.evaluated;
13272
+ validate467.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13273
+ function validate466(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13274
+ let vErrors = null, errors = 0, evaluated0 = validate466.evaluated;
12601
13275
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12602
13276
  for (let key0 in data)
12603
13277
  if (key0 !== "shape") {
12604
13278
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
12605
13279
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
12606
13280
  }
12607
- data.shape !== void 0 && (validate463(data.shape, { instancePath: instancePath + "/shape", parentData: data, parentDataProperty: "shape", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate463.errors : vErrors.concat(validate463.errors), errors = vErrors.length));
13281
+ 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));
12608
13282
  } else {
12609
13283
  let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12610
13284
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
12611
13285
  }
12612
- return validate462.errors = vErrors, errors === 0;
13286
+ return validate466.errors = vErrors, errors === 0;
12613
13287
  }
12614
- validate462.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12615
- function validate465(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12616
- let vErrors = null, errors = 0, evaluated0 = validate465.evaluated;
13288
+ validate466.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13289
+ function validate469(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13290
+ let vErrors = null, errors = 0, evaluated0 = validate469.evaluated;
12617
13291
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12618
13292
  for (let key0 in data)
12619
13293
  if (key0 !== "derived") {
@@ -12635,11 +13309,11 @@ function validate465(data, { instancePath = "", parentData, parentDataProperty,
12635
13309
  let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12636
13310
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12637
13311
  }
12638
- return validate465.errors = vErrors, errors === 0;
13312
+ return validate469.errors = vErrors, errors === 0;
12639
13313
  }
12640
- validate465.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12641
- function validate466(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12642
- let vErrors = null, errors = 0, evaluated0 = validate466.evaluated;
13314
+ validate469.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13315
+ function validate470(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13316
+ let vErrors = null, errors = 0, evaluated0 = validate470.evaluated;
12643
13317
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data))
12644
13318
  for (let key0 in data) {
12645
13319
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
@@ -12649,20 +13323,20 @@ function validate466(data, { instancePath = "", parentData, parentDataProperty,
12649
13323
  let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12650
13324
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
12651
13325
  }
12652
- return validate466.errors = vErrors, errors === 0;
13326
+ return validate470.errors = vErrors, errors === 0;
12653
13327
  }
12654
- validate466.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12655
- var schema482 = { 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 }, schema466 = { 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 };
12656
- var schema468 = { 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 };
12657
- function validate469(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12658
- let vErrors = null, errors = 0, evaluated0 = validate469.evaluated;
13328
+ validate470.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13329
+ 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 };
13330
+ 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 };
13331
+ function validate473(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13332
+ let vErrors = null, errors = 0, evaluated0 = validate473.evaluated;
12659
13333
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12660
13334
  if (data.enabled === void 0) {
12661
13335
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "enabled" }, message: "must have required property 'enabled'" };
12662
13336
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
12663
13337
  }
12664
13338
  for (let key0 in data)
12665
- if (!func1.call(schema468.properties, key0)) {
13339
+ if (!func1.call(schema473.properties, key0)) {
12666
13340
  let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
12667
13341
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
12668
13342
  }
@@ -12677,7 +13351,7 @@ function validate469(data, { instancePath = "", parentData, parentDataProperty,
12677
13351
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
12678
13352
  }
12679
13353
  if (!(data1 === "relaxed" || data1 === "professional")) {
12680
- let err4 = { instancePath: instancePath + "/preset", schemaPath: "#/properties/preset/enum", keyword: "enum", params: { allowedValues: schema468.properties.preset.enum }, message: "must be equal to one of the allowed values" };
13354
+ 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" };
12681
13355
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
12682
13356
  }
12683
13357
  }
@@ -12780,7 +13454,7 @@ function validate469(data, { instancePath = "", parentData, parentDataProperty,
12780
13454
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
12781
13455
  }
12782
13456
  if (!(data10 === "auto" || data10 === "always" || data10 === "never")) {
12783
- let err23 = { instancePath: instancePath + "/titlePage", schemaPath: "#/properties/titlePage/enum", keyword: "enum", params: { allowedValues: schema468.properties.titlePage.enum }, message: "must be equal to one of the allowed values" };
13457
+ 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" };
12784
13458
  vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
12785
13459
  }
12786
13460
  }
@@ -12845,11 +13519,11 @@ function validate469(data, { instancePath = "", parentData, parentDataProperty,
12845
13519
  let err36 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12846
13520
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
12847
13521
  }
12848
- return validate469.errors = vErrors, errors === 0;
13522
+ return validate473.errors = vErrors, errors === 0;
12849
13523
  }
12850
- validate469.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12851
- function validate468(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12852
- let vErrors = null, errors = 0, evaluated0 = validate468.evaluated;
13524
+ validate473.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13525
+ function validate472(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13526
+ let vErrors = null, errors = 0, evaluated0 = validate472.evaluated;
12853
13527
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12854
13528
  for (let key0 in data)
12855
13529
  if (!(key0 === "width" || key0 === "height" || key0 === "orientation" || key0 === "margins" || key0 === "spatiumMm" || key0 === "pageTurns")) {
@@ -12887,7 +13561,7 @@ function validate468(data, { instancePath = "", parentData, parentDataProperty,
12887
13561
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
12888
13562
  }
12889
13563
  if (!(data2 === "portrait" || data2 === "landscape")) {
12890
- let err6 = { instancePath: instancePath + "/orientation", schemaPath: "#/properties/orientation/enum", keyword: "enum", params: { allowedValues: schema466.properties.orientation.enum }, message: "must be equal to one of the allowed values" };
13564
+ 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" };
12891
13565
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
12892
13566
  }
12893
13567
  }
@@ -12980,17 +13654,17 @@ function validate468(data, { instancePath = "", parentData, parentDataProperty,
12980
13654
  vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
12981
13655
  }
12982
13656
  }
12983
- data.pageTurns !== void 0 && (validate469(data.pageTurns, { instancePath: instancePath + "/pageTurns", parentData: data, parentDataProperty: "pageTurns", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate469.errors : vErrors.concat(validate469.errors), errors = vErrors.length));
13657
+ 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));
12984
13658
  } else {
12985
13659
  let err23 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
12986
13660
  vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
12987
13661
  }
12988
- return validate468.errors = vErrors, errors === 0;
13662
+ return validate472.errors = vErrors, errors === 0;
12989
13663
  }
12990
- validate468.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
12991
- var schema471 = { type: "string", enum: ["full", "short", "hidden"] };
12992
- function validate472(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
12993
- let vErrors = null, errors = 0, evaluated0 = validate472.evaluated;
13664
+ validate472.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13665
+ var schema476 = { type: "string", enum: ["full", "short", "hidden"] };
13666
+ function validate476(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13667
+ let vErrors = null, errors = 0, evaluated0 = validate476.evaluated;
12994
13668
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
12995
13669
  if (data.firstSystem === void 0) {
12996
13670
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "firstSystem" }, message: "must have required property 'firstSystem'" };
@@ -13012,7 +13686,7 @@ function validate472(data, { instancePath = "", parentData, parentDataProperty,
13012
13686
  vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
13013
13687
  }
13014
13688
  if (!(data0 === "full" || data0 === "short" || data0 === "hidden")) {
13015
- let err4 = { instancePath: instancePath + "/firstSystem", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema471.enum }, message: "must be equal to one of the allowed values" };
13689
+ 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" };
13016
13690
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13017
13691
  }
13018
13692
  }
@@ -13023,7 +13697,7 @@ function validate472(data, { instancePath = "", parentData, parentDataProperty,
13023
13697
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13024
13698
  }
13025
13699
  if (!(data1 === "full" || data1 === "short" || data1 === "hidden")) {
13026
- let err6 = { instancePath: instancePath + "/subsequentSystems", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema471.enum }, message: "must be equal to one of the allowed values" };
13700
+ 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" };
13027
13701
  vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
13028
13702
  }
13029
13703
  }
@@ -13031,12 +13705,12 @@ function validate472(data, { instancePath = "", parentData, parentDataProperty,
13031
13705
  let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13032
13706
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
13033
13707
  }
13034
- return validate472.errors = vErrors, errors === 0;
13708
+ return validate476.errors = vErrors, errors === 0;
13035
13709
  }
13036
- validate472.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13037
- var schema473 = { 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 };
13038
- function validate476(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13039
- let vErrors = null, errors = 0, evaluated0 = validate476.evaluated;
13710
+ validate476.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13711
+ 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 };
13712
+ function validate480(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13713
+ let vErrors = null, errors = 0, evaluated0 = validate480.evaluated;
13040
13714
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13041
13715
  if (data.partId === void 0) {
13042
13716
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "partId" }, message: "must have required property 'partId'" };
@@ -13139,7 +13813,7 @@ function validate476(data, { instancePath = "", parentData, parentDataProperty,
13139
13813
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
13140
13814
  }
13141
13815
  if (!(data6 === "below" || data6 === "above")) {
13142
- let err18 = { instancePath: instancePath + "/expression/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema391.enum }, message: "must be equal to one of the allowed values" };
13816
+ 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" };
13143
13817
  vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
13144
13818
  }
13145
13819
  }
@@ -13230,11 +13904,11 @@ function validate476(data, { instancePath = "", parentData, parentDataProperty,
13230
13904
  let err35 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13231
13905
  vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
13232
13906
  }
13233
- return validate476.errors = vErrors, errors === 0;
13907
+ return validate480.errors = vErrors, errors === 0;
13234
13908
  }
13235
- validate476.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13236
- function validate474(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13237
- let vErrors = null, errors = 0, evaluated0 = validate474.evaluated;
13909
+ validate480.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13910
+ function validate478(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13911
+ let vErrors = null, errors = 0, evaluated0 = validate478.evaluated;
13238
13912
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13239
13913
  if (data.id === void 0) {
13240
13914
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -13257,7 +13931,7 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
13257
13931
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13258
13932
  }
13259
13933
  for (let key0 in data)
13260
- if (!func1.call(schema473.properties, key0)) {
13934
+ if (!func1.call(schema478.properties, key0)) {
13261
13935
  let err5 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
13262
13936
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13263
13937
  }
@@ -13437,7 +14111,7 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
13437
14111
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
13438
14112
  }
13439
14113
  if (!(data10 === "top" || data10 === "right" || data10 === "bottom" || data10 === "left" || data10 === "top-left" || data10 === "top-right" || data10 === "bottom-right" || data10 === "bottom-left")) {
13440
- let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema422.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
14114
+ 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" };
13441
14115
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
13442
14116
  }
13443
14117
  }
@@ -13570,7 +14244,7 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
13570
14244
  vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
13571
14245
  }
13572
14246
  if (!(data20 === "left" || data20 === "center" || data20 === "right")) {
13573
- let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema473.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14247
+ 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" };
13574
14248
  vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
13575
14249
  }
13576
14250
  }
@@ -13581,7 +14255,7 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
13581
14255
  vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
13582
14256
  }
13583
14257
  if (!(data21 === "left" || data21 === "center" || data21 === "right" || data21 === "justify")) {
13584
- let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema473.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14258
+ 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" };
13585
14259
  vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
13586
14260
  }
13587
14261
  }
@@ -13604,7 +14278,7 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
13604
14278
  vErrors === null ? vErrors = [err67] : vErrors.push(err67), errors++;
13605
14279
  }
13606
14280
  if (!(data23 === "none" || data23 === "solid")) {
13607
- let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema473.properties.border.enum }, message: "must be equal to one of the allowed values" };
14281
+ 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" };
13608
14282
  vErrors === null ? vErrors = [err68] : vErrors.push(err68), errors++;
13609
14283
  }
13610
14284
  }
@@ -13653,28 +14327,28 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
13653
14327
  vErrors === null ? vErrors = [err76] : vErrors.push(err76), errors++;
13654
14328
  }
13655
14329
  }
13656
- data.staffAttachment !== void 0 && (validate476(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate476.errors : vErrors.concat(validate476.errors), errors = vErrors.length));
14330
+ 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));
13657
14331
  } else {
13658
14332
  let err77 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13659
14333
  vErrors === null ? vErrors = [err77] : vErrors.push(err77), errors++;
13660
14334
  }
13661
- return validate474.errors = vErrors, errors === 0;
14335
+ return validate478.errors = vErrors, errors === 0;
13662
14336
  }
13663
- validate474.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13664
- function validate467(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13665
- let vErrors = null, errors = 0, evaluated0 = validate467.evaluated;
14337
+ validate478.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14338
+ function validate471(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14339
+ let vErrors = null, errors = 0, evaluated0 = validate471.evaluated;
13666
14340
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13667
14341
  for (let key0 in data)
13668
14342
  if (!(key0 === "pageSetup" || key0 === "instrumentNameDisplay" || key0 === "textFrames" || key0 === "layoutBreaks")) {
13669
14343
  let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
13670
14344
  vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
13671
14345
  }
13672
- if (data.pageSetup !== void 0 && (validate468(data.pageSetup, { instancePath: instancePath + "/pageSetup", parentData: data, parentDataProperty: "pageSetup", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate468.errors : vErrors.concat(validate468.errors), errors = vErrors.length)), data.instrumentNameDisplay !== void 0 && (validate472(data.instrumentNameDisplay, { instancePath: instancePath + "/instrumentNameDisplay", parentData: data, parentDataProperty: "instrumentNameDisplay", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate472.errors : vErrors.concat(validate472.errors), errors = vErrors.length)), data.textFrames !== void 0) {
14346
+ 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) {
13673
14347
  let data2 = data.textFrames;
13674
14348
  if (Array.isArray(data2)) {
13675
14349
  let len0 = data2.length;
13676
14350
  for (let i0 = 0; i0 < len0; i0++)
13677
- validate474(data2[i0], { instancePath: instancePath + "/textFrames/" + i0, parentData: data2, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate474.errors : vErrors.concat(validate474.errors), errors = vErrors.length);
14351
+ 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);
13678
14352
  } else {
13679
14353
  let err1 = { instancePath: instancePath + "/textFrames", schemaPath: "#/properties/textFrames/type", keyword: "type", params: { type: "array" }, message: "must be array" };
13680
14354
  vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
@@ -13719,7 +14393,7 @@ function validate467(data, { instancePath = "", parentData, parentDataProperty,
13719
14393
  vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
13720
14394
  }
13721
14395
  if (!(data7 === "system" || data7 === "page")) {
13722
- let err8 = { instancePath: instancePath + "/layoutBreaks/" + i1 + "/kind", schemaPath: "#/$defs/layout-break/properties/kind/enum", keyword: "enum", params: { allowedValues: schema482.properties.kind.enum }, message: "must be equal to one of the allowed values" };
14396
+ 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" };
13723
14397
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
13724
14398
  }
13725
14399
  }
@@ -13737,12 +14411,12 @@ function validate467(data, { instancePath = "", parentData, parentDataProperty,
13737
14411
  let err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
13738
14412
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
13739
14413
  }
13740
- return validate467.errors = vErrors, errors === 0;
14414
+ return validate471.errors = vErrors, errors === 0;
13741
14415
  }
13742
- validate467.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
13743
- var textFrame = validate479;
13744
- function validate479(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
13745
- let vErrors = null, errors = 0, evaluated0 = validate479.evaluated;
14416
+ validate471.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14417
+ var textFrame = validate483;
14418
+ function validate483(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14419
+ let vErrors = null, errors = 0, evaluated0 = validate483.evaluated;
13746
14420
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
13747
14421
  if (data.id === void 0) {
13748
14422
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -13765,7 +14439,7 @@ function validate479(data, { instancePath = "", parentData, parentDataProperty,
13765
14439
  vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
13766
14440
  }
13767
14441
  for (let key0 in data)
13768
- if (!func1.call(schema473.properties, key0)) {
14442
+ if (!func1.call(schema478.properties, key0)) {
13769
14443
  let err5 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
13770
14444
  vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
13771
14445
  }
@@ -13945,7 +14619,7 @@ function validate479(data, { instancePath = "", parentData, parentDataProperty,
13945
14619
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
13946
14620
  }
13947
14621
  if (!(data10 === "top" || data10 === "right" || data10 === "bottom" || data10 === "left" || data10 === "top-left" || data10 === "top-right" || data10 === "bottom-right" || data10 === "bottom-left")) {
13948
- let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema422.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
14622
+ 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" };
13949
14623
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
13950
14624
  }
13951
14625
  }
@@ -14078,7 +14752,7 @@ function validate479(data, { instancePath = "", parentData, parentDataProperty,
14078
14752
  vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
14079
14753
  }
14080
14754
  if (!(data20 === "left" || data20 === "center" || data20 === "right")) {
14081
- let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema473.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14755
+ 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" };
14082
14756
  vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
14083
14757
  }
14084
14758
  }
@@ -14089,7 +14763,7 @@ function validate479(data, { instancePath = "", parentData, parentDataProperty,
14089
14763
  vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
14090
14764
  }
14091
14765
  if (!(data21 === "left" || data21 === "center" || data21 === "right" || data21 === "justify")) {
14092
- let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema473.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14766
+ 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" };
14093
14767
  vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
14094
14768
  }
14095
14769
  }
@@ -14112,7 +14786,7 @@ function validate479(data, { instancePath = "", parentData, parentDataProperty,
14112
14786
  vErrors === null ? vErrors = [err67] : vErrors.push(err67), errors++;
14113
14787
  }
14114
14788
  if (!(data23 === "none" || data23 === "solid")) {
14115
- let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema473.properties.border.enum }, message: "must be equal to one of the allowed values" };
14789
+ 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" };
14116
14790
  vErrors === null ? vErrors = [err68] : vErrors.push(err68), errors++;
14117
14791
  }
14118
14792
  }
@@ -14161,17 +14835,17 @@ function validate479(data, { instancePath = "", parentData, parentDataProperty,
14161
14835
  vErrors === null ? vErrors = [err76] : vErrors.push(err76), errors++;
14162
14836
  }
14163
14837
  }
14164
- data.staffAttachment !== void 0 && (validate476(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate476.errors : vErrors.concat(validate476.errors), errors = vErrors.length));
14838
+ 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));
14165
14839
  } else {
14166
14840
  let err77 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14167
14841
  vErrors === null ? vErrors = [err77] : vErrors.push(err77), errors++;
14168
14842
  }
14169
- return validate479.errors = vErrors, errors === 0;
14843
+ return validate483.errors = vErrors, errors === 0;
14170
14844
  }
14171
- validate479.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14172
- var systemText = validate482;
14173
- function validate482(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14174
- let vErrors = null, errors = 0, evaluated0 = validate482.evaluated;
14845
+ validate483.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14846
+ var systemText = validate486;
14847
+ function validate486(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14848
+ let vErrors = null, errors = 0, evaluated0 = validate486.evaluated;
14175
14849
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
14176
14850
  if (data.id === void 0) {
14177
14851
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -14254,7 +14928,7 @@ function validate482(data, { instancePath = "", parentData, parentDataProperty,
14254
14928
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
14255
14929
  }
14256
14930
  if (!(data6 === "left" || data6 === "center" || data6 === "right")) {
14257
- let err15 = { instancePath: instancePath + "/frame/horizontalAlignment", schemaPath: "#/$defs/staff-text-frame-presentation/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema389.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
14931
+ 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" };
14258
14932
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
14259
14933
  }
14260
14934
  }
@@ -14265,7 +14939,7 @@ function validate482(data, { instancePath = "", parentData, parentDataProperty,
14265
14939
  vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
14266
14940
  }
14267
14941
  if (!(data7 === "left" || data7 === "center" || data7 === "right" || data7 === "justify")) {
14268
- let err17 = { instancePath: instancePath + "/frame/paragraphJustification", schemaPath: "#/$defs/staff-text-frame-presentation/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema389.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
14942
+ 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" };
14269
14943
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
14270
14944
  }
14271
14945
  }
@@ -14288,7 +14962,7 @@ function validate482(data, { instancePath = "", parentData, parentDataProperty,
14288
14962
  vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
14289
14963
  }
14290
14964
  if (!(data9 === "none" || data9 === "solid")) {
14291
- let err21 = { instancePath: instancePath + "/frame/border", schemaPath: "#/$defs/staff-text-frame-presentation/properties/border/enum", keyword: "enum", params: { allowedValues: schema389.properties.border.enum }, message: "must be equal to one of the allowed values" };
14965
+ 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" };
14292
14966
  vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
14293
14967
  }
14294
14968
  }
@@ -14377,7 +15051,7 @@ function validate482(data, { instancePath = "", parentData, parentDataProperty,
14377
15051
  vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
14378
15052
  }
14379
15053
  if (!(data17 === "below" || data17 === "above")) {
14380
- let err36 = { instancePath: instancePath + "/placement", schemaPath: "#/$defs/expression-placement/enum", keyword: "enum", params: { allowedValues: schema391.enum }, message: "must be equal to one of the allowed values" };
15054
+ 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" };
14381
15055
  vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
14382
15056
  }
14383
15057
  }
@@ -14411,12 +15085,12 @@ function validate482(data, { instancePath = "", parentData, parentDataProperty,
14411
15085
  let err42 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14412
15086
  vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
14413
15087
  }
14414
- return validate482.errors = vErrors, errors === 0;
15088
+ return validate486.errors = vErrors, errors === 0;
14415
15089
  }
14416
- validate482.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14417
- var staffTextFramePresentation = validate484;
14418
- function validate484(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14419
- let vErrors = null, errors = 0, evaluated0 = validate484.evaluated;
15090
+ validate486.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15091
+ var staffTextFramePresentation = validate488;
15092
+ function validate488(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15093
+ let vErrors = null, errors = 0, evaluated0 = validate488.evaluated;
14420
15094
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
14421
15095
  for (let key0 in data)
14422
15096
  if (!(key0 === "width" || key0 === "horizontalAlignment" || key0 === "paragraphJustification" || key0 === "padding" || key0 === "border" || key0 === "eraseBackground")) {
@@ -14467,7 +15141,7 @@ function validate484(data, { instancePath = "", parentData, parentDataProperty,
14467
15141
  vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
14468
15142
  }
14469
15143
  if (!(data3 === "left" || data3 === "center" || data3 === "right")) {
14470
- let err9 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema389.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
15144
+ 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" };
14471
15145
  vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
14472
15146
  }
14473
15147
  }
@@ -14478,7 +15152,7 @@ function validate484(data, { instancePath = "", parentData, parentDataProperty,
14478
15152
  vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
14479
15153
  }
14480
15154
  if (!(data4 === "left" || data4 === "center" || data4 === "right" || data4 === "justify")) {
14481
- let err11 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema389.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
15155
+ 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" };
14482
15156
  vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
14483
15157
  }
14484
15158
  }
@@ -14501,7 +15175,7 @@ function validate484(data, { instancePath = "", parentData, parentDataProperty,
14501
15175
  vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
14502
15176
  }
14503
15177
  if (!(data6 === "none" || data6 === "solid")) {
14504
- let err15 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema389.properties.border.enum }, message: "must be equal to one of the allowed values" };
15178
+ 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" };
14505
15179
  vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
14506
15180
  }
14507
15181
  }
@@ -14513,12 +15187,12 @@ function validate484(data, { instancePath = "", parentData, parentDataProperty,
14513
15187
  let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14514
15188
  vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
14515
15189
  }
14516
- return validate484.errors = vErrors, errors === 0;
15190
+ return validate488.errors = vErrors, errors === 0;
14517
15191
  }
14518
- validate484.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14519
- var textFramePagePosition = validate485;
14520
- function validate485(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
14521
- let vErrors = null, errors = 0, evaluated0 = validate485.evaluated;
15192
+ validate488.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15193
+ var textFramePagePosition = validate489;
15194
+ function validate489(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
15195
+ let vErrors = null, errors = 0, evaluated0 = validate489.evaluated;
14522
15196
  if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
14523
15197
  if (data.id === void 0) {
14524
15198
  let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
@@ -14728,7 +15402,7 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
14728
15402
  vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
14729
15403
  }
14730
15404
  if (!(data11 === "top" || data11 === "right" || data11 === "bottom" || data11 === "left" || data11 === "top-left" || data11 === "top-right" || data11 === "bottom-right" || data11 === "bottom-left")) {
14731
- let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema422.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
15405
+ 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" };
14732
15406
  vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
14733
15407
  }
14734
15408
  }
@@ -14899,9 +15573,9 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
14899
15573
  let err69 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
14900
15574
  vErrors === null ? vErrors = [err69] : vErrors.push(err69), errors++;
14901
15575
  }
14902
- return validate485.errors = vErrors, errors === 0;
15576
+ return validate489.errors = vErrors, errors === 0;
14903
15577
  }
14904
- validate485.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
15578
+ validate489.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
14905
15579
 
14906
15580
  // packages/format/src/mnx/staffTextFrame.ts
14907
15581
  function parseTextFramePagePosition(raw) {
@@ -14978,7 +15652,7 @@ function parseGlobalMeasure(raw) {
14978
15652
  raw.id && (measure.id = raw.id), raw.number !== void 0 && (measure.number = raw.number), raw.time && (measure.time = parseTimeSignature(raw.time)), raw.key && (measure.key = parseKeySignature(raw.key)), raw.barline && (measure.barline = parseBarline(raw.barline)), raw.repeatStart !== void 0 && (measure.repeatStart = parseRepeatStart(raw.repeatStart)), raw.repeatEnd !== void 0 && (measure.repeatEnd = parseRepeatEnd(raw.repeatEnd)), raw.ending !== void 0 && (measure.ending = parseEnding(raw.ending)), raw.tempos && (measure.tempos = raw.tempos.map(parseTempo)), raw.segno && (measure.segno = parseSegno(raw.segno)), raw.fine && (measure.fine = parseFine(raw.fine)), raw.coda && (measure.coda = parseCoda(raw.coda)), raw.jump && (measure.jump = parseJump(raw.jump));
14979
15653
  let viritura = raw._x?.viritura;
14980
15654
  if (viritura) {
14981
- if (viritura.senzaMisura && measure.time && (measure.time.display = "senzaMisura"), viritura.rehearsalMark) {
15655
+ if (viritura.tempos !== void 0 && (measure.tempos = parseVendorTempos(raw, viritura)), viritura.senzaMisura && measure.time && (measure.time.display = "senzaMisura"), viritura.rehearsalMark) {
14982
15656
  let rm = viritura.rehearsalMark;
14983
15657
  measure.rehearsalMark = { text: parseTextContent(rm.text) ?? [] }, rm.style && (measure.rehearsalMark.style = rm.style), applyManualPlacement(measure.rehearsalMark, rm);
14984
15658
  }
@@ -14986,6 +15660,30 @@ function parseGlobalMeasure(raw) {
14986
15660
  }
14987
15661
  return measure;
14988
15662
  }
15663
+ function parseVendorTempos(raw, viritura) {
15664
+ if (raw.tempos?.length) throw new Error("Viritura tempos cannot coexist with standard measure tempos.");
15665
+ if (!measureGlobalExtensions(viritura)) throw new Error("Invalid Viritura tempo instructions.");
15666
+ if (!viritura.tempos) throw new Error("Viritura tempo instructions are missing.");
15667
+ return viritura.tempos.map((instruction) => {
15668
+ let presentation = {
15669
+ text: instruction.text,
15670
+ showText: instruction.showText,
15671
+ showMetronomeMark: instruction.showMetronomeMark
15672
+ };
15673
+ if (instruction.location && (presentation.location = parseRhythmicPosition(instruction.location)), applyManualPlacement(presentation, instruction), instruction.bpm !== void 0 && instruction.value !== void 0)
15674
+ return {
15675
+ ...presentation,
15676
+ bpm: instruction.bpm,
15677
+ value: parseTempoNoteValue(instruction.value),
15678
+ swing: instruction.swing === void 0 ? void 0 : parseSwing(instruction.swing)
15679
+ };
15680
+ if (!instruction.swing) {
15681
+ if (!instruction.text?.length) throw new Error("A BPM-free tempo requires swing or nonempty text.");
15682
+ return { ...presentation, text: instruction.text };
15683
+ }
15684
+ return { ...presentation, swing: parseSwing(instruction.swing) };
15685
+ });
15686
+ }
14989
15687
  function parseRepeatStart(raw) {
14990
15688
  let r = {}, times = raw.times;
14991
15689
  return typeof times == "number" && (r.times = times), r;
@@ -15021,11 +15719,18 @@ function parseTempo(raw) {
15021
15719
  raw.location && (tempo.location = parseRhythmicPosition(raw.location));
15022
15720
  let viritura = raw._x?.viritura;
15023
15721
  if (viritura) {
15722
+ if (viritura.swing !== void 0) {
15723
+ if (!swing(viritura.swing)) throw new Error("Invalid Viritura tempo swing instruction.");
15724
+ tempo.swing = parseSwing(viritura.swing);
15725
+ }
15024
15726
  let text = parseTextContent(viritura.text);
15025
15727
  text !== void 0 && (tempo.text = text), typeof viritura.showMetronomeMark == "boolean" && (tempo.showMetronomeMark = viritura.showMetronomeMark), typeof viritura.showText == "boolean" && (tempo.showText = viritura.showText), applyManualPlacement(tempo, viritura);
15026
15728
  }
15027
15729
  return tempo;
15028
15730
  }
15731
+ function parseSwing(raw) {
15732
+ return raw.mode === "straight" ? { mode: "straight" } : { mode: "swing", subdivision: raw.subdivision, ratio: [raw.ratio[0], raw.ratio[1]] };
15733
+ }
15029
15734
  function parseTempoNoteValue(raw) {
15030
15735
  let tnv = {
15031
15736
  base: raw.base
@@ -16447,6 +17152,7 @@ function buildTempoMap(globalMeasures, holds) {
16447
17152
  let measureStartSpq = currentSpq, changes = [];
16448
17153
  if (gm.tempos && gm.tempos.length > 0) {
16449
17154
  for (let tempo of gm.tempos) {
17155
+ if (tempo.bpm === void 0) continue;
16450
17156
  let beatOffset = tempo.location ? tempo.location.fraction[0] / tempo.location.fraction[1] * mBeats : 0, qpm = effectiveQpm(tempo.bpm, tempo.value.base, tempo.value.dots);
16451
17157
  changes.push({ beatOffset, qpm });
16452
17158
  }
@@ -16482,6 +17188,7 @@ function buildTempoModel(globalMeasures, holds) {
16482
17188
  if (measureStartBeats.push(cumBeats), gm.tempos && gm.tempos.length > 0) {
16483
17189
  let sorted = [...gm.tempos].sort((a, b) => tempoBeat(a, mBeats) - tempoBeat(b, mBeats));
16484
17190
  for (let tempo of sorted) {
17191
+ if (tempo.bpm === void 0) continue;
16485
17192
  let startBeat = cumBeats + tempoBeat(tempo, mBeats), qpm = effectiveQpm(tempo.bpm, tempo.value.base, tempo.value.dots);
16486
17193
  regions.push({ startBeat, endBeat: 1 / 0, startBpm: qpm, endBpm: qpm });
16487
17194
  }