superset/superset-frontend/plugins/plugin-chart-handlebars
Adrian Koszałka 205cff3a94
feat: Add parseJson Handlebars Helper to Support Processing Nested JSON Data (#31998)
Co-authored-by: AdrianKoszalka <adrian.koszalka@techminers.com>
2025-02-06 12:48:28 -08:00
..
src feat: Add parseJson Handlebars Helper to Support Processing Nested JSON Data (#31998) 2025-02-06 12:48:28 -08:00
test refactor: Creates the VizType enum (#31193) 2024-11-29 10:05:02 -03:00
types feat(Handlebars): formatNumber and group helpers (#31261) 2024-12-03 17:55:57 -03:00
CHANGELOG.md build(packages): npm build/publish improvements. Making packages publishable again. (#30196) 2024-12-10 16:54:41 -07:00
README.md feat: Add parseJson Handlebars Helper to Support Processing Nested JSON Data (#31998) 2025-02-06 12:48:28 -08:00
package.json refactor: Upgrade to React 17 (#31961) 2025-01-28 16:44:42 +01:00
tsconfig.json feat: Adds plugin-chart-handlebars (#17903) 2022-04-26 14:34:28 +03:00

README.md

@superset-ui/plugin-chart-handlebars

Version Libraries.io

This plugin renders the data using a handlebars template.

Usage

Configure key, which can be any string, and register the plugin. This key will be used to lookup this chart throughout the app.

import HandlebarsChartPlugin from '@superset-ui/plugin-chart-handlebars';

new HandlebarsChartPlugin().configure({ key: 'handlebars' }).register();

Then use it via SuperChart. See storybook for more details.

<SuperChart
  chartType="handlebars"
  width={600}
  height={600}
  formData={...}
  queriesData={[{
    data: {...},
  }]}
/>

File structure generated

├── package.json
├── README.md
├── tsconfig.json
├── src
│   ├── Handlebars.tsx
│   ├── images
│   │   └── thumbnail.png
│   ├── index.ts
│   ├── plugin
│   │   ├── buildQuery.ts
│   │   ├── controlPanel.ts
│   │   ├── index.ts
│   │   └── transformProps.ts
│   └── types.ts
├── test
│   └── index.test.ts
└── types
    └── external.d.ts

Available Handlebars Helpers in Superset

Below, you will find a list of all currently registered helpers in the Handlebars plugin for Superset. These helpers are registered and managed in the file HandlebarsViewer.tsx.

List of Registered Helpers:

  1. dateFormat: Formats a date using a specified format.

    • Usage: {{dateFormat my_date format="MMMM YYYY"}}
    • Default format: YYYY-MM-DD.
  2. stringify: Converts an object into a JSON string or returns a string representation of non-object values.

    • Usage: {{stringify myObj}}.
  3. formatNumber: Formats a number using locale-specific formatting.

    • Usage: {{formatNumber number locale="en-US"}}.
    • Default locale: en-US.
  4. parseJson: Parses a JSON string into a JavaScript object.

    • Usage: {{parseJson jsonString}}.