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.

Readme

Keywords

Package Sidebar

Install

npm i jsonata-ui-core

Weekly Downloads

215

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