no_unescaped_entities

package
v0.5.3 Latest Latest
Warning

This package is not in the latest version of its module.

Go to latest
Published: May 14, 2026 License: MIT Imports: 6 Imported by: 0

Documentation

Index

Constants

This section is empty.

Variables

View Source
var NoUnescapedEntitiesRule = rule.Rule{
	Name: "react/no-unescaped-entities",
	Run: func(ctx rule.RuleContext, options any) rule.RuleListeners {
		entities := parseEntities(options)
		if len(entities) == 0 {
			return rule.RuleListeners{}
		}

		return rule.RuleListeners{

			ast.KindJsxText: func(node *ast.Node) {

				source := ctx.SourceFile.Text()
				startPos, endPos := node.Pos(), node.End()
				if startPos < 0 || endPos > len(source) || startPos >= endPos {
					return
				}
				content := source[startPos:endPos]

				for i := 0; i < len(content); {
					r, size := utf8.DecodeRuneInString(content[i:])
					runeStart := startPos + i
					runeEnd := runeStart + size
					for idx := range entities {
						e := &entities[idx]
						if !e.hasRune || e.charRune != r {
							continue
						}
						reportEntity(ctx, e, runeStart, runeEnd)
					}
					i += size
				}
			},
		}
	},
}

Functions

This section is empty.

Types

This section is empty.

Jump to

Keyboard shortcuts

? : This menu
/ : Search site
f or F : Jump to
y or Y : Canonical URL