Important: This documentation covers Yarn 1 (Classic).
For Yarn 2+ docs and migration guide, see yarnpkg.com.

Package detail

@krozamdev/react-masked-password

krozamdev12MIT1.0.1TypeScript support: included

The InputMaskingPassword component is a password input field that includes masking functionality (hiding characters as the user types) and allows toggling to show or hide the password. It uses the @krozamdev/masked-password library to apply the masking an

react, password, masking, input, input masking, password masking, prevent password manager, ignore password manager, input field utility, form utilities, typescript, javascript, masked input, original value retrieval, frontend tools, lightweight, react password input, react input masking component, show hide password input, react password masking, typescript input masking, secure password input, react form utilities, password protection react, input masking for forms, javascript masked input

readme

@krozamdev/react-masked-password

A lightweight, customizable masked password input component for Vue3. This component allows you to securely mask password input fields and provides a customizable approach to controlling password visibility. The InputMaskingPassword component is a password input field that includes masking functionality (hiding characters as the user types) and allows toggling to show or hide the password. It uses the @krozamdev/masked-password library to apply the masking and supports custom mask characters. The component also handles password input changes by passing the raw (unmasked) value via a callback function.

Latest Version Total Download License

Compatible Packages

Features

  • Masked Input: Mask the entered password with a configurable mask character.
  • Password Toggle: Option to show or hide the password input.
  • TypeScript Support: Written in TypeScript for better type safety.
  • Easy Integration: Can be easily integrated into any React form.
  • Lightweight: Minimal JavaScript bundle size for better performance.
  • Cross-browser Compatibility: Works across modern browsers.

Installation

To install the package, use either npm or yarn:

  • npm
      npm install @krozamdev/react-masked-password
  • yarn
      yarn add @krozamdev/react-masked-password
  • pnpm
      pnpm add @krozamdev/react-masked-password
  • bun
      bun add @krozamdev/react-masked-password

Usage

Here’s an example of how to use the masked password input component in your React project:

import React from 'react';
import InputMaskingPassword from '@krozamdev/react-masked-password';

const MyForm: React.FC = () => {

  const handlePasswordChange = (value: string) => {
    console.log(value);
  };

  return (
    <form>
      <InputMaskingPassword
        onChangeEvent={handlePasswordChange}
        showPassword={false}  // set to true to show the password
        maskCharacter="*"  // customize the mask character, defaultplaceholder="Enter your password"
      />
    </form>
  );
};

export default MyForm;

Props

Prop Type Description
onChangeEvent (originalValue: string) Callback that fires when the password value changes.
maskCharacter string (Optional) The character used to mask the password. Defaults to .
showPassword boolean (Optional) Show or hide the password input. Defaults to false.
...props React.InputHTMLAttributes<HTMLInputElement> All other standard HTML input attributes are supported, such as placeholder, className, etc.

Development

To build the project locally:

  1. Clone the repository:
     git clone https://github.com/krozamdev/react-masked-password.git
     cd react-masked-password
  2. Install dependencies:
     yarn install
  3. Run the build:
     yarn build
    This will create the build output in the dist directory, including both CommonJS and ESM formats.

Contributing

  1. Fork the repository.
  2. Create your feature branch (git checkout -b feature/my-feature).
  3. Commit your changes (git commit -am 'Add new feature').
  4. Push to the branch (git push origin feature/my-feature).
  5. Create a new Pull Request.

License

This project is licensed under the MIT License - see the LICENSE file for details.

Contact

For support, please email support@krozam.tech.