diff options
author | Minteck <contact@minteck.org> | 2022-10-18 08:59:09 +0200 |
---|---|---|
committer | Minteck <contact@minteck.org> | 2022-10-18 08:59:09 +0200 |
commit | 2c4ae43e688a9873e86211ea0e7aeb9ba770dd77 (patch) | |
tree | 17848d95522dab25d3cdeb9c4a6450e2a234861f /alarm/node_modules/string-strip-html/examples/minimal-ranges.js | |
parent | 108525534c28013cfe1897c30e4565f9893f3766 (diff) | |
download | pluralconnect-2c4ae43e688a9873e86211ea0e7aeb9ba770dd77.tar.gz pluralconnect-2c4ae43e688a9873e86211ea0e7aeb9ba770dd77.tar.bz2 pluralconnect-2c4ae43e688a9873e86211ea0e7aeb9ba770dd77.zip |
Update
Diffstat (limited to 'alarm/node_modules/string-strip-html/examples/minimal-ranges.js')
-rw-r--r-- | alarm/node_modules/string-strip-html/examples/minimal-ranges.js | 33 |
1 files changed, 33 insertions, 0 deletions
diff --git a/alarm/node_modules/string-strip-html/examples/minimal-ranges.js b/alarm/node_modules/string-strip-html/examples/minimal-ranges.js new file mode 100644 index 0000000..91dcbf7 --- /dev/null +++ b/alarm/node_modules/string-strip-html/examples/minimal-ranges.js @@ -0,0 +1,33 @@ +// Minimal example using Ranges + +// We strip tags and fix apostrophes +// that's part of what https://codsen.com/os/detergent/ does + +import { strict as assert } from "assert"; +import { rApply } from "../../ranges-apply"; +import { stripHtml } from "../dist/string-strip-html.esm.js"; +import { convertAll } from "../../string-apostrophes"; + +function stripAndFixApos(str) { + if (!str || typeof str !== "string") { + return ""; + } + // Keep in mind, Ranges are array of 2-3 element arrays. + // But absent Ranges are marked as null, not empty array. + // It's so that we could test in "if-else" easily - null + // is falsy but empty array is truthy. + // That's why below we take precautions with "|| []". + return rApply( + str, + (stripHtml(str).ranges || []).concat(convertAll(str).ranges || []) + ); +} + +// strips tags and fixes apostrophes: +assert.equal( + stripAndFixApos(`Let's Go <strong>Larval</strong>`), + `Let’s Go Larval` +); + +// no tags, no apostrophes: +assert.equal(stripAndFixApos(`zzz`), `zzz`); |