ngx-mat-input-tel 20.2.1 → 20.3.0

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/README.md CHANGED
@@ -1,4 +1,5 @@
1
1
  # International Telephone Input for Angular Material (ngxMatInputTel)
2
+
2
3
  An Angular Material 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.
3
4
 
4
5
  [![npm version](https://img.shields.io/npm/v/ngx-mat-input-tel.svg)](https://www.npmjs.com/package/ngx-mat-input-tel)
@@ -7,18 +8,20 @@ An Angular Material package for entering and validating international telephone
7
8
  ![npm](https://img.shields.io/npm/dm/ngx-mat-input-tel)
8
9
 
9
10
  ## Demo
11
+
10
12
  - https://stackblitz.com/~/github.com/rbalet/ngx-mat-input-tel
11
13
 
12
14
  ## Caution
15
+
13
16
  This is a fork from the [ngx-mat-intl-tel-input](https://github.com/tanansatpal/ngx-mat-intl-tel-input) library whish does not seems to be maintained anymore. _Last commit is over a year_
14
17
 
15
18
  **Supports:**
16
19
 
17
- | Angular | ngx-mat-input-tel |
18
- | ------- | ----------------- |
19
- | >= 18 | >= 19.2.0 |
20
- | >= 15 | < 19.2.0 |
21
-
20
+ | Angular | ngx-mat-input-tel |
21
+ | ------- | ----------------- |
22
+ | >= 18 | >= 19.2.0 |
23
+ | >= 15 | < 19.2.0 |
24
+
22
25
  - Validation with [libphonenumber-js](https://github.com/catamphetamine/libphonenumber-js)
23
26
 
24
27
  ## Installation
@@ -38,7 +41,7 @@ This is a fork from the [ngx-mat-intl-tel-input](https://github.com/tanansatpal/
38
41
  Add `NgxMatInputTelComponent` to your component file:
39
42
 
40
43
  ```ts
41
- imports: [NgxMatInputTelComponent];
44
+ imports: [NgxMatInputTelComponent]
42
45
  ```
43
46
 
44
47
  ## Example
@@ -87,9 +90,7 @@ If you want to show the sample number for the country selected or errors , use m
87
90
  #phone
88
91
  ></ngx-mat-input-tel>
89
92
  <mat-hint>e.g. {{phone.selectedCountry.placeHolder}}</mat-hint>
90
- <mat-error *ngIf="f.form.controls['phone']?.errors?.required"
91
- >Required Field</mat-error
92
- >
93
+ <mat-error *ngIf="f.form.controls['phone']?.errors?.required">Required Field</mat-error>
93
94
  <mat-error *ngIf="f.form.controls['phone']?.errors?.validatePhoneNumber"
94
95
  >Invalid Number</mat-error
95
96
  >
@@ -98,29 +99,31 @@ If you want to show the sample number for the country selected or errors , use m
98
99
 
99
100
  ## Inputs
100
101
 
101
- | Options | Type | Default | Description |
102
- | ------------------ | --------------------------- | ------------ | ----------------------------------------------------------------------------------- |
103
- | autocomplete | `off` \| `tel` | `off` | For input autocompletion |
104
- | cssClass | `string` | `undefined` | If input custom class are needed |
105
- | defaultCountry | `CountryCode` | `undefined` | Default country code |
106
- | enablePlaceholder | `boolean` | `false` | Input placeholder text, which adapts to the country selected. |
107
- | enableSearch | `boolean` | `false` | Whether to display a search bar to help filter down the list of countries |
108
- | format | `string` **** | `default` | Format of "as you type" input. Possible values: national, international, default |
109
- | placeholder | `string` | `undefined` | Placeholder for the input component. |
110
- | maxLength | `number` | `15` | max length of the input. |
111
- | onlyCountries | `string[]` | `[]` | List of manually selected country abbreviations, which will appear in the dropdown. |
112
- | preferredCountries | `string[]` | `[]` | List of country abbreviations, which will appear at the top. |
113
- | resetOnChange | `boolean` | `false` | Reset input on country change |
114
- | searchPlaceholder | `string` | `Search ...` | Placeholder for the search input |
115
- | validation | `isPossible` \| `isValid` | `isValid` | Change the validation type |
116
-
102
+ | Options | Type | Default | Description |
103
+ | ------------------ | ------------------------- | ---------------- | ----------------------------------------------------------------------------------- |
104
+ | autocomplete | `off` \| `tel` | `off` | For input autocompletion |
105
+ | ariaLabel | `string` | `Select country` | Aria label for the country selector button |
106
+ | cssClass | `string` | `undefined` | If input custom class are needed |
107
+ | defaultCountry | `CountryCode` | `undefined` | Default country code |
108
+ | enablePlaceholder | `boolean` | `false` | Input placeholder text, which adapts to the country selected. |
109
+ | enableSearch | `boolean` | `false` | Whether to display a search bar to help filter down the list of countries |
110
+ | format | `string` \*\*\*\* | `default` | Format of "as you type" input. Possible values: national, international, default |
111
+ | placeholder | `string` | `undefined` | Placeholder for the input component. |
112
+ | maxLength | `number` | `15` | max length of the input. |
113
+ | onlyCountries | `string[]` | `[]` | List of manually selected country abbreviations, which will appear in the dropdown. |
114
+ | preferredCountries | `string[]` | `[]` | List of country abbreviations, which will appear at the top. |
115
+ | resetOnChange | `boolean` | `false` | Reset input on country change |
116
+ | searchPlaceholder | `string` | `Search ...` | Placeholder for the search input |
117
+ | validation | `isPossible` \| `isValid` | `isValid` | Change the validation type |
117
118
 
118
119
  ## Outputs
120
+
119
121
  | Options | Type | Default | Description |
120
122
  | -------------- | ----------------------- | ----------- | ----------------- |
121
123
  | countryChanged | `EventEmitter<Country>` | `undefined` | On country change |
122
124
 
123
125
  ## Css variable
126
+
124
127
  | Name | Default | Explanation |
125
128
  | -------------------------------------- | -------------- | ----------------------------------------------------------------------------- |
126
129
  | `--ngxMatInputTel-opacity` | `0` | If you wish both, the country flag and the placeholder to be shown by default |
@@ -130,14 +133,13 @@ If you want to show the sample number for the country selected or errors , use m
130
133
  | `--ngxMatInputTel-menu-flag-display` | `inline-block` | If you wish to hide the country flag inside the menu only |
131
134
 
132
135
  ## Validator
136
+
133
137
  In case you had to manually remove the validator, the library exported it so you could add it back again.
134
138
 
135
139
  | Name | Description | Example |
136
140
  | ------------------------- | ----------------------------------------------- | ------------------------------------------------------ |
137
141
  | `ngxMatInputTelValidator` | The actual phone validator used for the control | `phoneControl.addValidators([ngxMatInputTlValidator])` |
138
142
 
139
-
140
-
141
143
  ## Library Contributions
142
144
 
143
145
  - Fork repo.
@@ -162,14 +164,15 @@ In your project run:
162
164
  `$ npm install --save {{path to your local '*.tgz' package file}}`
163
165
 
164
166
  ## Authors and acknowledgment
165
- * maintainer [Raphaël Balet](https://github.com/rbalet)
166
- * Forked from [ngx-mat-intl-tel-input](https://github.com/tanansatpal/ngx-mat-intl-tel-input)
167
+
168
+ - maintainer [Raphaël Balet](https://github.com/rbalet)
169
+ - Forked from [ngx-mat-intl-tel-input](https://github.com/tanansatpal/ngx-mat-intl-tel-input)
167
170
 
168
171
  ### Contributors
172
+
169
173
  Contributions are welcome! See our [contribution notes](CONTRIBUTING.md).
170
174
 
171
175
  [<img alt="Contributor rbalet" src="https://avatars.githubusercontent.com/u/44493964?v=4&size=128" width=64>](https://github.com/rbalet)
172
176
  [<img alt="Contributor ChristianLoosliVGT" src="https://avatars.githubusercontent.com/u/126682673?v=4&size=128" width=64>](https://github.com/ChristianLoosliVGT)
173
177
 
174
-
175
178
  [![BuyMeACoffee](https://www.buymeacoffee.com/assets/img/custom_images/purple_img.png)](https://www.buymeacoffee.com/widness)
@@ -611,6 +611,7 @@ const ngxMatInputTelValidator = (control) => {
611
611
  numberInstance = parsePhoneNumber(control.value);
612
612
  }
613
613
  catch (e) {
614
+ console.error(e);
614
615
  return error;
615
616
  }
616
617
  if (numberInstance && !numberInstance.isValid()) {
@@ -670,6 +671,7 @@ class NgxMatInputTelComponent extends ngxMatInputTelBase {
670
671
  return this.focused || !this.empty;
671
672
  }
672
673
  autocomplete = 'off';
674
+ ariaLabel = 'Select country';
673
675
  cssClass;
674
676
  defaultCountry;
675
677
  errorStateMatcher = this._defaultErrorStateMatcher;
@@ -815,7 +817,7 @@ class NgxMatInputTelComponent extends ngxMatInputTelBase {
815
817
  try {
816
818
  this._setCountry();
817
819
  }
818
- catch (e) {
820
+ catch {
819
821
  // Pass a value to trigger the validator error
820
822
  this.value = this.formattedPhoneNumber().toString();
821
823
  }
@@ -991,15 +993,20 @@ class NgxMatInputTelComponent extends ngxMatInputTelBase {
991
993
  }
992
994
  this._previousFormattedNumber = this.phoneNumber.toString();
993
995
  }
996
+ onSearchInputChange() {
997
+ setTimeout(() => {
998
+ this.menuSearchInput?.nativeElement.focus();
999
+ }, 200);
1000
+ }
994
1001
  static ɵfac = i0.ɵɵngDeclareFactory({ minVersion: "12.0.0", version: "20.1.0", ngImport: i0, type: NgxMatInputTelComponent, deps: [{ token: i0.ChangeDetectorRef }, { token: i1.FocusMonitor }, { token: i0.ElementRef }, { token: i2.NgControl, optional: true, self: true }, { token: i2.NgForm, optional: true }, { token: i2.FormGroupDirective, optional: true }, { token: i3.ErrorStateMatcher }], target: i0.ɵɵFactoryTarget.Component });
995
- static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.0", type: NgxMatInputTelComponent, isStandalone: true, selector: "ngx-mat-input-tel", inputs: { autocomplete: "autocomplete", cssClass: "cssClass", defaultCountry: "defaultCountry", errorStateMatcher: "errorStateMatcher", maxLength: "maxLength", name: "name", placeholder: "placeholder", preferredCountries: "preferredCountries", onlyCountries: "onlyCountries", searchPlaceholder: "searchPlaceholder", validation: "validation", enablePlaceholder: ["enablePlaceholder", "enablePlaceholder", booleanAttribute], enableSearch: ["enableSearch", "enableSearch", booleanAttribute], resetOnChange: ["resetOnChange", "resetOnChange", booleanAttribute], format: "format", required: ["required", "required", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { countryChanged: "countryChanged" }, host: { properties: { "id": "this.id", "class.ngx-floating": "this.shouldLabelFloat" } }, providers: [
1002
+ static ɵcmp = i0.ɵɵngDeclareComponent({ minVersion: "17.0.0", version: "20.1.0", type: NgxMatInputTelComponent, isStandalone: true, selector: "ngx-mat-input-tel", inputs: { autocomplete: "autocomplete", ariaLabel: "ariaLabel", cssClass: "cssClass", defaultCountry: "defaultCountry", errorStateMatcher: "errorStateMatcher", maxLength: "maxLength", name: "name", placeholder: "placeholder", preferredCountries: "preferredCountries", onlyCountries: "onlyCountries", searchPlaceholder: "searchPlaceholder", validation: "validation", enablePlaceholder: ["enablePlaceholder", "enablePlaceholder", booleanAttribute], enableSearch: ["enableSearch", "enableSearch", booleanAttribute], resetOnChange: ["resetOnChange", "resetOnChange", booleanAttribute], format: "format", required: ["required", "required", booleanAttribute], disabled: ["disabled", "disabled", booleanAttribute] }, outputs: { countryChanged: "countryChanged" }, host: { properties: { "id": "this.id", "class.ngx-floating": "this.shouldLabelFloat" } }, providers: [
996
1003
  { provide: MatFormFieldControl, useExisting: NgxMatInputTelComponent },
997
1004
  {
998
1005
  provide: NG_VALIDATORS,
999
1006
  useValue: ngxMatInputTelValidator,
1000
1007
  multi: true,
1001
1008
  },
1002
- ], viewQueries: [{ propertyName: "matMenu", first: true, predicate: MatMenu, descendants: true }, { propertyName: "menuSearchInput", first: true, predicate: ["menuSearchInput"], descendants: true }, { propertyName: "focusable", first: true, predicate: ["focusable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ngx-mat-input-tel-container\">\n <button\n type=\"button\"\n matRipple\n [matMenuTriggerFor]=\"menu\"\n class=\"country-selector\"\n [disabled]=\"disabled\"\n (menuOpened)=\"onMenuOpened()\"\n >\n <ngx-mat-input-tel-flag\n class=\"main-flag\"\n [country]=\"{\n flagClass: $selectedCountry().flagClass,\n dialCode: $selectedCountry().dialCode,\n }\"\n ></ngx-mat-input-tel-flag>\n </button>\n\n <mat-menu\n #menu=\"matMenu\"\n class=\"ngx-mat-input-tel-overlay-pane\"\n [backdropClass]=\"'ngx-mat-input-tel-overlay-backdrop'\"\n >\n @if (enableSearch) {\n <input\n #menuSearchInput\n class=\"country-search\"\n [(ngModel)]=\"searchCriteria\"\n type=\"text\"\n [placeholder]=\"searchPlaceholder\"\n (click)=\"$event.stopPropagation()\"\n style=\"\n width: calc(100% - 4px);\n height: 34px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgb(221, 221, 221);\n font-size: 14px;\n padding: 20px 10px 24px;\n box-sizing: border-box;\n background: transparent;\n margin: 2px;\n \"\n />\n }\n @for (country of $preferredCountriesInDropDown(); track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n @if ($preferredCountriesInDropDown().length) {\n <mat-divider></mat-divider>\n }\n @for (country of $availableCountries() | search: searchCriteria; track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n </mat-menu>\n\n <input\n class=\"ngx-mat-input-tel-input\"\n matInput\n type=\"tel\"\n inputmode=\"tel\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"cssClass\"\n (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\"\n [(ngModel)]=\"phoneNumber\"\n (ngModelChange)=\"onPhoneNumberChange()\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [placeholder]=\"placeholder || $selectedCountry().placeHolder || ''\"\n [disabled]=\"disabled\"\n #focusable\n [maxlength]=\"maxLength\"\n />\n</div>\n", styles: [":host.ngx-floating .country-selector,:host.ngx-floating input.ngx-mat-input-tel-input::placeholder{opacity:1}:host .ngx-mat-input-tel-container{display:flex;height:var(--ngxMatInputTel-height, 24px)}:host input{border:none;background:none;outline:none;font:inherit;width:100%;box-sizing:border-box;padding-right:6px;padding-left:4px;position:relative;z-index:0}:host input.ngx-mat-input-tel-input::placeholder{opacity:var(--ngxMatInputTel-placeholder-opacity, var(--ngxMatInputTel-opacity, 0))}:host .mdc-button__label{margin-right:auto}:host .dialCode-text{white-space:nowrap}:host .country-selector{display:flex;align-items:center;border-radius:0;flex-shrink:0;height:initial;line-height:unset;padding:1px;opacity:var(--ngxMatInputTel-selector-opacity, var(--ngxMatInputTel-opacity, 0));transition:opacity .2s;border:unset;background-color:transparent;font-size:inherit;font-weight:inherit;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAQAAAD8x0bcAAAAIUlEQVQoz2NgGAUkgtKG0v9IsIGwsgbCpjUQtrRhZAUzAB5rGRmoZRO5AAAAAElFTkSuQmCC);background-position:right center;background-repeat:no-repeat;background-size:18px auto}:host .country-selector:disabled{color:#00000061}:host .country-selector-code{color:var(--mdc-outlined-text-field-input-text-color);padding-right:18px}:host .country-list-button{color:#000000de;direction:ltr;font-size:16px;font-weight:400;height:initial;line-height:normal;min-height:48px;padding:14px 24px;text-align:left;text-transform:none;width:100%}:host .main-flag{padding-right:20px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type:
1009
+ ], viewQueries: [{ propertyName: "matMenu", first: true, predicate: MatMenu, descendants: true }, { propertyName: "menuSearchInput", first: true, predicate: ["menuSearchInput"], descendants: true }, { propertyName: "focusable", first: true, predicate: ["focusable"], descendants: true }], usesInheritance: true, ngImport: i0, template: "<div class=\"ngx-mat-input-tel-container\">\n <button\n type=\"button\"\n matRipple\n [matMenuTriggerFor]=\"menu\"\n class=\"country-selector\"\n [disabled]=\"disabled\"\n (menuOpened)=\"onMenuOpened()\"\n [attr.aria-label]=\"ariaLabel\"\n >\n <ngx-mat-input-tel-flag\n class=\"main-flag\"\n [country]=\"{\n flagClass: $selectedCountry().flagClass,\n dialCode: $selectedCountry().dialCode,\n }\"\n ></ngx-mat-input-tel-flag>\n </button>\n\n <mat-menu\n #menu=\"matMenu\"\n class=\"ngx-mat-input-tel-overlay-pane\"\n [backdropClass]=\"'ngx-mat-input-tel-overlay-backdrop'\"\n >\n @if (enableSearch) {\n <input\n #menuSearchInput\n class=\"country-search\"\n [(ngModel)]=\"searchCriteria\"\n type=\"text\"\n [placeholder]=\"searchPlaceholder\"\n (click)=\"$event.stopPropagation()\"\n style=\"\n width: calc(100% - 4px);\n height: 34px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgb(221, 221, 221);\n font-size: 14px;\n padding: 20px 10px 24px;\n box-sizing: border-box;\n background: transparent;\n margin: 2px;\n \"\n />\n }\n @for (country of $preferredCountriesInDropDown(); track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n @if ($preferredCountriesInDropDown().length) {\n <mat-divider></mat-divider>\n }\n @for (country of $availableCountries() | search: searchCriteria; track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n </mat-menu>\n\n <input\n class=\"ngx-mat-input-tel-input\"\n matInput\n type=\"tel\"\n inputmode=\"tel\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"cssClass\"\n (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\"\n [(ngModel)]=\"phoneNumber\"\n (ngModelChange)=\"onPhoneNumberChange()\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [placeholder]=\"placeholder || $selectedCountry().placeHolder || ''\"\n [disabled]=\"disabled\"\n #focusable\n [maxlength]=\"maxLength\"\n />\n</div>\n", styles: [":host.ngx-floating .country-selector,:host.ngx-floating input.ngx-mat-input-tel-input::placeholder{opacity:1}:host .ngx-mat-input-tel-container{display:flex;height:var(--ngxMatInputTel-height, 24px)}:host input{border:none;background:none;outline:none;font:inherit;width:100%;box-sizing:border-box;padding-right:6px;padding-left:4px;position:relative;z-index:0}:host input.ngx-mat-input-tel-input::placeholder{opacity:var(--ngxMatInputTel-placeholder-opacity, var(--ngxMatInputTel-opacity, 0))}:host .mdc-button__label{margin-right:auto}:host .dialCode-text{white-space:nowrap}:host .country-selector{display:flex;align-items:center;border-radius:0;flex-shrink:0;height:initial;line-height:unset;padding:1px;opacity:var(--ngxMatInputTel-selector-opacity, var(--ngxMatInputTel-opacity, 0));transition:opacity .2s;border:unset;background-color:transparent;font-size:inherit;font-weight:inherit;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAQAAAD8x0bcAAAAIUlEQVQoz2NgGAUkgtKG0v9IsIGwsgbCpjUQtrRhZAUzAB5rGRmoZRO5AAAAAElFTkSuQmCC);background-position:right center;background-repeat:no-repeat;background-size:18px auto}:host .country-selector:disabled{color:#00000061}:host .country-selector-code{color:var(--mdc-outlined-text-field-input-text-color);padding-right:18px}:host .country-list-button{color:#000000de;direction:ltr;font-size:16px;font-weight:400;height:initial;line-height:normal;min-height:48px;padding:14px 24px;text-align:left;text-transform:none;width:100%}:host .main-flag{padding-right:20px}\n"], dependencies: [{ kind: "directive", type: NgClass, selector: "[ngClass]", inputs: ["class", "ngClass"] }, { kind: "ngmodule", type:
1003
1010
  // Forms
1004
1011
  FormsModule }, { kind: "directive", type: i2.DefaultValueAccessor, selector: "input:not([type=checkbox])[formControlName],textarea[formControlName],input:not([type=checkbox])[formControl],textarea[formControl],input:not([type=checkbox])[ngModel],textarea[ngModel],[ngDefaultControl]" }, { kind: "directive", type: i2.NgControlStatus, selector: "[formControlName],[ngModel],[formControl]" }, { kind: "directive", type: i2.MaxLengthValidator, selector: "[maxlength][formControlName],[maxlength][formControl],[maxlength][ngModel]", inputs: ["maxlength"] }, { kind: "directive", type: i2.NgModel, selector: "[ngModel]:not([formControlName]):not([formControl])", inputs: ["name", "disabled", "ngModel", "ngModelOptions"], outputs: ["ngModelChange"], exportAs: ["ngModel"] }, { kind: "ngmodule", type: ReactiveFormsModule }, { kind: "ngmodule", type: MatInputModule }, { kind: "directive", type: i4.MatInput, selector: "input[matInput], textarea[matInput], select[matNativeControl], input[matNativeControl], textarea[matNativeControl]", inputs: ["disabled", "id", "placeholder", "name", "required", "type", "errorStateMatcher", "aria-describedby", "value", "readonly", "disabledInteractive"], exportAs: ["matInput"] }, { kind: "ngmodule", type:
1005
1012
  // Mat
@@ -1032,7 +1039,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImpor
1032
1039
  NgxMatInputTelFlagComponent,
1033
1040
  // Pipes
1034
1041
  SearchPipe,
1035
- ], template: "<div class=\"ngx-mat-input-tel-container\">\n <button\n type=\"button\"\n matRipple\n [matMenuTriggerFor]=\"menu\"\n class=\"country-selector\"\n [disabled]=\"disabled\"\n (menuOpened)=\"onMenuOpened()\"\n >\n <ngx-mat-input-tel-flag\n class=\"main-flag\"\n [country]=\"{\n flagClass: $selectedCountry().flagClass,\n dialCode: $selectedCountry().dialCode,\n }\"\n ></ngx-mat-input-tel-flag>\n </button>\n\n <mat-menu\n #menu=\"matMenu\"\n class=\"ngx-mat-input-tel-overlay-pane\"\n [backdropClass]=\"'ngx-mat-input-tel-overlay-backdrop'\"\n >\n @if (enableSearch) {\n <input\n #menuSearchInput\n class=\"country-search\"\n [(ngModel)]=\"searchCriteria\"\n type=\"text\"\n [placeholder]=\"searchPlaceholder\"\n (click)=\"$event.stopPropagation()\"\n style=\"\n width: calc(100% - 4px);\n height: 34px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgb(221, 221, 221);\n font-size: 14px;\n padding: 20px 10px 24px;\n box-sizing: border-box;\n background: transparent;\n margin: 2px;\n \"\n />\n }\n @for (country of $preferredCountriesInDropDown(); track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n @if ($preferredCountriesInDropDown().length) {\n <mat-divider></mat-divider>\n }\n @for (country of $availableCountries() | search: searchCriteria; track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n </mat-menu>\n\n <input\n class=\"ngx-mat-input-tel-input\"\n matInput\n type=\"tel\"\n inputmode=\"tel\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"cssClass\"\n (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\"\n [(ngModel)]=\"phoneNumber\"\n (ngModelChange)=\"onPhoneNumberChange()\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [placeholder]=\"placeholder || $selectedCountry().placeHolder || ''\"\n [disabled]=\"disabled\"\n #focusable\n [maxlength]=\"maxLength\"\n />\n</div>\n", styles: [":host.ngx-floating .country-selector,:host.ngx-floating input.ngx-mat-input-tel-input::placeholder{opacity:1}:host .ngx-mat-input-tel-container{display:flex;height:var(--ngxMatInputTel-height, 24px)}:host input{border:none;background:none;outline:none;font:inherit;width:100%;box-sizing:border-box;padding-right:6px;padding-left:4px;position:relative;z-index:0}:host input.ngx-mat-input-tel-input::placeholder{opacity:var(--ngxMatInputTel-placeholder-opacity, var(--ngxMatInputTel-opacity, 0))}:host .mdc-button__label{margin-right:auto}:host .dialCode-text{white-space:nowrap}:host .country-selector{display:flex;align-items:center;border-radius:0;flex-shrink:0;height:initial;line-height:unset;padding:1px;opacity:var(--ngxMatInputTel-selector-opacity, var(--ngxMatInputTel-opacity, 0));transition:opacity .2s;border:unset;background-color:transparent;font-size:inherit;font-weight:inherit;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAQAAAD8x0bcAAAAIUlEQVQoz2NgGAUkgtKG0v9IsIGwsgbCpjUQtrRhZAUzAB5rGRmoZRO5AAAAAElFTkSuQmCC);background-position:right center;background-repeat:no-repeat;background-size:18px auto}:host .country-selector:disabled{color:#00000061}:host .country-selector-code{color:var(--mdc-outlined-text-field-input-text-color);padding-right:18px}:host .country-list-button{color:#000000de;direction:ltr;font-size:16px;font-weight:400;height:initial;line-height:normal;min-height:48px;padding:14px 24px;text-align:left;text-transform:none;width:100%}:host .main-flag{padding-right:20px}\n"] }]
1042
+ ], template: "<div class=\"ngx-mat-input-tel-container\">\n <button\n type=\"button\"\n matRipple\n [matMenuTriggerFor]=\"menu\"\n class=\"country-selector\"\n [disabled]=\"disabled\"\n (menuOpened)=\"onMenuOpened()\"\n [attr.aria-label]=\"ariaLabel\"\n >\n <ngx-mat-input-tel-flag\n class=\"main-flag\"\n [country]=\"{\n flagClass: $selectedCountry().flagClass,\n dialCode: $selectedCountry().dialCode,\n }\"\n ></ngx-mat-input-tel-flag>\n </button>\n\n <mat-menu\n #menu=\"matMenu\"\n class=\"ngx-mat-input-tel-overlay-pane\"\n [backdropClass]=\"'ngx-mat-input-tel-overlay-backdrop'\"\n >\n @if (enableSearch) {\n <input\n #menuSearchInput\n class=\"country-search\"\n [(ngModel)]=\"searchCriteria\"\n type=\"text\"\n [placeholder]=\"searchPlaceholder\"\n (click)=\"$event.stopPropagation()\"\n style=\"\n width: calc(100% - 4px);\n height: 34px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgb(221, 221, 221);\n font-size: 14px;\n padding: 20px 10px 24px;\n box-sizing: border-box;\n background: transparent;\n margin: 2px;\n \"\n />\n }\n @for (country of $preferredCountriesInDropDown(); track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n @if ($preferredCountriesInDropDown().length) {\n <mat-divider></mat-divider>\n }\n @for (country of $availableCountries() | search: searchCriteria; track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n </mat-menu>\n\n <input\n class=\"ngx-mat-input-tel-input\"\n matInput\n type=\"tel\"\n inputmode=\"tel\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"cssClass\"\n (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\"\n [(ngModel)]=\"phoneNumber\"\n (ngModelChange)=\"onPhoneNumberChange()\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [placeholder]=\"placeholder || $selectedCountry().placeHolder || ''\"\n [disabled]=\"disabled\"\n #focusable\n [maxlength]=\"maxLength\"\n />\n</div>\n", styles: [":host.ngx-floating .country-selector,:host.ngx-floating input.ngx-mat-input-tel-input::placeholder{opacity:1}:host .ngx-mat-input-tel-container{display:flex;height:var(--ngxMatInputTel-height, 24px)}:host input{border:none;background:none;outline:none;font:inherit;width:100%;box-sizing:border-box;padding-right:6px;padding-left:4px;position:relative;z-index:0}:host input.ngx-mat-input-tel-input::placeholder{opacity:var(--ngxMatInputTel-placeholder-opacity, var(--ngxMatInputTel-opacity, 0))}:host .mdc-button__label{margin-right:auto}:host .dialCode-text{white-space:nowrap}:host .country-selector{display:flex;align-items:center;border-radius:0;flex-shrink:0;height:initial;line-height:unset;padding:1px;opacity:var(--ngxMatInputTel-selector-opacity, var(--ngxMatInputTel-opacity, 0));transition:opacity .2s;border:unset;background-color:transparent;font-size:inherit;font-weight:inherit;background-image:url(data:image/png;base64,iVBORw0KGgoAAAANSUhEUgAAABIAAAASCAQAAAD8x0bcAAAAIUlEQVQoz2NgGAUkgtKG0v9IsIGwsgbCpjUQtrRhZAUzAB5rGRmoZRO5AAAAAElFTkSuQmCC);background-position:right center;background-repeat:no-repeat;background-size:18px auto}:host .country-selector:disabled{color:#00000061}:host .country-selector-code{color:var(--mdc-outlined-text-field-input-text-color);padding-right:18px}:host .country-list-button{color:#000000de;direction:ltr;font-size:16px;font-weight:400;height:initial;line-height:normal;min-height:48px;padding:14px 24px;text-align:left;text-transform:none;width:100%}:host .main-flag{padding-right:20px}\n"] }]
1036
1043
  }], ctorParameters: () => [{ type: i0.ChangeDetectorRef }, { type: i1.FocusMonitor }, { type: i0.ElementRef }, { type: i2.NgControl, decorators: [{
1037
1044
  type: Optional
1038
1045
  }, {
@@ -1057,6 +1064,8 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImpor
1057
1064
  args: ['class.ngx-floating']
1058
1065
  }], autocomplete: [{
1059
1066
  type: Input
1067
+ }], ariaLabel: [{
1068
+ type: Input
1060
1069
  }], cssClass: [{
1061
1070
  type: Input
1062
1071
  }], defaultCountry: [{
@@ -1093,7 +1102,7 @@ i0.ɵɵngDeclareClassMetadata({ minVersion: "12.0.0", version: "20.1.0", ngImpor
1093
1102
  args: [{ transform: booleanAttribute }]
1094
1103
  }], disabled: [{
1095
1104
  type: Input,
1096
- args: [{ alias: 'disabled', transform: booleanAttribute }]
1105
+ args: [{ transform: booleanAttribute }]
1097
1106
  }], countryChanged: [{
1098
1107
  type: Output
1099
1108
  }] } });
@@ -1 +1 @@
1
- {"version":3,"file":"ngx-mat-input-tel.mjs","sources":["../../../projects/ngx-mat-input-tel/src/lib/data/country-code.const.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel-flag/ngx-mat-input-tel-flag.component.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel.validator.ts","../../../projects/ngx-mat-input-tel/src/lib/search.pipe.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel.component.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel.component.html","../../../projects/ngx-mat-input-tel/src/public-api.ts","../../../projects/ngx-mat-input-tel/src/ngx-mat-input-tel.ts"],"sourcesContent":["export const ALL_COUNTRIES = [\n // 'name', 'iso2', 'dialCode', 'priority', 'areaCodes'\n ['Afghanistan (‫افغانستان‬‎)', 'af', '93'],\n ['Albania (Shqipëri)', 'al', '355'],\n ['Algeria (‫الجزائر‬‎)', 'dz', '213'],\n ['American Samoa', 'as', '1', 4, ['684']],\n ['Andorra', 'ad', '376'],\n ['Angola', 'ao', '244'],\n ['Anguilla', 'ai', '1', 4, ['264']],\n ['Antigua and Barbuda', 'ag', '1', 4, ['268']],\n ['Argentina', 'ar', '54'],\n ['Armenia (Հայաստան)', 'am', '374'],\n ['Aruba', 'aw', '297'],\n ['Australia', 'au', '61', 0],\n ['Austria (Österreich)', 'at', '43'],\n ['Azerbaijan (Azərbaycan)', 'az', '994'],\n ['Bahamas', 'bs', '1', 4, ['242']],\n ['Bahrain (‫البحرين‬‎)', 'bh', '973'],\n ['Bangladesh (বাংলাদেশ)', 'bd', '880'],\n ['Barbados', 'bb', '1', 4, ['246']],\n ['Belarus (Беларусь)', 'by', '375'],\n ['Belgium (België)', 'be', '32'],\n ['Belize', 'bz', '501'],\n ['Benin (Bénin)', 'bj', '229'],\n ['Bermuda', 'bm', '1', 4, ['441']],\n ['Bhutan (འབྲུག)', 'bt', '975'],\n ['Bolivia', 'bo', '591'],\n ['Bosnia and Herzegovina (Босна и Херцеговина)', 'ba', '387'],\n ['Botswana', 'bw', '267'],\n ['Brazil (Brasil)', 'br', '55'],\n ['British Indian Ocean Territory', 'io', '246'],\n ['British Virgin Islands', 'vg', '1', 4, ['284']],\n ['Brunei', 'bn', '673'],\n ['Bulgaria (България)', 'bg', '359'],\n ['Burkina Faso', 'bf', '226'],\n ['Burundi (Uburundi)', 'bi', '257'],\n ['Cambodia (កម្ពុជា)', 'kh', '855'],\n ['Cameroon (Cameroun)', 'cm', '237'],\n [\n 'Canada',\n 'ca',\n '1',\n 1,\n [\n '204',\n '226',\n '236',\n '249',\n '250',\n '289',\n '306',\n '343',\n '365',\n '387',\n '403',\n '416',\n '418',\n '431',\n '437',\n '438',\n '450',\n '506',\n '514',\n '519',\n '548',\n '579',\n '581',\n '587',\n '604',\n '613',\n '639',\n '647',\n '672',\n '705',\n '709',\n '742',\n '778',\n '780',\n '782',\n '807',\n '819',\n '825',\n '867',\n '873',\n '902',\n '905',\n ],\n ],\n ['Cape Verde (Kabu Verdi)', 'cv', '238'],\n ['Caribbean Netherlands', 'bq', '599', 1],\n ['Cayman Islands', 'ky', '1', 4, ['345']],\n ['Central African Republic (République centrafricaine)', 'cf', '236'],\n ['Chad (Tchad)', 'td', '235'],\n ['Chile', 'cl', '56'],\n ['China (中国)', 'cn', '86'],\n ['Christmas Island', 'cx', '61', 2],\n ['Cocos (Keeling) Islands', 'cc', '61', 1],\n ['Colombia', 'co', '57'],\n ['Comoros (‫جزر القمر‬‎)', 'km', '269'],\n ['Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)', 'cd', '243'],\n ['Congo (Republic) (Congo-Brazzaville)', 'cg', '242'],\n ['Cook Islands', 'ck', '682'],\n ['Costa Rica', 'cr', '506'],\n ['Côte d’Ivoire', 'ci', '225'],\n ['Croatia (Hrvatska)', 'hr', '385'],\n ['Cuba', 'cu', '53'],\n ['Curaçao', 'cw', '599', 0],\n ['Cyprus (Κύπρος)', 'cy', '357'],\n ['Czech Republic (Česká republika)', 'cz', '420'],\n ['Denmark (Danmark)', 'dk', '45'],\n ['Djibouti', 'dj', '253'],\n ['Dominica', 'dm', '1', 4, ['767']],\n ['Dominican Republic (República Dominicana)', 'do', '1', 2, ['809', '829', '849']],\n ['Ecuador', 'ec', '593'],\n ['Egypt (‫مصر‬‎)', 'eg', '20'],\n ['El Salvador', 'sv', '503'],\n ['Equatorial Guinea (Guinea Ecuatorial)', 'gq', '240'],\n ['Eritrea', 'er', '291'],\n ['Estonia (Eesti)', 'ee', '372'],\n ['Ethiopia', 'et', '251'],\n ['Falkland Islands (Islas Malvinas)', 'fk', '500'],\n ['Faroe Islands (Føroyar)', 'fo', '298'],\n ['Fiji', 'fj', '679'],\n ['Finland (Suomi)', 'fi', '358', 0],\n ['France', 'fr', '33'],\n ['French Guiana (Guyane française)', 'gf', '594'],\n ['French Polynesia (Polynésie française)', 'pf', '689'],\n ['Gabon', 'ga', '241'],\n ['Gambia', 'gm', '220'],\n ['Georgia (საქართველო)', 'ge', '995'],\n ['Germany (Deutschland)', 'de', '49'],\n ['Ghana (Gaana)', 'gh', '233'],\n ['Gibraltar', 'gi', '350'],\n ['Greece (Ελλάδα)', 'gr', '30'],\n ['Greenland (Kalaallit Nunaat)', 'gl', '299'],\n ['Grenada', 'gd', '1', 4, ['473']],\n ['Guadeloupe', 'gp', '590', 0],\n ['Guam', 'gu', '1', 4, ['671']],\n ['Guatemala', 'gt', '502'],\n ['Guernsey', 'gg', '44', 1],\n ['Guinea (Guinée)', 'gn', '224'],\n ['Guinea-Bissau (Guiné Bissau)', 'gw', '245'],\n ['Guyana', 'gy', '592'],\n ['Haiti', 'ht', '509'],\n ['Honduras', 'hn', '504'],\n ['Hong Kong (香港)', 'hk', '852'],\n ['Hungary (Magyarország)', 'hu', '36'],\n ['Iceland (Ísland)', 'is', '354'],\n ['India (भारत)', 'in', '91'],\n ['Indonesia', 'id', '62'],\n ['Iran (‫ایران‬‎)', 'ir', '98'],\n ['Iraq (‫العراق‬‎)', 'iq', '964'],\n ['Ireland', 'ie', '353'],\n ['Isle of Man', 'im', '44', 2],\n ['Israel (‫ישראל‬‎)', 'il', '972'],\n ['Italy (Italia)', 'it', '39', 0],\n ['Jamaica', 'jm', '1', 4, ['876', '658']],\n ['Japan (日本)', 'jp', '81'],\n ['Jersey', 'je', '44', 3],\n ['Jordan (‫الأردن‬‎)', 'jo', '962'],\n ['Kazakhstan (Казахстан)', 'kz', '7', 1],\n ['Kenya', 'ke', '254'],\n ['Kiribati', 'ki', '686'],\n ['Kosovo', 'xk', '383'],\n ['Kuwait (‫الكويت‬‎)', 'kw', '965'],\n ['Kyrgyzstan (Кыргызстан)', 'kg', '996'],\n ['Laos (ລາວ)', 'la', '856'],\n ['Latvia (Latvija)', 'lv', '371'],\n ['Lebanon (‫لبنان‬‎)', 'lb', '961'],\n ['Lesotho', 'ls', '266'],\n ['Liberia', 'lr', '231'],\n ['Libya (‫ليبيا‬‎)', 'ly', '218'],\n ['Liechtenstein', 'li', '423'],\n ['Lithuania (Lietuva)', 'lt', '370'],\n ['Luxembourg', 'lu', '352'],\n ['Macau (澳門)', 'mo', '853'],\n ['Macedonia (FYROM) (Македонија)', 'mk', '389'],\n ['Madagascar (Madagasikara)', 'mg', '261'],\n ['Malawi', 'mw', '265'],\n ['Malaysia', 'my', '60'],\n ['Maldives', 'mv', '960'],\n ['Mali', 'ml', '223'],\n ['Malta', 'mt', '356'],\n ['Marshall Islands', 'mh', '692'],\n ['Martinique', 'mq', '596'],\n ['Mauritania (‫موريتانيا‬‎)', 'mr', '222'],\n ['Mauritius (Moris)', 'mu', '230'],\n ['Mayotte', 'yt', '262', 1],\n ['Mexico (México)', 'mx', '52'],\n ['Micronesia', 'fm', '691'],\n ['Moldova (Republica Moldova)', 'md', '373'],\n ['Monaco', 'mc', '377'],\n ['Mongolia (Монгол)', 'mn', '976'],\n ['Montenegro (Crna Gora)', 'me', '382'],\n ['Montserrat', 'ms', '1664'],\n ['Morocco (‫المغرب‬‎)', 'ma', '212', 0],\n ['Mozambique (Moçambique)', 'mz', '258'],\n ['Myanmar (Burma) (မြန်မာ)', 'mm', '95'],\n ['Namibia (Namibië)', 'na', '264'],\n ['Nauru', 'nr', '674'],\n ['Nepal (नेपाल)', 'np', '977'],\n ['Netherlands (Nederland)', 'nl', '31'],\n ['New Caledonia (Nouvelle-Calédonie)', 'nc', '687'],\n ['New Zealand', 'nz', '64'],\n ['Nicaragua', 'ni', '505'],\n ['Niger (Nijar)', 'ne', '227'],\n ['Nigeria', 'ng', '234'],\n ['Niue', 'nu', '683'],\n ['Norfolk Island', 'nf', '672'],\n ['North Korea (조선 민주주의 인민 공화국)', 'kp', '850'],\n ['Northern Mariana Islands', 'mp', '1670'],\n ['Norway (Norge)', 'no', '47', 0],\n ['Oman (‫عُمان‬‎)', 'om', '968'],\n ['Pakistan (‫پاکستان‬‎)', 'pk', '92'],\n ['Palau', 'pw', '680'],\n ['Palestine (‫فلسطين‬‎)', 'ps', '970'],\n ['Panama (Panamá)', 'pa', '507'],\n ['Papua New Guinea', 'pg', '675'],\n ['Paraguay', 'py', '595'],\n ['Peru (Perú)', 'pe', '51'],\n ['Philippines', 'ph', '63'],\n ['Poland (Polska)', 'pl', '48'],\n ['Portugal', 'pt', '351'],\n ['Puerto Rico', 'pr', '1', 3, ['787', '939']],\n ['Qatar (‫قطر‬‎)', 'qa', '974'],\n ['Réunion (La Réunion)', 're', '262', 0],\n ['Romania (România)', 'ro', '40'],\n ['Russia (Россия)', 'ru', '7', 0],\n ['Rwanda', 'rw', '250'],\n ['Saint Barthélemy', 'bl', '590', 1],\n ['Saint Helena', 'sh', '290'],\n ['Saint Kitts and Nevis', 'kn', '1', 4, ['869']],\n ['Saint Lucia', 'lc', '1', 4, ['758']],\n ['Saint Martin (Saint-Martin (partie française))', 'mf', '590', 2],\n ['Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)', 'pm', '508'],\n ['Saint Vincent and the Grenadines', 'vc', '1784'],\n ['Samoa', 'ws', '685'],\n ['San Marino', 'sm', '378'],\n ['São Tomé and Príncipe (São Tomé e Príncipe)', 'st', '239'],\n ['Saudi Arabia (‫المملكة العربية السعودية‬‎)', 'sa', '966'],\n ['Senegal (Sénégal)', 'sn', '221'],\n ['Serbia (Србија)', 'rs', '381'],\n ['Seychelles', 'sc', '248'],\n ['Sierra Leone', 'sl', '232'],\n ['Singapore', 'sg', '65'],\n ['Sint Maarten', 'sx', '1', 4, ['721']],\n ['Slovakia (Slovensko)', 'sk', '421'],\n ['Slovenia (Slovenija)', 'si', '386'],\n ['Solomon Islands', 'sb', '677'],\n ['Somalia (Soomaaliya)', 'so', '252'],\n ['South Africa', 'za', '27'],\n ['South Korea (대한민국)', 'kr', '82'],\n ['South Sudan (‫جنوب السودان‬‎)', 'ss', '211'],\n ['Spain (España)', 'es', '34'],\n ['Sri Lanka (ශ්‍රී ලංකාව)', 'lk', '94'],\n ['Sudan (‫السودان‬‎)', 'sd', '249'],\n ['Suriname', 'sr', '597'],\n ['Svalbard and Jan Mayen', 'sj', '47', 1],\n ['Swaziland', 'sz', '268'],\n ['Sweden (Sverige)', 'se', '46'],\n ['Switzerland (Schweiz)', 'ch', '41'],\n ['Syria (‫سوريا‬‎)', 'sy', '963'],\n ['Taiwan (台灣)', 'tw', '886'],\n ['Tajikistan', 'tj', '992'],\n ['Tanzania', 'tz', '255'],\n ['Thailand (ไทย)', 'th', '66'],\n ['Timor-Leste', 'tl', '670'],\n ['Togo', 'tg', '228'],\n ['Tokelau', 'tk', '690'],\n ['Tonga', 'to', '676'],\n ['Trinidad and Tobago', 'tt', '1', 4, ['868']],\n ['Tunisia (‫تونس‬‎)', 'tn', '216'],\n ['Turkey (Türkiye)', 'tr', '90'],\n ['Turkmenistan', 'tm', '993'],\n ['Turks and Caicos Islands', 'tc', '1', 4, ['649']],\n ['Tuvalu', 'tv', '688'],\n ['U.S. Virgin Islands', 'vi', '1', 4, ['340']],\n ['Uganda', 'ug', '256'],\n ['Ukraine (Україна)', 'ua', '380'],\n ['United Arab Emirates (‫الإمارات العربية المتحدة‬‎)', 'ae', '971'],\n ['United Kingdom', 'gb', '44', 0],\n ['United States', 'us', '1', 0],\n ['Uruguay', 'uy', '598'],\n ['Uzbekistan (Oʻzbekiston)', 'uz', '998'],\n ['Vanuatu', 'vu', '678'],\n ['Vatican City (Città del Vaticano)', 'va', '39', 1],\n ['Venezuela', 've', '58'],\n ['Vietnam (Việt Nam)', 'vn', '84'],\n ['Wallis and Futuna (Wallis-et-Futuna)', 'wf', '681'],\n ['Western Sahara (‫الصحراء الغربية‬‎)', 'eh', '212', 1],\n ['Yemen (‫اليمن‬‎)', 'ye', '967'],\n ['Zambia', 'zm', '260'],\n ['Zimbabwe', 'zw', '263'],\n ['Åland Islands', 'ax', '358', 1],\n]\n\nexport const EXAMPLES: any = {\n // Examples\n '001': '001',\n AC: '40123',\n AD: '312345',\n AE: '501234567',\n AF: '701234567',\n AG: '2684641234',\n AI: '2642351234',\n AL: '662123456',\n AM: '77123456',\n AO: '923123456',\n AR: '91123456789',\n AS: '6847331234',\n AT: '664123456',\n AU: '412345678',\n AW: '5601234',\n AX: '412345678',\n AZ: '401234567',\n BA: '61123456',\n BB: '2462501234',\n BD: '1812345678',\n BE: '470123456',\n BF: '70123456',\n BG: '48123456',\n BH: '36001234',\n BI: '79561234',\n BJ: '90011234',\n BL: '690001234',\n BM: '4413701234',\n BN: '7123456',\n BO: '71234567',\n BQ: '3181234',\n BR: '11961234567',\n BS: '2423591234',\n BT: '17123456',\n BW: '71123456',\n BY: '294911911',\n BZ: '6221234',\n CA: '5062345678',\n CC: '412345678',\n CD: '991234567',\n CF: '70012345',\n CG: '061234567',\n CH: '781234567',\n CI: '01234567',\n CK: '71234',\n CL: '221234567',\n CM: '671234567',\n CN: '13123456789',\n CO: '3211234567',\n CR: '83123456',\n CU: '51234567',\n CV: '9911234',\n CW: '95181234',\n CX: '412345678',\n CY: '96123456',\n CZ: '601123456',\n DE: '15123456789',\n DJ: '77831001',\n DK: '32123456',\n DM: '7672251234',\n DO: '8092345678',\n DZ: '551234567',\n EC: '991234567',\n EE: '51234567',\n EG: '1001234567',\n EH: '650123456',\n ER: '7123456',\n ES: '612345678',\n ET: '911234567',\n FI: '412345678',\n FJ: '7012345',\n FK: '51234',\n FM: '3501234',\n FO: '211234',\n FR: '612345678',\n GA: '06031234',\n GB: '7400123456',\n GD: '4734031234',\n GE: '555123456',\n GF: '694201234',\n GG: '7781123456',\n GH: '231234567',\n GI: '57123456',\n GL: '221234',\n GM: '3012345',\n GN: '601123456',\n GP: '690001234',\n GQ: '222123456',\n GR: '6912345678',\n GT: '51234567',\n GU: '6713001234',\n GW: '955012345',\n GY: '6091234',\n HK: '51234567',\n HN: '91234567',\n HR: '921234567',\n HT: '34101234',\n HU: '201234567',\n ID: '812345678',\n IE: '850123456',\n IL: '502345678',\n IM: '7924123456',\n IN: '8123456789',\n IO: '3801234',\n IQ: '7912345678',\n IR: '9123456789',\n IS: '6111234',\n IT: '3123456789',\n JE: '7797712345',\n JM: '8762101234',\n JO: '790123456',\n JP: '9012345678',\n KE: '712123456',\n KG: '700123456',\n KH: '91234567',\n KI: '72001234',\n KM: '3212345',\n KN: '8697652917',\n KP: '1921234567',\n KR: '1000000000',\n KW: '50012345',\n KY: '3453231234',\n KZ: '7710009998',\n LA: '2023123456',\n LB: '71123456',\n LC: '7582845678',\n LI: '660234567',\n LK: '712345678',\n LR: '770123456',\n LS: '50123456',\n LT: '61234567',\n LU: '628123456',\n LV: '21234567',\n LY: '912345678',\n MA: '650123456',\n MC: '612345678',\n MD: '62112345',\n ME: '67622901',\n MF: '690001234',\n MG: '321234567',\n MH: '2351234',\n MK: '72345678',\n ML: '65012345',\n MM: '92123456',\n MN: '88123456',\n MO: '66123456',\n MP: '6702345678',\n MQ: '696201234',\n MR: '22123456',\n MS: '6644923456',\n MT: '96961234',\n MU: '52512345',\n MV: '7712345',\n MW: '991234567',\n MX: '12221234567',\n MY: '123456789',\n MZ: '821234567',\n NA: '811234567',\n NC: '751234',\n NE: '93123456',\n NF: '381234',\n NG: '8021234567',\n NI: '81234567',\n NL: '612345678',\n NO: '40612345',\n NP: '9841234567',\n NR: '5551234',\n NU: '8884012',\n NZ: '211234567',\n OM: '92123456',\n PA: '61234567',\n PE: '912345678',\n PF: '87123456',\n PG: '70123456',\n PH: '9051234567',\n PK: '3012345678',\n PL: '512345678',\n PM: '551234',\n PR: '7872345678',\n PS: '599123456',\n PT: '912345678',\n PW: '6201234',\n PY: '961456789',\n QA: '33123456',\n RE: '692123456',\n RO: '712034567',\n RS: '601234567',\n RU: '9123456789',\n RW: '720123456',\n SA: '512345678',\n SB: '7421234',\n SC: '2510123',\n SD: '911231234',\n SE: '701234567',\n SG: '81234567',\n SH: '51234',\n SI: '31234567',\n SJ: '41234567',\n SK: '912123456',\n SL: '25123456',\n SM: '66661212',\n SN: '701234567',\n SO: '71123456',\n SR: '7412345',\n SS: '977123456',\n ST: '9812345',\n SV: '70123456',\n SX: '7215205678',\n SY: '944567890',\n SZ: '76123456',\n TA: '8999',\n TC: '6492311234',\n TD: '63012345',\n TG: '90112345',\n TH: '812345678',\n TJ: '917123456',\n TK: '7290',\n TL: '77212345',\n TM: '66123456',\n TN: '20123456',\n TO: '7715123',\n TR: '5012345678',\n TT: '8682911234',\n TV: '901234',\n TW: '912345678',\n TZ: '621234567',\n UA: '501234567',\n UG: '712345678',\n US: '2015550123',\n UY: '94231234',\n UZ: '912345678',\n VA: '3123456789',\n VC: '7844301234',\n VE: '4121234567',\n VG: '2843001234',\n VI: '3406421234',\n VN: '912345678',\n VU: '5912345',\n WF: '501234',\n WS: '7212345',\n XK: '43201234',\n YE: '712345678',\n YT: '639012345',\n ZA: '711234567',\n ZM: '955123456',\n ZW: '712345678',\n}\n","import { NgClass } from '@angular/common'\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core'\nimport { CountryFlag } from '../model/country.model'\n\n@Component({\n selector: 'ngx-mat-input-tel-flag',\n imports: [NgClass],\n template: `<div class=\"flag\" [ngClass]=\"country.flagClass\"></div>\n\n @if (country.name) {\n <span class=\"country-selector-name\">{{ country.name }}</span>\n }\n\n @if (country.dialCode) {\n <span class=\"country-selector-code\"\n >+{{ country.dialCode }}\n\n @if (country.areaCodes) {\n {{ country.areaCodes.join(', ') }}\n }\n </span>\n }`,\n styleUrl: './ngx-mat-input-tel-flag.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgxMatInputTelFlagComponent {\n @Input({ required: true }) country!: CountryFlag\n}\n","import { AbstractControl, ValidationErrors } from '@angular/forms'\nimport { parsePhoneNumber, PhoneNumber } from 'libphonenumber-js'\n\nexport const ngxMatInputTelValidator = (control: AbstractControl): ValidationErrors | null => {\n const error = { validatePhoneNumber: true }\n let numberInstance: PhoneNumber\n\n if (control.value) {\n try {\n numberInstance = parsePhoneNumber(control.value)\n } catch (e) {\n return error\n }\n\n if (numberInstance && !numberInstance.isValid()) {\n if (!control.touched) {\n control.markAsTouched()\n }\n return error\n }\n }\n return null\n}\n","import { Pipe, PipeTransform } from '@angular/core'\n\nimport { Country } from '../lib/model/country.model'\n\n@Pipe({\n name: 'search',\n standalone: true,\n})\nexport class SearchPipe implements PipeTransform {\n transform(countries: Country[], searchCriteria?: string): Country[] {\n if (!searchCriteria || searchCriteria === '') {\n return countries\n }\n\n return countries.filter((country) => {\n return `${country.name}+${country.dialCode}${\n country.areaCodes ? country.areaCodes.join(',') : ''\n }`\n .toLowerCase()\n .includes(searchCriteria.toLowerCase())\n })\n }\n}\n","import { FocusMonitor } from '@angular/cdk/a11y'\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { NgClass } from '@angular/common'\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DoCheck,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Self,\n ViewChild,\n WritableSignal,\n booleanAttribute,\n signal,\n} from '@angular/core'\nimport {\n FormControl,\n FormGroupDirective,\n FormsModule,\n NG_VALIDATORS,\n NgControl,\n NgForm,\n ReactiveFormsModule,\n} from '@angular/forms'\nimport { ErrorStateMatcher, MatRippleModule } from '@angular/material/core'\nimport { MatDividerModule } from '@angular/material/divider'\nimport { MatFormFieldControl } from '@angular/material/form-field'\nimport { MatInputModule } from '@angular/material/input'\nimport { MatMenu, MatMenuModule } from '@angular/material/menu'\nimport {\n AsYouType,\n CountryCode as CC,\n CountryCode,\n E164Number,\n NationalNumber,\n PhoneNumber,\n getExampleNumber,\n parsePhoneNumberFromString,\n} from 'libphonenumber-js'\nimport { Subject } from 'rxjs'\nimport { ALL_COUNTRIES, EXAMPLES } from './data/country-code.const'\nimport { Country } from './model/country.model'\nimport { PhoneNumberFormat } from './model/phone-number-format.model'\nimport { NgxMatInputTelFlagComponent } from './ngx-mat-input-tel-flag/ngx-mat-input-tel-flag.component'\nimport { ngxMatInputTelValidator } from './ngx-mat-input-tel.validator'\nimport { SearchPipe } from './search.pipe'\n\nclass ngxMatInputTelBase {\n constructor(\n public _defaultErrorStateMatcher: ErrorStateMatcher,\n public _parentForm: NgForm,\n public _parentFormGroup: FormGroupDirective,\n public ngControl: NgControl,\n ) {}\n}\n\n@Component({\n selector: 'ngx-mat-input-tel',\n templateUrl: './ngx-mat-input-tel.component.html',\n styleUrls: ['./ngx-mat-input-tel.component.scss'],\n providers: [\n { provide: MatFormFieldControl, useExisting: NgxMatInputTelComponent },\n {\n provide: NG_VALIDATORS,\n useValue: ngxMatInputTelValidator,\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgClass,\n\n // Forms\n FormsModule,\n ReactiveFormsModule,\n MatInputModule,\n\n // Mat\n MatMenuModule,\n MatRippleModule,\n MatDividerModule,\n\n // Components\n NgxMatInputTelFlagComponent,\n\n // Pipes\n SearchPipe,\n ],\n})\nexport class NgxMatInputTelComponent\n extends ngxMatInputTelBase\n implements OnInit, DoCheck, OnDestroy\n{\n static nextId = 0\n @ViewChild(MatMenu) matMenu!: MatMenu\n @ViewChild('menuSearchInput', { static: false }) menuSearchInput?: ElementRef<HTMLInputElement>\n @ViewChild('focusable', { static: false }) focusable!: ElementRef\n\n @HostBinding()\n id = `ngx-mat-input-tel-${NgxMatInputTelComponent.nextId++}`\n @HostBinding('class.ngx-floating')\n get shouldLabelFloat(): boolean {\n return this.focused || !this.empty\n }\n\n @Input() autocomplete: 'off' | 'tel' = 'off'\n @Input() cssClass?: string\n @Input() defaultCountry?: CountryCode\n @Input() errorStateMatcher: ErrorStateMatcher = this._defaultErrorStateMatcher\n @Input() maxLength: string | number = 15\n @Input() name?: string\n @Input() placeholder: string = ''\n @Input() preferredCountries: string[] = []\n\n @Input() set onlyCountries(countryCodes: string[]) {\n if (countryCodes.length) {\n this.$availableCountries.set(this._getFilteredCountries(countryCodes))\n }\n\n this._setPreferredCountriesInDropDown()\n this._setDefaultCountry()\n }\n\n @Input() searchPlaceholder = 'Search ...'\n @Input() validation: 'isValid' | 'isPossible' = 'isValid'\n @Input({ transform: booleanAttribute }) enablePlaceholder = false\n @Input({ transform: booleanAttribute }) enableSearch = false\n @Input({ transform: booleanAttribute }) resetOnChange = false\n @Input()\n set format(value: PhoneNumberFormat) {\n this._format = value\n this.phoneNumber = this.formattedPhoneNumber()\n this.stateChanges.next()\n }\n get format(): PhoneNumberFormat {\n return this._format\n }\n\n private _required = false\n @Input({ transform: booleanAttribute })\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value)\n this.stateChanges.next(undefined)\n }\n get required(): boolean {\n return this._required\n }\n\n private _disabled = false\n @Input({ alias: 'disabled', transform: booleanAttribute })\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value)\n this.stateChanges.next(undefined)\n }\n get disabled(): boolean {\n return this._disabled\n }\n\n get empty(): boolean {\n return !this.phoneNumber\n }\n\n @Output()\n countryChanged: EventEmitter<Country> = new EventEmitter<Country>()\n\n stateChanges = new Subject<void>()\n focused = false\n describedBy = ''\n phoneNumber?: E164Number | NationalNumber = '' as E164Number | NationalNumber\n private _allCountries: Country[] = []\n $availableCountries = signal<Country[]>(this._initAllCountries())\n $preferredCountriesInDropDown = signal<Country[]>([])\n $selectedCountry!: WritableSignal<Country>\n numberInstance?: PhoneNumber\n value?: any\n searchCriteria?: string\n\n private _previousFormattedNumber?: string\n private _format: PhoneNumberFormat = 'default'\n\n onTouched = () => {}\n propagateChange = (_: any) => {}\n\n private errorState?: boolean\n\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef<HTMLElement>,\n @Optional() @Self() _ngControl: NgControl,\n @Optional() _parentForm: NgForm,\n @Optional() _parentFormGroup: FormGroupDirective,\n _defaultErrorStateMatcher: ErrorStateMatcher,\n ) {\n super(_defaultErrorStateMatcher, _parentForm, _parentFormGroup, _ngControl)\n\n _focusMonitor.monitor(_elementRef, true).subscribe((origin: any) => {\n if (this.focused && !origin) {\n this.onTouched()\n }\n this.focused = !!origin\n this.stateChanges.next()\n })\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this\n }\n }\n\n ngOnInit() {\n this._setPreferredCountriesInDropDown()\n this._setDefaultCountry()\n\n this._changeDetectorRef.markForCheck()\n this.stateChanges.next()\n }\n\n ngOnDestroy() {\n this.stateChanges.complete()\n this._focusMonitor.stopMonitoring(this._elementRef)\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n const oldState = this.errorState\n const newState = this.errorStateMatcher.isErrorState(this.ngControl.control, this._parentForm)\n\n this.errorState =\n (newState && (!this.ngControl.control?.value || this.ngControl.control?.touched)) ||\n (!this.focused ? newState : false)\n\n if (oldState !== newState) {\n this.errorState = newState\n this.stateChanges.next()\n }\n }\n }\n\n onMenuOpened() {\n this.menuSearchInput?.nativeElement?.focus()\n }\n\n updateErrorState() {\n if (\n this.ngControl &&\n this.ngControl.invalid &&\n (this.ngControl.touched || (this._parentForm && this._parentForm.submitted))\n ) {\n const currentState = this.errorStateMatcher.isErrorState(\n this.ngControl.control as FormControl,\n this.ngControl?.value,\n )\n if (currentState !== this.errorState) {\n this.errorState = currentState\n this._changeDetectorRef.markForCheck()\n }\n }\n }\n\n private _setPreferredCountriesInDropDown(countries = this.preferredCountries) {\n this.$preferredCountriesInDropDown.set(this._getFilteredCountries(countries))\n }\n\n private _setDefaultCountry() {\n let country: Country\n\n if (this.numberInstance?.country) {\n // If an existing number is present, we use it to determine country\n country = this.getCountry(this.numberInstance.country)\n } else if (this.defaultCountry) {\n country = this.getCountry(this.defaultCountry)\n } else if (this.$preferredCountriesInDropDown().length) {\n country = this.$preferredCountriesInDropDown()[0]\n } else {\n country = this._allCountries[0]\n }\n this.$selectedCountry = signal<Country>(country)\n this.countryChanged.emit(country)\n }\n\n private _getFilteredCountries(countryCodes: string[]) {\n const filteredCountries = this._allCountries.filter((c) => countryCodes.includes(c.iso2))\n\n return filteredCountries.sort(\n (a, b) => countryCodes.indexOf(a.iso2) - countryCodes.indexOf(b.iso2),\n )\n }\n\n public onPhoneNumberChange(): void {\n try {\n this._setCountry()\n } catch (e) {\n // Pass a value to trigger the validator error\n this.value = this.formattedPhoneNumber().toString()\n }\n\n this.propagateChange(this.value)\n this._changeDetectorRef.markForCheck()\n }\n\n private _setCountry() {\n if (!this.phoneNumber) {\n this.value = null\n return\n }\n\n const numberInstance = parsePhoneNumberFromString(\n this.phoneNumber.toString(),\n this.$selectedCountry().iso2.toUpperCase() as CC,\n )\n if (!numberInstance) return\n this.numberInstance = numberInstance\n\n this.formatAsYouTypeIfEnabled()\n this.value = this.numberInstance?.number\n\n if (!this.value) throw new Error('Incorrect phone number')\n\n if (\n this.numberInstance &&\n (this.validation === 'isPossible'\n ? this.numberInstance.isPossible()\n : this.numberInstance.isValid())\n ) {\n if (this.phoneNumber !== this.formattedPhoneNumber()) {\n this.phoneNumber = this.formattedPhoneNumber()\n }\n if (\n this.$selectedCountry().iso2 !== this.numberInstance.country &&\n this.numberInstance.country\n ) {\n this.$selectedCountry.set(this.getCountry(this.numberInstance.country))\n this.countryChanged.emit(this.$selectedCountry())\n }\n }\n }\n\n public onCountrySelect(country: Country): void {\n if (this.phoneNumber) {\n this.phoneNumber = this.numberInstance?.nationalNumber\n }\n if (this.resetOnChange && this.$selectedCountry() !== country) {\n this.reset()\n }\n\n this.$selectedCountry.set(country)\n this.countryChanged.emit(this.$selectedCountry())\n\n this.onPhoneNumberChange()\n\n setTimeout(() => {\n this.focusable.nativeElement.focus()\n }, 0)\n }\n\n public getCountry(code: CC): Country {\n return (this._allCountries.find((c) => c.iso2 === code.toLowerCase()) || {\n name: 'UN',\n iso2: 'UN',\n dialCode: undefined,\n priority: 0,\n areaCodes: undefined,\n flagClass: 'UN',\n placeHolder: '',\n }) as Country\n }\n\n public onInputKeyPress(event: any): void {\n const pattern = /[0-9+\\- ]/\n if (!pattern.test(event.key)) {\n event.preventDefault()\n }\n }\n\n protected _initAllCountries(): Country[] {\n this._allCountries = ALL_COUNTRIES.map((c) => {\n const country: Country = {\n name: c[0].toString(),\n iso2: c[1].toString(),\n dialCode: c[2].toString(),\n priority: +c[3] || 0,\n areaCodes: (c[4] as string[]) || undefined,\n flagClass: c[1].toString().toUpperCase(),\n placeHolder: '',\n }\n\n if (this.enablePlaceholder) {\n country.placeHolder = this._getPhoneNumberPlaceHolder(country.iso2.toUpperCase())\n }\n\n return country\n })\n\n return this._allCountries\n }\n\n private _getPhoneNumberPlaceHolder(countryISOCode: any): string | undefined {\n try {\n return getExampleNumber(countryISOCode, EXAMPLES)?.number\n } catch (e) {\n return e as any\n }\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled\n this._changeDetectorRef.markForCheck()\n this.stateChanges.next(undefined)\n }\n\n writeValue(value: any): void {\n if (value) {\n this.numberInstance = parsePhoneNumberFromString(value)\n if (this.numberInstance) {\n const countryCode = this.numberInstance.country\n this.phoneNumber = this.formattedPhoneNumber()\n\n if (!countryCode) return\n\n if (!this.$selectedCountry) {\n // Init value was given\n this.$selectedCountry = signal<Country>(this.getCountry(countryCode))\n } else {\n this.$selectedCountry.set(this.getCountry(countryCode))\n }\n if (\n this.$selectedCountry().dialCode &&\n !this.preferredCountries.includes(this.$selectedCountry().iso2)\n ) {\n this.$preferredCountriesInDropDown.update((values) => {\n return [...values, this.$selectedCountry()]\n })\n }\n this.countryChanged.emit(this.$selectedCountry())\n\n // Initial value is set\n this.stateChanges.next()\n } else {\n this.phoneNumber = value\n this.stateChanges.next(undefined)\n }\n }\n\n // Value is set from outside using setValue()\n this.onPhoneNumberChange()\n this._changeDetectorRef.markForCheck()\n }\n\n setDescribedByIds(ids: string[]) {\n this.describedBy = ids.join(' ')\n }\n\n onContainerClick(event: MouseEvent): void {\n if ((event.target as Element).tagName.toLowerCase() !== 'input') {\n this._elementRef.nativeElement.querySelector('input')!.focus()\n }\n }\n\n reset() {\n this.phoneNumber = '' as E164Number | NationalNumber\n this.propagateChange(null)\n\n this._changeDetectorRef.markForCheck()\n this.stateChanges.next(undefined)\n }\n\n private formattedPhoneNumber(): E164Number | NationalNumber {\n if (!this.numberInstance) {\n return (this.phoneNumber?.toString() || '') as E164Number | NationalNumber\n }\n switch (this.format) {\n case 'national':\n return this.numberInstance.formatNational() as E164Number | NationalNumber\n case 'international':\n return this.numberInstance.formatInternational() as E164Number | NationalNumber\n default:\n return this.numberInstance.nationalNumber.toString() as E164Number | NationalNumber\n }\n }\n\n private formatAsYouTypeIfEnabled(): void {\n if (this.format === 'default') {\n return\n }\n const asYouType: AsYouType = new AsYouType(this.$selectedCountry().iso2.toUpperCase() as CC)\n // To avoid caret positioning we apply formatting only if the caret is at the end:\n if (!this.phoneNumber) return\n\n if (this.phoneNumber?.toString().startsWith(this._previousFormattedNumber || '')) {\n this.phoneNumber = asYouType.input(this.phoneNumber.toString()) as E164Number | NationalNumber\n }\n this._previousFormattedNumber = this.phoneNumber.toString()\n }\n}\n","<div class=\"ngx-mat-input-tel-container\">\n <button\n type=\"button\"\n matRipple\n [matMenuTriggerFor]=\"menu\"\n class=\"country-selector\"\n [disabled]=\"disabled\"\n (menuOpened)=\"onMenuOpened()\"\n >\n <ngx-mat-input-tel-flag\n class=\"main-flag\"\n [country]=\"{\n flagClass: $selectedCountry().flagClass,\n dialCode: $selectedCountry().dialCode,\n }\"\n ></ngx-mat-input-tel-flag>\n </button>\n\n <mat-menu\n #menu=\"matMenu\"\n class=\"ngx-mat-input-tel-overlay-pane\"\n [backdropClass]=\"'ngx-mat-input-tel-overlay-backdrop'\"\n >\n @if (enableSearch) {\n <input\n #menuSearchInput\n class=\"country-search\"\n [(ngModel)]=\"searchCriteria\"\n type=\"text\"\n [placeholder]=\"searchPlaceholder\"\n (click)=\"$event.stopPropagation()\"\n style=\"\n width: calc(100% - 4px);\n height: 34px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgb(221, 221, 221);\n font-size: 14px;\n padding: 20px 10px 24px;\n box-sizing: border-box;\n background: transparent;\n margin: 2px;\n \"\n />\n }\n @for (country of $preferredCountriesInDropDown(); track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n @if ($preferredCountriesInDropDown().length) {\n <mat-divider></mat-divider>\n }\n @for (country of $availableCountries() | search: searchCriteria; track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n </mat-menu>\n\n <input\n class=\"ngx-mat-input-tel-input\"\n matInput\n type=\"tel\"\n inputmode=\"tel\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"cssClass\"\n (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\"\n [(ngModel)]=\"phoneNumber\"\n (ngModelChange)=\"onPhoneNumberChange()\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [placeholder]=\"placeholder || $selectedCountry().placeHolder || ''\"\n [disabled]=\"disabled\"\n #focusable\n [maxlength]=\"maxLength\"\n />\n</div>\n","/*\n * Public API Surface of ngx-mat-input-tel\n */\n\nexport * from './lib/ngx-mat-input-tel.component'\nexport * from './lib/ngx-mat-input-tel.validator'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ngx-mat-input-tel.mjs","sources":["../../../projects/ngx-mat-input-tel/src/lib/data/country-code.const.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel-flag/ngx-mat-input-tel-flag.component.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel.validator.ts","../../../projects/ngx-mat-input-tel/src/lib/search.pipe.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel.component.ts","../../../projects/ngx-mat-input-tel/src/lib/ngx-mat-input-tel.component.html","../../../projects/ngx-mat-input-tel/src/public-api.ts","../../../projects/ngx-mat-input-tel/src/ngx-mat-input-tel.ts"],"sourcesContent":["export const ALL_COUNTRIES = [\n // 'name', 'iso2', 'dialCode', 'priority', 'areaCodes'\n ['Afghanistan (‫افغانستان‬‎)', 'af', '93'],\n ['Albania (Shqipëri)', 'al', '355'],\n ['Algeria (‫الجزائر‬‎)', 'dz', '213'],\n ['American Samoa', 'as', '1', 4, ['684']],\n ['Andorra', 'ad', '376'],\n ['Angola', 'ao', '244'],\n ['Anguilla', 'ai', '1', 4, ['264']],\n ['Antigua and Barbuda', 'ag', '1', 4, ['268']],\n ['Argentina', 'ar', '54'],\n ['Armenia (Հայաստան)', 'am', '374'],\n ['Aruba', 'aw', '297'],\n ['Australia', 'au', '61', 0],\n ['Austria (Österreich)', 'at', '43'],\n ['Azerbaijan (Azərbaycan)', 'az', '994'],\n ['Bahamas', 'bs', '1', 4, ['242']],\n ['Bahrain (‫البحرين‬‎)', 'bh', '973'],\n ['Bangladesh (বাংলাদেশ)', 'bd', '880'],\n ['Barbados', 'bb', '1', 4, ['246']],\n ['Belarus (Беларусь)', 'by', '375'],\n ['Belgium (België)', 'be', '32'],\n ['Belize', 'bz', '501'],\n ['Benin (Bénin)', 'bj', '229'],\n ['Bermuda', 'bm', '1', 4, ['441']],\n ['Bhutan (འབྲུག)', 'bt', '975'],\n ['Bolivia', 'bo', '591'],\n ['Bosnia and Herzegovina (Босна и Херцеговина)', 'ba', '387'],\n ['Botswana', 'bw', '267'],\n ['Brazil (Brasil)', 'br', '55'],\n ['British Indian Ocean Territory', 'io', '246'],\n ['British Virgin Islands', 'vg', '1', 4, ['284']],\n ['Brunei', 'bn', '673'],\n ['Bulgaria (България)', 'bg', '359'],\n ['Burkina Faso', 'bf', '226'],\n ['Burundi (Uburundi)', 'bi', '257'],\n ['Cambodia (កម្ពុជា)', 'kh', '855'],\n ['Cameroon (Cameroun)', 'cm', '237'],\n [\n 'Canada',\n 'ca',\n '1',\n 1,\n [\n '204',\n '226',\n '236',\n '249',\n '250',\n '289',\n '306',\n '343',\n '365',\n '387',\n '403',\n '416',\n '418',\n '431',\n '437',\n '438',\n '450',\n '506',\n '514',\n '519',\n '548',\n '579',\n '581',\n '587',\n '604',\n '613',\n '639',\n '647',\n '672',\n '705',\n '709',\n '742',\n '778',\n '780',\n '782',\n '807',\n '819',\n '825',\n '867',\n '873',\n '902',\n '905',\n ],\n ],\n ['Cape Verde (Kabu Verdi)', 'cv', '238'],\n ['Caribbean Netherlands', 'bq', '599', 1],\n ['Cayman Islands', 'ky', '1', 4, ['345']],\n ['Central African Republic (République centrafricaine)', 'cf', '236'],\n ['Chad (Tchad)', 'td', '235'],\n ['Chile', 'cl', '56'],\n ['China (中国)', 'cn', '86'],\n ['Christmas Island', 'cx', '61', 2],\n ['Cocos (Keeling) Islands', 'cc', '61', 1],\n ['Colombia', 'co', '57'],\n ['Comoros (‫جزر القمر‬‎)', 'km', '269'],\n ['Congo (DRC) (Jamhuri ya Kidemokrasia ya Kongo)', 'cd', '243'],\n ['Congo (Republic) (Congo-Brazzaville)', 'cg', '242'],\n ['Cook Islands', 'ck', '682'],\n ['Costa Rica', 'cr', '506'],\n ['Côte d’Ivoire', 'ci', '225'],\n ['Croatia (Hrvatska)', 'hr', '385'],\n ['Cuba', 'cu', '53'],\n ['Curaçao', 'cw', '599', 0],\n ['Cyprus (Κύπρος)', 'cy', '357'],\n ['Czech Republic (Česká republika)', 'cz', '420'],\n ['Denmark (Danmark)', 'dk', '45'],\n ['Djibouti', 'dj', '253'],\n ['Dominica', 'dm', '1', 4, ['767']],\n ['Dominican Republic (República Dominicana)', 'do', '1', 2, ['809', '829', '849']],\n ['Ecuador', 'ec', '593'],\n ['Egypt (‫مصر‬‎)', 'eg', '20'],\n ['El Salvador', 'sv', '503'],\n ['Equatorial Guinea (Guinea Ecuatorial)', 'gq', '240'],\n ['Eritrea', 'er', '291'],\n ['Estonia (Eesti)', 'ee', '372'],\n ['Ethiopia', 'et', '251'],\n ['Falkland Islands (Islas Malvinas)', 'fk', '500'],\n ['Faroe Islands (Føroyar)', 'fo', '298'],\n ['Fiji', 'fj', '679'],\n ['Finland (Suomi)', 'fi', '358', 0],\n ['France', 'fr', '33'],\n ['French Guiana (Guyane française)', 'gf', '594'],\n ['French Polynesia (Polynésie française)', 'pf', '689'],\n ['Gabon', 'ga', '241'],\n ['Gambia', 'gm', '220'],\n ['Georgia (საქართველო)', 'ge', '995'],\n ['Germany (Deutschland)', 'de', '49'],\n ['Ghana (Gaana)', 'gh', '233'],\n ['Gibraltar', 'gi', '350'],\n ['Greece (Ελλάδα)', 'gr', '30'],\n ['Greenland (Kalaallit Nunaat)', 'gl', '299'],\n ['Grenada', 'gd', '1', 4, ['473']],\n ['Guadeloupe', 'gp', '590', 0],\n ['Guam', 'gu', '1', 4, ['671']],\n ['Guatemala', 'gt', '502'],\n ['Guernsey', 'gg', '44', 1],\n ['Guinea (Guinée)', 'gn', '224'],\n ['Guinea-Bissau (Guiné Bissau)', 'gw', '245'],\n ['Guyana', 'gy', '592'],\n ['Haiti', 'ht', '509'],\n ['Honduras', 'hn', '504'],\n ['Hong Kong (香港)', 'hk', '852'],\n ['Hungary (Magyarország)', 'hu', '36'],\n ['Iceland (Ísland)', 'is', '354'],\n ['India (भारत)', 'in', '91'],\n ['Indonesia', 'id', '62'],\n ['Iran (‫ایران‬‎)', 'ir', '98'],\n ['Iraq (‫العراق‬‎)', 'iq', '964'],\n ['Ireland', 'ie', '353'],\n ['Isle of Man', 'im', '44', 2],\n ['Israel (‫ישראל‬‎)', 'il', '972'],\n ['Italy (Italia)', 'it', '39', 0],\n ['Jamaica', 'jm', '1', 4, ['876', '658']],\n ['Japan (日本)', 'jp', '81'],\n ['Jersey', 'je', '44', 3],\n ['Jordan (‫الأردن‬‎)', 'jo', '962'],\n ['Kazakhstan (Казахстан)', 'kz', '7', 1],\n ['Kenya', 'ke', '254'],\n ['Kiribati', 'ki', '686'],\n ['Kosovo', 'xk', '383'],\n ['Kuwait (‫الكويت‬‎)', 'kw', '965'],\n ['Kyrgyzstan (Кыргызстан)', 'kg', '996'],\n ['Laos (ລາວ)', 'la', '856'],\n ['Latvia (Latvija)', 'lv', '371'],\n ['Lebanon (‫لبنان‬‎)', 'lb', '961'],\n ['Lesotho', 'ls', '266'],\n ['Liberia', 'lr', '231'],\n ['Libya (‫ليبيا‬‎)', 'ly', '218'],\n ['Liechtenstein', 'li', '423'],\n ['Lithuania (Lietuva)', 'lt', '370'],\n ['Luxembourg', 'lu', '352'],\n ['Macau (澳門)', 'mo', '853'],\n ['Macedonia (FYROM) (Македонија)', 'mk', '389'],\n ['Madagascar (Madagasikara)', 'mg', '261'],\n ['Malawi', 'mw', '265'],\n ['Malaysia', 'my', '60'],\n ['Maldives', 'mv', '960'],\n ['Mali', 'ml', '223'],\n ['Malta', 'mt', '356'],\n ['Marshall Islands', 'mh', '692'],\n ['Martinique', 'mq', '596'],\n ['Mauritania (‫موريتانيا‬‎)', 'mr', '222'],\n ['Mauritius (Moris)', 'mu', '230'],\n ['Mayotte', 'yt', '262', 1],\n ['Mexico (México)', 'mx', '52'],\n ['Micronesia', 'fm', '691'],\n ['Moldova (Republica Moldova)', 'md', '373'],\n ['Monaco', 'mc', '377'],\n ['Mongolia (Монгол)', 'mn', '976'],\n ['Montenegro (Crna Gora)', 'me', '382'],\n ['Montserrat', 'ms', '1664'],\n ['Morocco (‫المغرب‬‎)', 'ma', '212', 0],\n ['Mozambique (Moçambique)', 'mz', '258'],\n ['Myanmar (Burma) (မြန်မာ)', 'mm', '95'],\n ['Namibia (Namibië)', 'na', '264'],\n ['Nauru', 'nr', '674'],\n ['Nepal (नेपाल)', 'np', '977'],\n ['Netherlands (Nederland)', 'nl', '31'],\n ['New Caledonia (Nouvelle-Calédonie)', 'nc', '687'],\n ['New Zealand', 'nz', '64'],\n ['Nicaragua', 'ni', '505'],\n ['Niger (Nijar)', 'ne', '227'],\n ['Nigeria', 'ng', '234'],\n ['Niue', 'nu', '683'],\n ['Norfolk Island', 'nf', '672'],\n ['North Korea (조선 민주주의 인민 공화국)', 'kp', '850'],\n ['Northern Mariana Islands', 'mp', '1670'],\n ['Norway (Norge)', 'no', '47', 0],\n ['Oman (‫عُمان‬‎)', 'om', '968'],\n ['Pakistan (‫پاکستان‬‎)', 'pk', '92'],\n ['Palau', 'pw', '680'],\n ['Palestine (‫فلسطين‬‎)', 'ps', '970'],\n ['Panama (Panamá)', 'pa', '507'],\n ['Papua New Guinea', 'pg', '675'],\n ['Paraguay', 'py', '595'],\n ['Peru (Perú)', 'pe', '51'],\n ['Philippines', 'ph', '63'],\n ['Poland (Polska)', 'pl', '48'],\n ['Portugal', 'pt', '351'],\n ['Puerto Rico', 'pr', '1', 3, ['787', '939']],\n ['Qatar (‫قطر‬‎)', 'qa', '974'],\n ['Réunion (La Réunion)', 're', '262', 0],\n ['Romania (România)', 'ro', '40'],\n ['Russia (Россия)', 'ru', '7', 0],\n ['Rwanda', 'rw', '250'],\n ['Saint Barthélemy', 'bl', '590', 1],\n ['Saint Helena', 'sh', '290'],\n ['Saint Kitts and Nevis', 'kn', '1', 4, ['869']],\n ['Saint Lucia', 'lc', '1', 4, ['758']],\n ['Saint Martin (Saint-Martin (partie française))', 'mf', '590', 2],\n ['Saint Pierre and Miquelon (Saint-Pierre-et-Miquelon)', 'pm', '508'],\n ['Saint Vincent and the Grenadines', 'vc', '1784'],\n ['Samoa', 'ws', '685'],\n ['San Marino', 'sm', '378'],\n ['São Tomé and Príncipe (São Tomé e Príncipe)', 'st', '239'],\n ['Saudi Arabia (‫المملكة العربية السعودية‬‎)', 'sa', '966'],\n ['Senegal (Sénégal)', 'sn', '221'],\n ['Serbia (Србија)', 'rs', '381'],\n ['Seychelles', 'sc', '248'],\n ['Sierra Leone', 'sl', '232'],\n ['Singapore', 'sg', '65'],\n ['Sint Maarten', 'sx', '1', 4, ['721']],\n ['Slovakia (Slovensko)', 'sk', '421'],\n ['Slovenia (Slovenija)', 'si', '386'],\n ['Solomon Islands', 'sb', '677'],\n ['Somalia (Soomaaliya)', 'so', '252'],\n ['South Africa', 'za', '27'],\n ['South Korea (대한민국)', 'kr', '82'],\n ['South Sudan (‫جنوب السودان‬‎)', 'ss', '211'],\n ['Spain (España)', 'es', '34'],\n ['Sri Lanka (ශ්‍රී ලංකාව)', 'lk', '94'],\n ['Sudan (‫السودان‬‎)', 'sd', '249'],\n ['Suriname', 'sr', '597'],\n ['Svalbard and Jan Mayen', 'sj', '47', 1],\n ['Swaziland', 'sz', '268'],\n ['Sweden (Sverige)', 'se', '46'],\n ['Switzerland (Schweiz)', 'ch', '41'],\n ['Syria (‫سوريا‬‎)', 'sy', '963'],\n ['Taiwan (台灣)', 'tw', '886'],\n ['Tajikistan', 'tj', '992'],\n ['Tanzania', 'tz', '255'],\n ['Thailand (ไทย)', 'th', '66'],\n ['Timor-Leste', 'tl', '670'],\n ['Togo', 'tg', '228'],\n ['Tokelau', 'tk', '690'],\n ['Tonga', 'to', '676'],\n ['Trinidad and Tobago', 'tt', '1', 4, ['868']],\n ['Tunisia (‫تونس‬‎)', 'tn', '216'],\n ['Turkey (Türkiye)', 'tr', '90'],\n ['Turkmenistan', 'tm', '993'],\n ['Turks and Caicos Islands', 'tc', '1', 4, ['649']],\n ['Tuvalu', 'tv', '688'],\n ['U.S. Virgin Islands', 'vi', '1', 4, ['340']],\n ['Uganda', 'ug', '256'],\n ['Ukraine (Україна)', 'ua', '380'],\n ['United Arab Emirates (‫الإمارات العربية المتحدة‬‎)', 'ae', '971'],\n ['United Kingdom', 'gb', '44', 0],\n ['United States', 'us', '1', 0],\n ['Uruguay', 'uy', '598'],\n ['Uzbekistan (Oʻzbekiston)', 'uz', '998'],\n ['Vanuatu', 'vu', '678'],\n ['Vatican City (Città del Vaticano)', 'va', '39', 1],\n ['Venezuela', 've', '58'],\n ['Vietnam (Việt Nam)', 'vn', '84'],\n ['Wallis and Futuna (Wallis-et-Futuna)', 'wf', '681'],\n ['Western Sahara (‫الصحراء الغربية‬‎)', 'eh', '212', 1],\n ['Yemen (‫اليمن‬‎)', 'ye', '967'],\n ['Zambia', 'zm', '260'],\n ['Zimbabwe', 'zw', '263'],\n ['Åland Islands', 'ax', '358', 1],\n]\n\nexport const EXAMPLES: any = {\n // Examples\n '001': '001',\n AC: '40123',\n AD: '312345',\n AE: '501234567',\n AF: '701234567',\n AG: '2684641234',\n AI: '2642351234',\n AL: '662123456',\n AM: '77123456',\n AO: '923123456',\n AR: '91123456789',\n AS: '6847331234',\n AT: '664123456',\n AU: '412345678',\n AW: '5601234',\n AX: '412345678',\n AZ: '401234567',\n BA: '61123456',\n BB: '2462501234',\n BD: '1812345678',\n BE: '470123456',\n BF: '70123456',\n BG: '48123456',\n BH: '36001234',\n BI: '79561234',\n BJ: '90011234',\n BL: '690001234',\n BM: '4413701234',\n BN: '7123456',\n BO: '71234567',\n BQ: '3181234',\n BR: '11961234567',\n BS: '2423591234',\n BT: '17123456',\n BW: '71123456',\n BY: '294911911',\n BZ: '6221234',\n CA: '5062345678',\n CC: '412345678',\n CD: '991234567',\n CF: '70012345',\n CG: '061234567',\n CH: '781234567',\n CI: '01234567',\n CK: '71234',\n CL: '221234567',\n CM: '671234567',\n CN: '13123456789',\n CO: '3211234567',\n CR: '83123456',\n CU: '51234567',\n CV: '9911234',\n CW: '95181234',\n CX: '412345678',\n CY: '96123456',\n CZ: '601123456',\n DE: '15123456789',\n DJ: '77831001',\n DK: '32123456',\n DM: '7672251234',\n DO: '8092345678',\n DZ: '551234567',\n EC: '991234567',\n EE: '51234567',\n EG: '1001234567',\n EH: '650123456',\n ER: '7123456',\n ES: '612345678',\n ET: '911234567',\n FI: '412345678',\n FJ: '7012345',\n FK: '51234',\n FM: '3501234',\n FO: '211234',\n FR: '612345678',\n GA: '06031234',\n GB: '7400123456',\n GD: '4734031234',\n GE: '555123456',\n GF: '694201234',\n GG: '7781123456',\n GH: '231234567',\n GI: '57123456',\n GL: '221234',\n GM: '3012345',\n GN: '601123456',\n GP: '690001234',\n GQ: '222123456',\n GR: '6912345678',\n GT: '51234567',\n GU: '6713001234',\n GW: '955012345',\n GY: '6091234',\n HK: '51234567',\n HN: '91234567',\n HR: '921234567',\n HT: '34101234',\n HU: '201234567',\n ID: '812345678',\n IE: '850123456',\n IL: '502345678',\n IM: '7924123456',\n IN: '8123456789',\n IO: '3801234',\n IQ: '7912345678',\n IR: '9123456789',\n IS: '6111234',\n IT: '3123456789',\n JE: '7797712345',\n JM: '8762101234',\n JO: '790123456',\n JP: '9012345678',\n KE: '712123456',\n KG: '700123456',\n KH: '91234567',\n KI: '72001234',\n KM: '3212345',\n KN: '8697652917',\n KP: '1921234567',\n KR: '1000000000',\n KW: '50012345',\n KY: '3453231234',\n KZ: '7710009998',\n LA: '2023123456',\n LB: '71123456',\n LC: '7582845678',\n LI: '660234567',\n LK: '712345678',\n LR: '770123456',\n LS: '50123456',\n LT: '61234567',\n LU: '628123456',\n LV: '21234567',\n LY: '912345678',\n MA: '650123456',\n MC: '612345678',\n MD: '62112345',\n ME: '67622901',\n MF: '690001234',\n MG: '321234567',\n MH: '2351234',\n MK: '72345678',\n ML: '65012345',\n MM: '92123456',\n MN: '88123456',\n MO: '66123456',\n MP: '6702345678',\n MQ: '696201234',\n MR: '22123456',\n MS: '6644923456',\n MT: '96961234',\n MU: '52512345',\n MV: '7712345',\n MW: '991234567',\n MX: '12221234567',\n MY: '123456789',\n MZ: '821234567',\n NA: '811234567',\n NC: '751234',\n NE: '93123456',\n NF: '381234',\n NG: '8021234567',\n NI: '81234567',\n NL: '612345678',\n NO: '40612345',\n NP: '9841234567',\n NR: '5551234',\n NU: '8884012',\n NZ: '211234567',\n OM: '92123456',\n PA: '61234567',\n PE: '912345678',\n PF: '87123456',\n PG: '70123456',\n PH: '9051234567',\n PK: '3012345678',\n PL: '512345678',\n PM: '551234',\n PR: '7872345678',\n PS: '599123456',\n PT: '912345678',\n PW: '6201234',\n PY: '961456789',\n QA: '33123456',\n RE: '692123456',\n RO: '712034567',\n RS: '601234567',\n RU: '9123456789',\n RW: '720123456',\n SA: '512345678',\n SB: '7421234',\n SC: '2510123',\n SD: '911231234',\n SE: '701234567',\n SG: '81234567',\n SH: '51234',\n SI: '31234567',\n SJ: '41234567',\n SK: '912123456',\n SL: '25123456',\n SM: '66661212',\n SN: '701234567',\n SO: '71123456',\n SR: '7412345',\n SS: '977123456',\n ST: '9812345',\n SV: '70123456',\n SX: '7215205678',\n SY: '944567890',\n SZ: '76123456',\n TA: '8999',\n TC: '6492311234',\n TD: '63012345',\n TG: '90112345',\n TH: '812345678',\n TJ: '917123456',\n TK: '7290',\n TL: '77212345',\n TM: '66123456',\n TN: '20123456',\n TO: '7715123',\n TR: '5012345678',\n TT: '8682911234',\n TV: '901234',\n TW: '912345678',\n TZ: '621234567',\n UA: '501234567',\n UG: '712345678',\n US: '2015550123',\n UY: '94231234',\n UZ: '912345678',\n VA: '3123456789',\n VC: '7844301234',\n VE: '4121234567',\n VG: '2843001234',\n VI: '3406421234',\n VN: '912345678',\n VU: '5912345',\n WF: '501234',\n WS: '7212345',\n XK: '43201234',\n YE: '712345678',\n YT: '639012345',\n ZA: '711234567',\n ZM: '955123456',\n ZW: '712345678',\n}\n","import { NgClass } from '@angular/common'\nimport { ChangeDetectionStrategy, Component, Input } from '@angular/core'\nimport { CountryFlag } from '../model/country.model'\n\n@Component({\n selector: 'ngx-mat-input-tel-flag',\n imports: [NgClass],\n template: `<div class=\"flag\" [ngClass]=\"country.flagClass\"></div>\n\n @if (country.name) {\n <span class=\"country-selector-name\">{{ country.name }}</span>\n }\n\n @if (country.dialCode) {\n <span class=\"country-selector-code\"\n >+{{ country.dialCode }}\n\n @if (country.areaCodes) {\n {{ country.areaCodes.join(', ') }}\n }\n </span>\n }`,\n styleUrl: './ngx-mat-input-tel-flag.component.scss',\n changeDetection: ChangeDetectionStrategy.OnPush,\n})\nexport class NgxMatInputTelFlagComponent {\n @Input({ required: true }) country!: CountryFlag\n}\n","import { AbstractControl, ValidationErrors } from '@angular/forms'\nimport { parsePhoneNumber, PhoneNumber } from 'libphonenumber-js'\n\nexport const ngxMatInputTelValidator = (control: AbstractControl): ValidationErrors | null => {\n const error = { validatePhoneNumber: true }\n let numberInstance: PhoneNumber\n\n if (control.value) {\n try {\n numberInstance = parsePhoneNumber(control.value)\n } catch (e) {\n console.error(e)\n return error\n }\n\n if (numberInstance && !numberInstance.isValid()) {\n if (!control.touched) {\n control.markAsTouched()\n }\n return error\n }\n }\n return null\n}\n","import { Pipe, PipeTransform } from '@angular/core'\n\nimport { Country } from '../lib/model/country.model'\n\n@Pipe({\n name: 'search',\n standalone: true,\n})\nexport class SearchPipe implements PipeTransform {\n transform(countries: Country[], searchCriteria?: string): Country[] {\n if (!searchCriteria || searchCriteria === '') {\n return countries\n }\n\n return countries.filter((country) => {\n return `${country.name}+${country.dialCode}${country.areaCodes ? country.areaCodes.join(',') : ''}`\n .toLowerCase()\n .includes(searchCriteria.toLowerCase())\n })\n }\n}\n","import { FocusMonitor } from '@angular/cdk/a11y'\nimport { coerceBooleanProperty } from '@angular/cdk/coercion'\nimport { NgClass } from '@angular/common'\nimport {\n ChangeDetectionStrategy,\n ChangeDetectorRef,\n Component,\n DoCheck,\n ElementRef,\n EventEmitter,\n HostBinding,\n Input,\n OnDestroy,\n OnInit,\n Optional,\n Output,\n Self,\n ViewChild,\n WritableSignal,\n booleanAttribute,\n signal,\n} from '@angular/core'\nimport {\n FormControl,\n FormGroupDirective,\n FormsModule,\n NG_VALIDATORS,\n NgControl,\n NgForm,\n ReactiveFormsModule,\n} from '@angular/forms'\nimport { ErrorStateMatcher, MatRippleModule } from '@angular/material/core'\nimport { MatDividerModule } from '@angular/material/divider'\nimport { MatFormFieldControl } from '@angular/material/form-field'\nimport { MatInputModule } from '@angular/material/input'\nimport { MatMenu, MatMenuModule } from '@angular/material/menu'\nimport {\n AsYouType,\n CountryCode as CC,\n CountryCode,\n E164Number,\n NationalNumber,\n PhoneNumber,\n getExampleNumber,\n parsePhoneNumberFromString,\n} from 'libphonenumber-js'\nimport { Subject } from 'rxjs'\nimport { ALL_COUNTRIES, EXAMPLES } from './data/country-code.const'\nimport { Country } from './model/country.model'\nimport { PhoneNumberFormat } from './model/phone-number-format.model'\nimport { NgxMatInputTelFlagComponent } from './ngx-mat-input-tel-flag/ngx-mat-input-tel-flag.component'\nimport { ngxMatInputTelValidator } from './ngx-mat-input-tel.validator'\nimport { SearchPipe } from './search.pipe'\n\nclass ngxMatInputTelBase {\n constructor(\n public _defaultErrorStateMatcher: ErrorStateMatcher,\n public _parentForm: NgForm,\n public _parentFormGroup: FormGroupDirective,\n public ngControl: NgControl,\n ) {}\n}\n\n@Component({\n selector: 'ngx-mat-input-tel',\n templateUrl: './ngx-mat-input-tel.component.html',\n styleUrls: ['./ngx-mat-input-tel.component.scss'],\n providers: [\n { provide: MatFormFieldControl, useExisting: NgxMatInputTelComponent },\n {\n provide: NG_VALIDATORS,\n useValue: ngxMatInputTelValidator,\n multi: true,\n },\n ],\n changeDetection: ChangeDetectionStrategy.OnPush,\n imports: [\n NgClass,\n\n // Forms\n FormsModule,\n ReactiveFormsModule,\n MatInputModule,\n\n // Mat\n MatMenuModule,\n MatRippleModule,\n MatDividerModule,\n\n // Components\n NgxMatInputTelFlagComponent,\n\n // Pipes\n SearchPipe,\n ],\n})\nexport class NgxMatInputTelComponent\n extends ngxMatInputTelBase\n implements OnInit, DoCheck, OnDestroy\n{\n static nextId = 0\n @ViewChild(MatMenu) matMenu!: MatMenu\n @ViewChild('menuSearchInput', { static: false }) menuSearchInput?: ElementRef<HTMLInputElement>\n @ViewChild('focusable', { static: false }) focusable!: ElementRef\n\n @HostBinding()\n id = `ngx-mat-input-tel-${NgxMatInputTelComponent.nextId++}`\n @HostBinding('class.ngx-floating')\n get shouldLabelFloat(): boolean {\n return this.focused || !this.empty\n }\n\n @Input() autocomplete: 'off' | 'tel' = 'off'\n @Input() ariaLabel = 'Select country'\n @Input() cssClass?: string\n @Input() defaultCountry?: CountryCode\n @Input() errorStateMatcher: ErrorStateMatcher = this._defaultErrorStateMatcher\n @Input() maxLength: string | number = 15\n @Input() name?: string\n @Input() placeholder = ''\n @Input() preferredCountries: string[] = []\n\n @Input() set onlyCountries(countryCodes: string[]) {\n if (countryCodes.length) {\n this.$availableCountries.set(this._getFilteredCountries(countryCodes))\n }\n\n this._setPreferredCountriesInDropDown()\n this._setDefaultCountry()\n }\n\n @Input() searchPlaceholder = 'Search ...'\n @Input() validation: 'isValid' | 'isPossible' = 'isValid'\n @Input({ transform: booleanAttribute }) enablePlaceholder = false\n @Input({ transform: booleanAttribute }) enableSearch = false\n @Input({ transform: booleanAttribute }) resetOnChange = false\n @Input()\n set format(value: PhoneNumberFormat) {\n this._format = value\n this.phoneNumber = this.formattedPhoneNumber()\n this.stateChanges.next()\n }\n get format(): PhoneNumberFormat {\n return this._format\n }\n\n private _required = false\n @Input({ transform: booleanAttribute })\n set required(value: boolean) {\n this._required = coerceBooleanProperty(value)\n this.stateChanges.next(undefined)\n }\n get required(): boolean {\n return this._required\n }\n\n private _disabled = false\n @Input({ transform: booleanAttribute })\n set disabled(value: boolean) {\n this._disabled = coerceBooleanProperty(value)\n this.stateChanges.next(undefined)\n }\n get disabled(): boolean {\n return this._disabled\n }\n\n get empty(): boolean {\n return !this.phoneNumber\n }\n\n @Output()\n countryChanged: EventEmitter<Country> = new EventEmitter<Country>()\n\n stateChanges = new Subject<void>()\n focused = false\n describedBy = ''\n phoneNumber?: E164Number | NationalNumber = '' as E164Number | NationalNumber\n private _allCountries: Country[] = []\n $availableCountries = signal<Country[]>(this._initAllCountries())\n $preferredCountriesInDropDown = signal<Country[]>([])\n $selectedCountry!: WritableSignal<Country>\n numberInstance?: PhoneNumber\n value?: any\n searchCriteria?: string\n\n private _previousFormattedNumber?: string\n private _format: PhoneNumberFormat = 'default'\n\n onTouched = () => {}\n propagateChange = (_: any) => {}\n\n private errorState?: boolean\n\n constructor(\n private _changeDetectorRef: ChangeDetectorRef,\n private _focusMonitor: FocusMonitor,\n private _elementRef: ElementRef<HTMLElement>,\n @Optional() @Self() _ngControl: NgControl,\n @Optional() _parentForm: NgForm,\n @Optional() _parentFormGroup: FormGroupDirective,\n _defaultErrorStateMatcher: ErrorStateMatcher,\n ) {\n super(_defaultErrorStateMatcher, _parentForm, _parentFormGroup, _ngControl)\n\n _focusMonitor.monitor(_elementRef, true).subscribe((origin: any) => {\n if (this.focused && !origin) {\n this.onTouched()\n }\n this.focused = !!origin\n this.stateChanges.next()\n })\n\n if (this.ngControl != null) {\n this.ngControl.valueAccessor = this\n }\n }\n\n ngOnInit() {\n this._setPreferredCountriesInDropDown()\n this._setDefaultCountry()\n\n this._changeDetectorRef.markForCheck()\n this.stateChanges.next()\n }\n\n ngOnDestroy() {\n this.stateChanges.complete()\n this._focusMonitor.stopMonitoring(this._elementRef)\n }\n\n ngDoCheck(): void {\n if (this.ngControl) {\n const oldState = this.errorState\n const newState = this.errorStateMatcher.isErrorState(this.ngControl.control, this._parentForm)\n\n this.errorState =\n (newState && (!this.ngControl.control?.value || this.ngControl.control?.touched)) ||\n (!this.focused ? newState : false)\n\n if (oldState !== newState) {\n this.errorState = newState\n this.stateChanges.next()\n }\n }\n }\n\n onMenuOpened() {\n this.menuSearchInput?.nativeElement?.focus()\n }\n\n updateErrorState() {\n if (\n this.ngControl &&\n this.ngControl.invalid &&\n (this.ngControl.touched || (this._parentForm && this._parentForm.submitted))\n ) {\n const currentState = this.errorStateMatcher.isErrorState(\n this.ngControl.control as FormControl,\n this.ngControl?.value,\n )\n if (currentState !== this.errorState) {\n this.errorState = currentState\n this._changeDetectorRef.markForCheck()\n }\n }\n }\n\n private _setPreferredCountriesInDropDown(countries = this.preferredCountries) {\n this.$preferredCountriesInDropDown.set(this._getFilteredCountries(countries))\n }\n\n private _setDefaultCountry() {\n let country: Country\n\n if (this.numberInstance?.country) {\n // If an existing number is present, we use it to determine country\n country = this.getCountry(this.numberInstance.country)\n } else if (this.defaultCountry) {\n country = this.getCountry(this.defaultCountry)\n } else if (this.$preferredCountriesInDropDown().length) {\n country = this.$preferredCountriesInDropDown()[0]\n } else {\n country = this._allCountries[0]\n }\n this.$selectedCountry = signal<Country>(country)\n this.countryChanged.emit(country)\n }\n\n private _getFilteredCountries(countryCodes: string[]) {\n const filteredCountries = this._allCountries.filter((c) => countryCodes.includes(c.iso2))\n\n return filteredCountries.sort(\n (a, b) => countryCodes.indexOf(a.iso2) - countryCodes.indexOf(b.iso2),\n )\n }\n\n public onPhoneNumberChange(): void {\n try {\n this._setCountry()\n } catch {\n // Pass a value to trigger the validator error\n this.value = this.formattedPhoneNumber().toString()\n }\n\n this.propagateChange(this.value)\n this._changeDetectorRef.markForCheck()\n }\n\n private _setCountry() {\n if (!this.phoneNumber) {\n this.value = null\n return\n }\n\n const numberInstance = parsePhoneNumberFromString(\n this.phoneNumber.toString(),\n this.$selectedCountry().iso2.toUpperCase() as CC,\n )\n if (!numberInstance) return\n this.numberInstance = numberInstance\n\n this.formatAsYouTypeIfEnabled()\n this.value = this.numberInstance?.number\n\n if (!this.value) throw new Error('Incorrect phone number')\n\n if (\n this.numberInstance &&\n (this.validation === 'isPossible'\n ? this.numberInstance.isPossible()\n : this.numberInstance.isValid())\n ) {\n if (this.phoneNumber !== this.formattedPhoneNumber()) {\n this.phoneNumber = this.formattedPhoneNumber()\n }\n if (\n this.$selectedCountry().iso2 !== this.numberInstance.country &&\n this.numberInstance.country\n ) {\n this.$selectedCountry.set(this.getCountry(this.numberInstance.country))\n this.countryChanged.emit(this.$selectedCountry())\n }\n }\n }\n\n public onCountrySelect(country: Country): void {\n if (this.phoneNumber) {\n this.phoneNumber = this.numberInstance?.nationalNumber\n }\n if (this.resetOnChange && this.$selectedCountry() !== country) {\n this.reset()\n }\n\n this.$selectedCountry.set(country)\n this.countryChanged.emit(this.$selectedCountry())\n\n this.onPhoneNumberChange()\n\n setTimeout(() => {\n this.focusable.nativeElement.focus()\n }, 0)\n }\n\n public getCountry(code: CC): Country {\n return (this._allCountries.find((c) => c.iso2 === code.toLowerCase()) || {\n name: 'UN',\n iso2: 'UN',\n dialCode: undefined,\n priority: 0,\n areaCodes: undefined,\n flagClass: 'UN',\n placeHolder: '',\n }) as Country\n }\n\n public onInputKeyPress(event: any): void {\n const pattern = /[0-9+\\- ]/\n if (!pattern.test(event.key)) {\n event.preventDefault()\n }\n }\n\n protected _initAllCountries(): Country[] {\n this._allCountries = ALL_COUNTRIES.map((c) => {\n const country: Country = {\n name: c[0].toString(),\n iso2: c[1].toString(),\n dialCode: c[2].toString(),\n priority: +c[3] || 0,\n areaCodes: (c[4] as string[]) || undefined,\n flagClass: c[1].toString().toUpperCase(),\n placeHolder: '',\n }\n\n if (this.enablePlaceholder) {\n country.placeHolder = this._getPhoneNumberPlaceHolder(country.iso2.toUpperCase())\n }\n\n return country\n })\n\n return this._allCountries\n }\n\n private _getPhoneNumberPlaceHolder(countryISOCode: any): string | undefined {\n try {\n return getExampleNumber(countryISOCode, EXAMPLES)?.number\n } catch (e) {\n return e as any\n }\n }\n\n registerOnChange(fn: any): void {\n this.propagateChange = fn\n }\n\n registerOnTouched(fn: any): void {\n this.onTouched = fn\n }\n\n setDisabledState(isDisabled: boolean): void {\n this.disabled = isDisabled\n this._changeDetectorRef.markForCheck()\n this.stateChanges.next(undefined)\n }\n\n writeValue(value: any): void {\n if (value) {\n this.numberInstance = parsePhoneNumberFromString(value)\n if (this.numberInstance) {\n const countryCode = this.numberInstance.country\n this.phoneNumber = this.formattedPhoneNumber()\n\n if (!countryCode) return\n\n if (!this.$selectedCountry) {\n // Init value was given\n this.$selectedCountry = signal<Country>(this.getCountry(countryCode))\n } else {\n this.$selectedCountry.set(this.getCountry(countryCode))\n }\n if (\n this.$selectedCountry().dialCode &&\n !this.preferredCountries.includes(this.$selectedCountry().iso2)\n ) {\n this.$preferredCountriesInDropDown.update((values) => {\n return [...values, this.$selectedCountry()]\n })\n }\n this.countryChanged.emit(this.$selectedCountry())\n\n // Initial value is set\n this.stateChanges.next()\n } else {\n this.phoneNumber = value\n this.stateChanges.next(undefined)\n }\n }\n\n // Value is set from outside using setValue()\n this.onPhoneNumberChange()\n this._changeDetectorRef.markForCheck()\n }\n\n setDescribedByIds(ids: string[]) {\n this.describedBy = ids.join(' ')\n }\n\n onContainerClick(event: MouseEvent): void {\n if ((event.target as Element).tagName.toLowerCase() !== 'input') {\n this._elementRef.nativeElement.querySelector('input')!.focus()\n }\n }\n\n reset() {\n this.phoneNumber = '' as E164Number | NationalNumber\n this.propagateChange(null)\n\n this._changeDetectorRef.markForCheck()\n this.stateChanges.next(undefined)\n }\n\n private formattedPhoneNumber(): E164Number | NationalNumber {\n if (!this.numberInstance) {\n return (this.phoneNumber?.toString() || '') as E164Number | NationalNumber\n }\n switch (this.format) {\n case 'national':\n return this.numberInstance.formatNational() as E164Number | NationalNumber\n case 'international':\n return this.numberInstance.formatInternational() as E164Number | NationalNumber\n default:\n return this.numberInstance.nationalNumber.toString() as E164Number | NationalNumber\n }\n }\n\n private formatAsYouTypeIfEnabled(): void {\n if (this.format === 'default') {\n return\n }\n const asYouType: AsYouType = new AsYouType(this.$selectedCountry().iso2.toUpperCase() as CC)\n // To avoid caret positioning we apply formatting only if the caret is at the end:\n if (!this.phoneNumber) return\n\n if (this.phoneNumber?.toString().startsWith(this._previousFormattedNumber || '')) {\n this.phoneNumber = asYouType.input(this.phoneNumber.toString()) as E164Number | NationalNumber\n }\n this._previousFormattedNumber = this.phoneNumber.toString()\n }\n\n onSearchInputChange(): void {\n setTimeout(() => {\n this.menuSearchInput?.nativeElement.focus()\n }, 200)\n }\n}\n","<div class=\"ngx-mat-input-tel-container\">\n <button\n type=\"button\"\n matRipple\n [matMenuTriggerFor]=\"menu\"\n class=\"country-selector\"\n [disabled]=\"disabled\"\n (menuOpened)=\"onMenuOpened()\"\n [attr.aria-label]=\"ariaLabel\"\n >\n <ngx-mat-input-tel-flag\n class=\"main-flag\"\n [country]=\"{\n flagClass: $selectedCountry().flagClass,\n dialCode: $selectedCountry().dialCode,\n }\"\n ></ngx-mat-input-tel-flag>\n </button>\n\n <mat-menu\n #menu=\"matMenu\"\n class=\"ngx-mat-input-tel-overlay-pane\"\n [backdropClass]=\"'ngx-mat-input-tel-overlay-backdrop'\"\n >\n @if (enableSearch) {\n <input\n #menuSearchInput\n class=\"country-search\"\n [(ngModel)]=\"searchCriteria\"\n type=\"text\"\n [placeholder]=\"searchPlaceholder\"\n (click)=\"$event.stopPropagation()\"\n style=\"\n width: calc(100% - 4px);\n height: 34px;\n border-top: none;\n border-right: none;\n border-left: none;\n border-image: initial;\n border-bottom: 1px solid rgb(221, 221, 221);\n font-size: 14px;\n padding: 20px 10px 24px;\n box-sizing: border-box;\n background: transparent;\n margin: 2px;\n \"\n />\n }\n @for (country of $preferredCountriesInDropDown(); track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n @if ($preferredCountriesInDropDown().length) {\n <mat-divider></mat-divider>\n }\n @for (country of $availableCountries() | search: searchCriteria; track $index) {\n <button\n type=\"button\"\n mat-menu-item\n class=\"country-list-button\"\n (click)=\"onCountrySelect(country)\"\n >\n <ngx-mat-input-tel-flag class=\"menu-flag\" [country]=\"country\"></ngx-mat-input-tel-flag>\n </button>\n }\n </mat-menu>\n\n <input\n class=\"ngx-mat-input-tel-input\"\n matInput\n type=\"tel\"\n inputmode=\"tel\"\n [autocomplete]=\"autocomplete\"\n [ngClass]=\"cssClass\"\n (blur)=\"onTouched()\"\n (keypress)=\"onInputKeyPress($event)\"\n [(ngModel)]=\"phoneNumber\"\n (ngModelChange)=\"onPhoneNumberChange()\"\n [errorStateMatcher]=\"errorStateMatcher\"\n [placeholder]=\"placeholder || $selectedCountry().placeHolder || ''\"\n [disabled]=\"disabled\"\n #focusable\n [maxlength]=\"maxLength\"\n />\n</div>\n","/*\n * Public API Surface of ngx-mat-input-tel\n */\n\nexport * from './lib/ngx-mat-input-tel.component'\nexport * from './lib/ngx-mat-input-tel.validator'\n","/**\n * Generated bundle index. Do not edit.\n */\n\nexport * from './public-api';\n"],"names":[],"mappings":"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"}
package/index.d.ts CHANGED
@@ -40,6 +40,7 @@ declare class NgxMatInputTelComponent extends ngxMatInputTelBase implements OnIn
40
40
  id: string;
41
41
  get shouldLabelFloat(): boolean;
42
42
  autocomplete: 'off' | 'tel';
43
+ ariaLabel: string;
43
44
  cssClass?: string;
44
45
  defaultCountry?: CountryCode;
45
46
  errorStateMatcher: ErrorStateMatcher;
@@ -104,8 +105,9 @@ declare class NgxMatInputTelComponent extends ngxMatInputTelBase implements OnIn
104
105
  reset(): void;
105
106
  private formattedPhoneNumber;
106
107
  private formatAsYouTypeIfEnabled;
108
+ onSearchInputChange(): void;
107
109
  static ɵfac: i0.ɵɵFactoryDeclaration<NgxMatInputTelComponent, [null, null, null, { optional: true; self: true; }, { optional: true; }, { optional: true; }, null]>;
108
- static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatInputTelComponent, "ngx-mat-input-tel", never, { "autocomplete": { "alias": "autocomplete"; "required": false; }; "cssClass": { "alias": "cssClass"; "required": false; }; "defaultCountry": { "alias": "defaultCountry"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "name": { "alias": "name"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "preferredCountries": { "alias": "preferredCountries"; "required": false; }; "onlyCountries": { "alias": "onlyCountries"; "required": false; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "validation": { "alias": "validation"; "required": false; }; "enablePlaceholder": { "alias": "enablePlaceholder"; "required": false; }; "enableSearch": { "alias": "enableSearch"; "required": false; }; "resetOnChange": { "alias": "resetOnChange"; "required": false; }; "format": { "alias": "format"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "countryChanged": "countryChanged"; }, never, never, true, never>;
110
+ static ɵcmp: i0.ɵɵComponentDeclaration<NgxMatInputTelComponent, "ngx-mat-input-tel", never, { "autocomplete": { "alias": "autocomplete"; "required": false; }; "ariaLabel": { "alias": "ariaLabel"; "required": false; }; "cssClass": { "alias": "cssClass"; "required": false; }; "defaultCountry": { "alias": "defaultCountry"; "required": false; }; "errorStateMatcher": { "alias": "errorStateMatcher"; "required": false; }; "maxLength": { "alias": "maxLength"; "required": false; }; "name": { "alias": "name"; "required": false; }; "placeholder": { "alias": "placeholder"; "required": false; }; "preferredCountries": { "alias": "preferredCountries"; "required": false; }; "onlyCountries": { "alias": "onlyCountries"; "required": false; }; "searchPlaceholder": { "alias": "searchPlaceholder"; "required": false; }; "validation": { "alias": "validation"; "required": false; }; "enablePlaceholder": { "alias": "enablePlaceholder"; "required": false; }; "enableSearch": { "alias": "enableSearch"; "required": false; }; "resetOnChange": { "alias": "resetOnChange"; "required": false; }; "format": { "alias": "format"; "required": false; }; "required": { "alias": "required"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; }, { "countryChanged": "countryChanged"; }, never, never, true, never>;
109
111
  static ngAcceptInputType_enablePlaceholder: unknown;
110
112
  static ngAcceptInputType_enableSearch: unknown;
111
113
  static ngAcceptInputType_resetOnChange: unknown;
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "ngx-mat-input-tel",
3
- "version": "20.2.1",
3
+ "version": "20.3.0",
4
4
  "author": {
5
5
  "name": "Raphaël Balet",
6
6
  "email": "raphael.balet@outlook.com"