1.0.12 • Published 10 months ago

react-texteditor-toolkit v1.0.12

Weekly downloads
-
License
-
Repository
-
Last release
10 months ago

TextEditor Component

A fully customizable and easy-to-use rich text editor built with React. Includes support for formatting, alignment, lists, and more.

Features

  • Formatting: Bold, italic, underline, and capitalization toggle.
  • Alignment: Left, center, and right text alignment.
  • Lists: Ordered (numbered) and unordered (bulleted) lists.
  • Clear Formatting: Remove all applied styles.
  • Customizable Toolbar Actions.

Installation

Install the package via npm:

npm i react-texteditor-toolkit

Usage

Here's how to use the TextEditor in your project:

import React, { useState } from "react";
import TextEditor from "react-texteditor-toolkit";

const App = () => {
  const [content, setContent] = useState("");

  const handleContentChange = (e: { target: { value: string } }) => {
    setContent(e.target.value);
    console.log("Editor Content:", e.target.value);
  };

  return (
    <div>
      <h1>My Rich Text Editor</h1>
      <TextEditor
        placeholder="Start typing here..."
         defaultValue="<p>This is the default content!</p>"
        onChange={handleContentChange}
        toolbarActions={["bold", "italic", "underline", "unorderedList", "clear"]}
        contentStyle={{ border: "1px solid #ddd", padding: "10px" }}
      />
      <p>Output:</p>
      <div dangerouslySetInnerHTML={{ __html: content }} />
    </div>
  );
};

export default App;

Customization

Styling the Editor

You can customize the editor's appearance using the contentStyle, iconStyle, and headerStyle props.

<TextEditor
  contentStyle={{ border: "2px solid #000", minHeight: "200px" }}
  iconStyle={{ color: "blue" }}
  headerStyle={{ backgroundColor: "#f4f4f4", padding: "10px" }}
  defaultValue="<p>This is the default content!</p>"
/>

Read-Only Mode

To prevent edits, set readOnly to true:

<TextEditor readOnly={true} />

TextEditorProps

PropTypeDefaultDescription
iconStyleReact.CSSProperties{}Customize the style of toolbar icons.
contentStyleReact.CSSProperties{ border: '1px solid #ccc', padding: '10px' }Customize the editor's content area style.
headerStyleReact.CSSProperties{}Customize the style of the toolbar container.
placeholderstring"Type here..."Placeholder text shown in the editor when it's empty.
onChange(e: { target: { value: string } }) => voidundefinedCallback triggered when the editor's content changes.
readOnlybooleanfalseSets the editor to read-only mode.
defaultValuestring"<p>This is the default content!</p>"Default value shown in the editor.
toolbarActionsArray<string>See belowSpecify the available toolbar actions.

Available Toolbar Actions

You can customize the toolbarActions prop to include any of the following options:

  • "bold": Toggle bold formatting.
  • "italic": Toggle italic formatting.
  • "underline": Toggle underline formatting.
  • "unorderedList": Insert a bulleted list.
  • "orderedList": Insert a numbered list.
  • "alignLeft": Align text to the left.
  • "alignCenter": Align text to the center.
  • "alignRight": Align text to the right.
  • "capitalize": Toggle text capitalization.
  • "clear": Clear all formatting.
1.0.12

10 months ago

1.0.11

10 months ago

1.0.10

10 months ago

1.0.9

10 months ago

1.0.8

10 months ago

1.0.7

10 months ago

1.0.6

10 months ago

1.0.5

10 months ago

1.0.4

10 months ago

1.0.3

10 months ago

1.0.1

10 months ago

1.0.0

10 months ago