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>
<link href="https://cdn.flexmonster.com/flexmonster.css" rel="stylesheet">


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

CSS

.fm-ui-modal-overlay {
  display: none !important;
}
.fm-filter-view{
  display: none !important;
}

JavaScript

var pivot = new Flexmonster({
  container: "#pivot-container",
  componentFolder: "https://cdn.flexmonster.com/",
  toolbar: true,
  report: {
    dataSource: {
      type: "json",
      data: getData()
    },
    slice: {
      rows: [{
        uniqueName: "Country"
      }, {
        uniqueName: "Category"
      }, {
        uniqueName: "[Measures]"
      }],
      columns: [{
        uniqueName: "Color"
      }],
      measures: [{
        uniqueName: "Price"
      }, {
        uniqueName: "Quantity"
      }],
    },
    options: {
      configuratorActive: false
    }
  },
  width: "100%",
  height: 370,
  filteropen: onFilterOpen
});

var currentHierarchy = null;

function onFilterOpen(event) {
  let element = document.querySelector(".fm-filter-view");
  if (element) {
    element.remove();
  }
  currentHierarchy = event.hierarchy;
  showCustomFilter(currentHierarchy);
}

function showCustomFilter(currentHierarchy) {
  alert(`Open filter for '${currentHierarchy.caption}'`);
}



function getData() {
  return [{
    "Category": "Accessories",
    "Size": "262 oz",
    "Color": "red",
    "Destination": "Australia",
    "Business Type": "Specialty Bike Shop",
    "Country": "Australia",
    "Price": 174,
    "Quantity": 225,
    "Discount": 23
  }, {
    "Category": "Accessories",
    "Size": "214 oz",
    "Color": "yellow",
    "Destination": "Canada",
    "Business Type": "Specialty Bike Shop",
    "Country": "Canada",
    "Price": 502,
    "Quantity": 90,
    "Discount": 17
  }, {
    "Category": "Components",
    "Size": "235 oz",
    "Color": "green",
    "Destination": "Australia",
    "Business Type": "Warehouse",
    "Country": "Australia",
    "Price": 551,
    "Quantity": 1950,
    "Discount": 51
  }, {
    "Category": "Components",
    "Size": "307 oz",
    "Color": "white",
    "Destination": "United Kingdom",
    "Business Type": "Warehouse",
    "Country": "Canada",
    "Price": 842,
    "Quantity": 8212,
    "Discount": 55
  }, {
    "Category":...