@tspro/web-music-score 3.1.0 → 3.1.1
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/CHANGELOG.md +5 -0
- package/README.md +5 -3
- package/dist/audio/index.d.mts +1 -8
- package/dist/audio/index.d.ts +1 -8
- package/dist/audio/index.js +1 -1
- package/dist/audio/index.mjs +2 -2
- package/dist/audio-cg/index.d.mts +0 -1
- package/dist/audio-cg/index.d.ts +0 -1
- package/dist/audio-cg/index.js +1 -1
- package/dist/audio-cg/index.mjs +2 -2
- package/dist/{chunk-B4J3KED2.mjs → chunk-PU4J7K4Z.mjs} +2 -2
- package/dist/core/index.d.mts +0 -3
- package/dist/core/index.d.ts +0 -3
- package/dist/core/index.js +2 -2
- package/dist/core/index.mjs +3 -3
- package/dist/{guitar-BIFwFT31.d.ts → guitar-C2Cp71NZ.d.ts} +1 -8
- package/dist/{guitar-zASF7B1g.d.mts → guitar-DggbM2UL.d.mts} +1 -8
- package/dist/iife/index.global.js +11 -11
- package/dist/{interface-BedxdQDE.d.mts → interface-Bz_525zj.d.mts} +15 -75
- package/dist/{interface-DprVf__B.d.ts → interface-Fn8ufBQx.d.ts} +15 -75
- package/dist/{note-B5ZtlHc8.d.mts → note-BFa43I86.d.mts} +0 -14
- package/dist/{note-B5ZtlHc8.d.ts → note-BFa43I86.d.ts} +0 -14
- package/dist/pieces/index.d.mts +3 -6
- package/dist/pieces/index.d.ts +3 -6
- package/dist/pieces/index.js +1 -1
- package/dist/pieces/index.mjs +2 -2
- package/dist/react-ui/index.d.mts +5 -23
- package/dist/react-ui/index.d.ts +5 -23
- package/dist/react-ui/index.js +1 -1
- package/dist/react-ui/index.mjs +2 -2
- package/dist/{scale-B_2MZaT9.d.ts → scale-DRR-t4Kr.d.mts} +2 -15
- package/dist/{scale-C-YS5iVG.d.mts → scale-ebJm37q1.d.ts} +2 -15
- package/dist/score/index.d.mts +18 -18
- package/dist/score/index.d.ts +18 -18
- package/dist/score/index.js +155 -150
- package/dist/score/index.mjs +156 -151
- package/dist/{tempo-TjQKn46X.d.mts → tempo-B4h5Ktob.d.mts} +1 -17
- package/dist/{tempo-DoJd-UYT.d.ts → tempo-DgqDEsn0.d.ts} +1 -17
- package/dist/theory/index.d.mts +6 -8
- package/dist/theory/index.d.ts +6 -8
- package/dist/theory/index.js +1 -1
- package/dist/theory/index.mjs +2 -2
- package/package.json +1 -1
package/dist/score/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* WebMusicScore v3.1.
|
|
1
|
+
/* WebMusicScore v3.1.1 | (c) 2023 PahkaSoft | MIT License | Includes: Tone.js (MIT License) */
|
|
2
2
|
import {
|
|
3
3
|
__publicField
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-PU4J7K4Z.mjs";
|
|
5
5
|
|
|
6
6
|
// src/score/pub/div-rect.ts
|
|
7
7
|
import { Utils } from "@tspro/ts-utils-lib";
|
|
@@ -5027,12 +5027,59 @@ var _ObjMeasure = class _ObjMeasure extends MusicObject {
|
|
|
5027
5027
|
this.requestLayout();
|
|
5028
5028
|
this.requestRectUpdate();
|
|
5029
5029
|
}
|
|
5030
|
-
|
|
5030
|
+
forEachStaffGroup(staffTabOrGroups, defaultVerticalPos, addFn) {
|
|
5031
|
+
const lines = this.row.getNotationLines();
|
|
5032
|
+
const addToStaffTabOrGroup = (staffTabOrGroup, vpos, prevGroups = []) => {
|
|
5033
|
+
if (typeof staffTabOrGroup === "number") {
|
|
5034
|
+
if (lines[staffTabOrGroup]) {
|
|
5035
|
+
addFn(lines[staffTabOrGroup], vpos);
|
|
5036
|
+
}
|
|
5037
|
+
} else if (typeof staffTabOrGroup === "string" && staffTabOrGroup.length > 0) {
|
|
5038
|
+
let stavesAndTabs = lines.filter((l) => l.name === staffTabOrGroup);
|
|
5039
|
+
stavesAndTabs.forEach((line) => addFn(line, vpos));
|
|
5040
|
+
if (stavesAndTabs.length === 0) {
|
|
5041
|
+
let grp = this.doc.getStaffGroup(staffTabOrGroup);
|
|
5042
|
+
if (grp && !prevGroups.includes(staffTabOrGroup)) {
|
|
5043
|
+
let curGroups = [...prevGroups, staffTabOrGroup];
|
|
5044
|
+
(Utils8.Is.isArray(grp.staffsTabsAndGroups) ? grp.staffsTabsAndGroups : [grp.staffsTabsAndGroups]).forEach((staffTabOrGroup2) => {
|
|
5045
|
+
switch (grp.verticalPosition) {
|
|
5046
|
+
case 0 /* Above */:
|
|
5047
|
+
addToStaffTabOrGroup(staffTabOrGroup2, 0 /* Above */, curGroups);
|
|
5048
|
+
break;
|
|
5049
|
+
case 1 /* Below */:
|
|
5050
|
+
addToStaffTabOrGroup(staffTabOrGroup2, 1 /* Below */, curGroups);
|
|
5051
|
+
break;
|
|
5052
|
+
case 2 /* Both */:
|
|
5053
|
+
addToStaffTabOrGroup(staffTabOrGroup2, 0 /* Above */, curGroups);
|
|
5054
|
+
addToStaffTabOrGroup(staffTabOrGroup2, 1 /* Below */, curGroups);
|
|
5055
|
+
break;
|
|
5056
|
+
case 3 /* Auto */:
|
|
5057
|
+
addToStaffTabOrGroup(staffTabOrGroup2, defaultVerticalPos, curGroups);
|
|
5058
|
+
break;
|
|
5059
|
+
}
|
|
5060
|
+
});
|
|
5061
|
+
}
|
|
5062
|
+
}
|
|
5063
|
+
}
|
|
5064
|
+
};
|
|
5065
|
+
if (staffTabOrGroups === void 0) {
|
|
5066
|
+
if (lines.length >= 2 && lines[0] instanceof ObjStaff && lines[0].staffConfig.clef === "G" /* G */ && lines[0].isGrand() && lines[1] instanceof ObjStaff && lines[1].staffConfig.clef === "F" /* F */ && lines[1].isGrand()) {
|
|
5067
|
+
addToStaffTabOrGroup(defaultVerticalPos === 1 /* Below */ ? 1 : 0, defaultVerticalPos);
|
|
5068
|
+
} else {
|
|
5069
|
+
addToStaffTabOrGroup(0, defaultVerticalPos);
|
|
5070
|
+
}
|
|
5071
|
+
} else if (Utils8.Is.isArray(staffTabOrGroups)) {
|
|
5072
|
+
staffTabOrGroups.forEach((staffTabOrGroup) => addToStaffTabOrGroup(staffTabOrGroup, defaultVerticalPos));
|
|
5073
|
+
} else {
|
|
5074
|
+
addToStaffTabOrGroup(staffTabOrGroups, defaultVerticalPos);
|
|
5075
|
+
}
|
|
5076
|
+
}
|
|
5077
|
+
addFermata(staffTabOrGroups, fermata) {
|
|
5031
5078
|
let anchor = fermata === 1 /* AtMeasureEnd */ ? this.barLineRight : this.lastAddedRhythmColumn;
|
|
5032
5079
|
if (!anchor) {
|
|
5033
5080
|
throw new MusicError13(MusicErrorType13.Score, "Cannot add Fermata because anchor is undefined.");
|
|
5034
5081
|
}
|
|
5035
|
-
this.forEachStaffGroup(
|
|
5082
|
+
this.forEachStaffGroup(staffTabOrGroups, 0 /* Above */, (line, vpos) => {
|
|
5036
5083
|
this.addLayoutObject(new ObjFermata(anchor, vpos), line, 0 /* Fermata */, vpos);
|
|
5037
5084
|
});
|
|
5038
5085
|
this.disableExtension();
|
|
@@ -5041,7 +5088,7 @@ var _ObjMeasure = class _ObjMeasure extends MusicObject {
|
|
|
5041
5088
|
hasFermata(anchor) {
|
|
5042
5089
|
return this.layoutObjects.some((layoutObj) => layoutObj.musicObj instanceof ObjFermata && layoutObj.anchor === anchor);
|
|
5043
5090
|
}
|
|
5044
|
-
addNavigation(
|
|
5091
|
+
addNavigation(staffTabOrGroups, navigation, ...args) {
|
|
5045
5092
|
let addLayoutObjectProps = void 0;
|
|
5046
5093
|
switch (navigation) {
|
|
5047
5094
|
case 10 /* Ending */:
|
|
@@ -5067,7 +5114,7 @@ var _ObjMeasure = class _ObjMeasure extends MusicObject {
|
|
|
5067
5114
|
layoutGroupId: 2 /* Navigation */,
|
|
5068
5115
|
defaultVerticalPos: 0 /* Above */
|
|
5069
5116
|
};
|
|
5070
|
-
this.addNavigation(
|
|
5117
|
+
this.addNavigation(staffTabOrGroups, 9 /* EndRepeat */);
|
|
5071
5118
|
this.endSong();
|
|
5072
5119
|
break;
|
|
5073
5120
|
}
|
|
@@ -5120,7 +5167,7 @@ var _ObjMeasure = class _ObjMeasure extends MusicObject {
|
|
|
5120
5167
|
break;
|
|
5121
5168
|
}
|
|
5122
5169
|
if (addLayoutObjectProps) {
|
|
5123
|
-
this.forEachStaffGroup(
|
|
5170
|
+
this.forEachStaffGroup(staffTabOrGroups, addLayoutObjectProps.defaultVerticalPos, (line, vpos) => {
|
|
5124
5171
|
this.addLayoutObject(addLayoutObjectProps.createObj(), line, addLayoutObjectProps.layoutGroupId, vpos);
|
|
5125
5172
|
});
|
|
5126
5173
|
}
|
|
@@ -5130,135 +5177,108 @@ var _ObjMeasure = class _ObjMeasure extends MusicObject {
|
|
|
5130
5177
|
hasNavigation(n) {
|
|
5131
5178
|
return this.navigationSet.has(n);
|
|
5132
5179
|
}
|
|
5133
|
-
|
|
5134
|
-
return this.layoutObjects.map((layoutObj) => layoutObj.musicObj).find((musicObj) => musicObj instanceof ObjEnding);
|
|
5135
|
-
}
|
|
5136
|
-
getEndRepeatPlayCount() {
|
|
5137
|
-
return this.endRepeatPlayCount;
|
|
5138
|
-
}
|
|
5139
|
-
addConnective(connective, ...args) {
|
|
5140
|
-
let anchor = this.lastAddedRhythmSymbol;
|
|
5141
|
-
if (!(anchor instanceof ObjNoteGroup)) {
|
|
5142
|
-
throw new MusicError13(MusicErrorType13.Score, "Connective can be added to note group only.");
|
|
5143
|
-
}
|
|
5144
|
-
if (connective === 0 /* Tie */) {
|
|
5145
|
-
let tieSpan = Utils8.Is.isInteger(args[0]) || Utils8.Is.isEnumValue(args[0], TieType) ? args[0] : 2;
|
|
5146
|
-
let noteAnchor = Utils8.Is.isEnumValue(args[1], NoteAnchor) ? args[1] : 0 /* Auto */;
|
|
5147
|
-
anchor.startConnective(new ConnectiveProps(0 /* Tie */, tieSpan, noteAnchor, anchor));
|
|
5148
|
-
} else if (connective === 1 /* Slur */) {
|
|
5149
|
-
let slurSpan = Utils8.Is.isInteger(args[0]) ? args[0] : 2;
|
|
5150
|
-
let noteAnchor = Utils8.Is.isEnumValue(args[1], NoteAnchor) ? args[1] : 0 /* Auto */;
|
|
5151
|
-
anchor.startConnective(new ConnectiveProps(1 /* Slur */, slurSpan, noteAnchor, anchor));
|
|
5152
|
-
} else if (connective === 2 /* Slide */) {
|
|
5153
|
-
let noteAnchor = Utils8.Is.isEnumValue(args[0], NoteAnchor) ? args[0] : 0 /* Auto */;
|
|
5154
|
-
anchor.startConnective(new ConnectiveProps(2 /* Slide */, 2, noteAnchor, anchor));
|
|
5155
|
-
}
|
|
5156
|
-
}
|
|
5157
|
-
forEachStaffGroup(staffTabOrGroup, defaultVerticalPos, add) {
|
|
5158
|
-
const lines = this.row.getNotationLines();
|
|
5159
|
-
const performAdd = (lineId, vpos, depth) => {
|
|
5160
|
-
if (depth >= 5) {
|
|
5161
|
-
return;
|
|
5162
|
-
}
|
|
5163
|
-
let success = false;
|
|
5164
|
-
if (typeof lineId === "number") {
|
|
5165
|
-
if (lines[lineId]) {
|
|
5166
|
-
add(lines[lineId], vpos);
|
|
5167
|
-
success = true;
|
|
5168
|
-
}
|
|
5169
|
-
} else if (typeof lineId === "string" && lineId.length > 0) {
|
|
5170
|
-
lines.filter((l) => l.name === lineId).forEach((line) => {
|
|
5171
|
-
add(line, vpos);
|
|
5172
|
-
success = true;
|
|
5173
|
-
});
|
|
5174
|
-
}
|
|
5175
|
-
if (typeof lineId === "string" && !success) {
|
|
5176
|
-
let grp = this.doc.getStaffGroup(lineId);
|
|
5177
|
-
if (grp) {
|
|
5178
|
-
(Utils8.Is.isArray(grp.staffsTabsAndGroups) ? grp.staffsTabsAndGroups : [grp.staffsTabsAndGroups]).forEach((lineId2) => {
|
|
5179
|
-
switch (grp.verticalPosition) {
|
|
5180
|
-
case 0 /* Above */:
|
|
5181
|
-
performAdd(lineId2, 0 /* Above */, depth + 1);
|
|
5182
|
-
break;
|
|
5183
|
-
case 1 /* Below */:
|
|
5184
|
-
performAdd(lineId2, 1 /* Below */, depth + 1);
|
|
5185
|
-
break;
|
|
5186
|
-
case 2 /* Both */:
|
|
5187
|
-
performAdd(lineId2, 0 /* Above */, depth + 1);
|
|
5188
|
-
performAdd(lineId2, 1 /* Below */, depth + 1);
|
|
5189
|
-
break;
|
|
5190
|
-
case 3 /* Auto */:
|
|
5191
|
-
performAdd(lineId2, defaultVerticalPos, depth + 1);
|
|
5192
|
-
break;
|
|
5193
|
-
}
|
|
5194
|
-
});
|
|
5195
|
-
}
|
|
5196
|
-
}
|
|
5197
|
-
};
|
|
5198
|
-
if (staffTabOrGroup === void 0) {
|
|
5199
|
-
if (lines.length >= 2 && lines[0] instanceof ObjStaff && lines[0].staffConfig.clef === "G" /* G */ && lines[0].isGrand() && lines[1] instanceof ObjStaff && lines[1].staffConfig.clef === "F" /* F */ && lines[1].isGrand()) {
|
|
5200
|
-
performAdd(defaultVerticalPos === 1 /* Below */ ? 1 : 0, defaultVerticalPos, 0);
|
|
5201
|
-
} else {
|
|
5202
|
-
performAdd(0, defaultVerticalPos, 0);
|
|
5203
|
-
}
|
|
5204
|
-
} else {
|
|
5205
|
-
performAdd(staffTabOrGroup, defaultVerticalPos, 0);
|
|
5206
|
-
}
|
|
5207
|
-
}
|
|
5208
|
-
addLabel(staffTabOrGroup, label, text) {
|
|
5180
|
+
addAnnotation(staffTabOrGroups, annotation, text) {
|
|
5209
5181
|
let anchor = this.lastAddedRhythmColumn;
|
|
5210
5182
|
if (!anchor) {
|
|
5211
|
-
throw new MusicError13(MusicErrorType13.Score, "Cannot add
|
|
5183
|
+
throw new MusicError13(MusicErrorType13.Score, "Cannot add annotation because anchor is undefined.");
|
|
5212
5184
|
} else if (text.length === 0) {
|
|
5213
|
-
throw new MusicError13(MusicErrorType13.Score, "Cannot add
|
|
5185
|
+
throw new MusicError13(MusicErrorType13.Score, "Cannot add annotation because annotation text is empty.");
|
|
5214
5186
|
}
|
|
5215
5187
|
let textProps = { text };
|
|
5216
5188
|
let layoutGroupId;
|
|
5217
5189
|
let defaultVerticalPos;
|
|
5218
|
-
switch (
|
|
5219
|
-
case 0 /*
|
|
5220
|
-
layoutGroupId =
|
|
5221
|
-
defaultVerticalPos =
|
|
5190
|
+
switch (annotation) {
|
|
5191
|
+
case 0 /* Dynamics */:
|
|
5192
|
+
layoutGroupId = 5 /* DynamicsAnnotation */;
|
|
5193
|
+
defaultVerticalPos = 0 /* Above */;
|
|
5194
|
+
textProps.italic = true;
|
|
5222
5195
|
break;
|
|
5223
|
-
case 1 /*
|
|
5224
|
-
layoutGroupId =
|
|
5196
|
+
case 1 /* Tempo */:
|
|
5197
|
+
layoutGroupId = 4 /* TempoAnnotation */;
|
|
5225
5198
|
defaultVerticalPos = 0 /* Above */;
|
|
5199
|
+
textProps.italic = true;
|
|
5226
5200
|
break;
|
|
5227
5201
|
}
|
|
5228
|
-
this.forEachStaffGroup(
|
|
5202
|
+
this.forEachStaffGroup(staffTabOrGroups, defaultVerticalPos, (line, vpos) => {
|
|
5229
5203
|
let textObj = new ObjText(anchor, textProps, 0.5, 1);
|
|
5230
5204
|
this.addLayoutObject(textObj, line, layoutGroupId, vpos);
|
|
5231
5205
|
this.enableExtension(textObj);
|
|
5232
5206
|
});
|
|
5233
5207
|
}
|
|
5234
|
-
|
|
5208
|
+
addLabel(staffTabOrGroups, label, text) {
|
|
5235
5209
|
let anchor = this.lastAddedRhythmColumn;
|
|
5236
5210
|
if (!anchor) {
|
|
5237
|
-
throw new MusicError13(MusicErrorType13.Score, "Cannot add
|
|
5211
|
+
throw new MusicError13(MusicErrorType13.Score, "Cannot add label because anchor is undefined.");
|
|
5238
5212
|
} else if (text.length === 0) {
|
|
5239
|
-
throw new MusicError13(MusicErrorType13.Score, "Cannot add
|
|
5213
|
+
throw new MusicError13(MusicErrorType13.Score, "Cannot add label because label text is empty.");
|
|
5240
5214
|
}
|
|
5241
5215
|
let textProps = { text };
|
|
5242
5216
|
let layoutGroupId;
|
|
5243
5217
|
let defaultVerticalPos;
|
|
5244
|
-
switch (
|
|
5245
|
-
case 0 /*
|
|
5246
|
-
layoutGroupId =
|
|
5247
|
-
defaultVerticalPos =
|
|
5248
|
-
textProps.italic = true;
|
|
5218
|
+
switch (label) {
|
|
5219
|
+
case 0 /* Note */:
|
|
5220
|
+
layoutGroupId = 1 /* NoteLabel */;
|
|
5221
|
+
defaultVerticalPos = 1 /* Below */;
|
|
5249
5222
|
break;
|
|
5250
|
-
case 1 /*
|
|
5251
|
-
layoutGroupId =
|
|
5223
|
+
case 1 /* Chord */:
|
|
5224
|
+
layoutGroupId = 6 /* ChordLabel */;
|
|
5252
5225
|
defaultVerticalPos = 0 /* Above */;
|
|
5253
|
-
textProps.italic = true;
|
|
5254
5226
|
break;
|
|
5255
5227
|
}
|
|
5256
|
-
this.forEachStaffGroup(
|
|
5228
|
+
this.forEachStaffGroup(staffTabOrGroups, defaultVerticalPos, (line, vpos) => {
|
|
5257
5229
|
let textObj = new ObjText(anchor, textProps, 0.5, 1);
|
|
5258
5230
|
this.addLayoutObject(textObj, line, layoutGroupId, vpos);
|
|
5259
5231
|
this.enableExtension(textObj);
|
|
5260
5232
|
});
|
|
5261
5233
|
}
|
|
5234
|
+
addConnective(connective, ...args) {
|
|
5235
|
+
let anchor = this.lastAddedRhythmSymbol;
|
|
5236
|
+
if (!(anchor instanceof ObjNoteGroup)) {
|
|
5237
|
+
throw new MusicError13(MusicErrorType13.Score, "Connective can be added to note group only.");
|
|
5238
|
+
}
|
|
5239
|
+
if (connective === 0 /* Tie */) {
|
|
5240
|
+
let tieSpan = Utils8.Is.isInteger(args[0]) || Utils8.Is.isEnumValue(args[0], TieType) ? args[0] : 2;
|
|
5241
|
+
let noteAnchor = Utils8.Is.isEnumValue(args[1], NoteAnchor) ? args[1] : 0 /* Auto */;
|
|
5242
|
+
anchor.startConnective(new ConnectiveProps(0 /* Tie */, tieSpan, noteAnchor, anchor));
|
|
5243
|
+
} else if (connective === 1 /* Slur */) {
|
|
5244
|
+
let slurSpan = Utils8.Is.isInteger(args[0]) ? args[0] : 2;
|
|
5245
|
+
let noteAnchor = Utils8.Is.isEnumValue(args[1], NoteAnchor) ? args[1] : 0 /* Auto */;
|
|
5246
|
+
anchor.startConnective(new ConnectiveProps(1 /* Slur */, slurSpan, noteAnchor, anchor));
|
|
5247
|
+
} else if (connective === 2 /* Slide */) {
|
|
5248
|
+
let noteAnchor = Utils8.Is.isEnumValue(args[0], NoteAnchor) ? args[0] : 0 /* Auto */;
|
|
5249
|
+
anchor.startConnective(new ConnectiveProps(2 /* Slide */, 2, noteAnchor, anchor));
|
|
5250
|
+
}
|
|
5251
|
+
}
|
|
5252
|
+
addExtension(extensionLength, extensionVisible) {
|
|
5253
|
+
this.addExtensionToMusicObjects.forEach((musicObj) => {
|
|
5254
|
+
let anchor = musicObj.getParent();
|
|
5255
|
+
if (musicObj instanceof ObjText && anchor instanceof ObjRhythmColumn) {
|
|
5256
|
+
let lineStyle = "dashed";
|
|
5257
|
+
let linePos = "bottom";
|
|
5258
|
+
let extension = new Extension(musicObj, anchor, extensionLength, extensionVisible, lineStyle, linePos);
|
|
5259
|
+
musicObj.setLink(extension);
|
|
5260
|
+
} else {
|
|
5261
|
+
throw new MusicError13(MusicErrorType13.Score, "Cannot add extension becaue no compatible music object to attach it to.");
|
|
5262
|
+
}
|
|
5263
|
+
});
|
|
5264
|
+
if (this.addExtensionToMusicObjects.length === 0) {
|
|
5265
|
+
throw new MusicError13(MusicErrorType13.Score, "Cannot add extension because music object to attach it to is undefined.");
|
|
5266
|
+
}
|
|
5267
|
+
this.disableExtension();
|
|
5268
|
+
this.requestLayout();
|
|
5269
|
+
}
|
|
5270
|
+
enableExtension(musicObject) {
|
|
5271
|
+
this.addExtensionToMusicObjects.push(musicObject);
|
|
5272
|
+
}
|
|
5273
|
+
disableExtension() {
|
|
5274
|
+
this.addExtensionToMusicObjects = [];
|
|
5275
|
+
}
|
|
5276
|
+
getEnding() {
|
|
5277
|
+
return this.layoutObjects.map((layoutObj) => layoutObj.musicObj).find((musicObj) => musicObj instanceof ObjEnding);
|
|
5278
|
+
}
|
|
5279
|
+
getEndRepeatPlayCount() {
|
|
5280
|
+
return this.endRepeatPlayCount;
|
|
5281
|
+
}
|
|
5262
5282
|
endSong() {
|
|
5263
5283
|
this.isEndSong = true;
|
|
5264
5284
|
this.requestLayout();
|
|
@@ -5279,30 +5299,6 @@ var _ObjMeasure = class _ObjMeasure extends MusicObject {
|
|
|
5279
5299
|
this.doc.requestNewRow();
|
|
5280
5300
|
this.disableExtension();
|
|
5281
5301
|
}
|
|
5282
|
-
enableExtension(musicObject) {
|
|
5283
|
-
this.addExtensionToMusicObjects.push(musicObject);
|
|
5284
|
-
}
|
|
5285
|
-
disableExtension() {
|
|
5286
|
-
this.addExtensionToMusicObjects = [];
|
|
5287
|
-
}
|
|
5288
|
-
addExtension(extensionLength, extensionVisible) {
|
|
5289
|
-
this.addExtensionToMusicObjects.forEach((musicObj) => {
|
|
5290
|
-
let anchor = musicObj.getParent();
|
|
5291
|
-
if (musicObj instanceof ObjText && anchor instanceof ObjRhythmColumn) {
|
|
5292
|
-
let lineStyle = "dashed";
|
|
5293
|
-
let linePos = "bottom";
|
|
5294
|
-
let extension = new Extension(musicObj, anchor, extensionLength, extensionVisible, lineStyle, linePos);
|
|
5295
|
-
musicObj.setLink(extension);
|
|
5296
|
-
} else {
|
|
5297
|
-
throw new MusicError13(MusicErrorType13.Score, "Cannot add extension becaue no compatible music object to attach it to.");
|
|
5298
|
-
}
|
|
5299
|
-
});
|
|
5300
|
-
if (this.addExtensionToMusicObjects.length === 0) {
|
|
5301
|
-
throw new MusicError13(MusicErrorType13.Score, "Cannot add extension because music object to attach it to is undefined.");
|
|
5302
|
-
}
|
|
5303
|
-
this.disableExtension();
|
|
5304
|
-
this.requestLayout();
|
|
5305
|
-
}
|
|
5306
5302
|
addRhythmSymbol(voiceId, symbol) {
|
|
5307
5303
|
let { col } = symbol;
|
|
5308
5304
|
col.setVoiceSymbol(voiceId, symbol);
|
|
@@ -6928,6 +6924,15 @@ function assertRestOptions(options) {
|
|
|
6928
6924
|
assertArg(Utils11.Is.isBooleanOrUndefined(options.hide), "restOptions.hide", options.hide);
|
|
6929
6925
|
assertArg(Utils11.Is.isBooleanOrUndefined(options.triplet), "restOptions.triplet", options.triplet);
|
|
6930
6926
|
}
|
|
6927
|
+
function assertStaffTabOrGRoups(staffTabOrGroups) {
|
|
6928
|
+
assertArg(
|
|
6929
|
+
Utils11.Is.isStringOrUndefined(staffTabOrGroups) || Utils11.Is.isIntegerGte(staffTabOrGroups, 0) || Utils11.Is.isArray(staffTabOrGroups) && staffTabOrGroups.every(
|
|
6930
|
+
(staffTabOrGroup) => Utils11.Is.isString(staffTabOrGroup) || Utils11.Is.isIntegerGte(staffTabOrGroup, 0)
|
|
6931
|
+
),
|
|
6932
|
+
"staffTabOrGroup",
|
|
6933
|
+
staffTabOrGroups
|
|
6934
|
+
);
|
|
6935
|
+
}
|
|
6931
6936
|
var DocumentBuilder = class {
|
|
6932
6937
|
constructor() {
|
|
6933
6938
|
__publicField(this, "doc");
|
|
@@ -7029,63 +7034,63 @@ var DocumentBuilder = class {
|
|
|
7029
7034
|
this.getMeasure().addRest(voiceId, restLength, options);
|
|
7030
7035
|
return this;
|
|
7031
7036
|
}
|
|
7032
|
-
addFermataInternal(
|
|
7033
|
-
|
|
7037
|
+
addFermataInternal(staffTabOrGroups, fermata) {
|
|
7038
|
+
assertStaffTabOrGRoups(staffTabOrGroups);
|
|
7034
7039
|
assertArg(Utils11.Is.isEnumValue(fermata, Fermata), "fermata", fermata);
|
|
7035
|
-
this.getMeasure().addFermata(
|
|
7040
|
+
this.getMeasure().addFermata(staffTabOrGroups, fermata);
|
|
7036
7041
|
return this;
|
|
7037
7042
|
}
|
|
7038
7043
|
addFermata(fermata = 0 /* AtNote */) {
|
|
7039
7044
|
return this.addFermataInternal(void 0, fermata);
|
|
7040
7045
|
}
|
|
7041
|
-
/** @param
|
|
7042
|
-
addFermataTo(
|
|
7043
|
-
return this.addFermataInternal(
|
|
7046
|
+
/** @param staffTabOrGroups - staff/tab index (0=top), staff/tab name, or staff group name. */
|
|
7047
|
+
addFermataTo(staffTabOrGroups, fermata = 0 /* AtNote */) {
|
|
7048
|
+
return this.addFermataInternal(staffTabOrGroups, fermata);
|
|
7044
7049
|
}
|
|
7045
|
-
addNavigationInternal(
|
|
7046
|
-
|
|
7050
|
+
addNavigationInternal(staffTabOrGroups, navigation, ...args) {
|
|
7051
|
+
assertStaffTabOrGRoups(staffTabOrGroups);
|
|
7047
7052
|
assertArg(Utils11.Is.isEnumValue(navigation, Navigation), "navigation", navigation);
|
|
7048
7053
|
if (navigation === 9 /* EndRepeat */ && args.length > 0) {
|
|
7049
7054
|
assertArg(Utils11.Is.isIntegerGte(args[0], 1), "playCount", args[0]);
|
|
7050
7055
|
} else if (navigation === 10 /* Ending */ && args.length > 0) {
|
|
7051
7056
|
assertArg(args.every((passage) => Utils11.Is.isIntegerGte(passage, 1)), "passages", args);
|
|
7052
7057
|
}
|
|
7053
|
-
this.getMeasure().addNavigation(
|
|
7058
|
+
this.getMeasure().addNavigation(staffTabOrGroups, navigation, ...args);
|
|
7054
7059
|
return this;
|
|
7055
7060
|
}
|
|
7056
7061
|
addNavigation(navigation, ...args) {
|
|
7057
7062
|
return this.addNavigationInternal(void 0, navigation, ...args);
|
|
7058
7063
|
}
|
|
7059
|
-
addNavigationTo(
|
|
7060
|
-
return this.addNavigationInternal(
|
|
7064
|
+
addNavigationTo(staffTabOrGroups, navigation, ...args) {
|
|
7065
|
+
return this.addNavigationInternal(staffTabOrGroups, navigation, ...args);
|
|
7061
7066
|
}
|
|
7062
|
-
addLabelInternal(
|
|
7063
|
-
|
|
7067
|
+
addLabelInternal(staffTabOrGroups, label, text) {
|
|
7068
|
+
assertStaffTabOrGRoups(staffTabOrGroups);
|
|
7064
7069
|
assertArg(Utils11.Is.isEnumValue(label, Label), "label", label);
|
|
7065
7070
|
assertArg(Utils11.Is.isString(text), "text", text);
|
|
7066
|
-
this.getMeasure().addLabel(
|
|
7071
|
+
this.getMeasure().addLabel(staffTabOrGroups, label, text);
|
|
7067
7072
|
return this;
|
|
7068
7073
|
}
|
|
7069
7074
|
addLabel(label, text) {
|
|
7070
7075
|
return this.addLabelInternal(void 0, label, text);
|
|
7071
7076
|
}
|
|
7072
|
-
/** @param
|
|
7073
|
-
addLabelTo(
|
|
7074
|
-
return this.addLabelInternal(
|
|
7077
|
+
/** @param staffTabOrGroups - staff/tab index (0=top), staff/tab name, or staff group name. */
|
|
7078
|
+
addLabelTo(staffTabOrGroups, label, text) {
|
|
7079
|
+
return this.addLabelInternal(staffTabOrGroups, label, text);
|
|
7075
7080
|
}
|
|
7076
|
-
addAnnotationInternal(
|
|
7077
|
-
|
|
7081
|
+
addAnnotationInternal(staffTabOrGroups, annotation, text) {
|
|
7082
|
+
assertStaffTabOrGRoups(staffTabOrGroups);
|
|
7078
7083
|
assertArg(Utils11.Is.isEnumValue(annotation, Annotation), "annotation", annotation);
|
|
7079
7084
|
assertArg(Utils11.Is.isString(text), "text", text);
|
|
7080
|
-
this.getMeasure().addAnnotation(
|
|
7085
|
+
this.getMeasure().addAnnotation(staffTabOrGroups, annotation, text);
|
|
7081
7086
|
return this;
|
|
7082
7087
|
}
|
|
7083
7088
|
addAnnotation(annotation, text) {
|
|
7084
7089
|
return this.addAnnotationInternal(void 0, annotation, text);
|
|
7085
7090
|
}
|
|
7086
|
-
/** @param
|
|
7087
|
-
addAnnotationTo(
|
|
7088
|
-
return this.addAnnotationInternal(
|
|
7091
|
+
/** @param staffTabOrGroups - staff/tab index (0=top), staff/tab name, or staff group name. */
|
|
7092
|
+
addAnnotationTo(staffTabOrGroups, annotation, text) {
|
|
7093
|
+
return this.addAnnotationInternal(staffTabOrGroups, annotation, text);
|
|
7089
7094
|
}
|
|
7090
7095
|
addConnective(connective, ...args) {
|
|
7091
7096
|
assertArg(Utils11.Is.isEnumValue(connective, Connective), "connective", connective);
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { N as Note, A as Accidental } from './note-
|
|
1
|
+
import { N as Note, A as Accidental } from './note-BFa43I86.mjs';
|
|
2
2
|
|
|
3
|
-
/** @public */
|
|
4
3
|
declare enum Mode {
|
|
5
4
|
Ionian = 1,
|
|
6
5
|
Dorian = 2,
|
|
@@ -10,15 +9,12 @@ declare enum Mode {
|
|
|
10
9
|
Aeolian = 6,
|
|
11
10
|
Locrian = 7
|
|
12
11
|
}
|
|
13
|
-
/** @public */
|
|
14
12
|
declare enum AccidentalType {
|
|
15
13
|
Natural = 0,
|
|
16
14
|
Flats = 1,
|
|
17
15
|
Sharps = 2
|
|
18
16
|
}
|
|
19
|
-
/** @public */
|
|
20
17
|
declare function getDefaultKeySignature(): KeySignature;
|
|
21
|
-
/** @public */
|
|
22
18
|
declare class KeySignature {
|
|
23
19
|
readonly tonic: string;
|
|
24
20
|
readonly mode: Mode;
|
|
@@ -46,7 +42,6 @@ declare class KeySignature {
|
|
|
46
42
|
static equals(a: KeySignature | null | undefined, b: KeySignature | null | undefined): boolean;
|
|
47
43
|
}
|
|
48
44
|
|
|
49
|
-
/** @public */
|
|
50
45
|
declare enum NoteLength {
|
|
51
46
|
Whole = 192,// * 3 because triplets are multiplied by 2 / 3, integer result
|
|
52
47
|
Half = 96,
|
|
@@ -56,13 +51,9 @@ declare enum NoteLength {
|
|
|
56
51
|
ThirtySecond = 6,
|
|
57
52
|
SixtyFourth = 3
|
|
58
53
|
}
|
|
59
|
-
/** @public */
|
|
60
54
|
declare const MaxNoteLength = NoteLength.Whole;
|
|
61
|
-
/** @public */
|
|
62
55
|
declare const MinNoteLength = NoteLength.SixtyFourth;
|
|
63
|
-
/** @public */
|
|
64
56
|
declare function validateNoteLength(noteLength: unknown): NoteLength;
|
|
65
|
-
/** @public */
|
|
66
57
|
declare class RhythmProps {
|
|
67
58
|
readonly noteLength: NoteLength;
|
|
68
59
|
readonly dotted: boolean;
|
|
@@ -76,9 +67,7 @@ declare class RhythmProps {
|
|
|
76
67
|
toString(): string;
|
|
77
68
|
}
|
|
78
69
|
|
|
79
|
-
/** @public */
|
|
80
70
|
type TimeSignatureString = "2/4" | "3/4" | "4/4" | "6/8" | "9/8";
|
|
81
|
-
/** @public */
|
|
82
71
|
declare class TimeSignature {
|
|
83
72
|
readonly beatCount: number;
|
|
84
73
|
readonly beatSize: number;
|
|
@@ -99,10 +88,8 @@ declare class TimeSignature {
|
|
|
99
88
|
is(beatCount: number, beatSize: number): boolean;
|
|
100
89
|
toString(): string;
|
|
101
90
|
}
|
|
102
|
-
/** @public */
|
|
103
91
|
declare function getDefaultTimeSignature(): TimeSignature;
|
|
104
92
|
|
|
105
|
-
/** @public */
|
|
106
93
|
type Tempo = {
|
|
107
94
|
beatsPerMinute: number;
|
|
108
95
|
options: {
|
|
@@ -110,11 +97,8 @@ type Tempo = {
|
|
|
110
97
|
dotted: boolean;
|
|
111
98
|
};
|
|
112
99
|
};
|
|
113
|
-
/** @public */
|
|
114
100
|
declare function getDefaultTempo(): Readonly<Tempo>;
|
|
115
|
-
/** @public */
|
|
116
101
|
declare function getTempoString(tempo: Tempo): string;
|
|
117
|
-
/** @public */
|
|
118
102
|
declare function alterTempoSpeed(tempo: Tempo, speed: number): Tempo;
|
|
119
103
|
|
|
120
104
|
export { AccidentalType as A, KeySignature as K, Mode as M, NoteLength as N, RhythmProps as R, type TimeSignatureString as T, TimeSignature as a, getDefaultTimeSignature as b, type Tempo as c, getDefaultTempo as d, getTempoString as e, alterTempoSpeed as f, getDefaultKeySignature as g, MaxNoteLength as h, MinNoteLength as i, validateNoteLength as v };
|
|
@@ -1,6 +1,5 @@
|
|
|
1
|
-
import { N as Note, A as Accidental } from './note-
|
|
1
|
+
import { N as Note, A as Accidental } from './note-BFa43I86.js';
|
|
2
2
|
|
|
3
|
-
/** @public */
|
|
4
3
|
declare enum Mode {
|
|
5
4
|
Ionian = 1,
|
|
6
5
|
Dorian = 2,
|
|
@@ -10,15 +9,12 @@ declare enum Mode {
|
|
|
10
9
|
Aeolian = 6,
|
|
11
10
|
Locrian = 7
|
|
12
11
|
}
|
|
13
|
-
/** @public */
|
|
14
12
|
declare enum AccidentalType {
|
|
15
13
|
Natural = 0,
|
|
16
14
|
Flats = 1,
|
|
17
15
|
Sharps = 2
|
|
18
16
|
}
|
|
19
|
-
/** @public */
|
|
20
17
|
declare function getDefaultKeySignature(): KeySignature;
|
|
21
|
-
/** @public */
|
|
22
18
|
declare class KeySignature {
|
|
23
19
|
readonly tonic: string;
|
|
24
20
|
readonly mode: Mode;
|
|
@@ -46,7 +42,6 @@ declare class KeySignature {
|
|
|
46
42
|
static equals(a: KeySignature | null | undefined, b: KeySignature | null | undefined): boolean;
|
|
47
43
|
}
|
|
48
44
|
|
|
49
|
-
/** @public */
|
|
50
45
|
declare enum NoteLength {
|
|
51
46
|
Whole = 192,// * 3 because triplets are multiplied by 2 / 3, integer result
|
|
52
47
|
Half = 96,
|
|
@@ -56,13 +51,9 @@ declare enum NoteLength {
|
|
|
56
51
|
ThirtySecond = 6,
|
|
57
52
|
SixtyFourth = 3
|
|
58
53
|
}
|
|
59
|
-
/** @public */
|
|
60
54
|
declare const MaxNoteLength = NoteLength.Whole;
|
|
61
|
-
/** @public */
|
|
62
55
|
declare const MinNoteLength = NoteLength.SixtyFourth;
|
|
63
|
-
/** @public */
|
|
64
56
|
declare function validateNoteLength(noteLength: unknown): NoteLength;
|
|
65
|
-
/** @public */
|
|
66
57
|
declare class RhythmProps {
|
|
67
58
|
readonly noteLength: NoteLength;
|
|
68
59
|
readonly dotted: boolean;
|
|
@@ -76,9 +67,7 @@ declare class RhythmProps {
|
|
|
76
67
|
toString(): string;
|
|
77
68
|
}
|
|
78
69
|
|
|
79
|
-
/** @public */
|
|
80
70
|
type TimeSignatureString = "2/4" | "3/4" | "4/4" | "6/8" | "9/8";
|
|
81
|
-
/** @public */
|
|
82
71
|
declare class TimeSignature {
|
|
83
72
|
readonly beatCount: number;
|
|
84
73
|
readonly beatSize: number;
|
|
@@ -99,10 +88,8 @@ declare class TimeSignature {
|
|
|
99
88
|
is(beatCount: number, beatSize: number): boolean;
|
|
100
89
|
toString(): string;
|
|
101
90
|
}
|
|
102
|
-
/** @public */
|
|
103
91
|
declare function getDefaultTimeSignature(): TimeSignature;
|
|
104
92
|
|
|
105
|
-
/** @public */
|
|
106
93
|
type Tempo = {
|
|
107
94
|
beatsPerMinute: number;
|
|
108
95
|
options: {
|
|
@@ -110,11 +97,8 @@ type Tempo = {
|
|
|
110
97
|
dotted: boolean;
|
|
111
98
|
};
|
|
112
99
|
};
|
|
113
|
-
/** @public */
|
|
114
100
|
declare function getDefaultTempo(): Readonly<Tempo>;
|
|
115
|
-
/** @public */
|
|
116
101
|
declare function getTempoString(tempo: Tempo): string;
|
|
117
|
-
/** @public */
|
|
118
102
|
declare function alterTempoSpeed(tempo: Tempo, speed: number): Tempo;
|
|
119
103
|
|
|
120
104
|
export { AccidentalType as A, KeySignature as K, Mode as M, NoteLength as N, RhythmProps as R, type TimeSignatureString as T, TimeSignature as a, getDefaultTimeSignature as b, type Tempo as c, getDefaultTempo as d, getTempoString as e, alterTempoSpeed as f, getDefaultKeySignature as g, MaxNoteLength as h, MinNoteLength as i, validateNoteLength as v };
|
package/dist/theory/index.d.mts
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
import { N as Note } from '../note-
|
|
2
|
-
export { A as Accidental, d as DefaultGuitarNoteLabel, D as DefaultPitchNotation, G as GuitarNoteLabel, e as GuitarNoteLabelList, a as NoteLetter, P as ParsedNote, b as PitchNotation, c as PitchNotationList, S as SymbolSet, g as getPitchNotationName, f as validateGuitarNoteLabel, v as validatePitchNotation } from '../note-
|
|
3
|
-
import { D as Degree } from '../scale-
|
|
4
|
-
export { b as Interval, I as IntervalDirection, a as IntervalQuality, c as Scale, d as ScaleFactory, S as ScaleType, i as getDefaultScale, h as getScale, e as getScaleFactory, g as getScaleFactoryList, v as validateIntervalQuality, f as validateScaleType } from '../scale-
|
|
5
|
-
export { D as DefaultHandedness, a as DefaultTuningName, H as Handedness, T as TuningNameList, g as getTuningStrings, v as validateHandedness, b as validateTuningName } from '../guitar-
|
|
6
|
-
export { A as AccidentalType, K as KeySignature, h as MaxNoteLength, i as MinNoteLength, M as Mode, N as NoteLength, R as RhythmProps, c as Tempo, a as TimeSignature, T as TimeSignatureString, f as alterTempoSpeed, g as getDefaultKeySignature, d as getDefaultTempo, b as getDefaultTimeSignature, e as getTempoString, v as validateNoteLength } from '../tempo-
|
|
1
|
+
import { N as Note } from '../note-BFa43I86.mjs';
|
|
2
|
+
export { A as Accidental, d as DefaultGuitarNoteLabel, D as DefaultPitchNotation, G as GuitarNoteLabel, e as GuitarNoteLabelList, a as NoteLetter, P as ParsedNote, b as PitchNotation, c as PitchNotationList, S as SymbolSet, g as getPitchNotationName, f as validateGuitarNoteLabel, v as validatePitchNotation } from '../note-BFa43I86.mjs';
|
|
3
|
+
import { D as Degree } from '../scale-DRR-t4Kr.mjs';
|
|
4
|
+
export { b as Interval, I as IntervalDirection, a as IntervalQuality, c as Scale, d as ScaleFactory, S as ScaleType, i as getDefaultScale, h as getScale, e as getScaleFactory, g as getScaleFactoryList, v as validateIntervalQuality, f as validateScaleType } from '../scale-DRR-t4Kr.mjs';
|
|
5
|
+
export { D as DefaultHandedness, a as DefaultTuningName, H as Handedness, T as TuningNameList, g as getTuningStrings, v as validateHandedness, b as validateTuningName } from '../guitar-DggbM2UL.mjs';
|
|
6
|
+
export { A as AccidentalType, K as KeySignature, h as MaxNoteLength, i as MinNoteLength, M as Mode, N as NoteLength, R as RhythmProps, c as Tempo, a as TimeSignature, T as TimeSignatureString, f as alterTempoSpeed, g as getDefaultKeySignature, d as getDefaultTempo, b as getDefaultTimeSignature, e as getTempoString, v as validateNoteLength } from '../tempo-B4h5Ktob.mjs';
|
|
7
7
|
|
|
8
|
-
/** @public */
|
|
9
8
|
type ChordInfo = {
|
|
10
9
|
name: string;
|
|
11
10
|
degrees: Degree[];
|
|
12
11
|
};
|
|
13
|
-
/** @public */
|
|
14
12
|
declare class Chord {
|
|
15
13
|
readonly chordInfo: ChordInfo;
|
|
16
14
|
readonly rootNote: Note;
|
package/dist/theory/index.d.ts
CHANGED
|
@@ -1,16 +1,14 @@
|
|
|
1
|
-
import { N as Note } from '../note-
|
|
2
|
-
export { A as Accidental, d as DefaultGuitarNoteLabel, D as DefaultPitchNotation, G as GuitarNoteLabel, e as GuitarNoteLabelList, a as NoteLetter, P as ParsedNote, b as PitchNotation, c as PitchNotationList, S as SymbolSet, g as getPitchNotationName, f as validateGuitarNoteLabel, v as validatePitchNotation } from '../note-
|
|
3
|
-
import { D as Degree } from '../scale-
|
|
4
|
-
export { b as Interval, I as IntervalDirection, a as IntervalQuality, c as Scale, d as ScaleFactory, S as ScaleType, i as getDefaultScale, h as getScale, e as getScaleFactory, g as getScaleFactoryList, v as validateIntervalQuality, f as validateScaleType } from '../scale-
|
|
5
|
-
export { D as DefaultHandedness, a as DefaultTuningName, H as Handedness, T as TuningNameList, g as getTuningStrings, v as validateHandedness, b as validateTuningName } from '../guitar-
|
|
6
|
-
export { A as AccidentalType, K as KeySignature, h as MaxNoteLength, i as MinNoteLength, M as Mode, N as NoteLength, R as RhythmProps, c as Tempo, a as TimeSignature, T as TimeSignatureString, f as alterTempoSpeed, g as getDefaultKeySignature, d as getDefaultTempo, b as getDefaultTimeSignature, e as getTempoString, v as validateNoteLength } from '../tempo-
|
|
1
|
+
import { N as Note } from '../note-BFa43I86.js';
|
|
2
|
+
export { A as Accidental, d as DefaultGuitarNoteLabel, D as DefaultPitchNotation, G as GuitarNoteLabel, e as GuitarNoteLabelList, a as NoteLetter, P as ParsedNote, b as PitchNotation, c as PitchNotationList, S as SymbolSet, g as getPitchNotationName, f as validateGuitarNoteLabel, v as validatePitchNotation } from '../note-BFa43I86.js';
|
|
3
|
+
import { D as Degree } from '../scale-ebJm37q1.js';
|
|
4
|
+
export { b as Interval, I as IntervalDirection, a as IntervalQuality, c as Scale, d as ScaleFactory, S as ScaleType, i as getDefaultScale, h as getScale, e as getScaleFactory, g as getScaleFactoryList, v as validateIntervalQuality, f as validateScaleType } from '../scale-ebJm37q1.js';
|
|
5
|
+
export { D as DefaultHandedness, a as DefaultTuningName, H as Handedness, T as TuningNameList, g as getTuningStrings, v as validateHandedness, b as validateTuningName } from '../guitar-C2Cp71NZ.js';
|
|
6
|
+
export { A as AccidentalType, K as KeySignature, h as MaxNoteLength, i as MinNoteLength, M as Mode, N as NoteLength, R as RhythmProps, c as Tempo, a as TimeSignature, T as TimeSignatureString, f as alterTempoSpeed, g as getDefaultKeySignature, d as getDefaultTempo, b as getDefaultTimeSignature, e as getTempoString, v as validateNoteLength } from '../tempo-DgqDEsn0.js';
|
|
7
7
|
|
|
8
|
-
/** @public */
|
|
9
8
|
type ChordInfo = {
|
|
10
9
|
name: string;
|
|
11
10
|
degrees: Degree[];
|
|
12
11
|
};
|
|
13
|
-
/** @public */
|
|
14
12
|
declare class Chord {
|
|
15
13
|
readonly chordInfo: ChordInfo;
|
|
16
14
|
readonly rootNote: Note;
|
package/dist/theory/index.js
CHANGED
|
@@ -1,4 +1,4 @@
|
|
|
1
|
-
/* WebMusicScore v3.1.
|
|
1
|
+
/* WebMusicScore v3.1.1 | (c) 2023 PahkaSoft | MIT License | Includes: Tone.js (MIT License) */
|
|
2
2
|
"use strict";
|
|
3
3
|
var __defProp = Object.defineProperty;
|
|
4
4
|
var __getOwnPropDesc = Object.getOwnPropertyDescriptor;
|
package/dist/theory/index.mjs
CHANGED
|
@@ -1,7 +1,7 @@
|
|
|
1
|
-
/* WebMusicScore v3.1.
|
|
1
|
+
/* WebMusicScore v3.1.1 | (c) 2023 PahkaSoft | MIT License | Includes: Tone.js (MIT License) */
|
|
2
2
|
import {
|
|
3
3
|
__publicField
|
|
4
|
-
} from "../chunk-
|
|
4
|
+
} from "../chunk-PU4J7K4Z.mjs";
|
|
5
5
|
|
|
6
6
|
// src/theory/chord.ts
|
|
7
7
|
import { Utils as Utils6 } from "@tspro/ts-utils-lib";
|