Uttori Renderer - Markdown - MarkdownIt
Uttori renderer support for Markdown powered by MarkdownIt.
Install
npm install --save uttori-plugin-renderer-markdown-it
Config
// Registration Events events: renderContent: renderCollection: validateConfig: // MarkdownIt Configuration ...
The only supported configuration outside of registration events is passing in MarkdownIt config.
API Reference
MarkdownItRenderer
Uttori MarkdownIt Renderer
Kind: global class
- MarkdownItRenderer
- .configKey ⇒
String
- .defaultConfig() ⇒
Object
- .validateConfig(config)
- .register(context)
- .renderContent(content, context) ⇒
String
- .renderCollection(collection, context) ⇒
Array.<Object>
- .render(content, config) ⇒
String
- .configKey ⇒
String
MarkdownItRenderer.configKey ⇒ The configuration key for plugin to look for in the provided configuration.
Kind: static property of MarkdownItRenderer
Returns: String
- The configuration key.
Example (MarkdownItRenderer.configKey)
const config = ...MarkdownItRenderer ...contextconfigMarkdownItRendererconfigKey ;
Object
MarkdownItRenderer.defaultConfig() ⇒ The default configuration.
Kind: static method of MarkdownItRenderer
Returns: Object
- The configuration.
Example (MarkdownItRenderer.defaultConfig())
const config = ...MarkdownItRenderer ...contextconfigMarkdownItRendererconfigKey ;
MarkdownItRenderer.validateConfig(config)
Validates the provided configuration for required entries.
Kind: static method of MarkdownItRenderer
Param | Type | Description |
---|---|---|
config | Object |
A configuration object. |
config[MarkdownItRenderer.configKey | Object |
A configuration object specifically for this plugin. |
Example (MarkdownItRenderer.validateConfig(config, _context))
MarkdownItRenderer;
MarkdownItRenderer.register(context)
Register the plugin with a provided set of events on a provided Hook system.
Kind: static method of MarkdownItRenderer
Param | Type | Description |
---|---|---|
context | Object |
A Uttori-like context. |
context.hooks | Object |
An event system / hook system to use. |
context.hooks.on | function |
An event registration function. |
context.config | Object |
A provided configuration to use. |
context.config.events | Object |
An object whose keys correspong to methods, and contents are events to listen for. |
Example (MarkdownItRenderer.register(context))
const context = hooks: { ... } config: MarkdownItRendererconfigKey: ... events: renderContent: 'render-content' 'render-meta-description' renderCollection: 'render-search-results' validateConfig: 'validate-config' ;MarkdownItRenderer;
String
MarkdownItRenderer.renderContent(content, context) ⇒ Renders Markdown for a provided string with a provided context.
Kind: static method of MarkdownItRenderer
Returns: String
- The rendered content.
Param | Type | Description |
---|---|---|
content | String |
Markdown content to be converted to HTML. |
context | Object |
A Uttori-like context. |
context.config | Object |
A provided configuration to use. |
Example (MarkdownItRenderer.renderContent(content, context))
const context = config: MarkdownItRendererconfigKey: ... ;MarkdownItRenderer;
Array.<Object>
MarkdownItRenderer.renderCollection(collection, context) ⇒ Renders Markdown for a collection of Uttori documents with a provided context.
Kind: static method of MarkdownItRenderer
Returns: Array.<Object>
- } The rendered documents.
Param | Type | Description |
---|---|---|
collection | Array.<Object> |
A collection of Uttori documents. |
context | Object |
A Uttori-like context. |
context.config | Object |
A provided configuration to use. |
Example (MarkdownItRenderer.renderCollection(collection, context))
const context = config: MarkdownItRendererconfigKey: ... ;MarkdownItRenderer;
String
MarkdownItRenderer.render(content, config) ⇒ Renders Markdown for a provided string with a provided MarkdownIt configuration.
Kind: static method of MarkdownItRenderer
Returns: String
- The rendered content.
Param | Type | Description |
---|---|---|
content | String |
Markdown content to be converted to HTML. |
config | Object |
A provided MarkdownIt configuration to use. |
Example (MarkdownItRenderer.render(content, config))
const html = MarkdownItRenderer;
Tests
To run the test suite, first install the dependencies, then run npm test
:
npm installnpm testDEBUG=Uttori* npm test