Class LaravelUi5\Core\Ui5\Controls\Lux\ChartCanvas

final
readonly
extends AbstractControl

Typed DTO for com.laravelui5.core.Chart — the inner engine-rendered chart canvas. What the <lux:Chart> client control materialises.

engine and option are the two emit-always properties carrying the engine-tagged envelope. v0.9 ships only engine: "echarts"; the envelope's engine field exists so a future pluralism project (Core Charts API spec § Engine pluralism, paths A/B/C) has a clean entry point — it does not make pluralism additive backlog. The option is engine-native JSON; Core does not translate, normalise, or schema-validate it.

class is the standard emit-when-set CSS-class seat carried by every dashboard control DTO (a free string applied client-side via addStyleClass()); omitted from the wire when null.

Authoring patterns (Core Charts API spec § Composition):

  • Primary — the Chart artifact emits a {@see Chart} (outer sap.f.Card wrapper), whose buildContent() constructs a ChartCanvas automatically. Providers don't construct ChartCanvas directly in this path.
  • Secondary — a Card-shaped artifact composes a ChartCanvas inline inside its content tree (no outer wrap because the parent Card already owns the chrome). Providers construct ChartCanvas directly here.

Relocated from Lux/Chart.php at Charts API Phase 4 (Core 0.9.XX); class renamed, wire class com.laravelui5.core.Chart unchanged, field shape identical to the pre-Phase-4 Chart DTO.

Methods
Methods inherited from LaravelUi5\Core\Ui5\Controls\AbstractControl
jsonSerialize()
Properties