Transformer
@diplodoc/transform is a package for converting Yandex Flavored Markdown to HTML.
Use it in your code to work with text during program execution. For example, to display user-generated content.
Installation
-
Install a package:
npm i @diplodoc/transform
-
Add the package in your code using the
require()
orimport()
function:const transform = require('@diplodoc/transform');
-
To ensure text is displayed properly, add CSS styles and client scripts to the project:
@import '~@diplodoc/transform/dist/css/yfm.css';
import '@diplodoc/transform/dist/js/yfm';
Usage
The package provides the transform()
function:
- Input data: Settings and a string with YFM.
- Returned value: An object with the
result
andlogs
fields.
Result field
result
: Resulting object, contains the fields:
html
: A line with HTML.meta
: Metadata from the transmitted content.title
: The document title. Returned ifextractTitle = true
orneedTitle = true
.headings
: A list of document headers.
Logs field
logs
: Information about the transformation process, includes arrays:
error
: Errors.warn
: Warnings.info
: Additional information.
Example of a function invocation
const fs = require('fs');
const transform = require('@diplodoc/transform');
const content = fs.readFileSync(filePath, 'utf');
const vars = { user: { name: 'Alice' } };
const {
result: {html, meta, title, headings},
logs,
} = transform(content, {vars});