Socket
Book a DemoInstallSign in
Socket

@medanosol/react-feedback-report

Package Overview
Dependencies
Maintainers
3
Versions
2
Alerts
File Explorer

Advanced tools

Socket logo

Install Socket

Detect and block malicious and high-risk dependencies

Install

@medanosol/react-feedback-report

A small React package that lets you to take a screenshot of your website and report issues with that specific part.

latest
npmnpm
Version
0.0.3
Version published
Maintainers
3
Created
Source

React Capture Feedback Component

This is a React component that allows users to capture a section of a website, provide feedback, and report bugs. The captured section is displayed in a frame that can be resized and moved around. Users can enter their feedback in a text area and submit it along with the captured image, the date and the URL.

Installation

You can install the package from npm using the following command:

npm i @medanosol/react-feedback-report
yarn add @medanosol/react-feedback-report

Usage

To use the component, follow these steps:

  • Import the component into your React application:
import { FeedbackReporter } from "@medanosol/react-feedback-report";
  • Render the component in your application, passing the necessary props:
const App = () => {
  const handleCapture = (captureFeedback) => {
    // Handle the captured feedback data
    console.log(captureFeedback);
  };

  return (
    <div>
      <FeedbackReporter onCapture={handleCapture} />
    </div>
  );
};

export default App;
  • Customize the trigger button and feedback input appearance by providing appropriate classes. You can use the feedbackInputClassName prop to add custom classes to the feedback input field.
<FeedbackReporter
  trigger={<button className="custom-trigger-button">Capture Feedback</button>}
  feedbackInputClassName="custom-feedback-input"
/>

Props

The component accepts the following props:

interface CaptureFeedback {
  image: string;
  feedback: string;
  date: Date;
  path: string;
}

interface Props {
  trigger: React.ReactElement<
    React.DetailedHTMLProps<
      React.ButtonHTMLAttributes<HTMLButtonElement>,
      HTMLButtonElement
    >
  >;
  onCapture: (captureFeedback: CaptureFeedback) => void;
  initialPosition?: {
    width: string;
    height: string;
    x: number;
    y: number;
  };
  inputClassName?: string;
  inputPlaceholder?: string;
  buttonClassName?: string;
  captureSectionClassName?: string;
  buttonIcon?: React.ReactNode;
}

Example

Here's an example of how you can use the component:

import { FeedbackReporter } from "@medanosol/react-feedback-report";

const App = () => {
  const handleCapture = (FeedbackReporter) => {
    console.log(FeedbackReporter);
  };

  return (
    <div>
      <FeedbackReporter
        trigger={<button>Capture Feedback</button>}
        onCapture={handleCapture}
        feedbackInputClassName="custom-feedback-input"
      />
    </div>
  );
};

export default App;

Keywords

react

FAQs

Package last updated on 24 Jul 2023

Did you know?

Socket

Socket for GitHub automatically highlights issues in each pull request and monitors the health of all your open source dependencies. Discover the contents of your packages and block harmful activity before you install or update your dependencies.

Install

Related posts