Concorde documentation (crawl) · interactive version

Concorde functional component — Jsonata. sonic-jsonata : 1 input → expression → 1 output (readonly). Doc ID: core/components/functional/jsonata/jsonata. Keywords: Concorde, supersoniks, core/components/functional/jsonata/jsonata, jsonata, Jsonata, functional component, sonic-jsonata, web component, sonic-mix, serviceURL="/docs-mock-api", inputProvider, $input, outputProvider, expression, formDataProvider, $top, $taxPercent. URL: https://concorde.supersoniks.org/crawl/core/components/functional/jsonata/jsonata.html.

Jsonata

sonic-jsonata : 1 input → expression → 1 output (readonly).

Unidirectional (fetch → compute → display), unlike sonic-mix.

Offline : serviceURL="/docs-mock-api" — Local API demos.

Demos

Groupby + top N

Change Top N → recalcul sans refetch.

Totaux (somme + taxe)

Change Tax % → même idée.

Attributes

Attribute Role
inputProvider Entrée ($input dans l’expression)
outputProvider Sortie (readonly)
expression Expression JSONata
formDataProvider Form optionnel ($top, $taxPercent, …) — même id que le form
outputSchema Schéma léger optionnel (type, required)

Helpers

$ucFirst · $currency · $percent · $date · $toChart(items, labelKey, valueKey, datasetLabel?)

Pas de DOM, pas de réseau, pas d’eval.

Markup

<sonic-jsonata
  inputProvider="api/space-cats"
  outputProvider="leaderboard"
  formDataProvider="topForm"
  expression='$input{name: $sum(points)} ~> $each(function($v,$k){{"name":$k,"points":$v}}) ^(>points)[[0..$number($top)-1]]'
></sonic-jsonata>

Pour du multi-entrées ou une fonction TS : primitive derive.

States

{output}/_state_ → { status, error? } (loading | ready | error | empty). Brancher avec sonic-states.