diff options
Diffstat (limited to 'includes/external/school/node_modules/string-strip-html/examples/widow-word-removal-from-html.js')
-rw-r--r-- | includes/external/school/node_modules/string-strip-html/examples/widow-word-removal-from-html.js | 25 |
1 files changed, 25 insertions, 0 deletions
diff --git a/includes/external/school/node_modules/string-strip-html/examples/widow-word-removal-from-html.js b/includes/external/school/node_modules/string-strip-html/examples/widow-word-removal-from-html.js new file mode 100644 index 0000000..bcc07b1 --- /dev/null +++ b/includes/external/school/node_modules/string-strip-html/examples/widow-word-removal-from-html.js @@ -0,0 +1,25 @@ +// Widow word removal from text within HTML + +import { strict as assert } from "assert"; +import { stripHtml } from "../dist/string-strip-html.esm.js"; +import { removeWidows } from "../../string-remove-widows"; + +const someHtml = `The quick brown fox jumps of the lazy dog.<div class="a">`; + +// default widow word removal libs are not aware of HTML: +// ----------------------------------------------------------------------------- + +assert.equal( + removeWidows(someHtml).res, + `The quick brown fox jumps of the lazy dog.<div class="a">` // 😱 +); + +// luckily, removeWidows() consumes optional HTML tag locations +assert.equal( + removeWidows(someHtml, { + tagRanges: stripHtml(someHtml) + // remove the third argument, what to insert (" " string in these cases) + .ranges.map(([from, to]) => [from, to]), + }).res, + `The quick brown fox jumps of the lazy dog.<div class="a">` // ✅ +); |