0.0.2 • Published 4 years ago
esbeautify v0.0.2
WIP!
Features
- Generates JavaScript code up to ECMAScript® 2021
- Generated output is 98 % identical to the input.
- Supports prettier options
- Supports code compression (minification)
- Supports JSON serializing
- Supports source map
- Supports incremental code generation
- Performance
- Optimized for use on handheld devices such as a mobile phone or tablet
- No backtracking
- Low memory usage
API
Esbeautify
uses Escaya
to generat JavaScript code up to ECMAScript® 2021,
and does some code formatting based on your options.
Options
export interface Options {
// Enable ESNext features
next?: boolean;
// Enable location tracking
loc?: boolean;
// Disable Web compat
disableWebCompat?: boolean;
// Force strict mode
impliedStrict?: boolean;
// Specify the number of spaces per indentation-level
tabWidth?: number;
// Print semicolons at the ends of statements
semicolons?: boolean;
// Remove unnecessary whitespace
removeWhiteSpace?: boolean;
// Define file endings ('lf', 'crlf', or 'cr')
endOfLine?: string;
// Removes unnecessary whitespace, semicolons and line endings
minify?: boolean;
// Include parentheses around a sole arrow function parameter
arrowParens?: boolean;
// Enable the ability to omit superfluous parentheses
parentheses?: boolean;
// Print trailing commas wherever possible when multi-line
trailingCommas?: boolean;
// Use single quotes instead of double quotes
singleQuote?: boolean;
}
Example usage:
import { beutifyScript } from 'esbeutify';
generate(`[
a
= b
]
=
c`);
produces the string '[a = b] = c'.
This is how you minify
import { beutifyScript } from 'esbeutify';
generate(`[
a
= b
]
=
c`, { minify: true });
produces the string '[a=b]=c'.