This is a TypeScript rewrite of the npm package
react-highligher
, which has no
type support, has very out of date dependencies, and seems to be abandoned (no
activity since 2018).
Starting with version 18.0.0, this library's major version number will be pinned to the compatible major version of React.
For React version 17.x compatability, install version ^2.2.0
.
The API for this package is identical to that of the original package,
react-highlighter
.
import * as React from "react";
import { Highlight } from "react-highlighter-ts";
export const Example = () => (
<Highlight search="hello">Hello, World!</Highlight>
);
See generated type
documentation for details on
properties accepted by <Highlight>
.
By default, this library wraps matches in an html <mark>
tag, and does not
style it. Most browsers style the <mark>
tag by giving it a yellow background
and black text. You can style your matches by providing a pre-styled
element type to matchElement
, passing a CSS class to matchClass
, or passing
CSS rules to matchStyle
.
You should be able to migrate directly from react-highlighter
to
react-highlighter-ts
without any changes in your source code besides adjusting
your imports.
See something amiss? Please open a PR.
This library does not use any global dependencies, so a simple npm install
should suffice.
Tests have been adapted from the original react-highlighter
codebase. Tests
use Jest + Enzyme.
npm run test
or to watch file changes:
npm run test:watch