Security News
CISA Brings KEV Data to GitHub
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.
@stedi/prettier-plugin-jsonata
Advanced tools
Format your JSONata expressions using Prettier.
A Prettier plugin must first parse the source code of the target language into a traversable data structure (Usually an Abstract Syntax Tree) and then print out that data structure in a "pretty" style.
prettier-plugin-jsonata uses the JSONata parser available as part of the jsonata package.
printWidth
, tabWidth
, and useTabs
formatting options are supported.# Install locally in a project
npm install --save-dev @stedi/prettier-plugin-jsonata prettier
# Or globally
npm install -g @stedi/prettier-plugin-jsonata prettier
Once you installed prettier
and prettier-plugin-jsonata
as dev dependencies in your project,
you can format your code using Prettier CLI.
npx prettier --write ./**/*.jsonata
You can format your JSONata expressions using Prettier's own format
method like this:
import * as prettier from "prettier";
import * as prettierPlugin from "@stedi/prettier-plugin-jsonata";
const expression = "($myVar:=foo.bar[]; $reverse($myVar))";
const formattedExpression = prettier.format(expression, {
parser: prettierPlugin.AST_PARSER_NAME,
plugins: [prettierPlugin],
printWidth: 150,
tabWidth: 2,
useTabs: false,
});
console.log(formattedExpression);
Alternatively, you can use the formatJsonata
function:
import { formatJsonata } from "@stedi/prettier-plugin-jsonata/dist/lib";
async function format() {
const expression = "($myVar:=foo.bar[]; $reverse($myVar))";
const formattedExpression = await formatJsonata(expression);
console.log(formattedExpression);
}
format().catch((e) => {
console.log(e);
});
If you parse JSONata as part of your business logic and only need to print JSONata AST tree as a formatted string,
you can use serializeJsonata
function:
import jsonata from "jsonata";
import { serializeJsonata } from "@stedi/prettier-plugin-jsonata/dist/lib";
async function serialize() {
const jsonataAST = jsonata("($myVar:=foo.bar[]; $reverse($myVar))").ast();
const formattedExpression = await serializeJsonata(jsonataAST);
console.log(formattedExpression);
}
serialize().catch((e) => {
console.log(e);
});
FAQs
Prettier plugin for JSONata language
We found that @stedi/prettier-plugin-jsonata demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 1 open source maintainer collaborating on the project.
Did you know?
Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.
Security News
CISA's KEV data is now on GitHub, offering easier access, API integration, commit history tracking, and automated updates for security teams and researchers.
Security News
Opengrep forks Semgrep to preserve open source SAST in response to controversial licensing changes.
Security News
Critics call the Node.js EOL CVE a misuse of the system, sparking debate over CVE standards and the growing noise in vulnerability databases.