JSFiddle - React, Tailwind, and code Playground

by Flexmonster Pivot Table

HTML

<link rel="stylesheet" href="https://s3.amazonaws.com/flexmonster/2.3/demo.css">
<script src="https://cdn.flexmonster.com/flexmonster.js"></script>

<button onclick="pdf()">Export to PDF</button>

<div id="pivot-container"></div>

JavaScript

let pivot = new Flexmonster({
  container: "pivot-container",
  componentFolder: "https://cdn.flexmonster.com/",
  toolbar: true,
  beforetoolbarcreated: customizeToolbar,
  report: {
    dataSource: {
      filename: "data/data.csv"
    },
    options: {
      configuratorActive: false
    }
  }
});

function pdf() {
  const params = {
    filename: 'flexmonster',
    header: 'Flexmonster',
    footer: '<img src="data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAACEAAAAhCAYAAABX5MJvAAAAAXNSR0IArs4c6QAAAARnQU1BAACxjwv8YQUAAAAJcEhZcwAAFiUAABYlAUlSJPAAAAKvSURBVFhHvZa/axRBFMcnS4pDgqQQOUEw/gkRe4122kV7Fa0U/4EgGEH8B0QrJdprKrXTmMpG9E9QQfCQFMEEuSJw3ufdvnWcffN2c5fzA8vc3M68+b4fM7MzgyGhJXs/vobd189C//Om9Puf3ks7CZ1TZ0MrEdtPVsP203tl7+BxReA1ixOBaZIVMW3vY0wRvVtLB5LvthRlW/G/BcA/IkjBpAKo9oUPg9ozd/FqOaJOJYLFp1ED2OXxirsSkROAB7PHFsre/tl987wxxSJCDiBjEKE9cmctzF+/W/7Tnq3718R75mPHQ0RYUcD77qMNMYTBcfi+fLIS4kVTRFj50kLarwBsEVm1qfO9wpzZebU2sBaiojE2bhRiiAQiNDIphV5GMZrDvd43aSeF4oRcbRS5ggSvouHQ0qXQffhWWg/dorm6qLZozGz3hEzyRLDw0QcvQuf0OWmbhAB2LQorR23OhcPLN8tfI9J+ihsJ64U3Qfm1/rj8NSLtp5Biq/7AFKGDPSG/N16GnyuXQ//jO2np51A7VtQRZ9aEDs5Vs8LCvdvnXQGgdtjyKQgs5i5cKbt/0WruLJ4p/5kM1rCiAKxR5Lxlb3PAeCddG7DPo2dFCu/kyyp3yx1f/yIt73OeeBBqbDCX0zIFBzlNpSaslACLA7eoV6Q5WADUToquOxIxVGSlBQ8II++4UdumhvHcPbS5KPJO16w+dElHTjGD9TqmwhGG4dg47xiHd7TY4xMhd+riVE0ENH3mz99YlUXi1CAkTRU2sJWD9GJLqX3yc3Vb+zlGPaDV+4ADTre2B3OIQkxNBEYQ4UVkXCwBUDsxCS0FOM53pQf2LAFQi0SMRqQpxB44RVFrCi1cEaDp0R3RFonosIjjAszRKCJGBektS59HdwctdwHp1P+aCeEP6EauN3XQHmMAAAAASUVORK5CYII=" alt="fm-icon"> ##CURRENT-DATE##',
    pageOrientation: 'landscape'
  };
  flexmonster.exportTo('pdf', params);
}

function customizeToolbar(toolbar) {
  let tabs = toolbar.getTabs();
  toolbar.getTabs = function() {
    let exportTab = tabs.find(tab => tab.id == "fm-tab-export");
    if (!exportTab) return tabs;
    let exportToPdfTab = exportTab.menu.find(tab => tab.id == "fm-tab-export-pdf");
    exportToPdfTab.handler = pdf
    return tabs;
  }
}