jsonata-ui-core
TypeScript icon, indicating that this package has built-in type declarations

1.7.13 • Public • Published

jsonata-ui-core

npm version

Core AST and serializers for jsonata-ui

npm install jsonata-ui-core

The core library includes a serializer to turning JSONata ASTs back into strings.

import {serializer} from "jsonata-ui-core";
import jsonata from "jsonata"

const input = `a.b.c = "foo"`;
const ast = jsonata(input).ast();
const output = serializer(ast);
console.log("There and back again", input, output);

Edit jsonata serializer demo

Versions matching with JSONata

This library serializes ASTs, and aims to match versions numbers with jsonata-js. This is because the ASTs returned by jsonata vary significantly by version.

jsonata Jsonata-ui-core
1.7.x 1.7.x
<1.6.x Not supported

Not Implemented

  • Some operators not yet implemented
  • Complex thunk functions: λ($f) { λ($x) { $x($x) }( λ($g) { $f( (λ($a) {$g($g)($a)}))})}(λ($f) { λ($n) { $n < 2 ? 1 : $n * $f($n - 1) } })(6)
  • Regex: $matcher := /[a-z]*an[a-z]*/i
  • Partial function application ( $first5 := $substring(?, 0, 5); $first5("Hello, World") )
  • Transform operator: | Account.Order.Product | {'Price': Price * 1.2} |
  • Conditional without else: Account ? null vs Account ? null : true
  • Merged back into main jsonata-js package

Sponsors

Sponsored by SaaSquatch. Loyalty, point and referral programs for forward-looking companies.

Dependencies (0)

    Dev Dependencies (8)

    Package Sidebar

    Install

    npm i jsonata-ui-core

    Weekly Downloads

    316

    Version

    1.7.13

    License

    MIT

    Unpacked Size

    33.3 kB

    Total Files

    12

    Last publish

    Collaborators

    • 00salmon
    • locrian
    • jayden-chan
    • zachharrison
    • logvol
    • lisq
    • johanventer
    • dereksiemens
    • squatch-noahwc
    • ianhitchcock