JSFiddle - React, Tailwind, and code Playground

Demos

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="expandCell('columns', ['[Customer].[Country].&[Canada]'])">Expand Canada</button>
<div id="pivot-container"></div>

JavaScript

let pivot = new Flexmonster({
  container: "#pivot-container",
  componentFolder: "https://cdn.flexmonster.com/",
  height: 600,
  toolbar: true,
  report: {
    dataSource: {
      type: "microsoft analysis services",
      proxyUrl: "https://olap.flexmonster.com:8085/",
      catalog: "Adventure Works DW Standard Edition",
      cube: "Adventure Works",
      binary: true,
    },
    slice: {
      rows: [{
        uniqueName: "[Product].[Product Categories]",
      }, ],
      columns: [{
          uniqueName: "[Customer].[Country]",
        },
        {
          uniqueName: "[Date].[Month of Year]",
          caption: "Month",
        },
        {
          uniqueName: "[Measures]",
        },
      ],
      measures: [{
          uniqueName: "[Measures].[Internet Total Product Cost]",
          format: "currency",
        },
        {
          uniqueName: "[Measures].[Internet Average Sales Amount]",
          active: false,
          format: "currency",
        },
        {
          uniqueName: "[Measures].[Gross Profit]",
          active: false,
          format: "currency",
        },
      ],
      drills: {
        rows: [{
            tuple: [
              "[Product].[Product Categories].[Category].&[4]"
            ],
          },
          {
            tuple: [
              "[Product].[Product Categories].[Subcategory].&[28]"
            ],
          },
          {
            tuple: [
              "[Product].[Product Categories].[Subcategory].&[25]"
            ],
          },
        ],
      },
      memberProperties: [{
        levelName: "[Product].[Product Categories].[Product]",
        properties: ["List Price", "Start Date"],
      }, ],
    },
    options: {
      showMemberProperties: true,
    },
    formats: [{
      name: "",
      thousandsSeparator: ",",
      decimalSeparator: ".",
      decimalPlaces: 2,
    }, {
      name: "currency",
      currencySymbol: "$",
    }],
  },
  shareReportConnection: {
    url:...