0.4.6 • Published 14 days ago

beauty-amp-core2 v0.4.6

Weekly downloads
-
License
BSD-4-CLAUSE
Repository
github
Last release
14 days ago

Beauty AMP Core 2

This library gives you the option to format AMPscript code used in SFMC.
Includes HTML formatting using Prettier.
Duplicated to continue support of the original library.

Installation

> npm install --save beauty-amp-core2

Usage

This module can format AMPscript code either as an array (of lines) or as a string. The output type matches the input type.

beautify(lines)

Format code. Lines are broken on "\n". Is Async.
lines: Array|String - text of your code
includeHtml Boolen=true Include the HTML in beautifying (e.g. if HTML code is not format-able).
return: {Array|String} Formatted code. Array or string based on the initial input.
throws: Syntax Error if HTML cannot be formatted.

Array input:

const beautifier = require('beauty-amp-core2');

beautifier.setup(); // setup is explained later

let lines = [`<h1>My Test Case:</h1>`,
`%%[ VAR @lang `,
`If (@lang == 'EN') then Output("Hello World!")`,
`Else`,
`	Output("Ciao!")`,
`endif`,
`]%%`];

const result = await beautifier.beautify(lines);
console.log(result); // returns code as an array

String input:

const beautifier = require('beauty-amp-core2');

beautifier.setup(); // setup is explained later

let lines = `<h1>My Test Case:</h1>
%%[ VAR @lang
If (@lang == 'EN') then Output("Hello World!")
Else
	Output("Ciao!")
endif
]%%`;

const result = await beautifier.beautify(lines);
console.log(result); // returns code as a string

Setup

You can set the extension either in code or using a file. File provided setup overrides setup from setup() function call.

In code:

const ampscript = {
  capitalizeAndOrNot: true,
  capitalizeIfFor: true,
  capitalizeSet: true,
  capitalizeVar: true,
  maxParametersPerLine: 4
};

const editor = {
  insertSpaces: true,
  tabSize: 4
};

beautifier.setup(ampscript, editor);

Using setup file:

Or use a setup file in your project's folder (project root). Name .beautyamp.json:

{
	"ampscript": {
		"capitalizeAndOrNot": true,
		"capitalizeIfFor": true,
		"capitalizeSet": true,
		"capitalizeVar": true,
		"maxParametersPerLine": 4
	},
	"editor": {
		"insertSpaces": true,
		"tabSize": 2
	}
}

You still need to call the setup():

beautifier.setup();
0.4.7-beta.1

14 days ago

0.4.6

3 months ago

0.4.5

5 months ago

0.4.4

5 months ago

0.4.3

5 months ago

0.4.2

5 months ago

0.4.1

5 months ago

0.4.0

5 months ago

0.3.8

6 months ago