
Security News
GitHub Actions Supply Chain Attack Puts Thousands of Projects at Risk
A compromised GitHub Action exposed secrets in CI/CD logs, putting thousands of projects at risk and forcing developers to urgently secure their workflows.
ngx-intl-tel-input
Advanced tools
[](#contributors)
An Angular package for entering and validating international telephone numbers. It adds a flag dropdown to any input, detects the user's country, displays a relevant placeholder and provides formatting/validation methods.
Compatibility:
Validation with google-libphonenumber
ngx-intl-tel-input | Angular | ngx-bootstrap |
---|---|---|
3.x.x | 9.x.x - 14.x.x | >= 6.0.0 |
2.x.x | 8.x.x - 9.1.x | 5.6.x |
$ npm install intl-tel-input@17.0.3 --save
$ npm install google-libphonenumber --save
$ ng add ngx-bootstrap
If you do not wish to use Bootstrap's global CSS, we now package the project with only the relevant
bootstrap styling needed for the dropdown. As such, you can remove the bootstrap styling from angular.json
.
Further, Angular CLI should tree-shake the rest of Ngx-Boostrap away if you don't utilize other dependencies from the bootstrap package. This should keep this dependency a lean feature-add
Add 'intl-tel-input' style file:
./node_modules/intl-tel-input/build/css/intlTelInput.css
to angular.json styles array:
"styles": [
"./node_modules/intl-tel-input/build/css/intlTelInput.css",
"src/styles.css"
],
$ npm install ngx-intl-tel-input --save
Add NgxIntlTelInputModule
to your module file:
imports: [NgxIntlTelInputModule];
Refer to main app in this repository for working example.
Or this:
<form #f="ngForm" [formGroup]="phoneForm">
<ngx-intl-tel-input
[cssClass]="'custom'"
[preferredCountries]="[CountryISO.UnitedStates, CountryISO.UnitedKingdom]"
[enableAutoCountrySelect]="false"
[enablePlaceholder]="true"
[searchCountryFlag]="true"
[searchCountryField]="[SearchCountryField.Iso2, SearchCountryField.Name]"
[selectFirstCountry]="false"
[selectedCountryISO]="CountryISO.India"
[maxLength]="15"
[phoneValidation]="true"
[inputId]="my-input-id"
name="phone"
formControlName="phone"
></ngx-intl-tel-input>
</form>
Options | Type | Default | Description |
---|---|---|---|
cssClass | string | control-form | Bootstrap input css class or your own custom one. |
preferredCountries | <CountryISO>[] | [] | List of countries, which will appear at the top. |
onlyCountries | <CountryISO>[] | [] | List of manually selected countries, which will appear in the dropdown. |
enableAutoCountrySelect | boolean | true | Toggle automatic country (flag) selection based on user input. |
enablePlaceholder | boolean | true | Input placeholder text, which adapts to the country selected. |
customPlaceholder | string | None | Custom string to be inserted as a placeholder. |
numberFormat | <PhoneNumberFormat> | PhoneNumberFormat.International | Custom string to be inserted as a placeholder. |
searchCountryFlag | boolean | false | Enables input search box for countries in the flag dropdown. |
searchCountryField | <SearchCountryField>[] | [SearchCountryField.All] | Customize which fields to search in, if searchCountryFlag is enabled. Use SearchCountryField helper enum. |
searchCountryPlaceholder | string | 'Search Country' | Placeholder value for searchCountryField |
maxLength | number | None | Add character limit. |
selectFirstCountry | boolean | true | Selects first country from preferredCountries if is set. If not then uses main list. |
phoneValidation | boolean | true | Disable phone validation. |
inputId | string | phone | Unique ID for <input> element. |
selectedCountryISO | <CountryISO> | None | Set specific country on load. |
separateDialCode | boolean | false | Visually separate dialcode into the drop down element. |
countryChange | <Country> | None | Emits country value when the user selects a country from the dropdown. |
Following formats are supported
./projects/ngx-intl-tel-input
./src/app
with new functionality.$ npm run build_lib
$ npm run copy-files
$ npm run npm_pack
$ npm run package
After building and creating package, you can use it locally too.
In your project run:
$ npm install --save {{path to your local '*.tgz' package file}}
Thanks goes to these wonderful people (emoji key):
This project follows the all-contributors specification. Contributions of any kind welcome!
FAQs
[](https://github.com/webcat12345/ngx-intl-tel-input/actions/workflows/ci.yml) [![GitHub Pages](https://img.shields.io/badge/Demo-blue?logo=
The npm package ngx-intl-tel-input receives a total of 17,393 weekly downloads. As such, ngx-intl-tel-input popularity was classified as popular.
We found that ngx-intl-tel-input demonstrated a healthy version release cadence and project activity because the last version was released less than a year ago. It has 0 open source maintainers collaborating on the project.
Did you know?
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.
Security News
A compromised GitHub Action exposed secrets in CI/CD logs, putting thousands of projects at risk and forcing developers to urgently secure their workflows.
Research
Security News
A malicious Maven package typosquatting a popular library is secretly stealing OAuth credentials on the 15th of each month, putting Java developers at risk.
Security News
Socket and Seal Security collaborate to fix a critical npm overrides bug, resolving a three-year security issue in the JavaScript ecosystem's most popular package manager.