Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

encode-entities

igorskyflyer3MITdeprecated1.1.2TypeScript support: included

This package has been deprecated, please use @igor.dvlpr/encode-entities instead.

๐Ÿƒโ€โ™‚๏ธ Fast and simple Map and RegExp based HTML entities encoder. ๐Ÿ

entity, html, string, encode, escape

readme

๐Ÿƒโ€โ™‚๏ธ 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 '&#60;strong&#62;'

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('โ†’', '&#8594;')
console.log(encoder.encode('<a href="#">โ†’</a>')) // outputs '&#60;a href&#61;&#34;#&#34;&#62;&#8594;&#60;/a&#62;'

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({
  '๐•‹': '&#120139;',
  'โ‰ˆ': '&#8776;',
  '๐”ฑ': '&#120113;',
})

console.log(encoder.encode('<span>๐•‹ โ‰ˆ ๐”ฑ</span>')) // outputs '&#60;span&#62;&#120139; &#8776; &#120113;&#60;/span&#62;'

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({
  '๐•‹': '&#120139;',
  'โ‰ˆ': '&#8776;',
  '๐”ฑ': '&#120113;',
})
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({
  '๐•‹': '&#120139;',
  'โ‰ˆ': '&#8776;',
  '๐”ฑ': '&#120113;',
})

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 '&#60;strong&#62;'

Test

npm test