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>
<div id="pivot-container"></div>

CSS

#pivot-container #fm-toolbar-wrapper {
  pointer-events: none;
}

JavaScript

new Flexmonster({
  container: "#pivot-container",
  componentFolder: "https://cdn.flexmonster.com/",
  height: 500,
  toolbar: true,
  reportcomplete: () => {
    document.querySelectorAll('#pivot-container #fm-toolbar-wrapper').forEach(element => {
      element.style.pointerEvents = 'auto';
    })
  },
  report: {
    dataSource: {
      type: "csv",
      filename: "https://raw.githubusercontent.com/RonzyC/flexmonster-bugs/main/data_random.csv",
      mapping: {
        "revenue": {
          "caption": "REVENUE",
          "type": "number"
        },
        "country": {
          "caption": "COUNTRY"
        },
        "store": {
          "caption": "STORE"
        },
        "item": {
          "caption": "ITEM"
        },
        "day": {
          "caption": "DAY",
        },
      },
    },
    slice: {
      "columns": [{
          "uniqueName": "[Measures]"
        },
        {
          "uniqueName": "day"
        }
      ],
      "rows": [{
          "uniqueName": "country"
        },
        {
          "uniqueName": "store"
        },
        {
          "uniqueName": "item"
        }
      ],
      "measures": [{
        "uniqueName": "revenue",
        "aggregation": "sum",
        "active": true,
        "format": "currency"
      }, ]
    },
    formats: [{
      name: "",
      thousandsSeparator: ",",
      decimalSeparator: ".",
      decimalPlaces: 2,
    }, ],
    options: {
      grid: {
        type: "classic"
      },
      useCaptionsInCalculatedValueEditor: true
    }
  }
});