chordsheetjs 7.6.0 → 7.7.0
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/README.md +32 -9
- package/lib/bundle.js +297 -215
- package/lib/index.js +297 -215
- package/lib/index.js.map +1 -1
- package/lib/main.d.ts +26 -12
- package/lib/main.d.ts.map +1 -1
- package/lib/module.js +297 -215
- package/lib/module.js.map +1 -1
- package/package.json +3 -3
package/lib/module.js
CHANGED
|
@@ -1,5 +1,9 @@
|
|
|
1
1
|
import $iPNDK$lodashget from "lodash.get";
|
|
2
2
|
|
|
3
|
+
// Generated by peggy v. 2.0.1 (ts-pegjs plugin v. 2.1.0 )
|
|
4
|
+
//
|
|
5
|
+
// https://peggyjs.org/ https://github.com/metadevpro/ts-pegjs
|
|
6
|
+
"use strict";
|
|
3
7
|
function $182dbf639c88db75$var$peg$padEnd(str, targetLength, padString) {
|
|
4
8
|
padString = padString || " ";
|
|
5
9
|
if (str.length > targetLength) return str;
|
|
@@ -98,7 +102,9 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
98
102
|
options = options !== undefined ? options : {};
|
|
99
103
|
const peg$FAILED = {};
|
|
100
104
|
const peg$source = options.grammarSource;
|
|
101
|
-
const peg$startRuleFunctions = {
|
|
105
|
+
const peg$startRuleFunctions = {
|
|
106
|
+
ChordSheet: peg$parseChordSheet
|
|
107
|
+
};
|
|
102
108
|
let peg$startRuleFunction = peg$parseChordSheet;
|
|
103
109
|
const peg$c0 = function(lines, line) {
|
|
104
110
|
return {
|
|
@@ -130,93 +136,100 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
130
136
|
comment ? {
|
|
131
137
|
type: "comment",
|
|
132
138
|
comment: comment
|
|
133
|
-
} : null
|
|
139
|
+
} : null,
|
|
134
140
|
].filter((x)=>x)
|
|
135
141
|
};
|
|
136
142
|
};
|
|
137
|
-
const peg$c3 =
|
|
138
|
-
|
|
139
|
-
|
|
140
|
-
|
|
143
|
+
const peg$c3 = function(lyrics) {
|
|
144
|
+
return {
|
|
145
|
+
type: "chordLyricsPair",
|
|
146
|
+
chords: "",
|
|
147
|
+
lyrics: lyrics
|
|
148
|
+
};
|
|
149
|
+
};
|
|
150
|
+
const peg$c4 = "#";
|
|
151
|
+
const peg$c5 = peg$literalExpectation("#", false);
|
|
152
|
+
const peg$c6 = /^[^\r\n]/;
|
|
153
|
+
const peg$c7 = peg$classExpectation([
|
|
141
154
|
"\r",
|
|
142
155
|
"\n"
|
|
143
156
|
], true, false);
|
|
144
|
-
const peg$
|
|
157
|
+
const peg$c8 = function(comment) {
|
|
145
158
|
return comment;
|
|
146
159
|
};
|
|
147
|
-
const peg$
|
|
160
|
+
const peg$c9 = function(chords, lyrics, space) {
|
|
148
161
|
return {
|
|
149
162
|
type: "chordLyricsPair",
|
|
150
163
|
chords: chords || "",
|
|
151
|
-
lyrics: lyrics
|
|
164
|
+
lyrics: lyrics + (space || "")
|
|
152
165
|
};
|
|
153
166
|
};
|
|
154
|
-
const peg$
|
|
167
|
+
const peg$c10 = function(lyrics) {
|
|
155
168
|
return lyrics.map((c)=>c.char || c).join("");
|
|
156
169
|
};
|
|
157
|
-
const peg$
|
|
158
|
-
const peg$
|
|
159
|
-
const peg$
|
|
160
|
-
const peg$
|
|
161
|
-
const peg$
|
|
170
|
+
const peg$c11 = "[";
|
|
171
|
+
const peg$c12 = peg$literalExpectation("[", false);
|
|
172
|
+
const peg$c13 = "]";
|
|
173
|
+
const peg$c14 = peg$literalExpectation("]", false);
|
|
174
|
+
const peg$c15 = function(chords) {
|
|
162
175
|
return chords.map((c)=>c.char || c).join("");
|
|
163
176
|
};
|
|
164
|
-
const peg$
|
|
165
|
-
const peg$
|
|
177
|
+
const peg$c16 = /^[^\]\r\n]/;
|
|
178
|
+
const peg$c17 = peg$classExpectation([
|
|
166
179
|
"]",
|
|
167
180
|
"\r",
|
|
168
181
|
"\n"
|
|
169
182
|
], true, false);
|
|
170
|
-
const peg$
|
|
171
|
-
const peg$
|
|
172
|
-
const peg$
|
|
183
|
+
const peg$c18 = "\\";
|
|
184
|
+
const peg$c19 = peg$literalExpectation("\\", false);
|
|
185
|
+
const peg$c20 = function() {
|
|
173
186
|
return {
|
|
174
187
|
type: "char",
|
|
175
188
|
char: "\\"
|
|
176
189
|
};
|
|
177
190
|
};
|
|
178
|
-
const peg$
|
|
191
|
+
const peg$c21 = function() {
|
|
179
192
|
return {
|
|
180
193
|
type: "char",
|
|
181
194
|
char: "]"
|
|
182
195
|
};
|
|
183
196
|
};
|
|
184
|
-
const peg$
|
|
197
|
+
const peg$c22 = function(sequence) {
|
|
185
198
|
return sequence;
|
|
186
199
|
};
|
|
187
|
-
const peg$
|
|
188
|
-
const peg$
|
|
189
|
-
const peg$
|
|
190
|
-
const peg$
|
|
191
|
-
const peg$
|
|
200
|
+
const peg$c23 = "%{";
|
|
201
|
+
const peg$c24 = peg$literalExpectation("%{", false);
|
|
202
|
+
const peg$c25 = "}";
|
|
203
|
+
const peg$c26 = peg$literalExpectation("}", false);
|
|
204
|
+
const peg$c27 = function(variableName, valueTest, expressions) {
|
|
192
205
|
return {
|
|
193
|
-
|
|
206
|
+
type: "ternary",
|
|
194
207
|
variable: variableName.length > 0 ? variableName : null,
|
|
195
208
|
valueTest: valueTest,
|
|
196
209
|
...expressions,
|
|
197
210
|
location: location().start
|
|
198
211
|
};
|
|
199
212
|
};
|
|
200
|
-
const peg$
|
|
201
|
-
const peg$
|
|
202
|
-
const peg$
|
|
213
|
+
const peg$c28 = "=";
|
|
214
|
+
const peg$c29 = peg$literalExpectation("=", false);
|
|
215
|
+
const peg$c30 = function(testValue) {
|
|
203
216
|
return testValue;
|
|
204
217
|
};
|
|
205
|
-
const peg$
|
|
206
|
-
const peg$
|
|
207
|
-
const peg$
|
|
218
|
+
const peg$c31 = "|";
|
|
219
|
+
const peg$c32 = peg$literalExpectation("|", false);
|
|
220
|
+
const peg$c33 = function(trueExpression, falseExpression) {
|
|
208
221
|
return {
|
|
209
|
-
|
|
222
|
+
type: "ternary",
|
|
210
223
|
trueExpression: trueExpression,
|
|
211
224
|
falseExpression: falseExpression,
|
|
212
225
|
location: location().start
|
|
213
226
|
};
|
|
214
227
|
};
|
|
215
|
-
const peg$
|
|
228
|
+
const peg$c34 = function(falseExpression) {
|
|
216
229
|
return falseExpression;
|
|
217
230
|
};
|
|
218
|
-
const peg$
|
|
219
|
-
const peg$
|
|
231
|
+
const peg$c35 = /^[a-zA-Z0-9\-_]/;
|
|
232
|
+
const peg$c36 = peg$classExpectation([
|
|
220
233
|
[
|
|
221
234
|
"a",
|
|
222
235
|
"z"
|
|
@@ -232,20 +245,26 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
232
245
|
"-",
|
|
233
246
|
"_"
|
|
234
247
|
], false, false);
|
|
235
|
-
const peg$
|
|
248
|
+
const peg$c37 = function() {
|
|
249
|
+
return {
|
|
250
|
+
type: "char",
|
|
251
|
+
char: "]"
|
|
252
|
+
};
|
|
253
|
+
};
|
|
254
|
+
const peg$c38 = function() {
|
|
236
255
|
return {
|
|
237
256
|
type: "char",
|
|
238
257
|
char: "|"
|
|
239
258
|
};
|
|
240
259
|
};
|
|
241
|
-
const peg$
|
|
260
|
+
const peg$c39 = function() {
|
|
242
261
|
return {
|
|
243
262
|
type: "char",
|
|
244
263
|
char: "}"
|
|
245
264
|
};
|
|
246
265
|
};
|
|
247
|
-
const peg$
|
|
248
|
-
const peg$
|
|
266
|
+
const peg$c40 = /^[^|[\]\\{}%#\r\n\t ]/;
|
|
267
|
+
const peg$c41 = peg$classExpectation([
|
|
249
268
|
"|",
|
|
250
269
|
"[",
|
|
251
270
|
"]",
|
|
@@ -255,37 +274,45 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
255
274
|
"%",
|
|
256
275
|
"#",
|
|
257
276
|
"\r",
|
|
258
|
-
"\n"
|
|
277
|
+
"\n",
|
|
278
|
+
" ",
|
|
279
|
+
" "
|
|
259
280
|
], true, false);
|
|
260
|
-
const peg$
|
|
281
|
+
const peg$c42 = function() {
|
|
261
282
|
return {
|
|
262
283
|
type: "char",
|
|
263
|
-
char: "
|
|
284
|
+
char: "\\"
|
|
264
285
|
};
|
|
265
286
|
};
|
|
266
|
-
const peg$c41 = "{";
|
|
267
|
-
const peg$c42 = peg$literalExpectation("{", false);
|
|
268
287
|
const peg$c43 = function() {
|
|
269
288
|
return {
|
|
270
289
|
type: "char",
|
|
271
|
-
char: "
|
|
290
|
+
char: "["
|
|
272
291
|
};
|
|
273
292
|
};
|
|
274
|
-
const peg$c44 = "
|
|
275
|
-
const peg$c45 = peg$literalExpectation("
|
|
293
|
+
const peg$c44 = "{";
|
|
294
|
+
const peg$c45 = peg$literalExpectation("{", false);
|
|
276
295
|
const peg$c46 = function() {
|
|
296
|
+
return {
|
|
297
|
+
type: "char",
|
|
298
|
+
char: "{"
|
|
299
|
+
};
|
|
300
|
+
};
|
|
301
|
+
const peg$c47 = "%";
|
|
302
|
+
const peg$c48 = peg$literalExpectation("%", false);
|
|
303
|
+
const peg$c49 = function() {
|
|
277
304
|
return {
|
|
278
305
|
type: "char",
|
|
279
306
|
char: "%"
|
|
280
307
|
};
|
|
281
308
|
};
|
|
282
|
-
const peg$
|
|
309
|
+
const peg$c50 = function() {
|
|
283
310
|
return {
|
|
284
311
|
type: "char",
|
|
285
312
|
char: "#"
|
|
286
313
|
};
|
|
287
314
|
};
|
|
288
|
-
const peg$
|
|
315
|
+
const peg$c51 = function(tagName, tagColonWithValue) {
|
|
289
316
|
return {
|
|
290
317
|
type: "tag",
|
|
291
318
|
name: tagName,
|
|
@@ -293,13 +320,13 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
293
320
|
location: location().start
|
|
294
321
|
};
|
|
295
322
|
};
|
|
296
|
-
const peg$
|
|
297
|
-
const peg$
|
|
298
|
-
const peg$
|
|
323
|
+
const peg$c52 = ":";
|
|
324
|
+
const peg$c53 = peg$literalExpectation(":", false);
|
|
325
|
+
const peg$c54 = function(tagValue) {
|
|
299
326
|
return tagValue.map((c)=>c.char || c).join("");
|
|
300
327
|
};
|
|
301
|
-
const peg$
|
|
302
|
-
const peg$
|
|
328
|
+
const peg$c55 = /^[a-zA-Z\-_]/;
|
|
329
|
+
const peg$c56 = peg$classExpectation([
|
|
303
330
|
[
|
|
304
331
|
"a",
|
|
305
332
|
"z"
|
|
@@ -311,31 +338,31 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
311
338
|
"-",
|
|
312
339
|
"_"
|
|
313
340
|
], false, false);
|
|
314
|
-
const peg$
|
|
315
|
-
const peg$
|
|
341
|
+
const peg$c57 = /^[^}\\\r\n]/;
|
|
342
|
+
const peg$c58 = peg$classExpectation([
|
|
316
343
|
"}",
|
|
317
344
|
"\\",
|
|
318
345
|
"\r",
|
|
319
346
|
"\n"
|
|
320
347
|
], true, false);
|
|
321
|
-
const peg$
|
|
322
|
-
const peg$
|
|
323
|
-
const peg$
|
|
348
|
+
const peg$c59 = peg$otherExpectation("whitespace");
|
|
349
|
+
const peg$c60 = /^[ \t\n\r]/;
|
|
350
|
+
const peg$c61 = peg$classExpectation([
|
|
324
351
|
" ",
|
|
325
352
|
" ",
|
|
326
353
|
"\n",
|
|
327
354
|
"\r"
|
|
328
355
|
], false, false);
|
|
329
|
-
const peg$
|
|
330
|
-
const peg$
|
|
331
|
-
const peg$
|
|
356
|
+
const peg$c62 = peg$otherExpectation("space");
|
|
357
|
+
const peg$c63 = /^[ \t]/;
|
|
358
|
+
const peg$c64 = peg$classExpectation([
|
|
332
359
|
" ",
|
|
333
360
|
" "
|
|
334
361
|
], false, false);
|
|
335
|
-
const peg$
|
|
336
|
-
const peg$
|
|
337
|
-
const peg$
|
|
338
|
-
const peg$
|
|
362
|
+
const peg$c65 = "\n";
|
|
363
|
+
const peg$c66 = peg$literalExpectation("\n", false);
|
|
364
|
+
const peg$c67 = "\r";
|
|
365
|
+
const peg$c68 = peg$literalExpectation("\r", false);
|
|
339
366
|
let peg$currPos = 0;
|
|
340
367
|
let peg$savedPos = 0;
|
|
341
368
|
const peg$posDetailsCache = [
|
|
@@ -502,8 +529,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
502
529
|
function peg$parseLine() {
|
|
503
530
|
let s0, s1, s2, s3, s4, s5, s6;
|
|
504
531
|
s0 = peg$currPos;
|
|
505
|
-
s1 = peg$
|
|
506
|
-
|
|
532
|
+
s1 = peg$currPos;
|
|
533
|
+
s2 = peg$parseLyrics();
|
|
534
|
+
if (s2 === peg$FAILED) s2 = null;
|
|
535
|
+
if (s2 !== peg$FAILED) s1 = input.substring(s1, peg$currPos);
|
|
536
|
+
else s1 = s2;
|
|
507
537
|
if (s1 !== peg$FAILED) {
|
|
508
538
|
s2 = [];
|
|
509
539
|
s3 = peg$parseToken();
|
|
@@ -551,11 +581,22 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
551
581
|
return s0;
|
|
552
582
|
}
|
|
553
583
|
function peg$parseToken() {
|
|
554
|
-
let s0;
|
|
584
|
+
let s0, s1;
|
|
555
585
|
s0 = peg$parseTag();
|
|
556
586
|
if (s0 === peg$FAILED) {
|
|
557
587
|
s0 = peg$parseChordLyricsPair();
|
|
558
|
-
if (s0 === peg$FAILED)
|
|
588
|
+
if (s0 === peg$FAILED) {
|
|
589
|
+
s0 = peg$parseMetaTernary();
|
|
590
|
+
if (s0 === peg$FAILED) {
|
|
591
|
+
s0 = peg$currPos;
|
|
592
|
+
s1 = peg$parseLyrics();
|
|
593
|
+
if (s1 !== peg$FAILED) {
|
|
594
|
+
peg$savedPos = s0;
|
|
595
|
+
s1 = peg$c3(s1);
|
|
596
|
+
}
|
|
597
|
+
s0 = s1;
|
|
598
|
+
}
|
|
599
|
+
}
|
|
559
600
|
}
|
|
560
601
|
return s0;
|
|
561
602
|
}
|
|
@@ -566,37 +607,37 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
566
607
|
if (s1 === peg$FAILED) s1 = null;
|
|
567
608
|
if (s1 !== peg$FAILED) {
|
|
568
609
|
if (input.charCodeAt(peg$currPos) === 35) {
|
|
569
|
-
s2 = peg$
|
|
610
|
+
s2 = peg$c4;
|
|
570
611
|
peg$currPos++;
|
|
571
612
|
} else {
|
|
572
613
|
s2 = peg$FAILED;
|
|
573
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
614
|
+
if (peg$silentFails === 0) peg$fail(peg$c5);
|
|
574
615
|
}
|
|
575
616
|
if (s2 !== peg$FAILED) {
|
|
576
617
|
s3 = peg$currPos;
|
|
577
618
|
s4 = [];
|
|
578
|
-
if (peg$
|
|
619
|
+
if (peg$c6.test(input.charAt(peg$currPos))) {
|
|
579
620
|
s5 = input.charAt(peg$currPos);
|
|
580
621
|
peg$currPos++;
|
|
581
622
|
} else {
|
|
582
623
|
s5 = peg$FAILED;
|
|
583
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
624
|
+
if (peg$silentFails === 0) peg$fail(peg$c7);
|
|
584
625
|
}
|
|
585
626
|
while(s5 !== peg$FAILED){
|
|
586
627
|
s4.push(s5);
|
|
587
|
-
if (peg$
|
|
628
|
+
if (peg$c6.test(input.charAt(peg$currPos))) {
|
|
588
629
|
s5 = input.charAt(peg$currPos);
|
|
589
630
|
peg$currPos++;
|
|
590
631
|
} else {
|
|
591
632
|
s5 = peg$FAILED;
|
|
592
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
633
|
+
if (peg$silentFails === 0) peg$fail(peg$c7);
|
|
593
634
|
}
|
|
594
635
|
}
|
|
595
636
|
if (s4 !== peg$FAILED) s3 = input.substring(s3, peg$currPos);
|
|
596
637
|
else s3 = s4;
|
|
597
638
|
if (s3 !== peg$FAILED) {
|
|
598
639
|
peg$savedPos = s0;
|
|
599
|
-
s1 = peg$
|
|
640
|
+
s1 = peg$c8(s3);
|
|
600
641
|
s0 = s1;
|
|
601
642
|
} else {
|
|
602
643
|
peg$currPos = s0;
|
|
@@ -613,23 +654,37 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
613
654
|
return s0;
|
|
614
655
|
}
|
|
615
656
|
function peg$parseChordLyricsPair() {
|
|
616
|
-
let s0, s1, s2, s3, s4;
|
|
657
|
+
let s0, s1, s2, s3, s4, s5;
|
|
617
658
|
s0 = peg$currPos;
|
|
618
659
|
s1 = peg$parseChord();
|
|
619
660
|
if (s1 !== peg$FAILED) {
|
|
620
661
|
s2 = peg$currPos;
|
|
621
662
|
s3 = [];
|
|
622
|
-
s4 = peg$
|
|
663
|
+
s4 = peg$parseLyricsChar();
|
|
623
664
|
while(s4 !== peg$FAILED){
|
|
624
665
|
s3.push(s4);
|
|
625
|
-
s4 = peg$
|
|
666
|
+
s4 = peg$parseLyricsChar();
|
|
626
667
|
}
|
|
627
668
|
if (s3 !== peg$FAILED) s2 = input.substring(s2, peg$currPos);
|
|
628
669
|
else s2 = s3;
|
|
629
670
|
if (s2 !== peg$FAILED) {
|
|
630
|
-
|
|
631
|
-
|
|
632
|
-
|
|
671
|
+
s3 = peg$currPos;
|
|
672
|
+
s4 = [];
|
|
673
|
+
s5 = peg$parseSpace();
|
|
674
|
+
while(s5 !== peg$FAILED){
|
|
675
|
+
s4.push(s5);
|
|
676
|
+
s5 = peg$parseSpace();
|
|
677
|
+
}
|
|
678
|
+
if (s4 !== peg$FAILED) s3 = input.substring(s3, peg$currPos);
|
|
679
|
+
else s3 = s4;
|
|
680
|
+
if (s3 !== peg$FAILED) {
|
|
681
|
+
peg$savedPos = s0;
|
|
682
|
+
s1 = peg$c9(s1, s2, s3);
|
|
683
|
+
s0 = s1;
|
|
684
|
+
} else {
|
|
685
|
+
peg$currPos = s0;
|
|
686
|
+
s0 = peg$FAILED;
|
|
687
|
+
}
|
|
633
688
|
} else {
|
|
634
689
|
peg$currPos = s0;
|
|
635
690
|
s0 = peg$FAILED;
|
|
@@ -644,19 +699,25 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
644
699
|
let s0, s1, s2;
|
|
645
700
|
s0 = peg$currPos;
|
|
646
701
|
s1 = [];
|
|
647
|
-
s2 = peg$
|
|
702
|
+
s2 = peg$parseLyricsCharOrSpace();
|
|
648
703
|
if (s2 !== peg$FAILED) while(s2 !== peg$FAILED){
|
|
649
704
|
s1.push(s2);
|
|
650
|
-
s2 = peg$
|
|
705
|
+
s2 = peg$parseLyricsCharOrSpace();
|
|
651
706
|
}
|
|
652
707
|
else s1 = peg$FAILED;
|
|
653
708
|
if (s1 !== peg$FAILED) {
|
|
654
709
|
peg$savedPos = s0;
|
|
655
|
-
s1 = peg$
|
|
710
|
+
s1 = peg$c10(s1);
|
|
656
711
|
}
|
|
657
712
|
s0 = s1;
|
|
658
713
|
return s0;
|
|
659
714
|
}
|
|
715
|
+
function peg$parseLyricsCharOrSpace() {
|
|
716
|
+
let s0;
|
|
717
|
+
s0 = peg$parseLyricsChar();
|
|
718
|
+
if (s0 === peg$FAILED) s0 = peg$parseSpace();
|
|
719
|
+
return s0;
|
|
720
|
+
}
|
|
660
721
|
function peg$parseChord() {
|
|
661
722
|
let s0, s1, s2, s3, s4;
|
|
662
723
|
s0 = peg$currPos;
|
|
@@ -671,11 +732,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
671
732
|
}
|
|
672
733
|
if (s1 !== peg$FAILED) {
|
|
673
734
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
674
|
-
s2 = peg$
|
|
735
|
+
s2 = peg$c11;
|
|
675
736
|
peg$currPos++;
|
|
676
737
|
} else {
|
|
677
738
|
s2 = peg$FAILED;
|
|
678
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
739
|
+
if (peg$silentFails === 0) peg$fail(peg$c12);
|
|
679
740
|
}
|
|
680
741
|
if (s2 !== peg$FAILED) {
|
|
681
742
|
s3 = [];
|
|
@@ -686,15 +747,15 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
686
747
|
}
|
|
687
748
|
if (s3 !== peg$FAILED) {
|
|
688
749
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
689
|
-
s4 = peg$
|
|
750
|
+
s4 = peg$c13;
|
|
690
751
|
peg$currPos++;
|
|
691
752
|
} else {
|
|
692
753
|
s4 = peg$FAILED;
|
|
693
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
754
|
+
if (peg$silentFails === 0) peg$fail(peg$c14);
|
|
694
755
|
}
|
|
695
756
|
if (s4 !== peg$FAILED) {
|
|
696
757
|
peg$savedPos = s0;
|
|
697
|
-
s1 = peg$
|
|
758
|
+
s1 = peg$c15(s3);
|
|
698
759
|
s0 = s1;
|
|
699
760
|
} else {
|
|
700
761
|
peg$currPos = s0;
|
|
@@ -716,12 +777,12 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
716
777
|
}
|
|
717
778
|
function peg$parseChordChar() {
|
|
718
779
|
let s0, s1, s2, s3;
|
|
719
|
-
if (peg$
|
|
780
|
+
if (peg$c16.test(input.charAt(peg$currPos))) {
|
|
720
781
|
s0 = input.charAt(peg$currPos);
|
|
721
782
|
peg$currPos++;
|
|
722
783
|
} else {
|
|
723
784
|
s0 = peg$FAILED;
|
|
724
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
785
|
+
if (peg$silentFails === 0) peg$fail(peg$c17);
|
|
725
786
|
}
|
|
726
787
|
if (s0 === peg$FAILED) {
|
|
727
788
|
s0 = peg$currPos;
|
|
@@ -729,35 +790,35 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
729
790
|
if (s1 !== peg$FAILED) {
|
|
730
791
|
s2 = peg$currPos;
|
|
731
792
|
if (input.charCodeAt(peg$currPos) === 92) {
|
|
732
|
-
s3 = peg$
|
|
793
|
+
s3 = peg$c18;
|
|
733
794
|
peg$currPos++;
|
|
734
795
|
} else {
|
|
735
796
|
s3 = peg$FAILED;
|
|
736
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
797
|
+
if (peg$silentFails === 0) peg$fail(peg$c19);
|
|
737
798
|
}
|
|
738
799
|
if (s3 !== peg$FAILED) {
|
|
739
800
|
peg$savedPos = s2;
|
|
740
|
-
s3 = peg$
|
|
801
|
+
s3 = peg$c20();
|
|
741
802
|
}
|
|
742
803
|
s2 = s3;
|
|
743
804
|
if (s2 === peg$FAILED) {
|
|
744
805
|
s2 = peg$currPos;
|
|
745
806
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
746
|
-
s3 = peg$
|
|
807
|
+
s3 = peg$c13;
|
|
747
808
|
peg$currPos++;
|
|
748
809
|
} else {
|
|
749
810
|
s3 = peg$FAILED;
|
|
750
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
811
|
+
if (peg$silentFails === 0) peg$fail(peg$c14);
|
|
751
812
|
}
|
|
752
813
|
if (s3 !== peg$FAILED) {
|
|
753
814
|
peg$savedPos = s2;
|
|
754
|
-
s3 = peg$
|
|
815
|
+
s3 = peg$c21();
|
|
755
816
|
}
|
|
756
817
|
s2 = s3;
|
|
757
818
|
}
|
|
758
819
|
if (s2 !== peg$FAILED) {
|
|
759
820
|
peg$savedPos = s0;
|
|
760
|
-
s1 = peg$
|
|
821
|
+
s1 = peg$c22(s2);
|
|
761
822
|
s0 = s1;
|
|
762
823
|
} else {
|
|
763
824
|
peg$currPos = s0;
|
|
@@ -773,12 +834,12 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
773
834
|
function peg$parseMetaTernary() {
|
|
774
835
|
let s0, s1, s2, s3, s4, s5, s6, s7, s8;
|
|
775
836
|
s0 = peg$currPos;
|
|
776
|
-
if (input.substr(peg$currPos, 2) === peg$
|
|
777
|
-
s1 = peg$
|
|
837
|
+
if (input.substr(peg$currPos, 2) === peg$c23) {
|
|
838
|
+
s1 = peg$c23;
|
|
778
839
|
peg$currPos += 2;
|
|
779
840
|
} else {
|
|
780
841
|
s1 = peg$FAILED;
|
|
781
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
842
|
+
if (peg$silentFails === 0) peg$fail(peg$c24);
|
|
782
843
|
}
|
|
783
844
|
if (s1 !== peg$FAILED) {
|
|
784
845
|
s2 = peg$parse_();
|
|
@@ -800,15 +861,15 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
800
861
|
s7 = peg$parse_();
|
|
801
862
|
if (s7 !== peg$FAILED) {
|
|
802
863
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
803
|
-
s8 = peg$
|
|
864
|
+
s8 = peg$c25;
|
|
804
865
|
peg$currPos++;
|
|
805
866
|
} else {
|
|
806
867
|
s8 = peg$FAILED;
|
|
807
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
868
|
+
if (peg$silentFails === 0) peg$fail(peg$c26);
|
|
808
869
|
}
|
|
809
870
|
if (s8 !== peg$FAILED) {
|
|
810
871
|
peg$savedPos = s0;
|
|
811
|
-
s1 = peg$
|
|
872
|
+
s1 = peg$c27(s3, s4, s6);
|
|
812
873
|
s0 = s1;
|
|
813
874
|
} else {
|
|
814
875
|
peg$currPos = s0;
|
|
@@ -848,11 +909,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
848
909
|
let s0, s1, s2, s3;
|
|
849
910
|
s0 = peg$currPos;
|
|
850
911
|
if (input.charCodeAt(peg$currPos) === 61) {
|
|
851
|
-
s1 = peg$
|
|
912
|
+
s1 = peg$c28;
|
|
852
913
|
peg$currPos++;
|
|
853
914
|
} else {
|
|
854
915
|
s1 = peg$FAILED;
|
|
855
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
916
|
+
if (peg$silentFails === 0) peg$fail(peg$c29);
|
|
856
917
|
}
|
|
857
918
|
if (s1 !== peg$FAILED) {
|
|
858
919
|
s2 = peg$parse_();
|
|
@@ -860,7 +921,7 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
860
921
|
s3 = peg$parseMetaTestValue();
|
|
861
922
|
if (s3 !== peg$FAILED) {
|
|
862
923
|
peg$savedPos = s0;
|
|
863
|
-
s1 = peg$
|
|
924
|
+
s1 = peg$c30(s3);
|
|
864
925
|
s0 = s1;
|
|
865
926
|
} else {
|
|
866
927
|
peg$currPos = s0;
|
|
@@ -894,11 +955,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
894
955
|
let s0, s1, s2, s3, s4, s5, s6;
|
|
895
956
|
s0 = peg$currPos;
|
|
896
957
|
if (input.charCodeAt(peg$currPos) === 124) {
|
|
897
|
-
s1 = peg$
|
|
958
|
+
s1 = peg$c31;
|
|
898
959
|
peg$currPos++;
|
|
899
960
|
} else {
|
|
900
961
|
s1 = peg$FAILED;
|
|
901
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
962
|
+
if (peg$silentFails === 0) peg$fail(peg$c32);
|
|
902
963
|
}
|
|
903
964
|
if (s1 !== peg$FAILED) {
|
|
904
965
|
s2 = peg$parse_();
|
|
@@ -913,7 +974,7 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
913
974
|
s6 = peg$parse_();
|
|
914
975
|
if (s6 !== peg$FAILED) {
|
|
915
976
|
peg$savedPos = s0;
|
|
916
|
-
s1 = peg$
|
|
977
|
+
s1 = peg$c33(s3, s5);
|
|
917
978
|
s0 = s1;
|
|
918
979
|
} else {
|
|
919
980
|
peg$currPos = s0;
|
|
@@ -945,11 +1006,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
945
1006
|
let s0, s1, s2, s3;
|
|
946
1007
|
s0 = peg$currPos;
|
|
947
1008
|
if (input.charCodeAt(peg$currPos) === 124) {
|
|
948
|
-
s1 = peg$
|
|
1009
|
+
s1 = peg$c31;
|
|
949
1010
|
peg$currPos++;
|
|
950
1011
|
} else {
|
|
951
1012
|
s1 = peg$FAILED;
|
|
952
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1013
|
+
if (peg$silentFails === 0) peg$fail(peg$c32);
|
|
953
1014
|
}
|
|
954
1015
|
if (s1 !== peg$FAILED) {
|
|
955
1016
|
s2 = peg$parse_();
|
|
@@ -957,7 +1018,7 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
957
1018
|
s3 = peg$parseMetaExpression();
|
|
958
1019
|
if (s3 !== peg$FAILED) {
|
|
959
1020
|
peg$savedPos = s0;
|
|
960
|
-
s1 = peg$
|
|
1021
|
+
s1 = peg$c34(s3);
|
|
961
1022
|
s0 = s1;
|
|
962
1023
|
} else {
|
|
963
1024
|
peg$currPos = s0;
|
|
@@ -976,21 +1037,21 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
976
1037
|
function peg$parseMetaVariableName() {
|
|
977
1038
|
let s0, s1;
|
|
978
1039
|
s0 = [];
|
|
979
|
-
if (peg$
|
|
1040
|
+
if (peg$c35.test(input.charAt(peg$currPos))) {
|
|
980
1041
|
s1 = input.charAt(peg$currPos);
|
|
981
1042
|
peg$currPos++;
|
|
982
1043
|
} else {
|
|
983
1044
|
s1 = peg$FAILED;
|
|
984
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1045
|
+
if (peg$silentFails === 0) peg$fail(peg$c36);
|
|
985
1046
|
}
|
|
986
1047
|
if (s1 !== peg$FAILED) while(s1 !== peg$FAILED){
|
|
987
1048
|
s0.push(s1);
|
|
988
|
-
if (peg$
|
|
1049
|
+
if (peg$c35.test(input.charAt(peg$currPos))) {
|
|
989
1050
|
s1 = input.charAt(peg$currPos);
|
|
990
1051
|
peg$currPos++;
|
|
991
1052
|
} else {
|
|
992
1053
|
s1 = peg$FAILED;
|
|
993
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1054
|
+
if (peg$silentFails === 0) peg$fail(peg$c36);
|
|
994
1055
|
}
|
|
995
1056
|
}
|
|
996
1057
|
else s0 = peg$FAILED;
|
|
@@ -1029,47 +1090,47 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1029
1090
|
}
|
|
1030
1091
|
function peg$parseLyricsChar() {
|
|
1031
1092
|
let s0, s1;
|
|
1032
|
-
s0 = peg$
|
|
1093
|
+
s0 = peg$parseWordChar();
|
|
1033
1094
|
if (s0 === peg$FAILED) {
|
|
1034
1095
|
s0 = peg$currPos;
|
|
1035
1096
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
1036
|
-
s1 = peg$
|
|
1097
|
+
s1 = peg$c13;
|
|
1037
1098
|
peg$currPos++;
|
|
1038
1099
|
} else {
|
|
1039
1100
|
s1 = peg$FAILED;
|
|
1040
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1101
|
+
if (peg$silentFails === 0) peg$fail(peg$c14);
|
|
1041
1102
|
}
|
|
1042
1103
|
if (s1 !== peg$FAILED) {
|
|
1043
1104
|
peg$savedPos = s0;
|
|
1044
|
-
s1 = peg$
|
|
1105
|
+
s1 = peg$c37();
|
|
1045
1106
|
}
|
|
1046
1107
|
s0 = s1;
|
|
1047
1108
|
if (s0 === peg$FAILED) {
|
|
1048
1109
|
s0 = peg$currPos;
|
|
1049
1110
|
if (input.charCodeAt(peg$currPos) === 124) {
|
|
1050
|
-
s1 = peg$
|
|
1111
|
+
s1 = peg$c31;
|
|
1051
1112
|
peg$currPos++;
|
|
1052
1113
|
} else {
|
|
1053
1114
|
s1 = peg$FAILED;
|
|
1054
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1115
|
+
if (peg$silentFails === 0) peg$fail(peg$c32);
|
|
1055
1116
|
}
|
|
1056
1117
|
if (s1 !== peg$FAILED) {
|
|
1057
1118
|
peg$savedPos = s0;
|
|
1058
|
-
s1 = peg$
|
|
1119
|
+
s1 = peg$c38();
|
|
1059
1120
|
}
|
|
1060
1121
|
s0 = s1;
|
|
1061
1122
|
if (s0 === peg$FAILED) {
|
|
1062
1123
|
s0 = peg$currPos;
|
|
1063
1124
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
1064
|
-
s1 = peg$
|
|
1125
|
+
s1 = peg$c25;
|
|
1065
1126
|
peg$currPos++;
|
|
1066
1127
|
} else {
|
|
1067
1128
|
s1 = peg$FAILED;
|
|
1068
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1129
|
+
if (peg$silentFails === 0) peg$fail(peg$c26);
|
|
1069
1130
|
}
|
|
1070
1131
|
if (s1 !== peg$FAILED) {
|
|
1071
1132
|
peg$savedPos = s0;
|
|
1072
|
-
s1 = peg$
|
|
1133
|
+
s1 = peg$c39();
|
|
1073
1134
|
}
|
|
1074
1135
|
s0 = s1;
|
|
1075
1136
|
}
|
|
@@ -1078,13 +1139,19 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1078
1139
|
return s0;
|
|
1079
1140
|
}
|
|
1080
1141
|
function peg$parseChar() {
|
|
1142
|
+
let s0;
|
|
1143
|
+
s0 = peg$parseWordChar();
|
|
1144
|
+
if (s0 === peg$FAILED) s0 = peg$parseSpace();
|
|
1145
|
+
return s0;
|
|
1146
|
+
}
|
|
1147
|
+
function peg$parseWordChar() {
|
|
1081
1148
|
let s0, s1, s2, s3;
|
|
1082
|
-
if (peg$
|
|
1149
|
+
if (peg$c40.test(input.charAt(peg$currPos))) {
|
|
1083
1150
|
s0 = input.charAt(peg$currPos);
|
|
1084
1151
|
peg$currPos++;
|
|
1085
1152
|
} else {
|
|
1086
1153
|
s0 = peg$FAILED;
|
|
1087
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1154
|
+
if (peg$silentFails === 0) peg$fail(peg$c41);
|
|
1088
1155
|
}
|
|
1089
1156
|
if (s0 === peg$FAILED) {
|
|
1090
1157
|
s0 = peg$currPos;
|
|
@@ -1092,113 +1159,113 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1092
1159
|
if (s1 !== peg$FAILED) {
|
|
1093
1160
|
s2 = peg$currPos;
|
|
1094
1161
|
if (input.charCodeAt(peg$currPos) === 92) {
|
|
1095
|
-
s3 = peg$
|
|
1162
|
+
s3 = peg$c18;
|
|
1096
1163
|
peg$currPos++;
|
|
1097
1164
|
} else {
|
|
1098
1165
|
s3 = peg$FAILED;
|
|
1099
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1166
|
+
if (peg$silentFails === 0) peg$fail(peg$c19);
|
|
1100
1167
|
}
|
|
1101
1168
|
if (s3 !== peg$FAILED) {
|
|
1102
1169
|
peg$savedPos = s2;
|
|
1103
|
-
s3 = peg$
|
|
1170
|
+
s3 = peg$c42();
|
|
1104
1171
|
}
|
|
1105
1172
|
s2 = s3;
|
|
1106
1173
|
if (s2 === peg$FAILED) {
|
|
1107
1174
|
s2 = peg$currPos;
|
|
1108
1175
|
if (input.charCodeAt(peg$currPos) === 124) {
|
|
1109
|
-
s3 = peg$
|
|
1176
|
+
s3 = peg$c31;
|
|
1110
1177
|
peg$currPos++;
|
|
1111
1178
|
} else {
|
|
1112
1179
|
s3 = peg$FAILED;
|
|
1113
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1180
|
+
if (peg$silentFails === 0) peg$fail(peg$c32);
|
|
1114
1181
|
}
|
|
1115
1182
|
if (s3 !== peg$FAILED) {
|
|
1116
1183
|
peg$savedPos = s2;
|
|
1117
|
-
s3 = peg$
|
|
1184
|
+
s3 = peg$c38();
|
|
1118
1185
|
}
|
|
1119
1186
|
s2 = s3;
|
|
1120
1187
|
if (s2 === peg$FAILED) {
|
|
1121
1188
|
s2 = peg$currPos;
|
|
1122
1189
|
if (input.charCodeAt(peg$currPos) === 91) {
|
|
1123
|
-
s3 = peg$
|
|
1190
|
+
s3 = peg$c11;
|
|
1124
1191
|
peg$currPos++;
|
|
1125
1192
|
} else {
|
|
1126
1193
|
s3 = peg$FAILED;
|
|
1127
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1194
|
+
if (peg$silentFails === 0) peg$fail(peg$c12);
|
|
1128
1195
|
}
|
|
1129
1196
|
if (s3 !== peg$FAILED) {
|
|
1130
1197
|
peg$savedPos = s2;
|
|
1131
|
-
s3 = peg$
|
|
1198
|
+
s3 = peg$c43();
|
|
1132
1199
|
}
|
|
1133
1200
|
s2 = s3;
|
|
1134
1201
|
if (s2 === peg$FAILED) {
|
|
1135
1202
|
s2 = peg$currPos;
|
|
1136
1203
|
if (input.charCodeAt(peg$currPos) === 93) {
|
|
1137
|
-
s3 = peg$
|
|
1204
|
+
s3 = peg$c13;
|
|
1138
1205
|
peg$currPos++;
|
|
1139
1206
|
} else {
|
|
1140
1207
|
s3 = peg$FAILED;
|
|
1141
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1208
|
+
if (peg$silentFails === 0) peg$fail(peg$c14);
|
|
1142
1209
|
}
|
|
1143
1210
|
if (s3 !== peg$FAILED) {
|
|
1144
1211
|
peg$savedPos = s2;
|
|
1145
|
-
s3 = peg$
|
|
1212
|
+
s3 = peg$c37();
|
|
1146
1213
|
}
|
|
1147
1214
|
s2 = s3;
|
|
1148
1215
|
if (s2 === peg$FAILED) {
|
|
1149
1216
|
s2 = peg$currPos;
|
|
1150
1217
|
if (input.charCodeAt(peg$currPos) === 123) {
|
|
1151
|
-
s3 = peg$
|
|
1218
|
+
s3 = peg$c44;
|
|
1152
1219
|
peg$currPos++;
|
|
1153
1220
|
} else {
|
|
1154
1221
|
s3 = peg$FAILED;
|
|
1155
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1222
|
+
if (peg$silentFails === 0) peg$fail(peg$c45);
|
|
1156
1223
|
}
|
|
1157
1224
|
if (s3 !== peg$FAILED) {
|
|
1158
1225
|
peg$savedPos = s2;
|
|
1159
|
-
s3 = peg$
|
|
1226
|
+
s3 = peg$c46();
|
|
1160
1227
|
}
|
|
1161
1228
|
s2 = s3;
|
|
1162
1229
|
if (s2 === peg$FAILED) {
|
|
1163
1230
|
s2 = peg$currPos;
|
|
1164
1231
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
1165
|
-
s3 = peg$
|
|
1232
|
+
s3 = peg$c25;
|
|
1166
1233
|
peg$currPos++;
|
|
1167
1234
|
} else {
|
|
1168
1235
|
s3 = peg$FAILED;
|
|
1169
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1236
|
+
if (peg$silentFails === 0) peg$fail(peg$c26);
|
|
1170
1237
|
}
|
|
1171
1238
|
if (s3 !== peg$FAILED) {
|
|
1172
1239
|
peg$savedPos = s2;
|
|
1173
|
-
s3 = peg$
|
|
1240
|
+
s3 = peg$c39();
|
|
1174
1241
|
}
|
|
1175
1242
|
s2 = s3;
|
|
1176
1243
|
if (s2 === peg$FAILED) {
|
|
1177
1244
|
s2 = peg$currPos;
|
|
1178
1245
|
if (input.charCodeAt(peg$currPos) === 37) {
|
|
1179
|
-
s3 = peg$
|
|
1246
|
+
s3 = peg$c47;
|
|
1180
1247
|
peg$currPos++;
|
|
1181
1248
|
} else {
|
|
1182
1249
|
s3 = peg$FAILED;
|
|
1183
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1250
|
+
if (peg$silentFails === 0) peg$fail(peg$c48);
|
|
1184
1251
|
}
|
|
1185
1252
|
if (s3 !== peg$FAILED) {
|
|
1186
1253
|
peg$savedPos = s2;
|
|
1187
|
-
s3 = peg$
|
|
1254
|
+
s3 = peg$c49();
|
|
1188
1255
|
}
|
|
1189
1256
|
s2 = s3;
|
|
1190
1257
|
if (s2 === peg$FAILED) {
|
|
1191
1258
|
s2 = peg$currPos;
|
|
1192
1259
|
if (input.charCodeAt(peg$currPos) === 35) {
|
|
1193
|
-
s3 = peg$
|
|
1260
|
+
s3 = peg$c4;
|
|
1194
1261
|
peg$currPos++;
|
|
1195
1262
|
} else {
|
|
1196
1263
|
s3 = peg$FAILED;
|
|
1197
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1264
|
+
if (peg$silentFails === 0) peg$fail(peg$c5);
|
|
1198
1265
|
}
|
|
1199
1266
|
if (s3 !== peg$FAILED) {
|
|
1200
1267
|
peg$savedPos = s2;
|
|
1201
|
-
s3 = peg$
|
|
1268
|
+
s3 = peg$c50();
|
|
1202
1269
|
}
|
|
1203
1270
|
s2 = s3;
|
|
1204
1271
|
}
|
|
@@ -1210,7 +1277,7 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1210
1277
|
}
|
|
1211
1278
|
if (s2 !== peg$FAILED) {
|
|
1212
1279
|
peg$savedPos = s0;
|
|
1213
|
-
s1 = peg$
|
|
1280
|
+
s1 = peg$c22(s2);
|
|
1214
1281
|
s0 = s1;
|
|
1215
1282
|
} else {
|
|
1216
1283
|
peg$currPos = s0;
|
|
@@ -1227,11 +1294,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1227
1294
|
let s0, s1, s2, s3, s4, s5, s6, s7;
|
|
1228
1295
|
s0 = peg$currPos;
|
|
1229
1296
|
if (input.charCodeAt(peg$currPos) === 123) {
|
|
1230
|
-
s1 = peg$
|
|
1297
|
+
s1 = peg$c44;
|
|
1231
1298
|
peg$currPos++;
|
|
1232
1299
|
} else {
|
|
1233
1300
|
s1 = peg$FAILED;
|
|
1234
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1301
|
+
if (peg$silentFails === 0) peg$fail(peg$c45);
|
|
1235
1302
|
}
|
|
1236
1303
|
if (s1 !== peg$FAILED) {
|
|
1237
1304
|
s2 = peg$parse_();
|
|
@@ -1249,15 +1316,15 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1249
1316
|
s6 = peg$parse_();
|
|
1250
1317
|
if (s6 !== peg$FAILED) {
|
|
1251
1318
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
1252
|
-
s7 = peg$
|
|
1319
|
+
s7 = peg$c25;
|
|
1253
1320
|
peg$currPos++;
|
|
1254
1321
|
} else {
|
|
1255
1322
|
s7 = peg$FAILED;
|
|
1256
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1323
|
+
if (peg$silentFails === 0) peg$fail(peg$c26);
|
|
1257
1324
|
}
|
|
1258
1325
|
if (s7 !== peg$FAILED) {
|
|
1259
1326
|
peg$savedPos = s0;
|
|
1260
|
-
s1 = peg$
|
|
1327
|
+
s1 = peg$c51(s3, s5);
|
|
1261
1328
|
s0 = s1;
|
|
1262
1329
|
} else {
|
|
1263
1330
|
peg$currPos = s0;
|
|
@@ -1293,11 +1360,11 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1293
1360
|
let s0, s1, s2, s3;
|
|
1294
1361
|
s0 = peg$currPos;
|
|
1295
1362
|
if (input.charCodeAt(peg$currPos) === 58) {
|
|
1296
|
-
s1 = peg$
|
|
1363
|
+
s1 = peg$c52;
|
|
1297
1364
|
peg$currPos++;
|
|
1298
1365
|
} else {
|
|
1299
1366
|
s1 = peg$FAILED;
|
|
1300
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1367
|
+
if (peg$silentFails === 0) peg$fail(peg$c53);
|
|
1301
1368
|
}
|
|
1302
1369
|
if (s1 !== peg$FAILED) {
|
|
1303
1370
|
s2 = peg$parse_();
|
|
@@ -1305,7 +1372,7 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1305
1372
|
s3 = peg$parseTagValue();
|
|
1306
1373
|
if (s3 !== peg$FAILED) {
|
|
1307
1374
|
peg$savedPos = s0;
|
|
1308
|
-
s1 = peg$
|
|
1375
|
+
s1 = peg$c54(s3);
|
|
1309
1376
|
s0 = s1;
|
|
1310
1377
|
} else {
|
|
1311
1378
|
peg$currPos = s0;
|
|
@@ -1324,21 +1391,21 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1324
1391
|
function peg$parseTagName() {
|
|
1325
1392
|
let s0, s1;
|
|
1326
1393
|
s0 = [];
|
|
1327
|
-
if (peg$
|
|
1394
|
+
if (peg$c55.test(input.charAt(peg$currPos))) {
|
|
1328
1395
|
s1 = input.charAt(peg$currPos);
|
|
1329
1396
|
peg$currPos++;
|
|
1330
1397
|
} else {
|
|
1331
1398
|
s1 = peg$FAILED;
|
|
1332
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1399
|
+
if (peg$silentFails === 0) peg$fail(peg$c56);
|
|
1333
1400
|
}
|
|
1334
1401
|
if (s1 !== peg$FAILED) while(s1 !== peg$FAILED){
|
|
1335
1402
|
s0.push(s1);
|
|
1336
|
-
if (peg$
|
|
1403
|
+
if (peg$c55.test(input.charAt(peg$currPos))) {
|
|
1337
1404
|
s1 = input.charAt(peg$currPos);
|
|
1338
1405
|
peg$currPos++;
|
|
1339
1406
|
} else {
|
|
1340
1407
|
s1 = peg$FAILED;
|
|
1341
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1408
|
+
if (peg$silentFails === 0) peg$fail(peg$c56);
|
|
1342
1409
|
}
|
|
1343
1410
|
}
|
|
1344
1411
|
else s0 = peg$FAILED;
|
|
@@ -1356,12 +1423,12 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1356
1423
|
}
|
|
1357
1424
|
function peg$parseTagValueChar() {
|
|
1358
1425
|
let s0, s1, s2, s3;
|
|
1359
|
-
if (peg$
|
|
1426
|
+
if (peg$c57.test(input.charAt(peg$currPos))) {
|
|
1360
1427
|
s0 = input.charAt(peg$currPos);
|
|
1361
1428
|
peg$currPos++;
|
|
1362
1429
|
} else {
|
|
1363
1430
|
s0 = peg$FAILED;
|
|
1364
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1431
|
+
if (peg$silentFails === 0) peg$fail(peg$c58);
|
|
1365
1432
|
}
|
|
1366
1433
|
if (s0 === peg$FAILED) {
|
|
1367
1434
|
s0 = peg$currPos;
|
|
@@ -1369,50 +1436,50 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1369
1436
|
if (s1 !== peg$FAILED) {
|
|
1370
1437
|
s2 = peg$currPos;
|
|
1371
1438
|
if (input.charCodeAt(peg$currPos) === 92) {
|
|
1372
|
-
s3 = peg$
|
|
1439
|
+
s3 = peg$c18;
|
|
1373
1440
|
peg$currPos++;
|
|
1374
1441
|
} else {
|
|
1375
1442
|
s3 = peg$FAILED;
|
|
1376
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1443
|
+
if (peg$silentFails === 0) peg$fail(peg$c19);
|
|
1377
1444
|
}
|
|
1378
1445
|
if (s3 !== peg$FAILED) {
|
|
1379
1446
|
peg$savedPos = s2;
|
|
1380
|
-
s3 = peg$
|
|
1447
|
+
s3 = peg$c42();
|
|
1381
1448
|
}
|
|
1382
1449
|
s2 = s3;
|
|
1383
1450
|
if (s2 === peg$FAILED) {
|
|
1384
1451
|
s2 = peg$currPos;
|
|
1385
1452
|
if (input.charCodeAt(peg$currPos) === 125) {
|
|
1386
|
-
s3 = peg$
|
|
1453
|
+
s3 = peg$c25;
|
|
1387
1454
|
peg$currPos++;
|
|
1388
1455
|
} else {
|
|
1389
1456
|
s3 = peg$FAILED;
|
|
1390
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1457
|
+
if (peg$silentFails === 0) peg$fail(peg$c26);
|
|
1391
1458
|
}
|
|
1392
1459
|
if (s3 !== peg$FAILED) {
|
|
1393
1460
|
peg$savedPos = s2;
|
|
1394
|
-
s3 = peg$
|
|
1461
|
+
s3 = peg$c39();
|
|
1395
1462
|
}
|
|
1396
1463
|
s2 = s3;
|
|
1397
1464
|
if (s2 === peg$FAILED) {
|
|
1398
1465
|
s2 = peg$currPos;
|
|
1399
1466
|
if (input.charCodeAt(peg$currPos) === 123) {
|
|
1400
|
-
s3 = peg$
|
|
1467
|
+
s3 = peg$c44;
|
|
1401
1468
|
peg$currPos++;
|
|
1402
1469
|
} else {
|
|
1403
1470
|
s3 = peg$FAILED;
|
|
1404
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1471
|
+
if (peg$silentFails === 0) peg$fail(peg$c45);
|
|
1405
1472
|
}
|
|
1406
1473
|
if (s3 !== peg$FAILED) {
|
|
1407
1474
|
peg$savedPos = s2;
|
|
1408
|
-
s3 = peg$
|
|
1475
|
+
s3 = peg$c46();
|
|
1409
1476
|
}
|
|
1410
1477
|
s2 = s3;
|
|
1411
1478
|
}
|
|
1412
1479
|
}
|
|
1413
1480
|
if (s2 !== peg$FAILED) {
|
|
1414
1481
|
peg$savedPos = s0;
|
|
1415
|
-
s1 = peg$
|
|
1482
|
+
s1 = peg$c22(s2);
|
|
1416
1483
|
s0 = s1;
|
|
1417
1484
|
} else {
|
|
1418
1485
|
peg$currPos = s0;
|
|
@@ -1429,27 +1496,27 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1429
1496
|
let s0, s1;
|
|
1430
1497
|
peg$silentFails++;
|
|
1431
1498
|
s0 = [];
|
|
1432
|
-
if (peg$
|
|
1499
|
+
if (peg$c60.test(input.charAt(peg$currPos))) {
|
|
1433
1500
|
s1 = input.charAt(peg$currPos);
|
|
1434
1501
|
peg$currPos++;
|
|
1435
1502
|
} else {
|
|
1436
1503
|
s1 = peg$FAILED;
|
|
1437
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1504
|
+
if (peg$silentFails === 0) peg$fail(peg$c61);
|
|
1438
1505
|
}
|
|
1439
1506
|
while(s1 !== peg$FAILED){
|
|
1440
1507
|
s0.push(s1);
|
|
1441
|
-
if (peg$
|
|
1508
|
+
if (peg$c60.test(input.charAt(peg$currPos))) {
|
|
1442
1509
|
s1 = input.charAt(peg$currPos);
|
|
1443
1510
|
peg$currPos++;
|
|
1444
1511
|
} else {
|
|
1445
1512
|
s1 = peg$FAILED;
|
|
1446
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1513
|
+
if (peg$silentFails === 0) peg$fail(peg$c61);
|
|
1447
1514
|
}
|
|
1448
1515
|
}
|
|
1449
1516
|
peg$silentFails--;
|
|
1450
1517
|
if (s0 === peg$FAILED) {
|
|
1451
1518
|
s1 = peg$FAILED;
|
|
1452
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1519
|
+
if (peg$silentFails === 0) peg$fail(peg$c59);
|
|
1453
1520
|
}
|
|
1454
1521
|
return s0;
|
|
1455
1522
|
}
|
|
@@ -1457,28 +1524,28 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1457
1524
|
let s0, s1;
|
|
1458
1525
|
peg$silentFails++;
|
|
1459
1526
|
s0 = [];
|
|
1460
|
-
if (peg$
|
|
1527
|
+
if (peg$c63.test(input.charAt(peg$currPos))) {
|
|
1461
1528
|
s1 = input.charAt(peg$currPos);
|
|
1462
1529
|
peg$currPos++;
|
|
1463
1530
|
} else {
|
|
1464
1531
|
s1 = peg$FAILED;
|
|
1465
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1532
|
+
if (peg$silentFails === 0) peg$fail(peg$c64);
|
|
1466
1533
|
}
|
|
1467
1534
|
if (s1 !== peg$FAILED) while(s1 !== peg$FAILED){
|
|
1468
1535
|
s0.push(s1);
|
|
1469
|
-
if (peg$
|
|
1536
|
+
if (peg$c63.test(input.charAt(peg$currPos))) {
|
|
1470
1537
|
s1 = input.charAt(peg$currPos);
|
|
1471
1538
|
peg$currPos++;
|
|
1472
1539
|
} else {
|
|
1473
1540
|
s1 = peg$FAILED;
|
|
1474
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1541
|
+
if (peg$silentFails === 0) peg$fail(peg$c64);
|
|
1475
1542
|
}
|
|
1476
1543
|
}
|
|
1477
1544
|
else s0 = peg$FAILED;
|
|
1478
1545
|
peg$silentFails--;
|
|
1479
1546
|
if (s0 === peg$FAILED) {
|
|
1480
1547
|
s1 = peg$FAILED;
|
|
1481
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1548
|
+
if (peg$silentFails === 0) peg$fail(peg$c62);
|
|
1482
1549
|
}
|
|
1483
1550
|
return s0;
|
|
1484
1551
|
}
|
|
@@ -1516,55 +1583,55 @@ function $182dbf639c88db75$var$peg$parse(input, options) {
|
|
|
1516
1583
|
function peg$parseLineFeed() {
|
|
1517
1584
|
let s0;
|
|
1518
1585
|
if (input.charCodeAt(peg$currPos) === 10) {
|
|
1519
|
-
s0 = peg$
|
|
1586
|
+
s0 = peg$c65;
|
|
1520
1587
|
peg$currPos++;
|
|
1521
1588
|
} else {
|
|
1522
1589
|
s0 = peg$FAILED;
|
|
1523
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1590
|
+
if (peg$silentFails === 0) peg$fail(peg$c66);
|
|
1524
1591
|
}
|
|
1525
1592
|
return s0;
|
|
1526
1593
|
}
|
|
1527
1594
|
function peg$parseCarriageReturn() {
|
|
1528
1595
|
let s0;
|
|
1529
1596
|
if (input.charCodeAt(peg$currPos) === 13) {
|
|
1530
|
-
s0 = peg$
|
|
1597
|
+
s0 = peg$c67;
|
|
1531
1598
|
peg$currPos++;
|
|
1532
1599
|
} else {
|
|
1533
1600
|
s0 = peg$FAILED;
|
|
1534
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1601
|
+
if (peg$silentFails === 0) peg$fail(peg$c68);
|
|
1535
1602
|
}
|
|
1536
1603
|
return s0;
|
|
1537
1604
|
}
|
|
1538
1605
|
function peg$parseEscape() {
|
|
1539
1606
|
let s0;
|
|
1540
1607
|
if (input.charCodeAt(peg$currPos) === 92) {
|
|
1541
|
-
s0 = peg$
|
|
1608
|
+
s0 = peg$c18;
|
|
1542
1609
|
peg$currPos++;
|
|
1543
1610
|
} else {
|
|
1544
1611
|
s0 = peg$FAILED;
|
|
1545
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1612
|
+
if (peg$silentFails === 0) peg$fail(peg$c19);
|
|
1546
1613
|
}
|
|
1547
1614
|
return s0;
|
|
1548
1615
|
}
|
|
1549
1616
|
function peg$parsePound() {
|
|
1550
1617
|
let s0;
|
|
1551
1618
|
if (input.charCodeAt(peg$currPos) === 35) {
|
|
1552
|
-
s0 = peg$
|
|
1619
|
+
s0 = peg$c4;
|
|
1553
1620
|
peg$currPos++;
|
|
1554
1621
|
} else {
|
|
1555
1622
|
s0 = peg$FAILED;
|
|
1556
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1623
|
+
if (peg$silentFails === 0) peg$fail(peg$c5);
|
|
1557
1624
|
}
|
|
1558
1625
|
return s0;
|
|
1559
1626
|
}
|
|
1560
1627
|
function peg$parsePercent() {
|
|
1561
1628
|
let s0;
|
|
1562
1629
|
if (input.charCodeAt(peg$currPos) === 37) {
|
|
1563
|
-
s0 = peg$
|
|
1630
|
+
s0 = peg$c47;
|
|
1564
1631
|
peg$currPos++;
|
|
1565
1632
|
} else {
|
|
1566
1633
|
s0 = peg$FAILED;
|
|
1567
|
-
if (peg$silentFails === 0) peg$fail(peg$
|
|
1634
|
+
if (peg$silentFails === 0) peg$fail(peg$c48);
|
|
1568
1635
|
}
|
|
1569
1636
|
return s0;
|
|
1570
1637
|
}
|
|
@@ -1956,7 +2023,11 @@ const $918eb2016ac61e41$var$regexes = [
|
|
|
1956
2023
|
$918eb2016ac61e41$var$numericKeyRegex,
|
|
1957
2024
|
$918eb2016ac61e41$var$numeralKeyRegex
|
|
1958
2025
|
];
|
|
1959
|
-
|
|
2026
|
+
/**
|
|
2027
|
+
* Represents a key, such as Eb (symbol), #3 (numeric) or VII (numeral).
|
|
2028
|
+
*
|
|
2029
|
+
* The only function considered public API is `Key.distance`
|
|
2030
|
+
*/ class $918eb2016ac61e41$var$Key {
|
|
1960
2031
|
modifier = null;
|
|
1961
2032
|
minor = false;
|
|
1962
2033
|
static parse(keyString) {
|
|
@@ -1969,7 +2040,12 @@ class $918eb2016ac61e41$var$Key {
|
|
|
1969
2040
|
static toString(keyStringOrObject) {
|
|
1970
2041
|
return `${$918eb2016ac61e41$var$Key.wrap(keyStringOrObject)}`;
|
|
1971
2042
|
}
|
|
1972
|
-
|
|
2043
|
+
/**
|
|
2044
|
+
* Calculates the distance in semitones between one key and another.
|
|
2045
|
+
* @param {Key | string} oneKey the key
|
|
2046
|
+
* @param {Key | string} otherKey the other key
|
|
2047
|
+
* @return {number} the distance in semitones
|
|
2048
|
+
*/ static distance(oneKey, otherKey) {
|
|
1973
2049
|
return this.wrap(oneKey).distanceTo(otherKey);
|
|
1974
2050
|
}
|
|
1975
2051
|
distanceTo(otherKey) {
|
|
@@ -3280,7 +3356,7 @@ const $5e3a0c5a6197f95b$var$regexes = [
|
|
|
3280
3356
|
else if (bassBase) this.bass = new (0, $918eb2016ac61e41$export$2e2bcd8739ae039)({
|
|
3281
3357
|
note: bassBase,
|
|
3282
3358
|
modifier: bassModifier,
|
|
3283
|
-
minor:
|
|
3359
|
+
minor: false
|
|
3284
3360
|
});
|
|
3285
3361
|
else this.bass = null;
|
|
3286
3362
|
}
|
|
@@ -3361,7 +3437,7 @@ var $5e3a0c5a6197f95b$export$2e2bcd8739ae039 = $5e3a0c5a6197f95b$var$Chord;
|
|
|
3361
3437
|
});
|
|
3362
3438
|
}
|
|
3363
3439
|
transpose(delta, key = null, { normalizeChordSuffix: normalizeChordSuffix = false } = {}) {
|
|
3364
|
-
const chordObj = (0, $5e3a0c5a6197f95b$export$2e2bcd8739ae039).parse(this.chords);
|
|
3440
|
+
const chordObj = (0, $5e3a0c5a6197f95b$export$2e2bcd8739ae039).parse(this.chords.trim());
|
|
3365
3441
|
if (chordObj) {
|
|
3366
3442
|
let transposedChord = chordObj.transpose(delta);
|
|
3367
3443
|
if (key) transposedChord = transposedChord.normalize(key, {
|
|
@@ -3755,34 +3831,34 @@ var $55861b6d10167265$export$2e2bcd8739ae039 = $55861b6d10167265$var$Paragraph;
|
|
|
3755
3831
|
|
|
3756
3832
|
class $328bfb8696ee6244$var$MetadataAccessors {
|
|
3757
3833
|
get key() {
|
|
3758
|
-
return this.
|
|
3834
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$7167c830cefcb6b5));
|
|
3759
3835
|
}
|
|
3760
3836
|
get title() {
|
|
3761
|
-
return this.
|
|
3837
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$f1e53f710478ceb4));
|
|
3762
3838
|
}
|
|
3763
3839
|
get subtitle() {
|
|
3764
|
-
return this.
|
|
3840
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$5895c693c74b9cf4));
|
|
3765
3841
|
}
|
|
3766
3842
|
get capo() {
|
|
3767
3843
|
return this.getMetadata((0, $b3836272a1374d85$export$866f445d49bad88e));
|
|
3768
3844
|
}
|
|
3769
3845
|
get duration() {
|
|
3770
|
-
return this.
|
|
3846
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$bacc88974c736870));
|
|
3771
3847
|
}
|
|
3772
3848
|
get tempo() {
|
|
3773
|
-
return this.
|
|
3849
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$bd8d57d0bc5a8478));
|
|
3774
3850
|
}
|
|
3775
3851
|
get time() {
|
|
3776
3852
|
return this.getMetadata((0, $b3836272a1374d85$export$a9905336c0111a3a));
|
|
3777
3853
|
}
|
|
3778
3854
|
get year() {
|
|
3779
|
-
return this.
|
|
3855
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$90b88dc425a06a95));
|
|
3780
3856
|
}
|
|
3781
3857
|
get album() {
|
|
3782
3858
|
return this.getMetadata((0, $b3836272a1374d85$export$10227cb086d1770c));
|
|
3783
3859
|
}
|
|
3784
3860
|
get copyright() {
|
|
3785
|
-
return this.
|
|
3861
|
+
return this.getSingleMetadata((0, $b3836272a1374d85$export$4ab8c75045d12480));
|
|
3786
3862
|
}
|
|
3787
3863
|
get lyricist() {
|
|
3788
3864
|
return this.getMetadata((0, $b3836272a1374d85$export$a6901bd008617c61));
|
|
@@ -3847,6 +3923,9 @@ function $fdb42fd3b59812d4$var$appendValue(array, key, value) {
|
|
|
3847
3923
|
getMetadata(name) {
|
|
3848
3924
|
return this.get(name);
|
|
3849
3925
|
}
|
|
3926
|
+
getSingleMetadata(name) {
|
|
3927
|
+
return this.getSingle(name);
|
|
3928
|
+
}
|
|
3850
3929
|
/**
|
|
3851
3930
|
* Reads a metadata value by key. This method supports simple value lookup, as fetching single array values.
|
|
3852
3931
|
*
|
|
@@ -4103,7 +4182,10 @@ var $8a1166616d2a7987$export$2e2bcd8739ae039 = $8a1166616d2a7987$var$ParserWarni
|
|
|
4103
4182
|
return this.metadata;
|
|
4104
4183
|
}
|
|
4105
4184
|
getMetadata(name) {
|
|
4106
|
-
return this.metadata
|
|
4185
|
+
return this.metadata.getMetadata(name);
|
|
4186
|
+
}
|
|
4187
|
+
getSingleMetadata(name) {
|
|
4188
|
+
return this.metadata.getSingleMetadata(name);
|
|
4107
4189
|
}
|
|
4108
4190
|
/**
|
|
4109
4191
|
* Returns a copy of the song with the key value set to the specified key. It changes:
|