« get me outta code hell

generateDatetimestampTemplate.js « dependencies « content « src - hsmusic-wiki - HSMusic - static wiki software cataloguing collaborative creation
about summary refs log tree commit diff
path: root/src/content/dependencies/generateDatetimestampTemplate.js
blob: 29c8157232a5cc198fe6f491da8ffae9e846f259 (plain)
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
export default {
  extraDependencies: ['html'],

  slots: {
    mainContent: {
      type: 'html',
      mutable: false,
    },

    tooltipContent: {
      type: 'html',
      mutable: false,
    },

    datetime: {type: 'string'},
  },

  generate: (slots, {html}) =>
    html.tag('span', {class: 'datetimestamp'},
      {[html.joinChildren]: ''},

      slots.tooltipContent &&
        {class: 'has-tooltip'},

      [
        html.tag('time',
          {datetime: slots.datetime},
          slots.mainContent),

        slots.tooltipContent &&
          html.tag('span', {class: ['tooltip', 'datetimestamp-tooltip']},
            html.tag('span', {class: 'tooltip-content'},
              slots.tooltipContent)),
      ]),
};