๐โโ๏ธ Encode Entities ๐
๐โโ๏ธ Fast and simple Map and RegExp based HTML entities encoder.๐
This package has been deprecated, please use @igor.dvlpr/encode-entities instead.
Fast and simple Map and RegExp based HTML entities encoder. In order to overcome different methods of possible XSS attacks, it by default encodes the following characters: <*, *>, "*, *', &*, *=, `,** **!, @*, *$, %*, *(, )*, *+, {*, *}, [*, *].
You can however remove any of these rules and/or add your own.
Uses the MappedReplacer package.
โจSince version 1.1.0
Encode Entities
is a hybrid module that supports both CommonJS (legacy) and ES modules, thanks to Modern Module.
Table of Contents
Install
npm i encode-entities
API
resetRules(): void
Resets the rules to the default ones.
const Encoder = require('encode-entities')
const encoder = new Encoder()
encoder.addRule('<', '๐')
encoder.addRule('>', '๐')
encoder.resetRules()
console.log(encoder.encode('<strong>')) // outputs '<strong>'
addRule(key: string, value: string): boolean
Adds a new rule or updates the existing rule for entities encoding. Returns true if the rule was added successfully or false if not.
const Encoder = require('encode-entities')
const encoder = new Encoder()
encoder.addRule('โ', '→')
console.log(encoder.encode('<a href="#">โ</a>')) // outputs '<a href="#">→</a>'
addRules(rules: Object): boolean
Adds rules or updates the existing rules for entity encoding.
Passed object is a simple key-value object, i.e. { '<': '<', '>': '>' }
Returns true if the rules were added successfully or false if not.
const Encoder = require('encode-entities')
const encoder = new Encoder()
encoder.addRules({
'๐': '𝕋',
'โ': '≈',
'๐ฑ': '𝔱',
})
console.log(encoder.encode('<span>๐ โ ๐ฑ</span>')) // outputs '<span>𝕋 ≈ 𝔱</span>'
removeRule(key: string): boolean
Removes the rule that matches the provided key. Returns true if the rule was removed successfully or false if not.
const Encoder = require('encode-entities')
const encoder = new Encoder()
encoder.addRules({
'๐': '𝕋',
'โ': '≈',
'๐ฑ': '𝔱',
})
encoder.removeRule('โ')
console.log(encoder.rulesCount()) // outputs 20
rulesCount(): number
Gets the number of rules for entity encoding.
const Encoder = require('encode-entities')
const encoder = new Encoder()
encoder.addRules({
'๐': '𝕋',
'โ': '≈',
'๐ฑ': '𝔱',
})
console.log(encoder.rulesCount()) // outputs 21
encode()
Encodes special characters in the given string to HTML entities.
const Encoder = require('encode-entities')
const encoder = new Encoder()
console.log(encoder.encode('<strong>')) // outputs '<strong>'
Test
npm test