spoiler-friendly-hints
v1.0.5
Published
Converts plaintext into a simple html format with nested collapsible sections
Maintainers
Readme
spoiler-friendly-hints
Converts plaintext into a simple html format with nested collapsible sections.
Includes a handful of presentational options and hash-based navigation history.
Use
import { convert } from 'spoiler-friendly-hints';
const plaintextInput = `...`;
const htmlOutput = convert(plaintextInput, {
// default values for options
preamble: true,
title: '',
preambleUrl: '',
colorText: '#FFF',
colorBg: '#000',
colorAccent: '#FFC',
indent: /(^\t*)(.*$)/,
highlight: /!!!/,
});Input format
Each line may include nested children, indicated by their indent level (by default tabs are used, but this can be configured to use something else, e.g. indent: /(^(?:\s{2})*)(.*$)/ will use 2 spaces). Lines which have no nested children will be presented as plaintext. Extra blank lines are ignored and can be used to space out entries.
How you format the text is entirely up to you. You might use a question and answer format, simple statements, or even raw HTML.
Sample input
Did you check under the sofa?
It's not there.
Did you check by the entrance?
It's not there.
Did you check inside the bathroom?
Did you shut the door after you?
!!! Did you check every surface?
It's in the bathroom, behind the door, on the back wall.Sample output
More examples are available in the test files (e.g. ./src/index.test - default values.snapshot.html).
