Ecosyste.ms: Awesome

An open API service indexing awesome lists of open source software.

Awesome Lists | Featured Topics | Projects

https://github.com/weblineindia/angular-password-input

An AngularJS based Password Input component, which provides input field to add password as a text / password property with validation. The password value is automatically validated on change event. You can also disable password field using disable props.
https://github.com/weblineindia/angular-password-input

angular angular-components angular-libraries angular-password angular-password-input angularjs angularjs-components angularjs-library angularjs-password password-component password-input password-validation reusable-components

Last synced: 4 days ago
JSON representation

An AngularJS based Password Input component, which provides input field to add password as a text / password property with validation. The password value is automatically validated on change event. You can also disable password field using disable props.

Awesome Lists containing this project

README

        

# Angular - Password Input Component

The Angular Password Input component provides a seamless way to integrate a password input field into your Angular applications. With this component, users can securely enter passwords with built-in validation and optional visibility toggling.

## Table of contents

- [Browser Support](#browser-support)
- [Demo](#demo)
- [Getting started](#getting-started)
- [Usage](#usage)
- [Available Props](#available-props)
- [Methods](#methods)
- [Want to Contribute?](#want-to-contribute)
- [Collection of Components](#collection-of-components)
- [Changelog](#changelog)
- [License](#license)
- [Keywords](#Keywords)

## Browser Support

| ![Chrome](https://raw.github.com/alrra/browser-logos/master/src/chrome/chrome_48x48.png) | ![Firefox](https://raw.github.com/alrra/browser-logos/master/src/firefox/firefox_48x48.png) | ![Safari](https://raw.github.com/alrra/browser-logos/master/src/safari/safari_48x48.png) | ![Edge](https://raw.github.com/alrra/browser-logos/master/src/edge/edge_48x48.png) | ![IE](https://raw.github.com/alrra/browser-logos/master/src/archive/internet-explorer_9-11/internet-explorer_9-11_48x48.png) |
| ---------------------------------------------------------------------------------------- | ------------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------- | ---------------------------------------------------------------------------------------------------------------------------- |
| 83.0 ✔ | 77.0 ✔ | 13.1.1 ✔ | 83.0 ✔ | 11.9 ✔ |

## Demo

[![](textNg.gif)](https://github.com/weblineindia/AngularJS-Text-Box/textNg.gif)

## Getting started

Install the npm package:

```bash
npm install angular-weblineindia-password-input
#OR
yarn add angular-weblineindia-password-input
```

## Usage

Use the `` component:

Add in app.module.ts file

```typescript
import { NgModule } from "@angular/core";
import { AngularWeblineindiaPasswordInputModule } from "angular-weblineindia-password-input";

@NgModule({
imports: [AngularWeblineindiaPasswordInputModule],
})
export class AppModule {}
```

Add in app.component.ts file

```typescript
export class AppComponent {
isInvalidPassword: boolean = false;
invalidMessage: string = "";

onFocus(event: any): void {}

onBlur(event: any): void {}

onChangeHandler(event: any): void {}

onKeyPressHandler(event: KeyboardEvent): void {}

onKeyDownHandler(event: KeyboardEvent): void {}

onKeyUpHandler(event: any): void {
console.log("event: ", event.target.value);
// Perform validation here based on the input value
// Update 'isInvalidPassword' and 'invalidMessage' accordingly
}
}
```

Add in app.component.html file

```html

```

Add in app.component.css file

```typescript
::ng-deep .passwordInput {
/* Add your custom styles here */
display: flex;
align-items: center;
border: 1px solid black;
width: 200px;
}

::ng-deep .inputClass {
/* Add your custom styles here */
border: none;
}

::ng-deep .eyeButton {
/* Add your custom styles here */
}

::ng-deep .errorMessage {
/* Add your custom styles here */
}

```

## Available Props

| Prop | Type | default | Description |
| ----------------- | ------- | ------- | ------------------------------------------------------ |
| placeholder | String | | The input field will get this placeholder text |
| showPassword | boolean | false | Indicates whether to show the password in plain text |
| required | boolean | false | If true, makes the input field mandatory. |
| disabled | boolean | false | If true, disables the input field. |
| passwordInput | string | | css class applied for inputbox and icon. |
| inputClass | string | | CSS class applied for pasword input. |
| eyeButton | string | | CSS class applied eye icon |
| errorClass | string | | CSS class applied when the password format is invalid. |
| isInvalidPassword | boolean | false | Indicates if the password is invalid |
| invalidMessage | String | | Message to display when the password is invalid |

## Methods

| Name | Description |
| -------- | ---------------------------------------------------------------- |
| focus | Gets triggered when the autocomplete input field receives focus. |
| blur | Gets triggered when the autocomplete input field loses focus. |
| KeyPress | Gets triggered when a key gets pressed. |
| KeyDown | Gets triggered when a key gets down. |
| KeyUp | Gets triggered when a key gets up. |

## Want to Contribute?

- Created something awesome, made this code better, added some functionality, or whatever (this is the hardest part).
- [Fork it](http://help.github.com/forking/).
- Create new branch to contribute your changes.
- Commit all your changes to your branch.
- Submit a [pull request](http://help.github.com/pull-requests/).

---

## Collection of Components

We have built many other components and free resources for software development in various programming languages. Kindly click here to view our [Free Resources for Software Development](https://www.weblineindia.com/software-development-resources.html)

---

## Changelog

Detailed changes for each release are documented in [CHANGELOG.md](./CHANGELOG.md).

## License

[MIT](LICENSE)

[mit]: https://github.com/weblineindia/AngularJS-Text-Box/blob/master/LICENSE

## Keywords

angular-weblineindia-text-box, textbox, input, angular, angular-component, textbox-component, textarea, text-box-input