diff options
Diffstat (limited to 'src/content/dependencies/generateDatetimestampTemplate.js')
-rw-r--r-- | src/content/dependencies/generateDatetimestampTemplate.js | 38 |
1 files changed, 38 insertions, 0 deletions
diff --git a/src/content/dependencies/generateDatetimestampTemplate.js b/src/content/dependencies/generateDatetimestampTemplate.js new file mode 100644 index 0000000..d9ed036 --- /dev/null +++ b/src/content/dependencies/generateDatetimestampTemplate.js @@ -0,0 +1,38 @@ +export default { + contentDependencies: ['generateTextWithTooltip'], + extraDependencies: ['html'], + + relations: (relation) => ({ + textWithTooltip: + relation('generateTextWithTooltip'), + }), + + slots: { + mainContent: { + type: 'html', + mutable: false, + }, + + tooltip: { + type: 'html', + mutable: true, + }, + + datetime: {type: 'string'}, + }, + + generate: (relations, slots, {html}) => + relations.textWithTooltip.slots({ + attributes: {class: 'datetimestamp'}, + + text: + html.tag('time', + {datetime: slots.datetime}, + slots.mainContent), + + tooltip: + slots.tooltip?.slots({ + attributes: [{class: 'datetimestamp-tooltip'}], + }), + }), +}; |