diff options
Diffstat (limited to 'src/content/dependencies/generateTrackListMissingDuration.js')
-rw-r--r-- | src/content/dependencies/generateTrackListMissingDuration.js | 35 |
1 files changed, 35 insertions, 0 deletions
diff --git a/src/content/dependencies/generateTrackListMissingDuration.js b/src/content/dependencies/generateTrackListMissingDuration.js new file mode 100644 index 00000000..b5917982 --- /dev/null +++ b/src/content/dependencies/generateTrackListMissingDuration.js @@ -0,0 +1,35 @@ +export default { + contentDependencies: ['generateTextWithTooltip', 'generateTooltip'], + extraDependencies: ['html', 'language'], + + relations: (relation) => ({ + textWithTooltip: + relation('generateTextWithTooltip'), + + tooltip: + relation('generateTooltip'), + }), + + generate: (relations, {html, language}) => + language.encapsulate('trackList.item.withDuration', itemCapsule => + language.encapsulate(itemCapsule, 'duration', durationCapsule => + relations.textWithTooltip.slots({ + attributes: {class: 'missing-duration'}, + customInteractionCue: true, + + text: + language.$(durationCapsule, { + duration: + html.tag('span', {class: 'text-with-tooltip-interaction-cue'}, + language.$(durationCapsule, 'missing')), + }), + + tooltip: + relations.tooltip.slots({ + attributes: {class: 'missing-duration-tooltip'}, + + content: + language.$(durationCapsule, 'missing.info'), + }), + }))), +}; |