https://github.com/bustle/mobiledoc-text-renderer
A text renderer for Mobiledoc
https://github.com/bustle/mobiledoc-text-renderer
Last synced: 7 months ago
JSON representation
A text renderer for Mobiledoc
- Host: GitHub
- URL: https://github.com/bustle/mobiledoc-text-renderer
- Owner: bustle
- License: mit
- Created: 2015-11-03T16:53:12.000Z (over 10 years ago)
- Default Branch: master
- Last Pushed: 2022-12-10T22:23:12.000Z (over 3 years ago)
- Last Synced: 2025-10-01T08:21:19.455Z (10 months ago)
- Language: JavaScript
- Homepage:
- Size: 238 KB
- Stars: 7
- Watchers: 29
- Forks: 7
- Open Issues: 2
-
Metadata Files:
- Readme: README.md
- Changelog: CHANGELOG.md
- License: LICENSE
Awesome Lists containing this project
README
## Mobiledoc Text Renderer [](https://travis-ci.org/bustlelabs/mobiledoc-text-renderer)
This is a Text renderer for the [Mobiledoc format](https://github.com/bustlelabs/mobiledoc-kit/blob/master/MOBILEDOC.md) used
by [Mobiledoc-kit](https://github.com/bustlelabs/mobiledoc-kit).
To learn more about Mobiledoc cards and renderers, see the **[Mobiledoc Cards docs](https://github.com/bustlelabs/mobiledoc-kit/blob/master/CARDS.md)**.
The renderer is a small library intended for use in servers that are building
Text documents. It may be of limited use inside browsers as well.
### Usage
```
var mobiledoc = {
version: "0.2.0",
sections: [
[ // markers
['B']
],
[ // sections
[1, 'P', [ // array of markups
// markup
[
[0], // open markers (by index)
0, // close count
'hello world'
]
]
]
]
};
var renderer = new TextRenderer({cards: []});
var rendered = renderer.render(mobiledoc);
console.log(rendered.result); // "hello world"
```
The Renderer constructor accepts a single object with the following optional properties:
* `cards` [array] - The list of card objects that the renderer may encounter in the mobiledoc
* `cardOptions` [object] - Options to pass to cards when they are rendered
* `unknownCardHandler` [function] - Will be called when any unknown card is enountered
The return value from `renderer.render(mobiledoc)` is an object with two properties:
* `result` [string] - The rendered result
* `teardown` [function] - When called, this function will tear down the rendered mobiledoc and call any teardown handlers that were registered by cards when they were rendered
### Tests
* `npm install -g broccoli-cli testem`
* `npm test`
### Releasing
* `npm version patch` or `minor` or `major`
* `npm run build`
* `git push bustle --tags`
* `npm publish`