πββοΈ Fast and simple Map and RegExp based HTML entities encoder. π
I work hard for every project, including this one and your support means a lot to me!
Consider buying me a coffee. β
Thank you for supporting my efforts! ππ
@igorskyflyer
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 @igor.dvlpr/mapped-replacer package.
Install it by executing:
npm i "@igor.dvlpr/encode-entities"
Resets the rules to the default ones.
import { Encoder } from '@igor.dvlpr/encode-entities'
const encoder: Encoder = new Encoder()
encoder.addRule('<', 'π')
encoder.addRule('>', 'π')
encoder.resetRules()
console.log(encoder.encode('<strong>')) // outputs '<strong>'
Adds a new rule or updates the existing rule for entities encoding. Returns true if the rule was added successfully or false if not.
import { Encoder } from '@igor.dvlpr/encode-entities'
const encoder: Encoder = new Encoder()
encoder.addRule('β', '→')
console.log(encoder.encode('<a href="#">β</a>')) // outputs '<a href="#">→</a>'
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.
import { Encoder } from '@igor.dvlpr/encode-entities'
const encoder: Encoder = new Encoder()
encoder.addRules({
'π': '𝕋',
'β': '≈',
'π±': '𝔱',
})
console.log(encoder.encode('<span>π β π±</span>')) // outputs '<span>𝕋 ≈ 𝔱</span>'
Removes the rule that matches the provided key. Returns true if the rule was removed successfully or false if not.
import { Encoder } from '@igor.dvlpr/encode-entities'
const encoder: Encoder = new Encoder()
encoder.addRules({
'π': '𝕋',
'β': '≈',
'π±': '𝔱',
})
encoder.removeRule('β')
console.log(encoder.rulesCount()) // outputs 20
Gets the number of rules for entity encoding.
import { Encoder } from '@igor.dvlpr/encode-entities'
const encoder: Encoder = new Encoder()
encoder.addRules({
'π': '𝕋',
'β': '≈',
'π±': '𝔱',
})
console.log(encoder.rulesCount()) // outputs 21
Encodes special characters in the given string to HTML entities.
import { Encoder } from '@igor.dvlpr/encode-entities'
const encoder: Encoder = new Encoder()
console.log(encoder.encode('<strong>')) // outputs '<strong>'
Licensed under the MIT license which is available here, MIT license.
𧡠Provides ways of checking whether a String is present in an Array of Strings using custom Comparators. π
𧬠Meet Aria, an efficient Adblock filter list compiler, with many features that make your maintenance of Adblock filter lists a breeze! π‘
𧲠Provides ways of properly checking if a path exists inside a given array of files/directories both on Windows and UNIX-like operating systems. πΊ
πͺ Provides ways of testing whether an array of chars is present inside a given String. β
π§° Provides ways of testing whether a given value can be a valid file/directory name. π
Provided by Igor DimitrijeviΔ (@igorskyflyer).