1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
25
26
27
28
29
30
31
32
33
34
35
36
|
// Lyrics! This comes in two styles - "old", where there's just one set of
// lyrics, or the newer/standard one, with multiple sets that are each
// annotated, credited, etc.
import {input, templateCompositeFrom} from '#composite';
import {isLyrics} from '#validators';
import {exitWithoutDependency, exposeDependency}
from '#composite/control-flow';
import {withParsedLyricsEntries} from '#composite/wiki-data';
export default templateCompositeFrom({
annotation: `lyrics`,
compose: false,
update: {
validate: isLyrics,
},
steps: () => [
exitWithoutDependency({
dependency: input.updateValue(),
mode: input.value('falsy'),
value: input.value([]),
}),
withParsedLyricsEntries({
from: input.updateValue(),
}),
exposeDependency({
dependency: '#parsedLyricsEntries',
}),
],
});
|