Skip to content

Latest commit

 

History

History
71 lines (48 loc) · 1.87 KB

README.md

File metadata and controls

71 lines (48 loc) · 1.87 KB

npm version

react-highlighter-ts

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).

Version note

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.

Usage

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>.

Styling

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.

Migrating from react-highlighter

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.

Contributing

See something amiss? Please open a PR.

Development setup

This library does not use any global dependencies, so a simple npm install should suffice.

Testing

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