@optima-lib/phone-utils
TypeScript icon, indicating that this package has built-in type declarations

13.0.0 • Public • Published

OptimaLib Phone Utils

This an Angular library (and can be used with Angular projects only).

It uses libphonenumber-js to provide developers with the angular way of formatting and validating phone numbers.

Versions grid

Angular OptimaLib
13.x 13.x

Install

npm install --save @optima-lib/phone-utils

OptimaPhoneUtilsService

Usage

import { OptimaPhoneUtilsService } from '@optima-lib/phone-utils';

// Inject in your component or service:
constructor(private phoneUtils: OptimaPhoneUtilsService) { }

Methods

  • getInternational(value: string, country: string): string - Transform a given phone number to international format

    Param Description
    value Phone numer
    country Two-letters country code
  • getNational(value: string, country: string): string - Transform a given phone number to its national format

    Param Description
    value Phone numer
    country Two-letters country code
  • getPlain(value: string, country: string): string - International format without inner spaces (PNF.E164)

    Param Description
    value Phone numer
    country Two-letters country code
  • isValid(value: string, country: string): boolean - General purpose validator. Use in conjunction with other services and components. The method will return true when arguments relates to a phone number from the selected country.

    Param Description
    value Phone numer
    country Two-letters country code
  • isValidFormControl(country: string): boolean - Reactive form validator. It will set phoneInvalid property in related form control error's object.

    Param Description
    country Two-letters country code.

    Usage:

// app.component.ts
constructor(public phoneValidatorService: OptimaPhoneValidatorService) { }

public getForm() {
  this.form = new FormGroup({
    phone: new FormControl('', [
      Validators.required,
      this.phoneValidatorService.isValidPhone('BG')
    ])
  });
}

// app.component.html
<span *ngIf="form.get('phone')?.errors?.phoneInvalid">{{ 'FORM.ERROR.PHONE_FORMAT.INVALID' | translate }}</span>

OptimaInternationalFormatPipe

Usage

Import OptimaPhoneUtilsModule in the module where you want to use it:

import { OptimaPhoneUtilsModule } from '@optima-lib/phone-utils';


@NgModule({
  imports: [
    ...,
    OptimaPhoneUtilsModule
  ]
})
export class UserModule() { }

And then it can be used as:

{{ '02 1234567' | internationalFormat : 'BG' }}

which will produce:

+359 2 123 4567

OptimaNationalFormatPipe

Usage

Import OptimaPhoneUtilsModule in the module where you want to use it:

import { OptimaPhoneUtilsModule } from '@optima-lib/phone-utils';


@NgModule({
  imports: [
    ...,
    OptimaPhoneUtilsModule
  ]
})
export class UserModule() { }

And then it can be used as:

{{ '02 1234567' | nationalFormat : 'BG' }}

which will produce:

02 123 4567

Package Sidebar

Install

npm i @optima-lib/phone-utils

Weekly Downloads

0

Version

13.0.0

License

MIT

Unpacked Size

53.4 kB

Total Files

18

Last publish

Collaborators

  • vmanchev