Templates are shared Highcharts configurations that components inherit. Instead of repeating the same axis styling, color palette, and plot options on every chart, you define it once in a template and reference it by name. The template’s config is deep-merged with the component’s own highchartsData — so you can always override specific settings per component.
📦 Template Inventory (HRM Production)
Bar Charts
| Template | Usage | Description |
|---|---|---|
bar_chart_with_delta_academics |
696 | Horizontal bar + delta scatter |
bar_chart_with_delta_skilledworkers |
692 | |
bar_chart_with_delta_graduates |
536 | |
bar_chart_with_delta_pupils |
475 | |
bar_chart_academics |
365 | Horizontal bar without delta |
bar_chart_skilledworkers |
363 | |
bar_chart_graduates |
295 | |
bar_chart_pupils |
244 |
Score Components
| Template | Usage | Description |
|---|---|---|
score_comp_with_delta_academics |
521 | KPI score with delta indicator |
score_comp_with_delta_skilledworkers |
521 | |
score_comp_with_delta_graduates |
435 | |
score_comp_with_delta_pupils |
369 |
Other Chart Types
| Template | Usage | Description |
|---|---|---|
column_chart_with_delta_* |
~50 each | Vertical column + delta |
pie_chart_* |
~30 each | Donut/pie with dual rings |
stacked_bar_chart_* |
~20 each | Stacked horizontal bars |
line_chart_* |
~15 each | Time series lines |
solidgauge_chart_* |
~5 each | Radial gauge |
basecheck_* |
~50 each | Validation/QA components |
component_header_* |
~30 each | Section headers |
🏷️ Suffix Convention
All templates are suffixed with the target group identifier:
| Suffix | Target Group |
|---|---|
_academics |
Akademiker_innen |
_skilledworkers |
Fachkräfte |
_graduates |
Studierende |
_pupils |
Schüler_innen |
This allows identical chart structures with target-group-specific Cube models, colors, and display settings.
🔀 How Templates Merge
Component YAML:
template: bar_chart_with_delta_academics
highchartsData:
xAxis:
max: 14 ← component-specific override
Template Config:
highchartsData:
chart:
type: bar
colors: [...]
xAxis:
labels: { style: {...} }
series: [...]
plotOptions: { bar: { borderRadius: 4 } }
Result (merged):
highchartsData:
chart:
type: bar ← from template
colors: [...] ← from template
xAxis:
max: 14 ← from component (override)
labels: { ... } ← from template
series: [...] ← from template
plotOptions: { ... } ← from template
Component values override template values at the same path. Deep merge is applied.
💾 Template Storage
Templates are stored as Template records in the database, associated with a ProductVersion. Each template has a content JSONB field with the Highcharts configuration.