aboutsummaryrefslogtreecommitdiffstats
path: root/web_src/js/markup/asciicast.js
blob: 902cfcb7316bc81d1df3de4dc54d5c4eb15e8435 (plain)
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
export async function renderAsciinemaPlayer() {
  const els = document.querySelectorAll('.asciinema-player-container');
  if (!els.length) return;

  const [player] = await Promise.all([
    import(/* webpackChunkName: "asciinema-player" */'asciinema-player'),
    import(/* webpackChunkName: "asciinema-player" */'asciinema-player/dist/bundle/asciinema-player.css'),
  ]);

  for (const el of els) {
    player.create(el.getAttribute('data-asciinema-player-src'), el, {
      // poster (a preview frame) to display until the playback is started.
      // Set it to 1 hour (also means the end if the video is shorter) to make the preview frame show more.
      poster: 'npt:1:0:0',
    });
  }
}