@viritura/score-engine 0.2.1-next.46 → 0.2.1-next.48
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 +824 -346
- package/dist/index.js.map +4 -4
- package/dist/wasm/viritura_wasm_bg.wasm +0 -0
- package/package.json +3 -3
package/dist/index.js
CHANGED
|
@@ -2265,9 +2265,9 @@ function interpolateBeatAnchors(bounds, beat, endX) {
|
|
|
2265
2265
|
|
|
2266
2266
|
// packages/score-engine/src/buildInfo.ts
|
|
2267
2267
|
init_define_import_meta_env();
|
|
2268
|
-
var PACKAGE_VERSION = "0.2.1-next.
|
|
2268
|
+
var PACKAGE_VERSION = "0.2.1-next.48", BUNDLE_WORKER_FILE = "score-engine.worker.js";
|
|
2269
2269
|
function buildCommit() {
|
|
2270
|
-
return "
|
|
2270
|
+
return "d1e7ed69e15b4fdf82971bccf1ea9b980402da33";
|
|
2271
2271
|
}
|
|
2272
2272
|
function bundledAssetBase() {
|
|
2273
2273
|
let moduleUrl = import.meta.url;
|
|
@@ -2661,8 +2661,8 @@ init_define_import_meta_env();
|
|
|
2661
2661
|
init_define_import_meta_env();
|
|
2662
2662
|
function parseGlobalCaesura(raw) {
|
|
2663
2663
|
if (raw === void 0) return {};
|
|
2664
|
-
let { shape, marks, ...attributes } = raw, caesura = { ...attributes };
|
|
2665
|
-
if (
|
|
2664
|
+
let { shape: shape2, marks, ...attributes } = raw, caesura = { ...attributes };
|
|
2665
|
+
if (shape2 !== void 0 && (caesura.style = shape2), marks !== void 0) {
|
|
2666
2666
|
if (marks !== 1 && marks !== 2) throw new Error("Global caesura marks must be 1 or 2");
|
|
2667
2667
|
caesura.marks = marks;
|
|
2668
2668
|
}
|
|
@@ -10703,7 +10703,7 @@ function validate423(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
10703
10703
|
return validate423.errors = vErrors, errors === 0;
|
|
10704
10704
|
}
|
|
10705
10705
|
validate423.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
10706
|
-
var schema399 = { type: "object", description: "A
|
|
10706
|
+
var schema399 = { type: "object", description: "A native tempo ramp over musical beats. Exactly one target is required: absolute quarter-note endBpm or endRatio times the starting tempo. An omitted curve means linear. Optional printed text is an independently engraved systemText entry referenced by systemTextId.", required: ["position", "end"], oneOf: [{ required: ["endBpm"], not: { required: ["endRatio"] } }, { required: ["endRatio"], not: { required: ["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." }, endRatio: { type: "number", exclusiveMinimum: 0, description: "Target multiplier of the tempo at the ramp start; 0.8 means 80%." }, curve: { type: "string", enum: ["linear", "early", "late", "smooth"] }, systemTextId: { type: "string", minLength: 1, description: "Identity of the ramp's optional printed system text in this measure." }, startBpm: { type: "number", exclusiveMinimum: 0, description: "Optional start BPM (quarter-note). Defaults to the tempo active at `position`." }, kind: { type: "string", enum: ["rit", "accel"], description: "Optional classification. Cosmetic only; the BPM direction determines the audible behavior." } }, additionalProperties: !1 };
|
|
10707
10707
|
function validate427(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
10708
10708
|
let vErrors = null, errors = 0, evaluated0 = validate427.evaluated;
|
|
10709
10709
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
@@ -10774,103 +10774,180 @@ function validate427(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
10774
10774
|
validate427.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
10775
10775
|
function validate426(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
10776
10776
|
let vErrors = null, errors = 0, evaluated0 = validate426.evaluated;
|
|
10777
|
-
|
|
10778
|
-
|
|
10779
|
-
|
|
10777
|
+
evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
|
|
10778
|
+
let _errs1 = errors, valid0 = !1, passing0 = null, _errs2 = errors, _errs3 = errors, _errs4 = errors;
|
|
10779
|
+
if (data && typeof data == "object" && !Array.isArray(data)) {
|
|
10780
|
+
let missing0;
|
|
10781
|
+
if (data.endRatio === void 0 && (missing0 = "endRatio")) {
|
|
10782
|
+
let err0 = {};
|
|
10780
10783
|
vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
|
|
10781
10784
|
}
|
|
10782
|
-
|
|
10783
|
-
|
|
10784
|
-
|
|
10785
|
+
}
|
|
10786
|
+
var valid1 = _errs4 === errors;
|
|
10787
|
+
if (valid1) {
|
|
10788
|
+
let err1 = { instancePath, schemaPath: "#/oneOf/0/not", keyword: "not", params: {}, message: "must NOT be valid" };
|
|
10789
|
+
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
10790
|
+
} else
|
|
10791
|
+
errors = _errs3, vErrors !== null && (_errs3 ? vErrors.length = _errs3 : vErrors = null);
|
|
10792
|
+
if (data && typeof data == "object" && !Array.isArray(data) && data.endBpm === void 0) {
|
|
10793
|
+
let err2 = { instancePath, schemaPath: "#/oneOf/0/required", keyword: "required", params: { missingProperty: "endBpm" }, message: "must have required property 'endBpm'" };
|
|
10794
|
+
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
10795
|
+
}
|
|
10796
|
+
var _valid0 = _errs2 === errors;
|
|
10797
|
+
_valid0 && (valid0 = !0, passing0 = 0);
|
|
10798
|
+
let _errs5 = errors, _errs6 = errors, _errs7 = errors;
|
|
10799
|
+
if (data && typeof data == "object" && !Array.isArray(data)) {
|
|
10800
|
+
let missing1;
|
|
10801
|
+
if (data.endBpm === void 0 && (missing1 = "endBpm")) {
|
|
10802
|
+
let err3 = {};
|
|
10803
|
+
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
10785
10804
|
}
|
|
10786
|
-
|
|
10787
|
-
|
|
10788
|
-
|
|
10805
|
+
}
|
|
10806
|
+
var valid2 = _errs7 === errors;
|
|
10807
|
+
if (valid2) {
|
|
10808
|
+
let err4 = { instancePath, schemaPath: "#/oneOf/1/not", keyword: "not", params: {}, message: "must NOT be valid" };
|
|
10809
|
+
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
10810
|
+
} else
|
|
10811
|
+
errors = _errs6, vErrors !== null && (_errs6 ? vErrors.length = _errs6 : vErrors = null);
|
|
10812
|
+
if (data && typeof data == "object" && !Array.isArray(data) && data.endRatio === void 0) {
|
|
10813
|
+
let err5 = { instancePath, schemaPath: "#/oneOf/1/required", keyword: "required", params: { missingProperty: "endRatio" }, message: "must have required property 'endRatio'" };
|
|
10814
|
+
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
10815
|
+
}
|
|
10816
|
+
var _valid0 = _errs5 === errors;
|
|
10817
|
+
if (_valid0 && valid0 ? (valid0 = !1, passing0 = [passing0, 1]) : _valid0 && (valid0 = !0, passing0 = 1), valid0)
|
|
10818
|
+
errors = _errs1, vErrors !== null && (_errs1 ? vErrors.length = _errs1 : vErrors = null);
|
|
10819
|
+
else {
|
|
10820
|
+
let err6 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
|
|
10821
|
+
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
10822
|
+
}
|
|
10823
|
+
if (data && typeof data == "object" && !Array.isArray(data)) {
|
|
10824
|
+
if (data.position === void 0) {
|
|
10825
|
+
let err7 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "position" }, message: "must have required property 'position'" };
|
|
10826
|
+
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
10827
|
+
}
|
|
10828
|
+
if (data.end === void 0) {
|
|
10829
|
+
let err8 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "end" }, message: "must have required property 'end'" };
|
|
10830
|
+
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
10789
10831
|
}
|
|
10790
10832
|
for (let key0 in data)
|
|
10791
|
-
if (!(key0 === "position" || key0 === "end" || key0 === "endBpm" || key0 === "startBpm" || key0 === "kind")) {
|
|
10792
|
-
let
|
|
10793
|
-
vErrors === null ? vErrors = [
|
|
10833
|
+
if (!(key0 === "position" || key0 === "end" || key0 === "endBpm" || key0 === "endRatio" || key0 === "curve" || key0 === "systemTextId" || key0 === "startBpm" || key0 === "kind")) {
|
|
10834
|
+
let err9 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
10835
|
+
vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
|
|
10794
10836
|
}
|
|
10795
10837
|
if (data.position !== void 0) {
|
|
10796
10838
|
let data0 = data.position;
|
|
10797
10839
|
if (data0 && typeof data0 == "object" && !Array.isArray(data0)) {
|
|
10798
10840
|
if (data0.fraction === void 0) {
|
|
10799
|
-
let
|
|
10800
|
-
vErrors === null ? vErrors = [
|
|
10841
|
+
let err10 = { instancePath: instancePath + "/position", schemaPath: "#/$defs/rhythmic-position/required", keyword: "required", params: { missingProperty: "fraction" }, message: "must have required property 'fraction'" };
|
|
10842
|
+
vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
|
|
10801
10843
|
}
|
|
10802
10844
|
for (let key1 in data0)
|
|
10803
10845
|
if (key1 !== "fraction") {
|
|
10804
|
-
let
|
|
10805
|
-
vErrors === null ? vErrors = [
|
|
10846
|
+
let err11 = { instancePath: instancePath + "/position", schemaPath: "#/$defs/rhythmic-position/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
|
|
10847
|
+
vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
|
|
10806
10848
|
}
|
|
10807
10849
|
if (data0.fraction !== void 0) {
|
|
10808
10850
|
let data1 = data0.fraction;
|
|
10809
10851
|
if (Array.isArray(data1)) {
|
|
10810
10852
|
if (data1.length > 2) {
|
|
10811
|
-
let
|
|
10812
|
-
vErrors === null ? vErrors = [
|
|
10853
|
+
let err12 = { instancePath: instancePath + "/position/fraction", schemaPath: "#/$defs/rhythmic-position/properties/fraction/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
|
|
10854
|
+
vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
|
|
10813
10855
|
}
|
|
10814
10856
|
if (data1.length < 2) {
|
|
10815
|
-
let
|
|
10816
|
-
vErrors === null ? vErrors = [
|
|
10857
|
+
let err13 = { instancePath: instancePath + "/position/fraction", schemaPath: "#/$defs/rhythmic-position/properties/fraction/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
|
|
10858
|
+
vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
|
|
10817
10859
|
}
|
|
10818
10860
|
let len0 = data1.length;
|
|
10819
10861
|
for (let i0 = 0; i0 < len0; i0++) {
|
|
10820
10862
|
let data2 = data1[i0];
|
|
10821
10863
|
if (!(typeof data2 == "number" && !(data2 % 1) && !isNaN(data2))) {
|
|
10822
|
-
let
|
|
10823
|
-
vErrors === null ? vErrors = [
|
|
10864
|
+
let err14 = { instancePath: instancePath + "/position/fraction/" + i0, schemaPath: "#/$defs/rhythmic-position/properties/fraction/items/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
|
|
10865
|
+
vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
|
|
10824
10866
|
}
|
|
10825
10867
|
}
|
|
10826
10868
|
} else {
|
|
10827
|
-
let
|
|
10828
|
-
vErrors === null ? vErrors = [
|
|
10869
|
+
let err15 = { instancePath: instancePath + "/position/fraction", schemaPath: "#/$defs/rhythmic-position/properties/fraction/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
10870
|
+
vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
|
|
10829
10871
|
}
|
|
10830
10872
|
}
|
|
10831
10873
|
} else {
|
|
10832
|
-
let
|
|
10833
|
-
vErrors === null ? vErrors = [
|
|
10874
|
+
let err16 = { instancePath: instancePath + "/position", schemaPath: "#/$defs/rhythmic-position/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
10875
|
+
vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
|
|
10834
10876
|
}
|
|
10835
10877
|
}
|
|
10836
10878
|
if (data.end !== void 0 && (validate427(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate427.errors : vErrors.concat(validate427.errors), errors = vErrors.length)), data.endBpm !== void 0) {
|
|
10837
10879
|
let data4 = data.endBpm;
|
|
10838
10880
|
if (typeof data4 == "number") {
|
|
10839
10881
|
if (data4 <= 0 || isNaN(data4)) {
|
|
10840
|
-
let
|
|
10841
|
-
vErrors === null ? vErrors = [
|
|
10882
|
+
let err17 = { instancePath: instancePath + "/endBpm", schemaPath: "#/properties/endBpm/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
|
|
10883
|
+
vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
|
|
10842
10884
|
}
|
|
10843
10885
|
} else {
|
|
10844
|
-
let
|
|
10845
|
-
vErrors === null ? vErrors = [
|
|
10886
|
+
let err18 = { instancePath: instancePath + "/endBpm", schemaPath: "#/properties/endBpm/type", keyword: "type", params: { type: "number" }, message: "must be number" };
|
|
10887
|
+
vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
|
|
10846
10888
|
}
|
|
10847
10889
|
}
|
|
10848
|
-
if (data.
|
|
10849
|
-
let data5 = data.
|
|
10890
|
+
if (data.endRatio !== void 0) {
|
|
10891
|
+
let data5 = data.endRatio;
|
|
10850
10892
|
if (typeof data5 == "number") {
|
|
10851
10893
|
if (data5 <= 0 || isNaN(data5)) {
|
|
10852
|
-
let
|
|
10853
|
-
vErrors === null ? vErrors = [
|
|
10894
|
+
let err19 = { instancePath: instancePath + "/endRatio", schemaPath: "#/properties/endRatio/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
|
|
10895
|
+
vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
|
|
10854
10896
|
}
|
|
10855
10897
|
} else {
|
|
10856
|
-
let
|
|
10857
|
-
vErrors === null ? vErrors = [
|
|
10898
|
+
let err20 = { instancePath: instancePath + "/endRatio", schemaPath: "#/properties/endRatio/type", keyword: "type", params: { type: "number" }, message: "must be number" };
|
|
10899
|
+
vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
|
|
10858
10900
|
}
|
|
10859
10901
|
}
|
|
10860
|
-
if (data.
|
|
10861
|
-
let data6 = data.
|
|
10902
|
+
if (data.curve !== void 0) {
|
|
10903
|
+
let data6 = data.curve;
|
|
10862
10904
|
if (typeof data6 != "string") {
|
|
10863
|
-
let
|
|
10864
|
-
vErrors === null ? vErrors = [
|
|
10905
|
+
let err21 = { instancePath: instancePath + "/curve", schemaPath: "#/properties/curve/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
10906
|
+
vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
|
|
10865
10907
|
}
|
|
10866
|
-
if (!(data6 === "
|
|
10867
|
-
let
|
|
10868
|
-
vErrors === null ? vErrors = [
|
|
10908
|
+
if (!(data6 === "linear" || data6 === "early" || data6 === "late" || data6 === "smooth")) {
|
|
10909
|
+
let err22 = { instancePath: instancePath + "/curve", schemaPath: "#/properties/curve/enum", keyword: "enum", params: { allowedValues: schema399.properties.curve.enum }, message: "must be equal to one of the allowed values" };
|
|
10910
|
+
vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
|
|
10911
|
+
}
|
|
10912
|
+
}
|
|
10913
|
+
if (data.systemTextId !== void 0) {
|
|
10914
|
+
let data7 = data.systemTextId;
|
|
10915
|
+
if (typeof data7 == "string") {
|
|
10916
|
+
if (func5(data7) < 1) {
|
|
10917
|
+
let err23 = { instancePath: instancePath + "/systemTextId", schemaPath: "#/properties/systemTextId/minLength", keyword: "minLength", params: { limit: 1 }, message: "must NOT have fewer than 1 characters" };
|
|
10918
|
+
vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
|
|
10919
|
+
}
|
|
10920
|
+
} else {
|
|
10921
|
+
let err24 = { instancePath: instancePath + "/systemTextId", schemaPath: "#/properties/systemTextId/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
10922
|
+
vErrors === null ? vErrors = [err24] : vErrors.push(err24), errors++;
|
|
10923
|
+
}
|
|
10924
|
+
}
|
|
10925
|
+
if (data.startBpm !== void 0) {
|
|
10926
|
+
let data8 = data.startBpm;
|
|
10927
|
+
if (typeof data8 == "number") {
|
|
10928
|
+
if (data8 <= 0 || isNaN(data8)) {
|
|
10929
|
+
let err25 = { instancePath: instancePath + "/startBpm", schemaPath: "#/properties/startBpm/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
|
|
10930
|
+
vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
|
|
10931
|
+
}
|
|
10932
|
+
} else {
|
|
10933
|
+
let err26 = { instancePath: instancePath + "/startBpm", schemaPath: "#/properties/startBpm/type", keyword: "type", params: { type: "number" }, message: "must be number" };
|
|
10934
|
+
vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
|
|
10935
|
+
}
|
|
10936
|
+
}
|
|
10937
|
+
if (data.kind !== void 0) {
|
|
10938
|
+
let data9 = data.kind;
|
|
10939
|
+
if (typeof data9 != "string") {
|
|
10940
|
+
let err27 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
10941
|
+
vErrors === null ? vErrors = [err27] : vErrors.push(err27), errors++;
|
|
10942
|
+
}
|
|
10943
|
+
if (!(data9 === "rit" || data9 === "accel")) {
|
|
10944
|
+
let err28 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/enum", keyword: "enum", params: { allowedValues: schema399.properties.kind.enum }, message: "must be equal to one of the allowed values" };
|
|
10945
|
+
vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
|
|
10869
10946
|
}
|
|
10870
10947
|
}
|
|
10871
10948
|
} else {
|
|
10872
|
-
let
|
|
10873
|
-
vErrors === null ? vErrors = [
|
|
10949
|
+
let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
10950
|
+
vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
|
|
10874
10951
|
}
|
|
10875
10952
|
return validate426.errors = vErrors, errors === 0;
|
|
10876
10953
|
}
|
|
@@ -11482,9 +11559,190 @@ function validate436(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11482
11559
|
return validate436.errors = vErrors, evaluated0.props = props0, errors === 0;
|
|
11483
11560
|
}
|
|
11484
11561
|
validate436.evaluated = { dynamicProps: !0, dynamicItems: !1 };
|
|
11485
|
-
var
|
|
11486
|
-
function
|
|
11487
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
11562
|
+
var gradualTempo = validate437;
|
|
11563
|
+
function validate437(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
11564
|
+
let vErrors = null, errors = 0, evaluated0 = validate437.evaluated;
|
|
11565
|
+
evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
|
|
11566
|
+
let _errs1 = errors, valid0 = !1, passing0 = null, _errs2 = errors, _errs3 = errors, _errs4 = errors;
|
|
11567
|
+
if (data && typeof data == "object" && !Array.isArray(data)) {
|
|
11568
|
+
let missing0;
|
|
11569
|
+
if (data.endRatio === void 0 && (missing0 = "endRatio")) {
|
|
11570
|
+
let err0 = {};
|
|
11571
|
+
vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
|
|
11572
|
+
}
|
|
11573
|
+
}
|
|
11574
|
+
var valid1 = _errs4 === errors;
|
|
11575
|
+
if (valid1) {
|
|
11576
|
+
let err1 = { instancePath, schemaPath: "#/oneOf/0/not", keyword: "not", params: {}, message: "must NOT be valid" };
|
|
11577
|
+
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
11578
|
+
} else
|
|
11579
|
+
errors = _errs3, vErrors !== null && (_errs3 ? vErrors.length = _errs3 : vErrors = null);
|
|
11580
|
+
if (data && typeof data == "object" && !Array.isArray(data) && data.endBpm === void 0) {
|
|
11581
|
+
let err2 = { instancePath, schemaPath: "#/oneOf/0/required", keyword: "required", params: { missingProperty: "endBpm" }, message: "must have required property 'endBpm'" };
|
|
11582
|
+
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
11583
|
+
}
|
|
11584
|
+
var _valid0 = _errs2 === errors;
|
|
11585
|
+
_valid0 && (valid0 = !0, passing0 = 0);
|
|
11586
|
+
let _errs5 = errors, _errs6 = errors, _errs7 = errors;
|
|
11587
|
+
if (data && typeof data == "object" && !Array.isArray(data)) {
|
|
11588
|
+
let missing1;
|
|
11589
|
+
if (data.endBpm === void 0 && (missing1 = "endBpm")) {
|
|
11590
|
+
let err3 = {};
|
|
11591
|
+
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
11592
|
+
}
|
|
11593
|
+
}
|
|
11594
|
+
var valid2 = _errs7 === errors;
|
|
11595
|
+
if (valid2) {
|
|
11596
|
+
let err4 = { instancePath, schemaPath: "#/oneOf/1/not", keyword: "not", params: {}, message: "must NOT be valid" };
|
|
11597
|
+
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
11598
|
+
} else
|
|
11599
|
+
errors = _errs6, vErrors !== null && (_errs6 ? vErrors.length = _errs6 : vErrors = null);
|
|
11600
|
+
if (data && typeof data == "object" && !Array.isArray(data) && data.endRatio === void 0) {
|
|
11601
|
+
let err5 = { instancePath, schemaPath: "#/oneOf/1/required", keyword: "required", params: { missingProperty: "endRatio" }, message: "must have required property 'endRatio'" };
|
|
11602
|
+
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
11603
|
+
}
|
|
11604
|
+
var _valid0 = _errs5 === errors;
|
|
11605
|
+
if (_valid0 && valid0 ? (valid0 = !1, passing0 = [passing0, 1]) : _valid0 && (valid0 = !0, passing0 = 1), valid0)
|
|
11606
|
+
errors = _errs1, vErrors !== null && (_errs1 ? vErrors.length = _errs1 : vErrors = null);
|
|
11607
|
+
else {
|
|
11608
|
+
let err6 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
|
|
11609
|
+
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
11610
|
+
}
|
|
11611
|
+
if (data && typeof data == "object" && !Array.isArray(data)) {
|
|
11612
|
+
if (data.position === void 0) {
|
|
11613
|
+
let err7 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "position" }, message: "must have required property 'position'" };
|
|
11614
|
+
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
11615
|
+
}
|
|
11616
|
+
if (data.end === void 0) {
|
|
11617
|
+
let err8 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "end" }, message: "must have required property 'end'" };
|
|
11618
|
+
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
11619
|
+
}
|
|
11620
|
+
for (let key0 in data)
|
|
11621
|
+
if (!(key0 === "position" || key0 === "end" || key0 === "endBpm" || key0 === "endRatio" || key0 === "curve" || key0 === "systemTextId" || key0 === "startBpm" || key0 === "kind")) {
|
|
11622
|
+
let err9 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
11623
|
+
vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
|
|
11624
|
+
}
|
|
11625
|
+
if (data.position !== void 0) {
|
|
11626
|
+
let data0 = data.position;
|
|
11627
|
+
if (data0 && typeof data0 == "object" && !Array.isArray(data0)) {
|
|
11628
|
+
if (data0.fraction === void 0) {
|
|
11629
|
+
let err10 = { instancePath: instancePath + "/position", schemaPath: "#/$defs/rhythmic-position/required", keyword: "required", params: { missingProperty: "fraction" }, message: "must have required property 'fraction'" };
|
|
11630
|
+
vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
|
|
11631
|
+
}
|
|
11632
|
+
for (let key1 in data0)
|
|
11633
|
+
if (key1 !== "fraction") {
|
|
11634
|
+
let err11 = { instancePath: instancePath + "/position", schemaPath: "#/$defs/rhythmic-position/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key1 }, message: "must NOT have additional properties" };
|
|
11635
|
+
vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
|
|
11636
|
+
}
|
|
11637
|
+
if (data0.fraction !== void 0) {
|
|
11638
|
+
let data1 = data0.fraction;
|
|
11639
|
+
if (Array.isArray(data1)) {
|
|
11640
|
+
if (data1.length > 2) {
|
|
11641
|
+
let err12 = { instancePath: instancePath + "/position/fraction", schemaPath: "#/$defs/rhythmic-position/properties/fraction/maxItems", keyword: "maxItems", params: { limit: 2 }, message: "must NOT have more than 2 items" };
|
|
11642
|
+
vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
|
|
11643
|
+
}
|
|
11644
|
+
if (data1.length < 2) {
|
|
11645
|
+
let err13 = { instancePath: instancePath + "/position/fraction", schemaPath: "#/$defs/rhythmic-position/properties/fraction/minItems", keyword: "minItems", params: { limit: 2 }, message: "must NOT have fewer than 2 items" };
|
|
11646
|
+
vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
|
|
11647
|
+
}
|
|
11648
|
+
let len0 = data1.length;
|
|
11649
|
+
for (let i0 = 0; i0 < len0; i0++) {
|
|
11650
|
+
let data2 = data1[i0];
|
|
11651
|
+
if (!(typeof data2 == "number" && !(data2 % 1) && !isNaN(data2))) {
|
|
11652
|
+
let err14 = { instancePath: instancePath + "/position/fraction/" + i0, schemaPath: "#/$defs/rhythmic-position/properties/fraction/items/type", keyword: "type", params: { type: "integer" }, message: "must be integer" };
|
|
11653
|
+
vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
|
|
11654
|
+
}
|
|
11655
|
+
}
|
|
11656
|
+
} else {
|
|
11657
|
+
let err15 = { instancePath: instancePath + "/position/fraction", schemaPath: "#/$defs/rhythmic-position/properties/fraction/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
11658
|
+
vErrors === null ? vErrors = [err15] : vErrors.push(err15), errors++;
|
|
11659
|
+
}
|
|
11660
|
+
}
|
|
11661
|
+
} else {
|
|
11662
|
+
let err16 = { instancePath: instancePath + "/position", schemaPath: "#/$defs/rhythmic-position/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11663
|
+
vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
|
|
11664
|
+
}
|
|
11665
|
+
}
|
|
11666
|
+
if (data.end !== void 0 && (validate427(data.end, { instancePath: instancePath + "/end", parentData: data, parentDataProperty: "end", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate427.errors : vErrors.concat(validate427.errors), errors = vErrors.length)), data.endBpm !== void 0) {
|
|
11667
|
+
let data4 = data.endBpm;
|
|
11668
|
+
if (typeof data4 == "number") {
|
|
11669
|
+
if (data4 <= 0 || isNaN(data4)) {
|
|
11670
|
+
let err17 = { instancePath: instancePath + "/endBpm", schemaPath: "#/properties/endBpm/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
|
|
11671
|
+
vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
|
|
11672
|
+
}
|
|
11673
|
+
} else {
|
|
11674
|
+
let err18 = { instancePath: instancePath + "/endBpm", schemaPath: "#/properties/endBpm/type", keyword: "type", params: { type: "number" }, message: "must be number" };
|
|
11675
|
+
vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
|
|
11676
|
+
}
|
|
11677
|
+
}
|
|
11678
|
+
if (data.endRatio !== void 0) {
|
|
11679
|
+
let data5 = data.endRatio;
|
|
11680
|
+
if (typeof data5 == "number") {
|
|
11681
|
+
if (data5 <= 0 || isNaN(data5)) {
|
|
11682
|
+
let err19 = { instancePath: instancePath + "/endRatio", schemaPath: "#/properties/endRatio/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
|
|
11683
|
+
vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
|
|
11684
|
+
}
|
|
11685
|
+
} else {
|
|
11686
|
+
let err20 = { instancePath: instancePath + "/endRatio", schemaPath: "#/properties/endRatio/type", keyword: "type", params: { type: "number" }, message: "must be number" };
|
|
11687
|
+
vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
|
|
11688
|
+
}
|
|
11689
|
+
}
|
|
11690
|
+
if (data.curve !== void 0) {
|
|
11691
|
+
let data6 = data.curve;
|
|
11692
|
+
if (typeof data6 != "string") {
|
|
11693
|
+
let err21 = { instancePath: instancePath + "/curve", schemaPath: "#/properties/curve/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
11694
|
+
vErrors === null ? vErrors = [err21] : vErrors.push(err21), errors++;
|
|
11695
|
+
}
|
|
11696
|
+
if (!(data6 === "linear" || data6 === "early" || data6 === "late" || data6 === "smooth")) {
|
|
11697
|
+
let err22 = { instancePath: instancePath + "/curve", schemaPath: "#/properties/curve/enum", keyword: "enum", params: { allowedValues: schema399.properties.curve.enum }, message: "must be equal to one of the allowed values" };
|
|
11698
|
+
vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
|
|
11699
|
+
}
|
|
11700
|
+
}
|
|
11701
|
+
if (data.systemTextId !== void 0) {
|
|
11702
|
+
let data7 = data.systemTextId;
|
|
11703
|
+
if (typeof data7 == "string") {
|
|
11704
|
+
if (func5(data7) < 1) {
|
|
11705
|
+
let err23 = { instancePath: instancePath + "/systemTextId", schemaPath: "#/properties/systemTextId/minLength", keyword: "minLength", params: { limit: 1 }, message: "must NOT have fewer than 1 characters" };
|
|
11706
|
+
vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
|
|
11707
|
+
}
|
|
11708
|
+
} else {
|
|
11709
|
+
let err24 = { instancePath: instancePath + "/systemTextId", schemaPath: "#/properties/systemTextId/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
11710
|
+
vErrors === null ? vErrors = [err24] : vErrors.push(err24), errors++;
|
|
11711
|
+
}
|
|
11712
|
+
}
|
|
11713
|
+
if (data.startBpm !== void 0) {
|
|
11714
|
+
let data8 = data.startBpm;
|
|
11715
|
+
if (typeof data8 == "number") {
|
|
11716
|
+
if (data8 <= 0 || isNaN(data8)) {
|
|
11717
|
+
let err25 = { instancePath: instancePath + "/startBpm", schemaPath: "#/properties/startBpm/exclusiveMinimum", keyword: "exclusiveMinimum", params: { comparison: ">", limit: 0 }, message: "must be > 0" };
|
|
11718
|
+
vErrors === null ? vErrors = [err25] : vErrors.push(err25), errors++;
|
|
11719
|
+
}
|
|
11720
|
+
} else {
|
|
11721
|
+
let err26 = { instancePath: instancePath + "/startBpm", schemaPath: "#/properties/startBpm/type", keyword: "type", params: { type: "number" }, message: "must be number" };
|
|
11722
|
+
vErrors === null ? vErrors = [err26] : vErrors.push(err26), errors++;
|
|
11723
|
+
}
|
|
11724
|
+
}
|
|
11725
|
+
if (data.kind !== void 0) {
|
|
11726
|
+
let data9 = data.kind;
|
|
11727
|
+
if (typeof data9 != "string") {
|
|
11728
|
+
let err27 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
11729
|
+
vErrors === null ? vErrors = [err27] : vErrors.push(err27), errors++;
|
|
11730
|
+
}
|
|
11731
|
+
if (!(data9 === "rit" || data9 === "accel")) {
|
|
11732
|
+
let err28 = { instancePath: instancePath + "/kind", schemaPath: "#/properties/kind/enum", keyword: "enum", params: { allowedValues: schema399.properties.kind.enum }, message: "must be equal to one of the allowed values" };
|
|
11733
|
+
vErrors === null ? vErrors = [err28] : vErrors.push(err28), errors++;
|
|
11734
|
+
}
|
|
11735
|
+
}
|
|
11736
|
+
} else {
|
|
11737
|
+
let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11738
|
+
vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
|
|
11739
|
+
}
|
|
11740
|
+
return validate437.errors = vErrors, errors === 0;
|
|
11741
|
+
}
|
|
11742
|
+
validate437.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
11743
|
+
var schema417 = { 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 };
|
|
11744
|
+
function validate440(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
11745
|
+
let vErrors = null, errors = 0, evaluated0 = validate440.evaluated;
|
|
11488
11746
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
11489
11747
|
if (data.instrumentId === void 0) {
|
|
11490
11748
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "instrumentId" }, message: "must have required property 'instrumentId'" };
|
|
@@ -11599,11 +11857,11 @@ function validate438(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11599
11857
|
let err20 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11600
11858
|
vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
|
|
11601
11859
|
}
|
|
11602
|
-
return
|
|
11860
|
+
return validate440.errors = vErrors, errors === 0;
|
|
11603
11861
|
}
|
|
11604
|
-
|
|
11605
|
-
function
|
|
11606
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
11862
|
+
validate440.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
11863
|
+
function validate439(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
11864
|
+
let vErrors = null, errors = 0, evaluated0 = validate439.evaluated;
|
|
11607
11865
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
11608
11866
|
for (let key0 in data)
|
|
11609
11867
|
if (!(key0 === "instrumentId" || key0 === "instruments" || key0 === "initialInstrument" || key0 === "midiProgram" || key0 === "family" || key0 === "spatial" || key0 === "chordSymbolVisibility")) {
|
|
@@ -11622,7 +11880,7 @@ function validate437(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11622
11880
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
11623
11881
|
}
|
|
11624
11882
|
for (let key1 in data1)
|
|
11625
|
-
|
|
11883
|
+
validate440(data1[key1], { instancePath: instancePath + "/instruments/" + key1.replace(/~/g, "~0").replace(/\//g, "~1"), parentData: data1, parentDataProperty: key1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate440.errors : vErrors.concat(validate440.errors), errors = vErrors.length);
|
|
11626
11884
|
} else {
|
|
11627
11885
|
let err3 = { instancePath: instancePath + "/instruments", schemaPath: "#/properties/instruments/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11628
11886
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
@@ -11697,7 +11955,7 @@ function validate437(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11697
11955
|
vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
|
|
11698
11956
|
}
|
|
11699
11957
|
if (!(data9 === "auto" || data9 === "show" || data9 === "hide")) {
|
|
11700
|
-
let err17 = { instancePath: instancePath + "/chordSymbolVisibility", schemaPath: "#/properties/chordSymbolVisibility/enum", keyword: "enum", params: { allowedValues:
|
|
11958
|
+
let err17 = { instancePath: instancePath + "/chordSymbolVisibility", schemaPath: "#/properties/chordSymbolVisibility/enum", keyword: "enum", params: { allowedValues: schema417.properties.chordSymbolVisibility.enum }, message: "must be equal to one of the allowed values" };
|
|
11701
11959
|
vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
|
|
11702
11960
|
}
|
|
11703
11961
|
}
|
|
@@ -11705,12 +11963,12 @@ function validate437(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11705
11963
|
let err18 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11706
11964
|
vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
|
|
11707
11965
|
}
|
|
11708
|
-
return
|
|
11966
|
+
return validate439.errors = vErrors, errors === 0;
|
|
11709
11967
|
}
|
|
11710
|
-
|
|
11711
|
-
var
|
|
11712
|
-
function
|
|
11713
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
11968
|
+
validate439.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
11969
|
+
var schema422 = { 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)." };
|
|
11970
|
+
function validate442(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
11971
|
+
let vErrors = null, errors = 0, evaluated0 = validate442.evaluated;
|
|
11714
11972
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
11715
11973
|
for (let key0 in data)
|
|
11716
11974
|
if (!(key0 === "notehead" || key0 === "drumKit")) {
|
|
@@ -11724,7 +11982,7 @@ function validate440(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11724
11982
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
11725
11983
|
}
|
|
11726
11984
|
if (!(data0 === "normal" || data0 === "x" || data0 === "circleX" || data0 === "diamond" || data0 === "slash" || data0 === "triangleUp" || data0 === "triangleDown")) {
|
|
11727
|
-
let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues:
|
|
11985
|
+
let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema422.enum }, message: "must be equal to one of the allowed values" };
|
|
11728
11986
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
11729
11987
|
}
|
|
11730
11988
|
}
|
|
@@ -11749,13 +12007,13 @@ function validate440(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11749
12007
|
let err6 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11750
12008
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
11751
12009
|
}
|
|
11752
|
-
return
|
|
12010
|
+
return validate442.errors = vErrors, errors === 0;
|
|
11753
12011
|
}
|
|
11754
|
-
|
|
11755
|
-
var
|
|
11756
|
-
var
|
|
11757
|
-
function
|
|
11758
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12012
|
+
validate442.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
12013
|
+
var schema423 = { 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 };
|
|
12014
|
+
var schema425 = { type: "string", enum: ["sustain", "sostenuto", "una-corda"], description: "Piano pedal type." }, schema427 = { type: "string", enum: ["text", "bracket"], description: "Pedal marking display style. 'text' shows Ped/*, 'bracket' shows a horizontal line with hooks." };
|
|
12015
|
+
function validate444(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12016
|
+
let vErrors = null, errors = 0, evaluated0 = validate444.evaluated;
|
|
11759
12017
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
11760
12018
|
if (data.type === void 0) {
|
|
11761
12019
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "type" }, message: "must have required property 'type'" };
|
|
@@ -11781,7 +12039,7 @@ function validate442(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11781
12039
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
11782
12040
|
}
|
|
11783
12041
|
if (!(data0 === "sustain" || data0 === "sostenuto" || data0 === "una-corda")) {
|
|
11784
|
-
let err5 = { instancePath: instancePath + "/type", schemaPath: "#/$defs/pedal-type/enum", keyword: "enum", params: { allowedValues:
|
|
12042
|
+
let err5 = { instancePath: instancePath + "/type", schemaPath: "#/$defs/pedal-type/enum", keyword: "enum", params: { allowedValues: schema425.enum }, message: "must be equal to one of the allowed values" };
|
|
11785
12043
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
11786
12044
|
}
|
|
11787
12045
|
}
|
|
@@ -11833,7 +12091,7 @@ function validate442(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11833
12091
|
vErrors === null ? vErrors = [err13] : vErrors.push(err13), errors++;
|
|
11834
12092
|
}
|
|
11835
12093
|
if (!(data5 === "text" || data5 === "bracket")) {
|
|
11836
|
-
let err14 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/enum", keyword: "enum", params: { allowedValues:
|
|
12094
|
+
let err14 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/pedal-line-style/enum", keyword: "enum", params: { allowedValues: schema427.enum }, message: "must be equal to one of the allowed values" };
|
|
11837
12095
|
vErrors === null ? vErrors = [err14] : vErrors.push(err14), errors++;
|
|
11838
12096
|
}
|
|
11839
12097
|
}
|
|
@@ -11856,13 +12114,13 @@ function validate442(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
11856
12114
|
let err18 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
11857
12115
|
vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
|
|
11858
12116
|
}
|
|
11859
|
-
return
|
|
12117
|
+
return validate444.errors = vErrors, errors === 0;
|
|
11860
12118
|
}
|
|
11861
|
-
|
|
11862
|
-
var
|
|
11863
|
-
var
|
|
11864
|
-
function
|
|
11865
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12119
|
+
validate444.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
12120
|
+
var schema428 = { 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 };
|
|
12121
|
+
var schema432 = { 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 };
|
|
12122
|
+
function validate449(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12123
|
+
let vErrors = null, errors = 0, evaluated0 = validate449.evaluated;
|
|
11866
12124
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
11867
12125
|
if (data.id === void 0) {
|
|
11868
12126
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
|
|
@@ -12072,7 +12330,7 @@ function validate447(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12072
12330
|
vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
|
|
12073
12331
|
}
|
|
12074
12332
|
if (!(data11 === "top" || data11 === "right" || data11 === "bottom" || data11 === "left" || data11 === "top-left" || data11 === "top-right" || data11 === "bottom-right" || data11 === "bottom-left")) {
|
|
12075
|
-
let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues:
|
|
12333
|
+
let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema432.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
|
|
12076
12334
|
vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
|
|
12077
12335
|
}
|
|
12078
12336
|
}
|
|
@@ -12243,11 +12501,11 @@ function validate447(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12243
12501
|
let err69 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12244
12502
|
vErrors === null ? vErrors = [err69] : vErrors.push(err69), errors++;
|
|
12245
12503
|
}
|
|
12246
|
-
return
|
|
12504
|
+
return validate449.errors = vErrors, errors === 0;
|
|
12247
12505
|
}
|
|
12248
|
-
|
|
12249
|
-
function
|
|
12250
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12506
|
+
validate449.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
12507
|
+
function validate447(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12508
|
+
let vErrors = null, errors = 0, evaluated0 = validate447.evaluated;
|
|
12251
12509
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
12252
12510
|
if (data.text === void 0) {
|
|
12253
12511
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "text" }, message: "must have required property 'text'" };
|
|
@@ -12258,7 +12516,7 @@ function validate445(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12258
12516
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
12259
12517
|
}
|
|
12260
12518
|
for (let key0 in data)
|
|
12261
|
-
if (!func1.call(
|
|
12519
|
+
if (!func1.call(schema428.properties, key0)) {
|
|
12262
12520
|
let err2 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
12263
12521
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
12264
12522
|
}
|
|
@@ -12361,7 +12619,7 @@ function validate445(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12361
12619
|
vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
|
|
12362
12620
|
}
|
|
12363
12621
|
}
|
|
12364
|
-
if (data.pagePosition !== void 0 && (
|
|
12622
|
+
if (data.pagePosition !== void 0 && (validate449(data.pagePosition, { instancePath: instancePath + "/pagePosition", parentData: data, parentDataProperty: "pagePosition", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate449.errors : vErrors.concat(validate449.errors), errors = vErrors.length)), data.position !== void 0) {
|
|
12365
12623
|
let data11 = data.position;
|
|
12366
12624
|
if (data11 && typeof data11 == "object" && !Array.isArray(data11)) {
|
|
12367
12625
|
if (data11.fraction === void 0) {
|
|
@@ -12458,11 +12716,11 @@ function validate445(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12458
12716
|
let err38 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12459
12717
|
vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
|
|
12460
12718
|
}
|
|
12461
|
-
return
|
|
12719
|
+
return validate447.errors = vErrors, errors === 0;
|
|
12462
12720
|
}
|
|
12463
|
-
|
|
12464
|
-
function
|
|
12465
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12721
|
+
validate447.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
12722
|
+
function validate452(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12723
|
+
let vErrors = null, errors = 0, evaluated0 = validate452.evaluated;
|
|
12466
12724
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
12467
12725
|
if (data.staff === void 0) {
|
|
12468
12726
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "staff" }, message: "must have required property 'staff'" };
|
|
@@ -12503,12 +12761,12 @@ function validate450(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12503
12761
|
let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12504
12762
|
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
12505
12763
|
}
|
|
12506
|
-
return
|
|
12764
|
+
return validate452.errors = vErrors, errors === 0;
|
|
12507
12765
|
}
|
|
12508
|
-
|
|
12509
|
-
var
|
|
12510
|
-
function
|
|
12511
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12766
|
+
validate452.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
12767
|
+
var schema442 = { 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 }, schema443 = { 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." };
|
|
12768
|
+
function validate455(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12769
|
+
let vErrors = null, errors = 0, evaluated0 = validate455.evaluated;
|
|
12512
12770
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
12513
12771
|
if (data.staff === void 0) {
|
|
12514
12772
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "staff" }, message: "must have required property 'staff'" };
|
|
@@ -12572,7 +12830,7 @@ function validate453(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12572
12830
|
vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
|
|
12573
12831
|
}
|
|
12574
12832
|
if (!(data3 === 1 || data3 === 2 || data3 === 4 || data3 === 8 || data3 === 16 || data3 === 32 || data3 === 64 || data3 === 128)) {
|
|
12575
|
-
let err12 = { instancePath: instancePath + "/meter/unit", schemaPath: "#/$defs/staff-meter/properties/unit/enum", keyword: "enum", params: { allowedValues:
|
|
12833
|
+
let err12 = { instancePath: instancePath + "/meter/unit", schemaPath: "#/$defs/staff-meter/properties/unit/enum", keyword: "enum", params: { allowedValues: schema442.properties.unit.enum }, message: "must be equal to one of the allowed values" };
|
|
12576
12834
|
vErrors === null ? vErrors = [err12] : vErrors.push(err12), errors++;
|
|
12577
12835
|
}
|
|
12578
12836
|
}
|
|
@@ -12612,7 +12870,7 @@ function validate453(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12612
12870
|
vErrors === null ? vErrors = [err18] : vErrors.push(err18), errors++;
|
|
12613
12871
|
}
|
|
12614
12872
|
if (!(data6 === "sharedDuration" || data6 === "fitMeasure")) {
|
|
12615
|
-
let err19 = { instancePath: instancePath + "/synchronization", schemaPath: "#/$defs/staff-meter-synchronization/enum", keyword: "enum", params: { allowedValues:
|
|
12873
|
+
let err19 = { instancePath: instancePath + "/synchronization", schemaPath: "#/$defs/staff-meter-synchronization/enum", keyword: "enum", params: { allowedValues: schema443.enum }, message: "must be equal to one of the allowed values" };
|
|
12616
12874
|
vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
|
|
12617
12875
|
}
|
|
12618
12876
|
}
|
|
@@ -12620,14 +12878,14 @@ function validate453(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12620
12878
|
let err20 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12621
12879
|
vErrors === null ? vErrors = [err20] : vErrors.push(err20), errors++;
|
|
12622
12880
|
}
|
|
12623
|
-
return
|
|
12881
|
+
return validate455.errors = vErrors, errors === 0;
|
|
12624
12882
|
}
|
|
12625
|
-
|
|
12626
|
-
function
|
|
12627
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12883
|
+
validate455.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
12884
|
+
function validate454(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12885
|
+
let vErrors = null, errors = 0, evaluated0 = validate454.evaluated;
|
|
12628
12886
|
evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0);
|
|
12629
12887
|
let _errs0 = errors, valid0 = !1, passing0 = null, _errs1 = errors;
|
|
12630
|
-
|
|
12888
|
+
validate455(data, { instancePath, parentData, parentDataProperty, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate455.errors : vErrors.concat(validate455.errors), errors = vErrors.length);
|
|
12631
12889
|
var _valid0 = _errs1 === errors;
|
|
12632
12890
|
if (_valid0) {
|
|
12633
12891
|
valid0 = !0, passing0 = 0;
|
|
@@ -12681,11 +12939,11 @@ function validate452(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12681
12939
|
let err8 = { instancePath, schemaPath: "#/oneOf", keyword: "oneOf", params: { passingSchemas: passing0 }, message: "must match exactly one schema in oneOf" };
|
|
12682
12940
|
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
12683
12941
|
}
|
|
12684
|
-
return
|
|
12942
|
+
return validate454.errors = vErrors, evaluated0.props = props0, errors === 0;
|
|
12685
12943
|
}
|
|
12686
|
-
|
|
12687
|
-
function
|
|
12688
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
12944
|
+
validate454.evaluated = { dynamicProps: !0, dynamicItems: !1 };
|
|
12945
|
+
function validate458(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
12946
|
+
let vErrors = null, errors = 0, evaluated0 = validate458.evaluated;
|
|
12689
12947
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
12690
12948
|
for (let key0 in data)
|
|
12691
12949
|
if (!(key0 === "position" || key0 === "instrument" || key0 === "transposition" || key0 === "instruction" || key0 === "reminder")) {
|
|
@@ -12854,11 +13112,11 @@ function validate456(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12854
13112
|
let err29 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12855
13113
|
vErrors === null ? vErrors = [err29] : vErrors.push(err29), errors++;
|
|
12856
13114
|
}
|
|
12857
|
-
return
|
|
13115
|
+
return validate458.errors = vErrors, errors === 0;
|
|
12858
13116
|
}
|
|
12859
|
-
|
|
12860
|
-
function
|
|
12861
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13117
|
+
validate458.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13118
|
+
function validate443(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13119
|
+
let vErrors = null, errors = 0, evaluated0 = validate443.evaluated;
|
|
12862
13120
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
12863
13121
|
for (let key0 in data)
|
|
12864
13122
|
if (!(key0 === "pedals" || key0 === "expressions" || key0 === "condensingOverride" || key0 === "groupingDisplayOverrides" || key0 === "staffMeters" || key0 === "instrumentChanges")) {
|
|
@@ -12870,7 +13128,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12870
13128
|
if (Array.isArray(data0)) {
|
|
12871
13129
|
let len0 = data0.length;
|
|
12872
13130
|
for (let i0 = 0; i0 < len0; i0++)
|
|
12873
|
-
|
|
13131
|
+
validate444(data0[i0], { instancePath: instancePath + "/pedals/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate444.errors : vErrors.concat(validate444.errors), errors = vErrors.length);
|
|
12874
13132
|
} else {
|
|
12875
13133
|
let err1 = { instancePath: instancePath + "/pedals", schemaPath: "#/properties/pedals/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
12876
13134
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
@@ -12881,7 +13139,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12881
13139
|
if (Array.isArray(data2)) {
|
|
12882
13140
|
let len1 = data2.length;
|
|
12883
13141
|
for (let i1 = 0; i1 < len1; i1++)
|
|
12884
|
-
|
|
13142
|
+
validate447(data2[i1], { instancePath: instancePath + "/expressions/" + i1, parentData: data2, parentDataProperty: i1, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate447.errors : vErrors.concat(validate447.errors), errors = vErrors.length);
|
|
12885
13143
|
} else {
|
|
12886
13144
|
let err2 = { instancePath: instancePath + "/expressions", schemaPath: "#/properties/expressions/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
12887
13145
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
@@ -12894,7 +13152,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12894
13152
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
12895
13153
|
}
|
|
12896
13154
|
if (!(data4 === "unison" || data4 === "solo1" || data4 === "solo2" || data4 === "amalgamate" || data4 === "divisi")) {
|
|
12897
|
-
let err4 = { instancePath: instancePath + "/condensingOverride", schemaPath: "#/properties/condensingOverride/enum", keyword: "enum", params: { allowedValues:
|
|
13155
|
+
let err4 = { instancePath: instancePath + "/condensingOverride", schemaPath: "#/properties/condensingOverride/enum", keyword: "enum", params: { allowedValues: schema423.properties.condensingOverride.enum }, message: "must be equal to one of the allowed values" };
|
|
12898
13156
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
12899
13157
|
}
|
|
12900
13158
|
}
|
|
@@ -12903,7 +13161,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12903
13161
|
if (Array.isArray(data5)) {
|
|
12904
13162
|
let len2 = data5.length;
|
|
12905
13163
|
for (let i2 = 0; i2 < len2; i2++)
|
|
12906
|
-
|
|
13164
|
+
validate452(data5[i2], { instancePath: instancePath + "/groupingDisplayOverrides/" + i2, parentData: data5, parentDataProperty: i2, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate452.errors : vErrors.concat(validate452.errors), errors = vErrors.length);
|
|
12907
13165
|
} else {
|
|
12908
13166
|
let err5 = { instancePath: instancePath + "/groupingDisplayOverrides", schemaPath: "#/properties/groupingDisplayOverrides/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
12909
13167
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
@@ -12914,7 +13172,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12914
13172
|
if (Array.isArray(data7)) {
|
|
12915
13173
|
let len3 = data7.length;
|
|
12916
13174
|
for (let i3 = 0; i3 < len3; i3++)
|
|
12917
|
-
|
|
13175
|
+
validate454(data7[i3], { instancePath: instancePath + "/staffMeters/" + i3, parentData: data7, parentDataProperty: i3, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate454.errors : vErrors.concat(validate454.errors), errors = vErrors.length);
|
|
12918
13176
|
} else {
|
|
12919
13177
|
let err6 = { instancePath: instancePath + "/staffMeters", schemaPath: "#/properties/staffMeters/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
12920
13178
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
@@ -12925,7 +13183,7 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12925
13183
|
if (Array.isArray(data9)) {
|
|
12926
13184
|
let len4 = data9.length;
|
|
12927
13185
|
for (let i4 = 0; i4 < len4; i4++)
|
|
12928
|
-
|
|
13186
|
+
validate458(data9[i4], { instancePath: instancePath + "/instrumentChanges/" + i4, parentData: data9, parentDataProperty: i4, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate458.errors : vErrors.concat(validate458.errors), errors = vErrors.length);
|
|
12929
13187
|
} else {
|
|
12930
13188
|
let err7 = { instancePath: instancePath + "/instrumentChanges", schemaPath: "#/properties/instrumentChanges/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
12931
13189
|
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
@@ -12935,12 +13193,12 @@ function validate441(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12935
13193
|
let err8 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12936
13194
|
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
12937
13195
|
}
|
|
12938
|
-
return
|
|
13196
|
+
return validate443.errors = vErrors, errors === 0;
|
|
12939
13197
|
}
|
|
12940
|
-
|
|
12941
|
-
var
|
|
12942
|
-
function
|
|
12943
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13198
|
+
validate443.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13199
|
+
var schema451 = { 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 };
|
|
13200
|
+
function validate460(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13201
|
+
let vErrors = null, errors = 0, evaluated0 = validate460.evaluated;
|
|
12944
13202
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
12945
13203
|
for (let key0 in data)
|
|
12946
13204
|
if (key0 !== "span") {
|
|
@@ -12982,7 +13240,7 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12982
13240
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
12983
13241
|
}
|
|
12984
13242
|
if (!(data2 === "start" || data2 === "continue" || data2 === "stop")) {
|
|
12985
|
-
let err7 = { instancePath: instancePath + "/span/type", schemaPath: "#/$defs/tuplet-span/properties/type/enum", keyword: "enum", params: { allowedValues:
|
|
13243
|
+
let err7 = { instancePath: instancePath + "/span/type", schemaPath: "#/$defs/tuplet-span/properties/type/enum", keyword: "enum", params: { allowedValues: schema451.properties.type.enum }, message: "must be equal to one of the allowed values" };
|
|
12986
13244
|
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
12987
13245
|
}
|
|
12988
13246
|
}
|
|
@@ -12995,11 +13253,11 @@ function validate458(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
12995
13253
|
let err9 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
12996
13254
|
vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
|
|
12997
13255
|
}
|
|
12998
|
-
return
|
|
13256
|
+
return validate460.errors = vErrors, errors === 0;
|
|
12999
13257
|
}
|
|
13000
|
-
|
|
13001
|
-
function
|
|
13002
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13258
|
+
validate460.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13259
|
+
function validate461(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13260
|
+
let vErrors = null, errors = 0, evaluated0 = validate461.evaluated;
|
|
13003
13261
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13004
13262
|
for (let key0 in data)
|
|
13005
13263
|
if (key0 !== "staffLineRangeRestore") {
|
|
@@ -13014,11 +13272,11 @@ function validate459(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13014
13272
|
let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13015
13273
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
13016
13274
|
}
|
|
13017
|
-
return
|
|
13275
|
+
return validate461.errors = vErrors, errors === 0;
|
|
13018
13276
|
}
|
|
13019
|
-
|
|
13020
|
-
function
|
|
13021
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13277
|
+
validate461.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13278
|
+
function validate462(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13279
|
+
let vErrors = null, errors = 0, evaluated0 = validate462.evaluated;
|
|
13022
13280
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13023
13281
|
for (let key0 in data)
|
|
13024
13282
|
if (!(key0 === "manualOffset" || key0 === "avoidCollisions")) {
|
|
@@ -13055,19 +13313,19 @@ function validate460(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13055
13313
|
let err6 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13056
13314
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
13057
13315
|
}
|
|
13058
|
-
return
|
|
13316
|
+
return validate462.errors = vErrors, errors === 0;
|
|
13059
13317
|
}
|
|
13060
|
-
|
|
13061
|
-
var
|
|
13062
|
-
function
|
|
13063
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13318
|
+
validate462.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13319
|
+
var schema456 = { type: "object", description: "A glissando or portamento connecting this event to a target event.", required: ["target"], properties: { target: { type: "string", description: "ID of the target event." }, kind: { $ref: "#/$defs/glissando-kind", description: "Semantic kind. Default: 'glissando'." }, style: { $ref: "#/$defs/glissando-style", description: "Line style. Default: 'straight'." }, playbackType: { type: "string", enum: ["chromatic", "diatonic", "pitch-bend"], description: "Playback interpolation. Omission means diatonic for glissando and pitch-bend for portamento." }, text: { type: "string", description: "Optional text label (e.g. 'gliss.', 'port.')." }, showText: { type: "boolean", description: "Whether to display the text label. Default: true." } }, additionalProperties: !1 }, schema457 = { type: "string", enum: ["glissando", "portamento"], description: "Semantic kind of a glissando-family line." }, schema458 = { type: "string", enum: ["straight", "wavy"], description: "Glissando/portamento line style." };
|
|
13320
|
+
function validate464(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13321
|
+
let vErrors = null, errors = 0, evaluated0 = validate464.evaluated;
|
|
13064
13322
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13065
13323
|
if (data.target === void 0) {
|
|
13066
13324
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "target" }, message: "must have required property 'target'" };
|
|
13067
13325
|
vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
|
|
13068
13326
|
}
|
|
13069
13327
|
for (let key0 in data)
|
|
13070
|
-
if (!(key0 === "target" || key0 === "kind" || key0 === "style" || key0 === "text" || key0 === "showText")) {
|
|
13328
|
+
if (!(key0 === "target" || key0 === "kind" || key0 === "style" || key0 === "playbackType" || key0 === "text" || key0 === "showText")) {
|
|
13071
13329
|
let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
13072
13330
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
13073
13331
|
}
|
|
@@ -13082,7 +13340,7 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13082
13340
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
13083
13341
|
}
|
|
13084
13342
|
if (!(data1 === "glissando" || data1 === "portamento")) {
|
|
13085
|
-
let err4 = { instancePath: instancePath + "/kind", schemaPath: "#/$defs/glissando-kind/enum", keyword: "enum", params: { allowedValues:
|
|
13343
|
+
let err4 = { instancePath: instancePath + "/kind", schemaPath: "#/$defs/glissando-kind/enum", keyword: "enum", params: { allowedValues: schema457.enum }, message: "must be equal to one of the allowed values" };
|
|
13086
13344
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
13087
13345
|
}
|
|
13088
13346
|
}
|
|
@@ -13093,27 +13351,38 @@ function validate462(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13093
13351
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
13094
13352
|
}
|
|
13095
13353
|
if (!(data2 === "straight" || data2 === "wavy")) {
|
|
13096
|
-
let err6 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/glissando-style/enum", keyword: "enum", params: { allowedValues:
|
|
13354
|
+
let err6 = { instancePath: instancePath + "/style", schemaPath: "#/$defs/glissando-style/enum", keyword: "enum", params: { allowedValues: schema458.enum }, message: "must be equal to one of the allowed values" };
|
|
13097
13355
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
13098
13356
|
}
|
|
13099
13357
|
}
|
|
13358
|
+
if (data.playbackType !== void 0) {
|
|
13359
|
+
let data3 = data.playbackType;
|
|
13360
|
+
if (typeof data3 != "string") {
|
|
13361
|
+
let err7 = { instancePath: instancePath + "/playbackType", schemaPath: "#/properties/playbackType/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
13362
|
+
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
13363
|
+
}
|
|
13364
|
+
if (!(data3 === "chromatic" || data3 === "diatonic" || data3 === "pitch-bend")) {
|
|
13365
|
+
let err8 = { instancePath: instancePath + "/playbackType", schemaPath: "#/properties/playbackType/enum", keyword: "enum", params: { allowedValues: schema456.properties.playbackType.enum }, message: "must be equal to one of the allowed values" };
|
|
13366
|
+
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
13367
|
+
}
|
|
13368
|
+
}
|
|
13100
13369
|
if (data.text !== void 0 && typeof data.text != "string") {
|
|
13101
|
-
let
|
|
13102
|
-
vErrors === null ? vErrors = [
|
|
13370
|
+
let err9 = { instancePath: instancePath + "/text", schemaPath: "#/properties/text/type", keyword: "type", params: { type: "string" }, message: "must be string" };
|
|
13371
|
+
vErrors === null ? vErrors = [err9] : vErrors.push(err9), errors++;
|
|
13103
13372
|
}
|
|
13104
13373
|
if (data.showText !== void 0 && typeof data.showText != "boolean") {
|
|
13105
|
-
let
|
|
13106
|
-
vErrors === null ? vErrors = [
|
|
13374
|
+
let err10 = { instancePath: instancePath + "/showText", schemaPath: "#/properties/showText/type", keyword: "type", params: { type: "boolean" }, message: "must be boolean" };
|
|
13375
|
+
vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
|
|
13107
13376
|
}
|
|
13108
13377
|
} else {
|
|
13109
|
-
let
|
|
13110
|
-
vErrors === null ? vErrors = [
|
|
13378
|
+
let err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13379
|
+
vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
|
|
13111
13380
|
}
|
|
13112
|
-
return
|
|
13381
|
+
return validate464.errors = vErrors, errors === 0;
|
|
13113
13382
|
}
|
|
13114
|
-
|
|
13115
|
-
function
|
|
13116
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13383
|
+
validate464.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13384
|
+
function validate463(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13385
|
+
let vErrors = null, errors = 0, evaluated0 = validate463.evaluated;
|
|
13117
13386
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13118
13387
|
for (let key0 in data)
|
|
13119
13388
|
if (key0 !== "glissandos") {
|
|
@@ -13125,7 +13394,7 @@ function validate461(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13125
13394
|
if (Array.isArray(data0)) {
|
|
13126
13395
|
let len0 = data0.length;
|
|
13127
13396
|
for (let i0 = 0; i0 < len0; i0++)
|
|
13128
|
-
|
|
13397
|
+
validate464(data0[i0], { instancePath: instancePath + "/glissandos/" + i0, parentData: data0, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate464.errors : vErrors.concat(validate464.errors), errors = vErrors.length);
|
|
13129
13398
|
} else {
|
|
13130
13399
|
let err1 = { instancePath: instancePath + "/glissandos", schemaPath: "#/properties/glissandos/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
13131
13400
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
@@ -13135,13 +13404,13 @@ function validate461(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13135
13404
|
let err2 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13136
13405
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
13137
13406
|
}
|
|
13138
|
-
return
|
|
13407
|
+
return validate463.errors = vErrors, errors === 0;
|
|
13139
13408
|
}
|
|
13140
|
-
|
|
13141
|
-
var
|
|
13142
|
-
var
|
|
13143
|
-
function
|
|
13144
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13409
|
+
validate463.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13410
|
+
var schema459 = { 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 }, schema462 = { type: "string", enum: ["turn", "invertedTurn", "mordent", "invertedMordent", "shortTrill", "trillMordent", "delayedTurn", "schleifer"], description: "Ornament type. Each maps to a SMuFL ornament glyph." };
|
|
13411
|
+
var schema464 = { 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 }, schema460 = { 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 }, schema461 = { 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 };
|
|
13412
|
+
function validate467(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13413
|
+
let vErrors = null, errors = 0, evaluated0 = validate467.evaluated;
|
|
13145
13414
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13146
13415
|
for (let key0 in data)
|
|
13147
13416
|
if (!(key0 === "accidental" || key0 === "showSymbol" || key0 === "extension")) {
|
|
@@ -13155,7 +13424,7 @@ function validate465(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13155
13424
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
13156
13425
|
}
|
|
13157
13426
|
if (!(data0 === -1 || data0 === 0 || data0 === 1)) {
|
|
13158
|
-
let err2 = { instancePath: instancePath + "/accidental", schemaPath: "#/properties/accidental/enum", keyword: "enum", params: { allowedValues:
|
|
13427
|
+
let err2 = { instancePath: instancePath + "/accidental", schemaPath: "#/properties/accidental/enum", keyword: "enum", params: { allowedValues: schema460.properties.accidental.enum }, message: "must be equal to one of the allowed values" };
|
|
13159
13428
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
13160
13429
|
}
|
|
13161
13430
|
}
|
|
@@ -13186,7 +13455,7 @@ function validate465(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13186
13455
|
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
13187
13456
|
}
|
|
13188
13457
|
if (!(data4 === "start" || data4 === "end")) {
|
|
13189
|
-
let err8 = { instancePath: instancePath + "/extension/targetEdge", schemaPath: "#/$defs/trill-extension/properties/targetEdge/enum", keyword: "enum", params: { allowedValues:
|
|
13458
|
+
let err8 = { instancePath: instancePath + "/extension/targetEdge", schemaPath: "#/$defs/trill-extension/properties/targetEdge/enum", keyword: "enum", params: { allowedValues: schema461.properties.targetEdge.enum }, message: "must be equal to one of the allowed values" };
|
|
13190
13459
|
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
13191
13460
|
}
|
|
13192
13461
|
}
|
|
@@ -13199,11 +13468,11 @@ function validate465(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13199
13468
|
let err10 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13200
13469
|
vErrors === null ? vErrors = [err10] : vErrors.push(err10), errors++;
|
|
13201
13470
|
}
|
|
13202
|
-
return
|
|
13471
|
+
return validate467.errors = vErrors, errors === 0;
|
|
13203
13472
|
}
|
|
13204
|
-
|
|
13205
|
-
function
|
|
13206
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13473
|
+
validate467.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13474
|
+
function validate466(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13475
|
+
let vErrors = null, errors = 0, evaluated0 = validate466.evaluated;
|
|
13207
13476
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13208
13477
|
for (let key0 in data)
|
|
13209
13478
|
if (!(key0 === "staccatissimoWedge" || key0 === "trill" || key0 === "ornaments" || key0 === "fingerings" || key0 === "arpeggio")) {
|
|
@@ -13225,7 +13494,7 @@ function validate464(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13225
13494
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
13226
13495
|
}
|
|
13227
13496
|
if (!(data1 === "above" || data1 === "below" || data1 === "auto")) {
|
|
13228
|
-
let err3 = { instancePath: instancePath + "/staccatissimoWedge/placement", schemaPath: "#/properties/staccatissimoWedge/properties/placement/enum", keyword: "enum", params: { allowedValues:
|
|
13497
|
+
let err3 = { instancePath: instancePath + "/staccatissimoWedge/placement", schemaPath: "#/properties/staccatissimoWedge/properties/placement/enum", keyword: "enum", params: { allowedValues: schema459.properties.staccatissimoWedge.properties.placement.enum }, message: "must be equal to one of the allowed values" };
|
|
13229
13498
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
13230
13499
|
}
|
|
13231
13500
|
}
|
|
@@ -13234,7 +13503,7 @@ function validate464(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13234
13503
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
13235
13504
|
}
|
|
13236
13505
|
}
|
|
13237
|
-
if (data.trill !== void 0 && (
|
|
13506
|
+
if (data.trill !== void 0 && (validate467(data.trill, { instancePath: instancePath + "/trill", parentData: data, parentDataProperty: "trill", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate467.errors : vErrors.concat(validate467.errors), errors = vErrors.length)), data.ornaments !== void 0) {
|
|
13238
13507
|
let data3 = data.ornaments;
|
|
13239
13508
|
if (Array.isArray(data3)) {
|
|
13240
13509
|
let len0 = data3.length;
|
|
@@ -13245,7 +13514,7 @@ function validate464(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13245
13514
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
13246
13515
|
}
|
|
13247
13516
|
if (!(data4 === "turn" || data4 === "invertedTurn" || data4 === "mordent" || data4 === "invertedMordent" || data4 === "shortTrill" || data4 === "trillMordent" || data4 === "delayedTurn" || data4 === "schleifer")) {
|
|
13248
|
-
let err6 = { instancePath: instancePath + "/ornaments/" + i0, schemaPath: "#/$defs/ornament-type/enum", keyword: "enum", params: { allowedValues:
|
|
13517
|
+
let err6 = { instancePath: instancePath + "/ornaments/" + i0, schemaPath: "#/$defs/ornament-type/enum", keyword: "enum", params: { allowedValues: schema462.enum }, message: "must be equal to one of the allowed values" };
|
|
13249
13518
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
13250
13519
|
}
|
|
13251
13520
|
}
|
|
@@ -13312,7 +13581,7 @@ function validate464(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13312
13581
|
vErrors === null ? vErrors = [err16] : vErrors.push(err16), errors++;
|
|
13313
13582
|
}
|
|
13314
13583
|
if (!(data9 === "up" || data9 === "down" || data9 === "auto")) {
|
|
13315
|
-
let err17 = { instancePath: instancePath + "/arpeggio/direction", schemaPath: "#/$defs/arpeggio/properties/direction/enum", keyword: "enum", params: { allowedValues:
|
|
13584
|
+
let err17 = { instancePath: instancePath + "/arpeggio/direction", schemaPath: "#/$defs/arpeggio/properties/direction/enum", keyword: "enum", params: { allowedValues: schema464.properties.direction.enum }, message: "must be equal to one of the allowed values" };
|
|
13316
13585
|
vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
|
|
13317
13586
|
}
|
|
13318
13587
|
}
|
|
@@ -13325,11 +13594,11 @@ function validate464(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13325
13594
|
let err19 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13326
13595
|
vErrors === null ? vErrors = [err19] : vErrors.push(err19), errors++;
|
|
13327
13596
|
}
|
|
13328
|
-
return
|
|
13597
|
+
return validate466.errors = vErrors, errors === 0;
|
|
13329
13598
|
}
|
|
13330
|
-
|
|
13331
|
-
function
|
|
13332
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13599
|
+
validate466.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13600
|
+
function validate469(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13601
|
+
let vErrors = null, errors = 0, evaluated0 = validate469.evaluated;
|
|
13333
13602
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13334
13603
|
for (let key0 in data)
|
|
13335
13604
|
if (key0 !== "notehead") {
|
|
@@ -13343,7 +13612,7 @@ function validate467(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13343
13612
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
13344
13613
|
}
|
|
13345
13614
|
if (!(data0 === "normal" || data0 === "x" || data0 === "circleX" || data0 === "diamond" || data0 === "slash" || data0 === "triangleUp" || data0 === "triangleDown")) {
|
|
13346
|
-
let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues:
|
|
13615
|
+
let err2 = { instancePath: instancePath + "/notehead", schemaPath: "#/$defs/notehead-shape/enum", keyword: "enum", params: { allowedValues: schema422.enum }, message: "must be equal to one of the allowed values" };
|
|
13347
13616
|
vErrors === null ? vErrors = [err2] : vErrors.push(err2), errors++;
|
|
13348
13617
|
}
|
|
13349
13618
|
}
|
|
@@ -13351,11 +13620,11 @@ function validate467(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13351
13620
|
let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13352
13621
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
13353
13622
|
}
|
|
13354
|
-
return
|
|
13623
|
+
return validate469.errors = vErrors, errors === 0;
|
|
13355
13624
|
}
|
|
13356
|
-
|
|
13357
|
-
function
|
|
13358
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13625
|
+
validate469.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13626
|
+
function validate471(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13627
|
+
let vErrors = null, errors = 0, evaluated0 = validate471.evaluated;
|
|
13359
13628
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13360
13629
|
for (let key0 in data)
|
|
13361
13630
|
if (!(key0 === "p0" || key0 === "p1" || key0 === "p2" || key0 === "p3")) {
|
|
@@ -13454,27 +13723,27 @@ function validate469(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13454
13723
|
let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13455
13724
|
vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
|
|
13456
13725
|
}
|
|
13457
|
-
return
|
|
13726
|
+
return validate471.errors = vErrors, errors === 0;
|
|
13458
13727
|
}
|
|
13459
|
-
|
|
13460
|
-
function
|
|
13461
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13728
|
+
validate471.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13729
|
+
function validate470(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13730
|
+
let vErrors = null, errors = 0, evaluated0 = validate470.evaluated;
|
|
13462
13731
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13463
13732
|
for (let key0 in data)
|
|
13464
13733
|
if (key0 !== "shape") {
|
|
13465
13734
|
let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
13466
13735
|
vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
|
|
13467
13736
|
}
|
|
13468
|
-
data.shape !== void 0 && (
|
|
13737
|
+
data.shape !== void 0 && (validate471(data.shape, { instancePath: instancePath + "/shape", parentData: data, parentDataProperty: "shape", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate471.errors : vErrors.concat(validate471.errors), errors = vErrors.length));
|
|
13469
13738
|
} else {
|
|
13470
13739
|
let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13471
13740
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
13472
13741
|
}
|
|
13473
|
-
return
|
|
13742
|
+
return validate470.errors = vErrors, errors === 0;
|
|
13474
13743
|
}
|
|
13475
|
-
|
|
13476
|
-
function
|
|
13477
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13744
|
+
validate470.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13745
|
+
function validate473(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13746
|
+
let vErrors = null, errors = 0, evaluated0 = validate473.evaluated;
|
|
13478
13747
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13479
13748
|
for (let key0 in data)
|
|
13480
13749
|
if (key0 !== "derived") {
|
|
@@ -13496,11 +13765,11 @@ function validate471(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13496
13765
|
let err3 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13497
13766
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
13498
13767
|
}
|
|
13499
|
-
return
|
|
13768
|
+
return validate473.errors = vErrors, errors === 0;
|
|
13500
13769
|
}
|
|
13501
|
-
|
|
13502
|
-
function
|
|
13503
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13770
|
+
validate473.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13771
|
+
function validate474(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13772
|
+
let vErrors = null, errors = 0, evaluated0 = validate474.evaluated;
|
|
13504
13773
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data))
|
|
13505
13774
|
for (let key0 in data) {
|
|
13506
13775
|
let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
@@ -13510,20 +13779,20 @@ function validate472(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13510
13779
|
let err1 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13511
13780
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
13512
13781
|
}
|
|
13513
|
-
return
|
|
13782
|
+
return validate474.errors = vErrors, errors === 0;
|
|
13514
13783
|
}
|
|
13515
|
-
|
|
13516
|
-
var
|
|
13517
|
-
var
|
|
13518
|
-
function
|
|
13519
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13784
|
+
validate474.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13785
|
+
var schema492 = { 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 }, schema476 = { 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 };
|
|
13786
|
+
var schema478 = { 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 };
|
|
13787
|
+
function validate477(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13788
|
+
let vErrors = null, errors = 0, evaluated0 = validate477.evaluated;
|
|
13520
13789
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13521
13790
|
if (data.enabled === void 0) {
|
|
13522
13791
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "enabled" }, message: "must have required property 'enabled'" };
|
|
13523
13792
|
vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
|
|
13524
13793
|
}
|
|
13525
13794
|
for (let key0 in data)
|
|
13526
|
-
if (!func1.call(
|
|
13795
|
+
if (!func1.call(schema478.properties, key0)) {
|
|
13527
13796
|
let err1 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
13528
13797
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
13529
13798
|
}
|
|
@@ -13538,7 +13807,7 @@ function validate475(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13538
13807
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
13539
13808
|
}
|
|
13540
13809
|
if (!(data1 === "relaxed" || data1 === "professional")) {
|
|
13541
|
-
let err4 = { instancePath: instancePath + "/preset", schemaPath: "#/properties/preset/enum", keyword: "enum", params: { allowedValues:
|
|
13810
|
+
let err4 = { instancePath: instancePath + "/preset", schemaPath: "#/properties/preset/enum", keyword: "enum", params: { allowedValues: schema478.properties.preset.enum }, message: "must be equal to one of the allowed values" };
|
|
13542
13811
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
13543
13812
|
}
|
|
13544
13813
|
}
|
|
@@ -13641,7 +13910,7 @@ function validate475(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13641
13910
|
vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
|
|
13642
13911
|
}
|
|
13643
13912
|
if (!(data10 === "auto" || data10 === "always" || data10 === "never")) {
|
|
13644
|
-
let err23 = { instancePath: instancePath + "/titlePage", schemaPath: "#/properties/titlePage/enum", keyword: "enum", params: { allowedValues:
|
|
13913
|
+
let err23 = { instancePath: instancePath + "/titlePage", schemaPath: "#/properties/titlePage/enum", keyword: "enum", params: { allowedValues: schema478.properties.titlePage.enum }, message: "must be equal to one of the allowed values" };
|
|
13645
13914
|
vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
|
|
13646
13915
|
}
|
|
13647
13916
|
}
|
|
@@ -13706,11 +13975,11 @@ function validate475(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13706
13975
|
let err36 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13707
13976
|
vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
|
|
13708
13977
|
}
|
|
13709
|
-
return
|
|
13978
|
+
return validate477.errors = vErrors, errors === 0;
|
|
13710
13979
|
}
|
|
13711
|
-
|
|
13712
|
-
function
|
|
13713
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
13980
|
+
validate477.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
13981
|
+
function validate476(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
13982
|
+
let vErrors = null, errors = 0, evaluated0 = validate476.evaluated;
|
|
13714
13983
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13715
13984
|
for (let key0 in data)
|
|
13716
13985
|
if (!(key0 === "width" || key0 === "height" || key0 === "orientation" || key0 === "margins" || key0 === "spatiumMm" || key0 === "pageTurns")) {
|
|
@@ -13748,7 +14017,7 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13748
14017
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
13749
14018
|
}
|
|
13750
14019
|
if (!(data2 === "portrait" || data2 === "landscape")) {
|
|
13751
|
-
let err6 = { instancePath: instancePath + "/orientation", schemaPath: "#/properties/orientation/enum", keyword: "enum", params: { allowedValues:
|
|
14020
|
+
let err6 = { instancePath: instancePath + "/orientation", schemaPath: "#/properties/orientation/enum", keyword: "enum", params: { allowedValues: schema476.properties.orientation.enum }, message: "must be equal to one of the allowed values" };
|
|
13752
14021
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
13753
14022
|
}
|
|
13754
14023
|
}
|
|
@@ -13841,17 +14110,17 @@ function validate474(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13841
14110
|
vErrors === null ? vErrors = [err22] : vErrors.push(err22), errors++;
|
|
13842
14111
|
}
|
|
13843
14112
|
}
|
|
13844
|
-
data.pageTurns !== void 0 && (
|
|
14113
|
+
data.pageTurns !== void 0 && (validate477(data.pageTurns, { instancePath: instancePath + "/pageTurns", parentData: data, parentDataProperty: "pageTurns", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate477.errors : vErrors.concat(validate477.errors), errors = vErrors.length));
|
|
13845
14114
|
} else {
|
|
13846
14115
|
let err23 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13847
14116
|
vErrors === null ? vErrors = [err23] : vErrors.push(err23), errors++;
|
|
13848
14117
|
}
|
|
13849
|
-
return
|
|
14118
|
+
return validate476.errors = vErrors, errors === 0;
|
|
13850
14119
|
}
|
|
13851
|
-
|
|
13852
|
-
var
|
|
13853
|
-
function
|
|
13854
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
14120
|
+
validate476.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
14121
|
+
var schema481 = { type: "string", enum: ["full", "short", "hidden"] };
|
|
14122
|
+
function validate480(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
14123
|
+
let vErrors = null, errors = 0, evaluated0 = validate480.evaluated;
|
|
13855
14124
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13856
14125
|
if (data.firstSystem === void 0) {
|
|
13857
14126
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "firstSystem" }, message: "must have required property 'firstSystem'" };
|
|
@@ -13873,7 +14142,7 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13873
14142
|
vErrors === null ? vErrors = [err3] : vErrors.push(err3), errors++;
|
|
13874
14143
|
}
|
|
13875
14144
|
if (!(data0 === "full" || data0 === "short" || data0 === "hidden")) {
|
|
13876
|
-
let err4 = { instancePath: instancePath + "/firstSystem", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues:
|
|
14145
|
+
let err4 = { instancePath: instancePath + "/firstSystem", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema481.enum }, message: "must be equal to one of the allowed values" };
|
|
13877
14146
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
13878
14147
|
}
|
|
13879
14148
|
}
|
|
@@ -13884,7 +14153,7 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13884
14153
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
13885
14154
|
}
|
|
13886
14155
|
if (!(data1 === "full" || data1 === "short" || data1 === "hidden")) {
|
|
13887
|
-
let err6 = { instancePath: instancePath + "/subsequentSystems", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues:
|
|
14156
|
+
let err6 = { instancePath: instancePath + "/subsequentSystems", schemaPath: "#/$defs/instrument-name-display-policy/enum", keyword: "enum", params: { allowedValues: schema481.enum }, message: "must be equal to one of the allowed values" };
|
|
13888
14157
|
vErrors === null ? vErrors = [err6] : vErrors.push(err6), errors++;
|
|
13889
14158
|
}
|
|
13890
14159
|
}
|
|
@@ -13892,12 +14161,12 @@ function validate478(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
13892
14161
|
let err7 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
13893
14162
|
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
13894
14163
|
}
|
|
13895
|
-
return
|
|
14164
|
+
return validate480.errors = vErrors, errors === 0;
|
|
13896
14165
|
}
|
|
13897
|
-
|
|
13898
|
-
var
|
|
13899
|
-
function
|
|
13900
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
14166
|
+
validate480.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
14167
|
+
var schema483 = { 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 };
|
|
14168
|
+
function validate484(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
14169
|
+
let vErrors = null, errors = 0, evaluated0 = validate484.evaluated;
|
|
13901
14170
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
13902
14171
|
if (data.partId === void 0) {
|
|
13903
14172
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "partId" }, message: "must have required property 'partId'" };
|
|
@@ -14091,11 +14360,11 @@ function validate482(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14091
14360
|
let err35 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
14092
14361
|
vErrors === null ? vErrors = [err35] : vErrors.push(err35), errors++;
|
|
14093
14362
|
}
|
|
14094
|
-
return
|
|
14363
|
+
return validate484.errors = vErrors, errors === 0;
|
|
14095
14364
|
}
|
|
14096
|
-
|
|
14097
|
-
function
|
|
14098
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
14365
|
+
validate484.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
14366
|
+
function validate482(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
14367
|
+
let vErrors = null, errors = 0, evaluated0 = validate482.evaluated;
|
|
14099
14368
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
14100
14369
|
if (data.id === void 0) {
|
|
14101
14370
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
|
|
@@ -14118,7 +14387,7 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14118
14387
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
14119
14388
|
}
|
|
14120
14389
|
for (let key0 in data)
|
|
14121
|
-
if (!func1.call(
|
|
14390
|
+
if (!func1.call(schema483.properties, key0)) {
|
|
14122
14391
|
let err5 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
14123
14392
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
14124
14393
|
}
|
|
@@ -14298,7 +14567,7 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14298
14567
|
vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
|
|
14299
14568
|
}
|
|
14300
14569
|
if (!(data10 === "top" || data10 === "right" || data10 === "bottom" || data10 === "left" || data10 === "top-left" || data10 === "top-right" || data10 === "bottom-right" || data10 === "bottom-left")) {
|
|
14301
|
-
let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues:
|
|
14570
|
+
let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema432.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
|
|
14302
14571
|
vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
|
|
14303
14572
|
}
|
|
14304
14573
|
}
|
|
@@ -14431,7 +14700,7 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14431
14700
|
vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
|
|
14432
14701
|
}
|
|
14433
14702
|
if (!(data20 === "left" || data20 === "center" || data20 === "right")) {
|
|
14434
|
-
let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues:
|
|
14703
|
+
let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema483.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
|
|
14435
14704
|
vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
|
|
14436
14705
|
}
|
|
14437
14706
|
}
|
|
@@ -14442,7 +14711,7 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14442
14711
|
vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
|
|
14443
14712
|
}
|
|
14444
14713
|
if (!(data21 === "left" || data21 === "center" || data21 === "right" || data21 === "justify")) {
|
|
14445
|
-
let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues:
|
|
14714
|
+
let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema483.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
|
|
14446
14715
|
vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
|
|
14447
14716
|
}
|
|
14448
14717
|
}
|
|
@@ -14465,7 +14734,7 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14465
14734
|
vErrors === null ? vErrors = [err67] : vErrors.push(err67), errors++;
|
|
14466
14735
|
}
|
|
14467
14736
|
if (!(data23 === "none" || data23 === "solid")) {
|
|
14468
|
-
let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues:
|
|
14737
|
+
let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema483.properties.border.enum }, message: "must be equal to one of the allowed values" };
|
|
14469
14738
|
vErrors === null ? vErrors = [err68] : vErrors.push(err68), errors++;
|
|
14470
14739
|
}
|
|
14471
14740
|
}
|
|
@@ -14514,28 +14783,28 @@ function validate480(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14514
14783
|
vErrors === null ? vErrors = [err76] : vErrors.push(err76), errors++;
|
|
14515
14784
|
}
|
|
14516
14785
|
}
|
|
14517
|
-
data.staffAttachment !== void 0 && (
|
|
14786
|
+
data.staffAttachment !== void 0 && (validate484(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate484.errors : vErrors.concat(validate484.errors), errors = vErrors.length));
|
|
14518
14787
|
} else {
|
|
14519
14788
|
let err77 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
14520
14789
|
vErrors === null ? vErrors = [err77] : vErrors.push(err77), errors++;
|
|
14521
14790
|
}
|
|
14522
|
-
return
|
|
14791
|
+
return validate482.errors = vErrors, errors === 0;
|
|
14523
14792
|
}
|
|
14524
|
-
|
|
14525
|
-
function
|
|
14526
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
14793
|
+
validate482.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
14794
|
+
function validate475(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
14795
|
+
let vErrors = null, errors = 0, evaluated0 = validate475.evaluated;
|
|
14527
14796
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
14528
14797
|
for (let key0 in data)
|
|
14529
14798
|
if (!(key0 === "pageSetup" || key0 === "instrumentNameDisplay" || key0 === "textFrames" || key0 === "layoutBreaks")) {
|
|
14530
14799
|
let err0 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
14531
14800
|
vErrors === null ? vErrors = [err0] : vErrors.push(err0), errors++;
|
|
14532
14801
|
}
|
|
14533
|
-
if (data.pageSetup !== void 0 && (
|
|
14802
|
+
if (data.pageSetup !== void 0 && (validate476(data.pageSetup, { instancePath: instancePath + "/pageSetup", parentData: data, parentDataProperty: "pageSetup", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate476.errors : vErrors.concat(validate476.errors), errors = vErrors.length)), data.instrumentNameDisplay !== void 0 && (validate480(data.instrumentNameDisplay, { instancePath: instancePath + "/instrumentNameDisplay", parentData: data, parentDataProperty: "instrumentNameDisplay", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate480.errors : vErrors.concat(validate480.errors), errors = vErrors.length)), data.textFrames !== void 0) {
|
|
14534
14803
|
let data2 = data.textFrames;
|
|
14535
14804
|
if (Array.isArray(data2)) {
|
|
14536
14805
|
let len0 = data2.length;
|
|
14537
14806
|
for (let i0 = 0; i0 < len0; i0++)
|
|
14538
|
-
|
|
14807
|
+
validate482(data2[i0], { instancePath: instancePath + "/textFrames/" + i0, parentData: data2, parentDataProperty: i0, rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate482.errors : vErrors.concat(validate482.errors), errors = vErrors.length);
|
|
14539
14808
|
} else {
|
|
14540
14809
|
let err1 = { instancePath: instancePath + "/textFrames", schemaPath: "#/properties/textFrames/type", keyword: "type", params: { type: "array" }, message: "must be array" };
|
|
14541
14810
|
vErrors === null ? vErrors = [err1] : vErrors.push(err1), errors++;
|
|
@@ -14580,7 +14849,7 @@ function validate473(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14580
14849
|
vErrors === null ? vErrors = [err7] : vErrors.push(err7), errors++;
|
|
14581
14850
|
}
|
|
14582
14851
|
if (!(data7 === "system" || data7 === "page")) {
|
|
14583
|
-
let err8 = { instancePath: instancePath + "/layoutBreaks/" + i1 + "/kind", schemaPath: "#/$defs/layout-break/properties/kind/enum", keyword: "enum", params: { allowedValues:
|
|
14852
|
+
let err8 = { instancePath: instancePath + "/layoutBreaks/" + i1 + "/kind", schemaPath: "#/$defs/layout-break/properties/kind/enum", keyword: "enum", params: { allowedValues: schema492.properties.kind.enum }, message: "must be equal to one of the allowed values" };
|
|
14584
14853
|
vErrors === null ? vErrors = [err8] : vErrors.push(err8), errors++;
|
|
14585
14854
|
}
|
|
14586
14855
|
}
|
|
@@ -14598,12 +14867,12 @@ function validate473(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14598
14867
|
let err11 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
14599
14868
|
vErrors === null ? vErrors = [err11] : vErrors.push(err11), errors++;
|
|
14600
14869
|
}
|
|
14601
|
-
return
|
|
14870
|
+
return validate475.errors = vErrors, errors === 0;
|
|
14602
14871
|
}
|
|
14603
|
-
|
|
14604
|
-
var textFrame =
|
|
14605
|
-
function
|
|
14606
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
14872
|
+
validate475.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
14873
|
+
var textFrame = validate487;
|
|
14874
|
+
function validate487(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
14875
|
+
let vErrors = null, errors = 0, evaluated0 = validate487.evaluated;
|
|
14607
14876
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
14608
14877
|
if (data.id === void 0) {
|
|
14609
14878
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
|
|
@@ -14626,7 +14895,7 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14626
14895
|
vErrors === null ? vErrors = [err4] : vErrors.push(err4), errors++;
|
|
14627
14896
|
}
|
|
14628
14897
|
for (let key0 in data)
|
|
14629
|
-
if (!func1.call(
|
|
14898
|
+
if (!func1.call(schema483.properties, key0)) {
|
|
14630
14899
|
let err5 = { instancePath, schemaPath: "#/additionalProperties", keyword: "additionalProperties", params: { additionalProperty: key0 }, message: "must NOT have additional properties" };
|
|
14631
14900
|
vErrors === null ? vErrors = [err5] : vErrors.push(err5), errors++;
|
|
14632
14901
|
}
|
|
@@ -14806,7 +15075,7 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14806
15075
|
vErrors === null ? vErrors = [err36] : vErrors.push(err36), errors++;
|
|
14807
15076
|
}
|
|
14808
15077
|
if (!(data10 === "top" || data10 === "right" || data10 === "bottom" || data10 === "left" || data10 === "top-left" || data10 === "top-right" || data10 === "bottom-right" || data10 === "bottom-left")) {
|
|
14809
|
-
let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues:
|
|
15078
|
+
let err37 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema432.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
|
|
14810
15079
|
vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
|
|
14811
15080
|
}
|
|
14812
15081
|
}
|
|
@@ -14939,7 +15208,7 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14939
15208
|
vErrors === null ? vErrors = [err61] : vErrors.push(err61), errors++;
|
|
14940
15209
|
}
|
|
14941
15210
|
if (!(data20 === "left" || data20 === "center" || data20 === "right")) {
|
|
14942
|
-
let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues:
|
|
15211
|
+
let err62 = { instancePath: instancePath + "/horizontalAlignment", schemaPath: "#/properties/horizontalAlignment/enum", keyword: "enum", params: { allowedValues: schema483.properties.horizontalAlignment.enum }, message: "must be equal to one of the allowed values" };
|
|
14943
15212
|
vErrors === null ? vErrors = [err62] : vErrors.push(err62), errors++;
|
|
14944
15213
|
}
|
|
14945
15214
|
}
|
|
@@ -14950,7 +15219,7 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14950
15219
|
vErrors === null ? vErrors = [err63] : vErrors.push(err63), errors++;
|
|
14951
15220
|
}
|
|
14952
15221
|
if (!(data21 === "left" || data21 === "center" || data21 === "right" || data21 === "justify")) {
|
|
14953
|
-
let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues:
|
|
15222
|
+
let err64 = { instancePath: instancePath + "/paragraphJustification", schemaPath: "#/properties/paragraphJustification/enum", keyword: "enum", params: { allowedValues: schema483.properties.paragraphJustification.enum }, message: "must be equal to one of the allowed values" };
|
|
14954
15223
|
vErrors === null ? vErrors = [err64] : vErrors.push(err64), errors++;
|
|
14955
15224
|
}
|
|
14956
15225
|
}
|
|
@@ -14973,7 +15242,7 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
14973
15242
|
vErrors === null ? vErrors = [err67] : vErrors.push(err67), errors++;
|
|
14974
15243
|
}
|
|
14975
15244
|
if (!(data23 === "none" || data23 === "solid")) {
|
|
14976
|
-
let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues:
|
|
15245
|
+
let err68 = { instancePath: instancePath + "/border", schemaPath: "#/properties/border/enum", keyword: "enum", params: { allowedValues: schema483.properties.border.enum }, message: "must be equal to one of the allowed values" };
|
|
14977
15246
|
vErrors === null ? vErrors = [err68] : vErrors.push(err68), errors++;
|
|
14978
15247
|
}
|
|
14979
15248
|
}
|
|
@@ -15022,17 +15291,17 @@ function validate485(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
15022
15291
|
vErrors === null ? vErrors = [err76] : vErrors.push(err76), errors++;
|
|
15023
15292
|
}
|
|
15024
15293
|
}
|
|
15025
|
-
data.staffAttachment !== void 0 && (
|
|
15294
|
+
data.staffAttachment !== void 0 && (validate484(data.staffAttachment, { instancePath: instancePath + "/staffAttachment", parentData: data, parentDataProperty: "staffAttachment", rootData, dynamicAnchors }) || (vErrors = vErrors === null ? validate484.errors : vErrors.concat(validate484.errors), errors = vErrors.length));
|
|
15026
15295
|
} else {
|
|
15027
15296
|
let err77 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
15028
15297
|
vErrors === null ? vErrors = [err77] : vErrors.push(err77), errors++;
|
|
15029
15298
|
}
|
|
15030
|
-
return
|
|
15299
|
+
return validate487.errors = vErrors, errors === 0;
|
|
15031
15300
|
}
|
|
15032
|
-
|
|
15033
|
-
var systemText =
|
|
15034
|
-
function
|
|
15035
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
15301
|
+
validate487.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
15302
|
+
var systemText = validate490;
|
|
15303
|
+
function validate490(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
15304
|
+
let vErrors = null, errors = 0, evaluated0 = validate490.evaluated;
|
|
15036
15305
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
15037
15306
|
if (data.id === void 0) {
|
|
15038
15307
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
|
|
@@ -15272,12 +15541,12 @@ function validate488(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
15272
15541
|
let err42 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
15273
15542
|
vErrors === null ? vErrors = [err42] : vErrors.push(err42), errors++;
|
|
15274
15543
|
}
|
|
15275
|
-
return
|
|
15544
|
+
return validate490.errors = vErrors, errors === 0;
|
|
15276
15545
|
}
|
|
15277
|
-
|
|
15278
|
-
var staffTextFramePresentation =
|
|
15279
|
-
function
|
|
15280
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
15546
|
+
validate490.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
15547
|
+
var staffTextFramePresentation = validate492;
|
|
15548
|
+
function validate492(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
15549
|
+
let vErrors = null, errors = 0, evaluated0 = validate492.evaluated;
|
|
15281
15550
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
15282
15551
|
for (let key0 in data)
|
|
15283
15552
|
if (!(key0 === "width" || key0 === "horizontalAlignment" || key0 === "paragraphJustification" || key0 === "padding" || key0 === "border" || key0 === "eraseBackground")) {
|
|
@@ -15374,12 +15643,12 @@ function validate490(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
15374
15643
|
let err17 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
15375
15644
|
vErrors === null ? vErrors = [err17] : vErrors.push(err17), errors++;
|
|
15376
15645
|
}
|
|
15377
|
-
return
|
|
15646
|
+
return validate492.errors = vErrors, errors === 0;
|
|
15378
15647
|
}
|
|
15379
|
-
|
|
15380
|
-
var textFramePagePosition =
|
|
15381
|
-
function
|
|
15382
|
-
let vErrors = null, errors = 0, evaluated0 =
|
|
15648
|
+
validate492.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
15649
|
+
var textFramePagePosition = validate493;
|
|
15650
|
+
function validate493(data, { instancePath = "", parentData, parentDataProperty, rootData = data, dynamicAnchors = {} } = {}) {
|
|
15651
|
+
let vErrors = null, errors = 0, evaluated0 = validate493.evaluated;
|
|
15383
15652
|
if (evaluated0.dynamicProps && (evaluated0.props = void 0), evaluated0.dynamicItems && (evaluated0.items = void 0), data && typeof data == "object" && !Array.isArray(data)) {
|
|
15384
15653
|
if (data.id === void 0) {
|
|
15385
15654
|
let err0 = { instancePath, schemaPath: "#/required", keyword: "required", params: { missingProperty: "id" }, message: "must have required property 'id'" };
|
|
@@ -15589,7 +15858,7 @@ function validate491(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
15589
15858
|
vErrors === null ? vErrors = [err37] : vErrors.push(err37), errors++;
|
|
15590
15859
|
}
|
|
15591
15860
|
if (!(data11 === "top" || data11 === "right" || data11 === "bottom" || data11 === "left" || data11 === "top-left" || data11 === "top-right" || data11 === "bottom-right" || data11 === "bottom-left")) {
|
|
15592
|
-
let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues:
|
|
15861
|
+
let err38 = { instancePath: instancePath + "/placement/anchor", schemaPath: "#/$defs/text-frame-placement/properties/anchor/enum", keyword: "enum", params: { allowedValues: schema432.properties.anchor.enum }, message: "must be equal to one of the allowed values" };
|
|
15593
15862
|
vErrors === null ? vErrors = [err38] : vErrors.push(err38), errors++;
|
|
15594
15863
|
}
|
|
15595
15864
|
}
|
|
@@ -15760,9 +16029,9 @@ function validate491(data, { instancePath = "", parentData, parentDataProperty,
|
|
|
15760
16029
|
let err69 = { instancePath, schemaPath: "#/type", keyword: "type", params: { type: "object" }, message: "must be object" };
|
|
15761
16030
|
vErrors === null ? vErrors = [err69] : vErrors.push(err69), errors++;
|
|
15762
16031
|
}
|
|
15763
|
-
return
|
|
16032
|
+
return validate493.errors = vErrors, errors === 0;
|
|
15764
16033
|
}
|
|
15765
|
-
|
|
16034
|
+
validate493.evaluated = { props: !0, dynamicProps: !1, dynamicItems: !1 };
|
|
15766
16035
|
|
|
15767
16036
|
// packages/format/src/mnx/staffTextFrame.ts
|
|
15768
16037
|
function parseTextFramePagePosition(raw) {
|
|
@@ -16070,12 +16339,14 @@ function rejectRetiredNavigationExtensions(raw) {
|
|
|
16070
16339
|
);
|
|
16071
16340
|
}
|
|
16072
16341
|
function parseGradualTempo(raw) {
|
|
16342
|
+
if (!gradualTempo(raw))
|
|
16343
|
+
throw new Error("Invalid tempo ramp: provide positive tempo targets, one target mode, and a supported curve.");
|
|
16073
16344
|
let gt = {
|
|
16074
16345
|
position: parseRhythmicPosition(raw.position),
|
|
16075
16346
|
end: parseMeasureRhythmicPosition(raw.end),
|
|
16076
|
-
endBpm: raw.endBpm
|
|
16347
|
+
...raw.endBpm !== void 0 ? { endBpm: raw.endBpm } : { endRatio: raw.endRatio }
|
|
16077
16348
|
};
|
|
16078
|
-
return raw.startBpm !== void 0 && (gt.startBpm = raw.startBpm), raw.kind && (gt.kind = raw.kind), gt;
|
|
16349
|
+
return raw.startBpm !== void 0 && (gt.startBpm = raw.startBpm), raw.kind && (gt.kind = raw.kind), raw.curve && (gt.curve = raw.curve), raw.systemTextId && (gt.systemTextId = raw.systemTextId), gt;
|
|
16079
16350
|
}
|
|
16080
16351
|
function parseTimeSignature(raw) {
|
|
16081
16352
|
let ts = {
|
|
@@ -16250,23 +16521,23 @@ function parseSlur(raw) {
|
|
|
16250
16521
|
raw.side && (slur.side = raw.side), raw.sideEnd && (slur.sideEnd = raw.sideEnd), raw.lineType && (slur.lineType = raw.lineType), raw.startNote && (slur.startNote = raw.startNote), raw.endNote && (slur.endNote = raw.endNote);
|
|
16251
16522
|
let shapeObj = raw._x?.viritura?.shape;
|
|
16252
16523
|
if (shapeObj) {
|
|
16253
|
-
let
|
|
16524
|
+
let shape2 = {}, readPair = (v) => {
|
|
16254
16525
|
if (Array.isArray(v) && v.length === 2 && typeof v[0] == "number" && typeof v[1] == "number")
|
|
16255
16526
|
return [v[0], v[1]];
|
|
16256
16527
|
}, p0 = readPair(shapeObj.p0);
|
|
16257
|
-
p0 && (
|
|
16528
|
+
p0 && (shape2.p0 = p0);
|
|
16258
16529
|
let p1 = readPair(shapeObj.p1);
|
|
16259
|
-
p1 && (
|
|
16530
|
+
p1 && (shape2.p1 = p1);
|
|
16260
16531
|
let p2 = readPair(shapeObj.p2);
|
|
16261
|
-
p2 && (
|
|
16532
|
+
p2 && (shape2.p2 = p2);
|
|
16262
16533
|
let p3 = readPair(shapeObj.p3);
|
|
16263
|
-
p3 && (
|
|
16534
|
+
p3 && (shape2.p3 = p3), (shape2.p0 || shape2.p1 || shape2.p2 || shape2.p3) && (slur.shape = shape2);
|
|
16264
16535
|
}
|
|
16265
16536
|
return slur;
|
|
16266
16537
|
}
|
|
16267
16538
|
function parseGlissando(raw) {
|
|
16268
16539
|
let gliss = { target: raw.target };
|
|
16269
|
-
return raw.kind && (gliss.kind = raw.kind), raw.style && (gliss.style = raw.style), raw.text && (gliss.text = raw.text), raw.showText !== void 0 && (gliss.showText = raw.showText), gliss;
|
|
16540
|
+
return raw.kind && (gliss.kind = raw.kind), raw.style && (gliss.style = raw.style), raw.playbackType && (gliss.playbackType = raw.playbackType), raw.text && (gliss.text = raw.text), raw.showText !== void 0 && (gliss.showText = raw.showText), gliss;
|
|
16270
16541
|
}
|
|
16271
16542
|
function parseNotes(arr) {
|
|
16272
16543
|
return arr.map(parseNote);
|
|
@@ -17223,6 +17494,20 @@ var TempoModel = class _TempoModel {
|
|
|
17223
17494
|
constructor(knots) {
|
|
17224
17495
|
this.knots = knots;
|
|
17225
17496
|
}
|
|
17497
|
+
/** Add holds without changing the already resolved BPM curves. */
|
|
17498
|
+
withInsertions(insertions) {
|
|
17499
|
+
if (insertions.length === 0) return this;
|
|
17500
|
+
let regions = this.knots.map((knot, index) => {
|
|
17501
|
+
let endBeat = this.knots[index + 1]?.beat ?? 1 / 0;
|
|
17502
|
+
return {
|
|
17503
|
+
startBeat: knot.beat,
|
|
17504
|
+
endBeat,
|
|
17505
|
+
startBpm: knot.bpm,
|
|
17506
|
+
endBpm: Number.isFinite(endBeat) ? knot.bpm + knot.slope * (endBeat - knot.beat) : knot.bpm
|
|
17507
|
+
};
|
|
17508
|
+
}), existing = this.knots.filter((knot) => knot.insertBefore > 0).map((knot) => ({ beat: knot.beat, seconds: knot.insertBefore }));
|
|
17509
|
+
return _TempoModel.build(regions, [...existing, ...insertions]);
|
|
17510
|
+
}
|
|
17226
17511
|
/** Realize selected source-beat intervals on one continuous performance axis. */
|
|
17227
17512
|
static concatenate(source, spans) {
|
|
17228
17513
|
let regions = [], insertions = [], outputBeat = 0;
|
|
@@ -17263,11 +17548,9 @@ var TempoModel = class _TempoModel {
|
|
|
17263
17548
|
let boundarySet = /* @__PURE__ */ new Set([0]);
|
|
17264
17549
|
for (let r of sorted) boundarySet.add(r.startBeat);
|
|
17265
17550
|
for (let ins of insByBeat.keys()) boundarySet.add(ins);
|
|
17266
|
-
let boundaries = [...boundarySet].sort((a, b) => a - b), tempoAt = (beat) => {
|
|
17267
|
-
|
|
17268
|
-
|
|
17269
|
-
if (r.startBeat <= beat + 1e-9) active = r;
|
|
17270
|
-
else break;
|
|
17551
|
+
let boundaries = [...boundarySet].sort((a, b) => a - b), activeIndex = -1, tempoAt = (beat) => {
|
|
17552
|
+
for (; activeIndex + 1 < sorted.length && sorted[activeIndex + 1].startBeat <= beat + 1e-9; ) activeIndex++;
|
|
17553
|
+
let active = sorted[activeIndex];
|
|
17271
17554
|
if (!active) {
|
|
17272
17555
|
let first = sorted[0];
|
|
17273
17556
|
return { bpm: first ? first.startBpm : 120, slope: 0 };
|
|
@@ -17359,6 +17642,68 @@ var TempoModel = class _TempoModel {
|
|
|
17359
17642
|
}
|
|
17360
17643
|
};
|
|
17361
17644
|
|
|
17645
|
+
// packages/midi/src/tempoRamps/index.ts
|
|
17646
|
+
init_define_import_meta_env();
|
|
17647
|
+
function shape(curve, u) {
|
|
17648
|
+
switch (curve) {
|
|
17649
|
+
case "linear":
|
|
17650
|
+
return u;
|
|
17651
|
+
case "early":
|
|
17652
|
+
return 1 - (1 - u) ** 2;
|
|
17653
|
+
case "late":
|
|
17654
|
+
return u * u;
|
|
17655
|
+
case "smooth":
|
|
17656
|
+
return u * u * (3 - 2 * u);
|
|
17657
|
+
}
|
|
17658
|
+
}
|
|
17659
|
+
function positive(value, label) {
|
|
17660
|
+
if (!Number.isFinite(value) || value <= 0) throw new RangeError(`${label} must be finite and greater than zero.`);
|
|
17661
|
+
return value;
|
|
17662
|
+
}
|
|
17663
|
+
function rampEnd({ declIdx, gt }, measures, starts, totalBeats) {
|
|
17664
|
+
let index = measures.findIndex((measure, i) => i >= declIdx && measure.id === gt.end.measure);
|
|
17665
|
+
index < 0 && /^\d+$/.test(gt.end.measure) && (index = Number(gt.end.measure));
|
|
17666
|
+
let start = starts[index];
|
|
17667
|
+
if (start === void 0) throw new RangeError(`Tempo ramp endpoint measure not found: ${gt.end.measure}`);
|
|
17668
|
+
let [numerator, denominator] = gt.end.position.fraction;
|
|
17669
|
+
positive(denominator, "Tempo ramp endpoint denominator");
|
|
17670
|
+
let end = start + numerator / denominator * 4, measureEnd = starts[index + 1] ?? totalBeats;
|
|
17671
|
+
if (end < start || end > measureEnd + 1e-9)
|
|
17672
|
+
throw new RangeError("Tempo ramp endpoint must be within its bar.");
|
|
17673
|
+
return end;
|
|
17674
|
+
}
|
|
17675
|
+
function curveRegions(start, end, stop, from, to, curve) {
|
|
17676
|
+
let regions = [], span = end - start, bpmAt = (beat) => from + (to - from) * shape(curve, (beat - start) / span), append = (a, b, depth) => {
|
|
17677
|
+
let startBpm = bpmAt(a), endBpm = bpmAt(b), minBpm = Math.min(startBpm, endBpm), du = (b - a) / span, bpmError = (curve === "linear" ? 0 : Math.abs(to - from) * (curve === "smooth" ? 6 : 2)) * du * du / 8, timeError = 60 * (b - a) * bpmError / (minBpm * minBpm);
|
|
17678
|
+
if (bpmError > 1e-3 || timeError > 1e-4 * (b - a) / span) {
|
|
17679
|
+
if (depth >= 20) throw new RangeError("Tempo ramp exceeds supported curve precision.");
|
|
17680
|
+
let mid = (a + b) / 2;
|
|
17681
|
+
append(a, mid, depth + 1), append(mid, b, depth + 1);
|
|
17682
|
+
} else {
|
|
17683
|
+
if (regions.length >= 8192) throw new RangeError("Tempo ramp exceeds supported curve precision.");
|
|
17684
|
+
regions.push({ startBeat: a, endBeat: b, startBpm, endBpm });
|
|
17685
|
+
}
|
|
17686
|
+
};
|
|
17687
|
+
return append(start, stop, 0), regions;
|
|
17688
|
+
}
|
|
17689
|
+
function compileTempoRamps(anchors, declarations, measures, starts, totalBeats) {
|
|
17690
|
+
let regions = [...anchors], previousEnd = -1 / 0;
|
|
17691
|
+
for (let declaration of [...declarations].sort((a, b) => a.startBeat - b.startBeat)) {
|
|
17692
|
+
let { gt, startBeat } = declaration, end = rampEnd(declaration, measures, starts, totalBeats);
|
|
17693
|
+
positive(gt.position.fraction[1], "Tempo ramp start denominator");
|
|
17694
|
+
let barStart = starts[declaration.declIdx], barEnd = starts[declaration.declIdx + 1] ?? totalBeats;
|
|
17695
|
+
if (startBeat < barStart || startBeat > barEnd) throw new RangeError("Tempo ramp start must be within its bar.");
|
|
17696
|
+
if (!Number.isFinite(startBeat) || startBeat < 0 || !Number.isFinite(end) || end <= startBeat || end > totalBeats)
|
|
17697
|
+
throw new RangeError("Tempo ramp must have a positive span within the score.");
|
|
17698
|
+
if (startBeat < previousEnd - 1e-9) throw new RangeError("Tempo ramps must not overlap.");
|
|
17699
|
+
if (previousEnd = end, gt.endBpm === void 0 == (gt.endRatio === void 0))
|
|
17700
|
+
throw new RangeError("Tempo ramp requires exactly one BPM or ratio target.");
|
|
17701
|
+
let from = positive(gt.startBpm ?? TempoModel.build(regions).bpmAtBeat(startBeat), "Tempo ramp start BPM"), to = positive(gt.endBpm ?? from * positive(gt.endRatio, "Tempo ramp target ratio"), "Tempo ramp target BPM"), stop = anchors.filter((anchor) => anchor.startBeat > startBeat + 1e-9 && anchor.startBeat < end).sort((a, b) => a.startBeat - b.startBeat)[0]?.startBeat ?? end;
|
|
17702
|
+
regions.push(...curveRegions(startBeat, end, stop, from, to, gt.curve ?? "linear")), anchors.some((anchor) => Math.abs(anchor.startBeat - stop) < 1e-9) || regions.push({ startBeat: stop, endBeat: 1 / 0, startBpm: to, endBpm: to });
|
|
17703
|
+
}
|
|
17704
|
+
return regions;
|
|
17705
|
+
}
|
|
17706
|
+
|
|
17362
17707
|
// packages/midi/src/tempoMap.ts
|
|
17363
17708
|
function playbackNominalTime(gm) {
|
|
17364
17709
|
return gm.__playbackNominalTime;
|
|
@@ -17374,42 +17719,25 @@ function tempoNoteBeats(base, dots) {
|
|
|
17374
17719
|
function effectiveQpm(bpm, tempoBase, tempoDots) {
|
|
17375
17720
|
return bpm * tempoNoteBeats(tempoBase, tempoDots);
|
|
17376
17721
|
}
|
|
17377
|
-
function
|
|
17378
|
-
let
|
|
17379
|
-
|
|
17380
|
-
let
|
|
17381
|
-
|
|
17382
|
-
|
|
17383
|
-
|
|
17384
|
-
|
|
17385
|
-
|
|
17386
|
-
|
|
17387
|
-
|
|
17388
|
-
|
|
17389
|
-
|
|
17390
|
-
|
|
17391
|
-
changes.sort((a, b) => a.beatOffset - b.beatOffset);
|
|
17392
|
-
}
|
|
17393
|
-
let beatCursor = 0;
|
|
17394
|
-
for (let change of changes)
|
|
17395
|
-
change.beatOffset > beatCursor && (absoluteTime += (change.beatOffset - beatCursor) * currentSpq, beatCursor = change.beatOffset), tempoMap.push({
|
|
17396
|
-
measureIndex: m,
|
|
17397
|
-
beatInMeasure: change.beatOffset,
|
|
17398
|
-
timeSeconds: absoluteTime,
|
|
17399
|
-
bpm: change.qpm
|
|
17400
|
-
}), m === 0 && change.beatOffset === 0 && (hasInitialTempo = !0), currentQpm = change.qpm, currentSpq = 60 / currentQpm;
|
|
17401
|
-
mBeats > beatCursor && (absoluteTime += (mBeats - beatCursor) * currentSpq);
|
|
17402
|
-
let measureHolds = holds?.[m];
|
|
17403
|
-
if (measureHolds)
|
|
17404
|
-
for (let hold of measureHolds)
|
|
17405
|
-
absoluteTime += hold.extraBeats * measureStartSpq;
|
|
17406
|
-
}
|
|
17407
|
-
return hasInitialTempo || tempoMap.unshift({
|
|
17722
|
+
function tempoMapEntries(globalMeasures, timing) {
|
|
17723
|
+
let { model, measureStartBeats } = timing, tempoMap = [];
|
|
17724
|
+
return globalMeasures.forEach((measure, measureIndex) => {
|
|
17725
|
+
for (let tempo of [...measure.tempos ?? []].sort((a, b) => tempoBeat(a) - tempoBeat(b))) {
|
|
17726
|
+
if (tempo.bpm === void 0) continue;
|
|
17727
|
+
let beatInMeasure = tempoBeat(tempo), beat = measureStartBeats[measureIndex] + beatInMeasure;
|
|
17728
|
+
tempoMap.push({
|
|
17729
|
+
measureIndex,
|
|
17730
|
+
beatInMeasure,
|
|
17731
|
+
timeSeconds: beat === 0 ? 0 : model.timeAtBeat(beat),
|
|
17732
|
+
bpm: model.bpmAtBeat(beat)
|
|
17733
|
+
});
|
|
17734
|
+
}
|
|
17735
|
+
}), tempoMap.some((entry) => entry.measureIndex === 0 && entry.beatInMeasure === 0) || tempoMap.unshift({
|
|
17408
17736
|
measureIndex: 0,
|
|
17409
17737
|
beatInMeasure: 0,
|
|
17410
17738
|
timeSeconds: 0,
|
|
17411
|
-
bpm:
|
|
17412
|
-
}),
|
|
17739
|
+
bpm: model.bpmAtBeat(0)
|
|
17740
|
+
}), tempoMap;
|
|
17413
17741
|
}
|
|
17414
17742
|
function buildTempoModel(globalMeasures, holds) {
|
|
17415
17743
|
let regions = [], measureStartBeats = [], cumBeats = 0, currentTime = { count: DEFAULT_TIME.count, unit: DEFAULT_TIME.unit }, gradualDecls = [];
|
|
@@ -17431,18 +17759,7 @@ function buildTempoModel(globalMeasures, holds) {
|
|
|
17431
17759
|
startBeat: cumBeats + posBeats(gm.gradualTempo.position.fraction)
|
|
17432
17760
|
}), cumBeats += mBeats;
|
|
17433
17761
|
}
|
|
17434
|
-
|
|
17435
|
-
let idToIdx = buildMeasureIdToIndex(globalMeasures), constModel = TempoModel.build(regions);
|
|
17436
|
-
for (let { declIdx, gt, startBeat } of gradualDecls) {
|
|
17437
|
-
let endBeat = resolveGradualEndBeat(gt.end, declIdx, globalMeasures, measureStartBeats, idToIdx);
|
|
17438
|
-
if (endBeat === void 0 || endBeat <= startBeat + 1e-9) continue;
|
|
17439
|
-
let startBpm = gt.startBpm ?? constModel.bpmAtBeat(startBeat);
|
|
17440
|
-
regions.push({ startBeat, endBeat, startBpm, endBpm: gt.endBpm }), regions.some((r) => Math.abs(r.startBeat - endBeat) < 1e-9) || regions.push({ startBeat: endBeat, endBeat: 1 / 0, startBpm: gt.endBpm, endBpm: gt.endBpm });
|
|
17441
|
-
}
|
|
17442
|
-
}
|
|
17443
|
-
regions.sort((a, b) => a.startBeat - b.startBeat);
|
|
17444
|
-
for (let i = 0; i < regions.length - 1; i++)
|
|
17445
|
-
regions[i].endBeat = regions[i + 1].startBeat;
|
|
17762
|
+
(regions.length === 0 || regions.every((r) => r.startBeat > 1e-9)) && regions.unshift({ startBeat: 0, endBeat: 1 / 0, startBpm: DEFAULT_BPM, endBpm: DEFAULT_BPM }), regions = compileTempoRamps(regions, gradualDecls, globalMeasures, measureStartBeats, cumBeats);
|
|
17446
17763
|
let regionsModel = TempoModel.build(regions), insertions = [];
|
|
17447
17764
|
if (holds)
|
|
17448
17765
|
for (let m = 0; m < holds.length; m++) {
|
|
@@ -17458,23 +17775,6 @@ function buildTempoModel(globalMeasures, holds) {
|
|
|
17458
17775
|
function posBeats(frac) {
|
|
17459
17776
|
return !frac || frac[1] === 0 ? 0 : frac[0] / frac[1] * 4;
|
|
17460
17777
|
}
|
|
17461
|
-
function buildMeasureIdToIndex(globalMeasures) {
|
|
17462
|
-
let m = /* @__PURE__ */ new Map();
|
|
17463
|
-
return globalMeasures.forEach((gm, i) => {
|
|
17464
|
-
gm.id && !m.has(gm.id) && m.set(gm.id, i);
|
|
17465
|
-
}), m;
|
|
17466
|
-
}
|
|
17467
|
-
function resolveGradualEndBeat(end, fromIdx, globalMeasures, measureStartBeats, idToIdx) {
|
|
17468
|
-
let idx = idToIdx.get(end.measure);
|
|
17469
|
-
if (idx === void 0) {
|
|
17470
|
-
let parsed = Number.parseInt(end.measure, 10);
|
|
17471
|
-
!Number.isNaN(parsed) && parsed >= 0 && parsed < globalMeasures.length && (idx = parsed);
|
|
17472
|
-
}
|
|
17473
|
-
idx === void 0 && (idx = fromIdx);
|
|
17474
|
-
let start = measureStartBeats[idx];
|
|
17475
|
-
if (start !== void 0)
|
|
17476
|
-
return start + posBeats(end.position.fraction);
|
|
17477
|
-
}
|
|
17478
17778
|
function tempoBeat(tempo) {
|
|
17479
17779
|
return tempo.location ? posBeats(tempo.location.fraction) : 0;
|
|
17480
17780
|
}
|
|
@@ -17765,7 +18065,7 @@ function realizeNavigation(timeline, spans, crossJumpContinuations = /* @__PURE_
|
|
|
17765
18065
|
events
|
|
17766
18066
|
), outputBeat += span.endBeat - span.startBeat;
|
|
17767
18067
|
}
|
|
17768
|
-
let rank = { noteOff: 0, programChange: 1, controlChange: 2, noteOn: 3 };
|
|
18068
|
+
let rank = { noteOff: 0, programChange: 1, controlChange: 2, pitchBend: 2, noteOn: 3 };
|
|
17769
18069
|
return events.sort((a, b) => a.time - b.time || rank[a.type] - rank[b.type]), {
|
|
17770
18070
|
...timeline,
|
|
17771
18071
|
events,
|
|
@@ -17906,6 +18206,159 @@ function expandScoreMeasureRepeats(score) {
|
|
|
17906
18206
|
return parts.every((part, index) => part === score.parts[index]) ? score : { ...score, parts };
|
|
17907
18207
|
}
|
|
17908
18208
|
|
|
18209
|
+
// packages/midi/src/glissandoPlayback/index.ts
|
|
18210
|
+
init_define_import_meta_env();
|
|
18211
|
+
function linesForPart(score, partIndex) {
|
|
18212
|
+
let lines = [];
|
|
18213
|
+
for (let measure of score.parts[partIndex]?.measures ?? [])
|
|
18214
|
+
for (let sequence of measure.sequences)
|
|
18215
|
+
for (let { event } of walkSequenceEvents(sequence.content))
|
|
18216
|
+
if (event.glissandos?.length) {
|
|
18217
|
+
if (!event.id) throw new Error("Glissando source event requires an ID.");
|
|
18218
|
+
for (let glissando of event.glissandos) lines.push({ source: event.id, glissando });
|
|
18219
|
+
}
|
|
18220
|
+
return lines;
|
|
18221
|
+
}
|
|
18222
|
+
function noteKey(event) {
|
|
18223
|
+
return JSON.stringify([event.partIndex, event.playbackLaneId, event.playbackInstrumentKey, event.midiNote]);
|
|
18224
|
+
}
|
|
18225
|
+
function releasesFor(events) {
|
|
18226
|
+
let held = /* @__PURE__ */ new Map(), releases = /* @__PURE__ */ new Map();
|
|
18227
|
+
for (let event of events) {
|
|
18228
|
+
let key = noteKey(event);
|
|
18229
|
+
if (event.type === "noteOn") {
|
|
18230
|
+
let queue = held.get(key) ?? [];
|
|
18231
|
+
queue.push(event), held.set(key, queue);
|
|
18232
|
+
} else if (event.type === "noteOff") {
|
|
18233
|
+
let onset = held.get(key)?.shift();
|
|
18234
|
+
onset && releases.set(onset, event);
|
|
18235
|
+
}
|
|
18236
|
+
}
|
|
18237
|
+
return releases;
|
|
18238
|
+
}
|
|
18239
|
+
function measureAt(timeline, beat) {
|
|
18240
|
+
let index = 0;
|
|
18241
|
+
for (; index + 1 < timeline.measureStartBeats.length && timeline.measureStartBeats[index + 1] <= beat + 1e-9; )
|
|
18242
|
+
index++;
|
|
18243
|
+
return index;
|
|
18244
|
+
}
|
|
18245
|
+
function continuousTo(timeline, start, end) {
|
|
18246
|
+
let startBeat = start.scoreBeat ?? timeline.model.beatAtTime(start.time), endBeat = end.scoreBeat ?? timeline.model.beatAtTime(end.time);
|
|
18247
|
+
for (let index = measureAt(timeline, startBeat); index < measureAt(timeline, endBeat); index++)
|
|
18248
|
+
if (timeline.playedSpans) {
|
|
18249
|
+
if (!playedSpansContinue(timeline.playedSpans[index], timeline.playedSpans[index + 1])) return !1;
|
|
18250
|
+
} else if (timeline.expandedMeasureToOriginal[index + 1] !== timeline.expandedMeasureToOriginal[index] + 1)
|
|
18251
|
+
return !1;
|
|
18252
|
+
return !0;
|
|
18253
|
+
}
|
|
18254
|
+
function keyPitches(score, timeline, onset) {
|
|
18255
|
+
let beat = onset.scoreBeat ?? timeline.model.beatAtTime(onset.time), measureIndex = timeline.expandedMeasureToOriginal[measureAt(timeline, beat)], fifths = 0;
|
|
18256
|
+
for (let index = 0; index <= measureIndex; index++)
|
|
18257
|
+
fifths = score.global.measures[index]?.key?.fifths ?? fifths;
|
|
18258
|
+
let steps = ["C", "D", "E", "F", "G", "A", "B"], pitches = [0, 2, 4, 5, 7, 9, 11], order = fifths >= 0 ? SHARP_ORDER : FLAT_ORDER;
|
|
18259
|
+
for (let index = 0; index < Math.abs(fifths); index++) {
|
|
18260
|
+
let position = steps.indexOf(order[index % order.length]);
|
|
18261
|
+
pitches[position] = pitches[position] + Math.sign(fifths);
|
|
18262
|
+
}
|
|
18263
|
+
return new Set(pitches.map((pitch) => (pitch % 12 + 12) % 12));
|
|
18264
|
+
}
|
|
18265
|
+
function steppedPitches(start, end, key) {
|
|
18266
|
+
let direction = Math.sign(end - start), pitches = [start];
|
|
18267
|
+
for (let pitch = start + direction; direction && direction * (end - pitch) > 0; pitch += direction)
|
|
18268
|
+
(!key || key.has(pitch % 12)) && pitches.push(pitch);
|
|
18269
|
+
return pitches;
|
|
18270
|
+
}
|
|
18271
|
+
function renderSteps(on, off, target, pitches, timeline) {
|
|
18272
|
+
let events = [], duration2 = target.time - on.time;
|
|
18273
|
+
return pitches.forEach((midiNote, index) => {
|
|
18274
|
+
let time = on.time + duration2 * index / pitches.length, end = on.time + duration2 * (index + 1) / pitches.length;
|
|
18275
|
+
events.push({
|
|
18276
|
+
...on,
|
|
18277
|
+
midiNote,
|
|
18278
|
+
time,
|
|
18279
|
+
scoreBeat: timeline.model.beatAtTime(time),
|
|
18280
|
+
scoreDurationBeats: timeline.model.beatAtTime(end) - timeline.model.beatAtTime(time)
|
|
18281
|
+
}), events.push({ ...off, midiNote, time: end });
|
|
18282
|
+
}), events;
|
|
18283
|
+
}
|
|
18284
|
+
function renderBend(on, off, target, lane) {
|
|
18285
|
+
let base = { ...on, playbackLaneId: lane }, end = target.time, range = Math.max(2, Math.abs(target.midiNote - on.midiNote)), control = (cc, value) => ({
|
|
18286
|
+
...base,
|
|
18287
|
+
type: "controlChange",
|
|
18288
|
+
time: on.time,
|
|
18289
|
+
cc,
|
|
18290
|
+
value
|
|
18291
|
+
}), events = [
|
|
18292
|
+
control(101, 0),
|
|
18293
|
+
control(100, 0),
|
|
18294
|
+
control(6, range),
|
|
18295
|
+
control(38, 0),
|
|
18296
|
+
control(101, 127),
|
|
18297
|
+
control(100, 127),
|
|
18298
|
+
base,
|
|
18299
|
+
{ ...off, time: end, playbackLaneId: lane }
|
|
18300
|
+
], samples = Math.max(1, Math.ceil((end - on.time) * 200));
|
|
18301
|
+
for (let index = 0; index < samples; index++) {
|
|
18302
|
+
let fraction = index / samples, delta = (target.midiNote - on.midiNote) * fraction;
|
|
18303
|
+
events.push({
|
|
18304
|
+
...base,
|
|
18305
|
+
type: "pitchBend",
|
|
18306
|
+
time: on.time + (end - on.time) * fraction,
|
|
18307
|
+
bendRange: range,
|
|
18308
|
+
value: Math.max(0, Math.min(16383, Math.round(8192 + delta * 8192 / range)))
|
|
18309
|
+
});
|
|
18310
|
+
}
|
|
18311
|
+
return events.push({ ...base, type: "controlChange", time: end, cc: 120, value: 0 }), events.push({ ...base, type: "pitchBend", time: end, value: 8192, bendRange: range }), events;
|
|
18312
|
+
}
|
|
18313
|
+
function applyGlissandoPlayback(score, timeline) {
|
|
18314
|
+
let partLines = score.parts.map((_part, partIndex) => linesForPart(score, partIndex));
|
|
18315
|
+
if (partLines.every((lines) => lines.length === 0)) return [];
|
|
18316
|
+
let diagnostics = [], original = [...timeline.events], releases = releasesFor(original), removed = /* @__PURE__ */ new Set(), added = [], mirroredLanes = /* @__PURE__ */ new Set();
|
|
18317
|
+
return partLines.forEach((lines, partIndex) => {
|
|
18318
|
+
for (let { source, glissando } of lines) {
|
|
18319
|
+
let onsets = original.filter((event) => event.partIndex === partIndex && event.type === "noteOn"), sources = onsets.filter((event) => event.scoreEventId === source), exactTargets = onsets.filter((event) => event.scoreEventId === glissando.target), targets = exactTargets.length > 0 ? exactTargets : onsets.filter((event) => event.scoreEventId?.replaceAll("/", "_") === glissando.target), realized = !1;
|
|
18320
|
+
for (let onset of sources) {
|
|
18321
|
+
if (removed.has(onset)) continue;
|
|
18322
|
+
let time = targets.find(
|
|
18323
|
+
(target2) => target2.time > onset.time + 1e-9 && continuousTo(timeline, onset, target2)
|
|
18324
|
+
)?.time;
|
|
18325
|
+
if (time === void 0) continue;
|
|
18326
|
+
let sourceChord = sources.filter((event) => Math.abs(event.time - onset.time) < 1e-9).sort((a, b) => a.midiNote - b.midiNote), targetChord = targets.filter((event) => Math.abs(event.time - time) < 1e-9).sort((a, b) => a.midiNote - b.midiNote), target = targetChord[Math.min(sourceChord.indexOf(onset), targetChord.length - 1)], off = releases.get(onset);
|
|
18327
|
+
if (!off || onset.channel === 9) continue;
|
|
18328
|
+
realized = !0;
|
|
18329
|
+
let type = glissando.playbackType ?? (glissando.kind === "portamento" ? "pitch-bend" : "diatonic");
|
|
18330
|
+
removed.add(onset), removed.add(off);
|
|
18331
|
+
let lane = `${onset.playbackLaneId ?? `part:${partIndex}`}:gliss:${source}:${sourceChord.indexOf(onset)}`;
|
|
18332
|
+
if (type === "pitch-bend") {
|
|
18333
|
+
let bendEvents = renderBend(onset, off, target, lane), bendOnset = bendEvents.find((event) => event.type === "noteOn");
|
|
18334
|
+
bendOnset.scoreDurationBeats = timeline.model.beatAtTime(target.time) - (onset.scoreBeat ?? timeline.model.beatAtTime(onset.time)), added.push(...bendEvents);
|
|
18335
|
+
} else {
|
|
18336
|
+
let key = type === "diatonic" ? keyPitches(score, timeline, onset) : void 0;
|
|
18337
|
+
added.push(
|
|
18338
|
+
...renderSteps(
|
|
18339
|
+
{ ...onset, playbackLaneId: lane },
|
|
18340
|
+
{ ...off, playbackLaneId: lane },
|
|
18341
|
+
target,
|
|
18342
|
+
steppedPitches(onset.midiNote, target.midiNote, key),
|
|
18343
|
+
timeline
|
|
18344
|
+
)
|
|
18345
|
+
);
|
|
18346
|
+
}
|
|
18347
|
+
if (!mirroredLanes.has(lane)) {
|
|
18348
|
+
mirroredLanes.add(lane);
|
|
18349
|
+
for (let event of original)
|
|
18350
|
+
event.partIndex === partIndex && event.playbackLaneId === onset.playbackLaneId && (event.type === "programChange" || event.type === "controlChange") && added.push({ ...event, playbackLaneId: lane });
|
|
18351
|
+
}
|
|
18352
|
+
}
|
|
18353
|
+
realized || diagnostics.push({
|
|
18354
|
+
code: "glissando-playback-unsupported",
|
|
18355
|
+
message: `Glissando from "${source}" to "${glissando.target}" has no forward pitched endpoints on a continuous playback route.`,
|
|
18356
|
+
playbackLaneIds: sources.flatMap((event) => event.playbackLaneId ? [event.playbackLaneId] : [])
|
|
18357
|
+
});
|
|
18358
|
+
}
|
|
18359
|
+
}), timeline.events = original.filter((event) => !removed.has(event)).concat(added), diagnostics;
|
|
18360
|
+
}
|
|
18361
|
+
|
|
17909
18362
|
// packages/midi/src/chordPlayback/index.ts
|
|
17910
18363
|
init_define_import_meta_env();
|
|
17911
18364
|
function getChordPlaybackPart(score) {
|
|
@@ -18599,6 +19052,34 @@ function applyInstrumentPlayback(score, events, timing, programs, initialProgram
|
|
|
18599
19052
|
}), diagnostics;
|
|
18600
19053
|
}
|
|
18601
19054
|
|
|
19055
|
+
// packages/midi/src/playbackTempo/index.ts
|
|
19056
|
+
init_define_import_meta_env();
|
|
19057
|
+
function buildPlaybackTempoModel(score, measureOrder, holds) {
|
|
19058
|
+
let source = buildTempoModel(
|
|
19059
|
+
playbackGlobalMeasures(
|
|
19060
|
+
score,
|
|
19061
|
+
score.global.measures.map((_, index) => index)
|
|
19062
|
+
)
|
|
19063
|
+
), intervals = measureOrder.map((index) => ({
|
|
19064
|
+
startBeat: source.measureStartBeats[index],
|
|
19065
|
+
endBeat: source.measureStartBeats[index + 1] ?? source.totalBeats
|
|
19066
|
+
})), realized = TempoModel.concatenate(source.model, intervals), measureStartBeats = [], insertions = [], totalBeats = 0;
|
|
19067
|
+
intervals.forEach((interval, index) => {
|
|
19068
|
+
measureStartBeats.push(totalBeats);
|
|
19069
|
+
let spb = realized.spbAtBeat(totalBeats);
|
|
19070
|
+
for (let hold of holds[index] ?? [])
|
|
19071
|
+
insertions.push({ beat: totalBeats + hold.atBeat, seconds: hold.extraBeats * spb });
|
|
19072
|
+
totalBeats += interval.endBeat - interval.startBeat;
|
|
19073
|
+
});
|
|
19074
|
+
let model = realized.withInsertions(insertions);
|
|
19075
|
+
return {
|
|
19076
|
+
model,
|
|
19077
|
+
measureStartBeats,
|
|
19078
|
+
measureStartTimes: measureStartBeats.map((beat) => model.timeAtBeat(beat)),
|
|
19079
|
+
totalBeats
|
|
19080
|
+
};
|
|
19081
|
+
}
|
|
19082
|
+
|
|
18602
19083
|
// packages/midi/src/dynamicsEnvelope.ts
|
|
18603
19084
|
init_define_import_meta_env();
|
|
18604
19085
|
var CC_EXPRESSION = 11, EPS2 = 1e-6, DEFAULT_DYNAMIC = { velocity: 84, cc11: 100 }, DYNAMIC_AXES = {
|
|
@@ -19230,7 +19711,7 @@ function generateTimeline(inputScore, options) {
|
|
|
19230
19711
|
let expandedGlobal = playbackGlobalMeasures(score, measureOrder), holdSchedule = suppressCadenzaFermataHolds(
|
|
19231
19712
|
expandedGlobal,
|
|
19232
19713
|
buildHoldSchedule(score, measureOrder, globalMeasures)
|
|
19233
|
-
),
|
|
19714
|
+
), tempoBuild = buildPlaybackTempoModel(score, measureOrder, holdSchedule), tempoMap = tempoMapEntries(expandedGlobal, tempoBuild), { model, measureStartTimes, measureStartBeats } = tempoBuild, rhythm = compileRhythmProgram(score), crossJumpContinuations = /* @__PURE__ */ new Map(), timing = {
|
|
19234
19715
|
tempoMap,
|
|
19235
19716
|
measureStartTimes,
|
|
19236
19717
|
model,
|
|
@@ -19260,18 +19741,13 @@ function generateTimeline(inputScore, options) {
|
|
|
19260
19741
|
return aOrder !== bOrder ? aOrder - bOrder : a.instrumentChange !== b.instrumentChange ? a.instrumentChange ? -1 : 1 : a.midiNote - b.midiNote;
|
|
19261
19742
|
};
|
|
19262
19743
|
allEvents.sort(compareEvents);
|
|
19263
|
-
let
|
|
19744
|
+
let diagnostics = [...applyInstrumentPlayback(
|
|
19264
19745
|
score,
|
|
19265
19746
|
allEvents,
|
|
19266
19747
|
{ model, measureStartBeats, measureOrder },
|
|
19267
19748
|
options?.instrumentPrograms,
|
|
19268
19749
|
options?.partPrograms
|
|
19269
|
-
), diagnostics
|
|
19270
|
-
...assignPhysicalMidiChannels(allEvents, score),
|
|
19271
|
-
...instrumentDiagnostics,
|
|
19272
|
-
...rhythm.diagnostics
|
|
19273
|
-
];
|
|
19274
|
-
for (let diagnostic of diagnostics) options?.onDiagnostic?.(diagnostic);
|
|
19750
|
+
), ...rhythm.diagnostics];
|
|
19275
19751
|
allEvents.sort(compareEvents);
|
|
19276
19752
|
let duration2 = model.timeAtBeat(tempoBuild.totalBeats), measureTimeSignatures = measureOrder.map((origIdx) => {
|
|
19277
19753
|
let ts = resolveActiveTime(globalMeasures, origIdx);
|
|
@@ -19287,8 +19763,10 @@ function generateTimeline(inputScore, options) {
|
|
|
19287
19763
|
expandedMeasureToOriginal: measureOrder,
|
|
19288
19764
|
measureTimeSignatures,
|
|
19289
19765
|
diagnostics
|
|
19290
|
-
};
|
|
19291
|
-
|
|
19766
|
+
}, realized = spans && (globalMeasures.some((measure) => measure.jump !== void 0) || spans.some((span) => span.startBeat > 0 || span.endBeat < span.measureBeats)) ? realizeNavigation(result, spans, crossJumpContinuations) : { ...result, playedSpans: spans };
|
|
19767
|
+
diagnostics.push(...applyGlissandoPlayback(score, realized), ...assignPhysicalMidiChannels(realized.events, score));
|
|
19768
|
+
for (let diagnostic of diagnostics) options?.onDiagnostic?.(diagnostic);
|
|
19769
|
+
return realized.events.sort(compareEvents), realized;
|
|
19292
19770
|
}
|
|
19293
19771
|
function assignPhysicalMidiChannels(events, score) {
|
|
19294
19772
|
let melodicChannels = [0, 1, 2, 3, 4, 5, 6, 7, 8, 10, 11, 12, 13, 14, 15], lanesByPart = /* @__PURE__ */ new Map();
|