open-index/open-npm huggingface dataset:
npm package: @joaopedrofortes/angular-rating
Description: Angular 18 lib for rating component
Latest version: 0.0.6

# angular-rating-lib
Angular 18 lib for rating component 

## Demo
<img src="./rating.gif">

## Installation
```sh
npm install @joaopedrofortes/angular-rating
```

## Usage
```javascript
import { AngularRatingLibComponent } from '@joaopedrofortes/angular-rating';

@Component({
  selector: 'app-root',
  standalone: true,
  imports: [AngularRatingLibComponent],
  templateUrl: './app.component.html',
  styleUrl: './app.component.scss'
})

```

## Example
```html
<!-- An example defining just the value directive. In this case, the component will render in star format -->
<app-rating [value]="star.classification">
  <ng-container label>
    Star Example:
  </ng-container>
</app-rating>


 <!-- An example defining the type and length. In this case, the component will render 10 options in heart format -->
<app-rating type="heart"
    [length]="10"
    [value]="heart.classification"
    (valueChange)="changeClassification($event)">
  <ng-container label>
    Heart Example:
  </ng-container>
</app-rating>


 <!-- An example defining the type and hexColor.
      In this case, the component will render 5 heart-shaped options.
      When the user chooses an option, the fill color will be 'deeppink'-->
<app-rating type="heart" [hexColor]="'#FF1493'">
  <ng-container label>
    Pink Heart Example :
  </ng-container>
</app-rating>
```

## Props
| Name      | Value         |
| --------- | ------------- |
| id: string       | number: defines the main id for component's options|
| type:Type     | defines the type of options between star and heart        |
| hexColor:string     | sets the fill color        |
| length:Limit     | sets the range of options between 5 and 10         |
| valueChange:Output     | emits an event with the rating value every time the user changes         |


## Keywords
Angular, lib, rating, star rating, heart rating, Angular18
npm package: @joaopedrogomes/nif-pt
Description: Validate and get more information from portuguese tax ID numbers 
Author: João Pedro Gomes
Latest version: 1.0.0

# @joaopedrogomes/nif-pt

Validate and get more information from portuguese tax ID numbers

## Understanding the NIF concept

The Portuguese tax system is really complex, so let's check some concepts first:

### What is a NIF?

NIF stands for _Número de Identificação Fiscal_, which translates to Tax ID Number.

### Who can get a NIF?

The **NIF is a unique ID** and can be attributed to individuals or to collective persons like companies, societies, etc., that **need to pay taxes in Portugal**. The number can be attributed to non-resident foreigners as well.

### Types of NIF: NIF and NIPC

There are two types of NIF, and the first two digits of the number define it:

- **Between 10 and 49**: NIF - individuals
- **Betweeen 50 and 99**: NIPC - collective

So, while colloquially the term NIF applies to all tax IDs, legally, the collective tax IDs are referred to as NIPC. The acronym NIPC stands for _Número de Identificação de Pessoa Colectiva_, which translates to Collective Person ID Number.


## Installation

```bash
npm install --save-dev @joaopedrogomes/nif-pt
```

## Usage

You can get all the information in an object with the NIF function (_nif_). However, if you only want to get one of the keys of the object, you can also call the desired function directly: _categorize_, _designate_, or _validate_.

### NIF - nif(value: string)

#### Usage

```js
import { nif } from '@joaopedrogomes/nif-pt';

const data = nif('123456789');
```

#### Return

```js
{
    category: string,
    designation: string,
    valid: boolean
}
```

| Category : string | Designation  : string| Valid : boolean |
|---|---|---|
| pessoa singular | NIF | true |
| pessoa colectiva | NIPC | false |
| administração pública | | |
| pessoa singular não residente | | |
| herança indivisa | | |
| pessoa colectiva não residente | | |
| fundos de investimento | | |
| atribuição oficiosa | | |
| regime excepcional | | |
| condominios e sociedades irregulares | | |
| não residentes | | |
| sociedades civis | | |

### Category only - categorize(value: string)

#### Usage

```js
import { categorize } from '@joaopedrogomes/nif-pt';

const data = nif('123456789');
```

#### Return

```js
string
```

### Designation only - designate(value: string)

#### Usage

```js
import { designate } from '@joaopedrogomes/nif-pt';

const data = nif('123456789');
```

#### Return

```js
string
```

### Valid only - validate(value: string)

#### Usage

```js
import { validate } from '@joaopedrogomes/nif-pt';

const data = nif('123456789');
```

#### Return

```js
boolean
```


## Credits

- [João Pedro Gomes](https://joaopedrogomes.dev)

## License

[MIT](./license)