intl-tel-input 27.1.3 → 27.2.1

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/CHANGELOG.md CHANGED
@@ -1,6 +1,6 @@
1
1
  See the Github Releases page for changelog: https://github.com/jackocnr/intl-tel-input/releases
2
2
 
3
- Or to view a specific version, e.g. v27.1.3, update the URL accordingly, e.g. https://github.com/jackocnr/intl-tel-input/releases/tag/v27.1.3
3
+ Or to view a specific version, e.g. v27.2.1, update the URL accordingly, e.g. https://github.com/jackocnr/intl-tel-input/releases/tag/v27.2.1
4
4
 
5
5
  ## Breaking changes
6
6
 
package/README.md CHANGED
@@ -3,7 +3,7 @@
3
3
 
4
4
  A JavaScript plugin for entering, formatting and validating international telephone numbers. Includes React, Vue, Angular and Svelte components, plus TypeScript definitions.
5
5
 
6
- [Explore docs »](https://intl-tel-input.com/docs/choose-integration)
6
+ [Explore docs »](https://intl-tel-input.com/docs/integrations)
7
7
 
8
8
  <picture>
9
9
  <source media="(prefers-color-scheme: dark)" srcset="https://raw.github.com/jackocnr/intl-tel-input/master/screenshots/iti-github-dark.png">
@@ -20,7 +20,7 @@ Use [Twilio's API to build phone verification, SMS 2FA, appointment reminders, m
20
20
  We provide React, Vue, Angular and Svelte (beta) components alongside the regular JavaScript plugin. This readme is for the JavaScript plugin. View the [React Component](https://intl-tel-input.com/docs/react-component), the [Vue Component](https://intl-tel-input.com/docs/vue-component) the [Angular Component](https://intl-tel-input.com/docs/angular-component), or the [Svelte component](https://intl-tel-input.com/docs/svelte-component).
21
21
 
22
22
  ## Docs and Examples
23
- We have a newly updated website, where you can find [a full set of docs](https://intl-tel-input.com/docs/getting-started.html), a [live playground](https://intl-tel-input.com/playground/) where you can try out all of the options, as well as plenty of [examples](https://intl-tel-input.com/examples/validation-practical.html) of different setups.
23
+ We have a newly updated website, where you can find [a full set of docs](https://intl-tel-input.com/docs/integrations), a [live playground](https://intl-tel-input.com/playground/) where you can try out all of the options, as well as plenty of [examples](https://intl-tel-input.com/examples/validation-practical.html) of different setups.
24
24
 
25
25
  ## Features
26
26
  * Automatically select the user's current country using an IP lookup
package/angular/README.md CHANGED
@@ -3,3 +3,11 @@
3
3
  An Angular component for the [intl-tel-input](https://github.com/jackocnr/intl-tel-input) JavaScript plugin. View the [source code](https://github.com/jackocnr/intl-tel-input/blob/master/angular/src/IntlTelInput.ts).
4
4
 
5
5
  [Explore docs »](https://intl-tel-input.com/docs/angular-component)
6
+
7
+ ## Running the demos locally
8
+
9
+ 1. Initialise the submodules: `git submodule update --init --recursive`
10
+ 2. Install dependencies: `npm install`
11
+ 3. Build: `npm run build`
12
+
13
+ You can then open `angular/demo/validation/index.html` in your browser to try the validation demo. View the full list of [available demos](https://github.com/jackocnr/intl-tel-input/tree/master/angular/demo).
@@ -4,6 +4,11 @@ import { OnDestroy, ElementRef, EventEmitter, AfterViewInit, OnChanges, SimpleCh
4
4
  import { ControlValueAccessor, Validator, AbstractControl, ValidationErrors } from "@angular/forms";
5
5
  import * as i0 from "@angular/core";
6
6
  export { intlTelInput };
7
+ export type StrictRejectDetail = {
8
+ source: "key" | "paste";
9
+ rejectedInput: string;
10
+ reason: "invalid" | "max-length";
11
+ };
7
12
  declare class IntlTelInput implements AfterViewInit, OnDestroy, OnChanges, ControlValueAccessor, Validator {
8
13
  inputRef: ElementRef<HTMLInputElement>;
9
14
  /** initialValue is only used during initialization — changes after init are ignored. */
@@ -45,6 +50,9 @@ declare class IntlTelInput implements AfterViewInit, OnDestroy, OnChanges, Contr
45
50
  countryChange: EventEmitter<string>;
46
51
  validityChange: EventEmitter<boolean>;
47
52
  errorCodeChange: EventEmitter<number | null>;
53
+ openCountryDropdown: EventEmitter<void>;
54
+ closeCountryDropdown: EventEmitter<void>;
55
+ strictReject: EventEmitter<StrictRejectDetail>;
48
56
  blur: EventEmitter<FocusEvent>;
49
57
  focus: EventEmitter<FocusEvent>;
50
58
  keydown: EventEmitter<KeyboardEvent>;
@@ -62,6 +70,9 @@ declare class IntlTelInput implements AfterViewInit, OnDestroy, OnChanges, Contr
62
70
  private onChange;
63
71
  private onTouched;
64
72
  private onValidatorChange;
73
+ private handleOpenDropdown;
74
+ private handleCloseDropdown;
75
+ private handleStrictReject;
65
76
  ngAfterViewInit(): void;
66
77
  private buildInitOptions;
67
78
  ngOnChanges(changes: SimpleChanges): void;
@@ -92,6 +103,6 @@ declare class IntlTelInput implements AfterViewInit, OnDestroy, OnChanges, Contr
92
103
  validate(_control: AbstractControl): ValidationErrors | null;
93
104
  registerOnValidatorChange(fn: () => void): void;
94
105
  static ɵfac: i0.ɵɵFactoryDeclaration<IntlTelInput, never>;
95
- static ɵcmp: i0.ɵɵComponentDeclaration<IntlTelInput, "intl-tel-input", never, { "initialValue": { "alias": "initialValue"; "required": false; }; "usePreciseValidation": { "alias": "usePreciseValidation"; "required": false; }; "inputAttributes": { "alias": "inputAttributes"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "allowDropdown": { "alias": "allowDropdown"; "required": false; }; "allowedNumberTypes": { "alias": "allowedNumberTypes"; "required": false; }; "allowNumberExtensions": { "alias": "allowNumberExtensions"; "required": false; }; "allowPhonewords": { "alias": "allowPhonewords"; "required": false; }; "autoPlaceholder": { "alias": "autoPlaceholder"; "required": false; }; "containerClass": { "alias": "containerClass"; "required": false; }; "countryNameLocale": { "alias": "countryNameLocale"; "required": false; }; "countryOrder": { "alias": "countryOrder"; "required": false; }; "countrySearch": { "alias": "countrySearch"; "required": false; }; "customPlaceholder": { "alias": "customPlaceholder"; "required": false; }; "dropdownAlwaysOpen": { "alias": "dropdownAlwaysOpen"; "required": false; }; "dropdownContainer": { "alias": "dropdownContainer"; "required": false; }; "excludeCountries": { "alias": "excludeCountries"; "required": false; }; "fixDropdownWidth": { "alias": "fixDropdownWidth"; "required": false; }; "formatAsYouType": { "alias": "formatAsYouType"; "required": false; }; "formatOnDisplay": { "alias": "formatOnDisplay"; "required": false; }; "geoIpLookup": { "alias": "geoIpLookup"; "required": false; }; "hiddenInput": { "alias": "hiddenInput"; "required": false; }; "i18n": { "alias": "i18n"; "required": false; }; "initialCountry": { "alias": "initialCountry"; "required": false; }; "loadUtils": { "alias": "loadUtils"; "required": false; }; "nationalMode": { "alias": "nationalMode"; "required": false; }; "onlyCountries": { "alias": "onlyCountries"; "required": false; }; "placeholderNumberType": { "alias": "placeholderNumberType"; "required": false; }; "searchInputClass": { "alias": "searchInputClass"; "required": false; }; "separateDialCode": { "alias": "separateDialCode"; "required": false; }; "showFlags": { "alias": "showFlags"; "required": false; }; "strictMode": { "alias": "strictMode"; "required": false; }; "useFullscreenPopup": { "alias": "useFullscreenPopup"; "required": false; }; }, { "numberChange": "numberChange"; "countryChange": "countryChange"; "validityChange": "validityChange"; "errorCodeChange": "errorCodeChange"; "blur": "blur"; "focus": "focus"; "keydown": "keydown"; "keyup": "keyup"; "paste": "paste"; "click": "click"; }, never, never, true, never>;
106
+ static ɵcmp: i0.ɵɵComponentDeclaration<IntlTelInput, "intl-tel-input", never, { "initialValue": { "alias": "initialValue"; "required": false; }; "usePreciseValidation": { "alias": "usePreciseValidation"; "required": false; }; "inputAttributes": { "alias": "inputAttributes"; "required": false; }; "disabled": { "alias": "disabled"; "required": false; }; "readonly": { "alias": "readonly"; "required": false; }; "allowDropdown": { "alias": "allowDropdown"; "required": false; }; "allowedNumberTypes": { "alias": "allowedNumberTypes"; "required": false; }; "allowNumberExtensions": { "alias": "allowNumberExtensions"; "required": false; }; "allowPhonewords": { "alias": "allowPhonewords"; "required": false; }; "autoPlaceholder": { "alias": "autoPlaceholder"; "required": false; }; "containerClass": { "alias": "containerClass"; "required": false; }; "countryNameLocale": { "alias": "countryNameLocale"; "required": false; }; "countryOrder": { "alias": "countryOrder"; "required": false; }; "countrySearch": { "alias": "countrySearch"; "required": false; }; "customPlaceholder": { "alias": "customPlaceholder"; "required": false; }; "dropdownAlwaysOpen": { "alias": "dropdownAlwaysOpen"; "required": false; }; "dropdownContainer": { "alias": "dropdownContainer"; "required": false; }; "excludeCountries": { "alias": "excludeCountries"; "required": false; }; "fixDropdownWidth": { "alias": "fixDropdownWidth"; "required": false; }; "formatAsYouType": { "alias": "formatAsYouType"; "required": false; }; "formatOnDisplay": { "alias": "formatOnDisplay"; "required": false; }; "geoIpLookup": { "alias": "geoIpLookup"; "required": false; }; "hiddenInput": { "alias": "hiddenInput"; "required": false; }; "i18n": { "alias": "i18n"; "required": false; }; "initialCountry": { "alias": "initialCountry"; "required": false; }; "loadUtils": { "alias": "loadUtils"; "required": false; }; "nationalMode": { "alias": "nationalMode"; "required": false; }; "onlyCountries": { "alias": "onlyCountries"; "required": false; }; "placeholderNumberType": { "alias": "placeholderNumberType"; "required": false; }; "searchInputClass": { "alias": "searchInputClass"; "required": false; }; "separateDialCode": { "alias": "separateDialCode"; "required": false; }; "showFlags": { "alias": "showFlags"; "required": false; }; "strictMode": { "alias": "strictMode"; "required": false; }; "useFullscreenPopup": { "alias": "useFullscreenPopup"; "required": false; }; }, { "numberChange": "numberChange"; "countryChange": "countryChange"; "validityChange": "validityChange"; "errorCodeChange": "errorCodeChange"; "openCountryDropdown": "openCountryDropdown"; "closeCountryDropdown": "closeCountryDropdown"; "strictReject": "strictReject"; "blur": "blur"; "focus": "focus"; "keydown": "keydown"; "keyup": "keyup"; "paste": "paste"; "click": "click"; }, never, never, true, never>;
96
107
  }
97
108
  export default IntlTelInput;
@@ -1,4 +1,4 @@
1
- // dist/js/intlTelInput.mjs
1
+ // src/js/data.ts
2
2
  var rawCountryData = [
3
3
  [
4
4
  "af",
@@ -1755,6 +1755,8 @@ for (const c of rawCountryData) {
1755
1755
  var iso2Set = new Set(allCountries.map((c) => c.iso2));
1756
1756
  var isIso2 = (val) => iso2Set.has(val);
1757
1757
  var data_default = allCountries;
1758
+
1759
+ // src/js/constants.ts
1758
1760
  var EVENTS = {
1759
1761
  OPEN_COUNTRY_DROPDOWN: "open:countrydropdown",
1760
1762
  CLOSE_COUNTRY_DROPDOWN: "close:countrydropdown",
@@ -1879,6 +1881,8 @@ var ARIA = {
1879
1881
  AUTOCOMPLETE: "aria-autocomplete",
1880
1882
  MODAL: "aria-modal"
1881
1883
  };
1884
+
1885
+ // src/js/i18n/en.ts
1882
1886
  var interfaceTranslations = {
1883
1887
  selectedCountryAriaLabel: "Change country for phone number, currently selected ${countryName} (${dialCode})",
1884
1888
  noCountrySelected: "Select country for phone number",
@@ -1897,6 +1901,8 @@ var interfaceTranslations = {
1897
1901
  }
1898
1902
  };
1899
1903
  var en_default = interfaceTranslations;
1904
+
1905
+ // src/js/core/options.ts
1900
1906
  var mediaQuery = (q) => typeof window !== "undefined" && typeof window.matchMedia === "function" && window.matchMedia(q).matches;
1901
1907
  var isNarrowViewport = () => mediaQuery(`(max-width: ${LAYOUT.NARROW_VIEWPORT_WIDTH}px)`);
1902
1908
  var computeDefaultUseFullscreenPopup = () => {
@@ -2205,8 +2211,12 @@ var applyOptionSideEffects = (o) => {
2205
2211
  }
2206
2212
  o.i18n = { ...en_default, ...o.i18n };
2207
2213
  };
2214
+
2215
+ // src/js/helpers/string.ts
2208
2216
  var getNumeric = (s) => s.replace(/\D/g, "");
2209
2217
  var normaliseString = (s = "") => s.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase();
2218
+
2219
+ // src/js/helpers/dom.ts
2210
2220
  var buildClassNames = (flags) => Object.keys(flags).filter((k) => Boolean(flags[k])).join(" ");
2211
2221
  var createEl = (tagName, attrs, container) => {
2212
2222
  const el = document.createElement(tagName);
@@ -2220,6 +2230,8 @@ var createEl = (tagName, attrs, container) => {
2220
2230
  }
2221
2231
  return el;
2222
2232
  };
2233
+
2234
+ // src/js/core/icons.ts
2223
2235
  var buildSearchIcon = () => `
2224
2236
  <svg class="iti__search-icon-svg" width="14" height="14" viewBox="0 0 24 24" focusable="false" ${ARIA.HIDDEN}="true">
2225
2237
  <circle cx="11" cy="11" r="7" />
@@ -2245,6 +2257,8 @@ var buildGlobeIcon = () => `
2245
2257
  <path d="M508 213a240 240 0 0 0-449-87l-2 5-2 5c-8 14-13 30-17 46a65 65 0 0 1 56 4c16-10 35-19 56-27l9-3c-6 23-10 48-10 74h-16l4 6c3 4 5 8 6 13h6c0 22 3 44 8 65l2 10-25-10-4 5 12 18 9 3 6 2 8 3 9 26 1 2 16-7h1l-5-13-1-2c24 6 49 9 75 10v26l11 10 7 7v-30l1-13c22 0 44-3 65-8l10-2-21 48-1 1a317 317 0 0 1-14 23l-21 5h-2c6 16 7 33 1 50a240 240 0 0 0 211-265m-401-56-11 6c19-44 54-79 98-98-11 20-21 44-29 69-21 6-40 15-58 23m154 182v4c-29-1-57-6-81-13-7-25-12-52-13-81h94zm0-109h-94c1-29 6-56 13-81 24-7 52-12 81-13zm0-112c-22 1-44 4-65 8l-10 2 12-30 9-17 1-2a332 332 0 0 1 13-23c13-4 26-6 40-7zm187 69 6 4c4 12 6 25 6 38v1h-68c-1-26-4-51-10-74l48 20 1 1 14 8zm-14-44 10 20c-20-11-43-21-68-29-8-25-18-49-29-69 37 16 67 44 87 78M279 49h1c13 1 27 3 39 7l14 23 1 2a343 343 0 0 1 12 26l2 5 6 16c-23-6-48-9-74-10h-1zm0 87h1c29 1 56 6 81 13 7 24 12 51 12 80v1h-94zm2 207h-2v-94h95c-1 29-6 56-13 81-24 7-51 12-80 13m86 60-20 10c11-20 21-43 29-68 25-8 48-18 68-29-16 37-43 67-77 87m87-115-7 5-16 9-2 1a337 337 0 0 1-47 21c6-24 9-49 10-75h68c0 13-2 27-6 39"/>
2246
2258
  <path d="m261 428-2-2-22-21a40 40 0 0 0-32-11h-1a37 37 0 0 0-18 8l-1 1-4 2-2 2-5 4c-9-3-36-31-47-44s-32-45-34-55l3-2a151 151 0 0 0 11-9v-1a39 39 0 0 0 5-48l-3-3-11-19-3-4-5-7h-1l-3-3-4-3-5-2a35 35 0 0 0-16-3h-5c-4 1-14 5-24 11l-4 2-4 3-4 2c-9 8-17 17-18 27a380 380 0 0 0 212 259h3c12 0 25-10 36-21l10-12 6-11a39 39 0 0 0-8-40"/>
2247
2259
  </svg>`;
2260
+
2261
+ // src/js/core/countrySearch.ts
2248
2262
  var getMatchedCountries = (countries, query) => {
2249
2263
  const normalisedQuery = normaliseString(query);
2250
2264
  const iso2Matches = [];
@@ -2288,6 +2302,8 @@ var findFirstCountryStartingWith = (countries, query) => {
2288
2302
  }
2289
2303
  return null;
2290
2304
  };
2305
+
2306
+ // src/js/core/ui.ts
2291
2307
  var UI = class _UI {
2292
2308
  // private
2293
2309
  #options;
@@ -3216,6 +3232,8 @@ var UI = class _UI {
3216
3232
  this.#listItemByIso2.clear();
3217
3233
  }
3218
3234
  };
3235
+
3236
+ // src/js/data/country-data.ts
3219
3237
  var processAllCountries = (options) => {
3220
3238
  const { onlyCountries, excludeCountries } = options;
3221
3239
  if (onlyCountries?.length) {
@@ -3321,6 +3339,8 @@ var cacheSearchTokens = (countries) => {
3321
3339
  c.dialCodePlus = `+${c.dialCode}`;
3322
3340
  }
3323
3341
  };
3342
+
3343
+ // src/js/data/intl-regionless.ts
3324
3344
  var regionlessDialCodes = /* @__PURE__ */ new Set([
3325
3345
  "800",
3326
3346
  "808",
@@ -3335,6 +3355,8 @@ var hasRegionlessDialCode = (number) => {
3335
3355
  const dialCode = getNumeric(number).slice(0, 3);
3336
3356
  return number.startsWith("+") && regionlessDialCodes.has(dialCode);
3337
3357
  };
3358
+
3359
+ // src/js/format/formatting.ts
3338
3360
  var stripSeparateDialCode = (fullNumber, hasValidDialCode, separateDialCode, selectedCountryData) => {
3339
3361
  if (!separateDialCode || !hasValidDialCode) {
3340
3362
  return fullNumber;
@@ -3352,6 +3374,8 @@ var formatNumberAsYouType = (fullNumber, telInputValue, utils, selectedCountryDa
3352
3374
  }
3353
3375
  return result;
3354
3376
  };
3377
+
3378
+ // src/js/format/caret.ts
3355
3379
  var computeNewCaretPosition = (relevantChars, formattedValue, prevCaretPos, isDeleteForwards) => {
3356
3380
  if (prevCaretPos === 0 && !isDeleteForwards) {
3357
3381
  return 0;
@@ -3370,6 +3394,8 @@ var computeNewCaretPosition = (relevantChars, formattedValue, prevCaretPos, isDe
3370
3394
  }
3371
3395
  return formattedValue.length;
3372
3396
  };
3397
+
3398
+ // src/js/data/nanp-regionless.ts
3373
3399
  var regionlessNanpAreaCodes = /* @__PURE__ */ new Set([
3374
3400
  "800",
3375
3401
  "822",
@@ -3397,6 +3423,8 @@ var isRegionlessNanp = (number) => {
3397
3423
  }
3398
3424
  return false;
3399
3425
  };
3426
+
3427
+ // src/js/core/numerals.ts
3400
3428
  var Numerals = class {
3401
3429
  #userNumeralSet;
3402
3430
  constructor(initialValue) {
@@ -3443,6 +3471,8 @@ var Numerals = class {
3443
3471
  return !this.#userNumeralSet || this.#userNumeralSet === "ascii";
3444
3472
  }
3445
3473
  };
3474
+
3475
+ // src/js/intlTelInput.ts
3446
3476
  var nextId = 0;
3447
3477
  var ensureUtils = (methodName) => {
3448
3478
  if (!intlTelInput.utils) {
@@ -4541,7 +4571,7 @@ var intlTelInput = Object.assign(
4541
4571
  attachUtils,
4542
4572
  startedLoadingUtils: false,
4543
4573
  startedLoadingAutoCountry: false,
4544
- version: "27.1.3"
4574
+ version: "27.2.1"
4545
4575
  }
4546
4576
  );
4547
4577
  var intlTelInput_default = intlTelInput;
@@ -4596,6 +4626,9 @@ var IntlTelInput = class _IntlTelInput {
4596
4626
  countryChange = new EventEmitter();
4597
4627
  validityChange = new EventEmitter();
4598
4628
  errorCodeChange = new EventEmitter();
4629
+ openCountryDropdown = new EventEmitter();
4630
+ closeCountryDropdown = new EventEmitter();
4631
+ strictReject = new EventEmitter();
4599
4632
  blur = new EventEmitter();
4600
4633
  focus = new EventEmitter();
4601
4634
  keydown = new EventEmitter();
@@ -4621,8 +4654,16 @@ var IntlTelInput = class _IntlTelInput {
4621
4654
  // eslint-disable-next-line class-methods-use-this
4622
4655
  onValidatorChange = () => {
4623
4656
  };
4657
+ handleOpenDropdown = () => this.openCountryDropdown.emit();
4658
+ handleCloseDropdown = () => this.closeCountryDropdown.emit();
4659
+ handleStrictReject = (e) => {
4660
+ this.strictReject.emit(e.detail);
4661
+ };
4624
4662
  ngAfterViewInit() {
4625
4663
  this.iti = intlTelInput_default(this.inputRef.nativeElement, this.buildInitOptions());
4664
+ this.inputRef.nativeElement.addEventListener("open:countrydropdown", this.handleOpenDropdown);
4665
+ this.inputRef.nativeElement.addEventListener("close:countrydropdown", this.handleCloseDropdown);
4666
+ this.inputRef.nativeElement.addEventListener("strict:reject", this.handleStrictReject);
4626
4667
  this.applyInputAttrs();
4627
4668
  if (this.disabled) {
4628
4669
  this.iti.setDisabled(this.disabled);
@@ -4765,6 +4806,9 @@ var IntlTelInput = class _IntlTelInput {
4765
4806
  return this.inputRef.nativeElement;
4766
4807
  }
4767
4808
  ngOnDestroy() {
4809
+ this.inputRef.nativeElement.removeEventListener("open:countrydropdown", this.handleOpenDropdown);
4810
+ this.inputRef.nativeElement.removeEventListener("close:countrydropdown", this.handleCloseDropdown);
4811
+ this.inputRef.nativeElement.removeEventListener("strict:reject", this.handleStrictReject);
4768
4812
  this.iti?.destroy();
4769
4813
  }
4770
4814
  ignoredInputAttrs = /* @__PURE__ */ new Set([
@@ -4841,7 +4885,7 @@ var IntlTelInput = class _IntlTelInput {
4841
4885
  let _t;
4842
4886
  i0.\u0275\u0275queryRefresh(_t = i0.\u0275\u0275loadQuery()) && (ctx.inputRef = _t.first);
4843
4887
  }
4844
- }, inputs: { initialValue: "initialValue", usePreciseValidation: "usePreciseValidation", inputAttributes: "inputAttributes", disabled: "disabled", readonly: "readonly", allowDropdown: "allowDropdown", allowedNumberTypes: "allowedNumberTypes", allowNumberExtensions: "allowNumberExtensions", allowPhonewords: "allowPhonewords", autoPlaceholder: "autoPlaceholder", containerClass: "containerClass", countryNameLocale: "countryNameLocale", countryOrder: "countryOrder", countrySearch: "countrySearch", customPlaceholder: "customPlaceholder", dropdownAlwaysOpen: "dropdownAlwaysOpen", dropdownContainer: "dropdownContainer", excludeCountries: "excludeCountries", fixDropdownWidth: "fixDropdownWidth", formatAsYouType: "formatAsYouType", formatOnDisplay: "formatOnDisplay", geoIpLookup: "geoIpLookup", hiddenInput: "hiddenInput", i18n: "i18n", initialCountry: "initialCountry", loadUtils: "loadUtils", nationalMode: "nationalMode", onlyCountries: "onlyCountries", placeholderNumberType: "placeholderNumberType", searchInputClass: "searchInputClass", separateDialCode: "separateDialCode", showFlags: "showFlags", strictMode: "strictMode", useFullscreenPopup: "useFullscreenPopup" }, outputs: { numberChange: "numberChange", countryChange: "countryChange", validityChange: "validityChange", errorCodeChange: "errorCodeChange", blur: "blur", focus: "focus", keydown: "keydown", keyup: "keyup", paste: "paste", click: "click" }, features: [i0.\u0275\u0275ProvidersFeature([
4888
+ }, inputs: { initialValue: "initialValue", usePreciseValidation: "usePreciseValidation", inputAttributes: "inputAttributes", disabled: "disabled", readonly: "readonly", allowDropdown: "allowDropdown", allowedNumberTypes: "allowedNumberTypes", allowNumberExtensions: "allowNumberExtensions", allowPhonewords: "allowPhonewords", autoPlaceholder: "autoPlaceholder", containerClass: "containerClass", countryNameLocale: "countryNameLocale", countryOrder: "countryOrder", countrySearch: "countrySearch", customPlaceholder: "customPlaceholder", dropdownAlwaysOpen: "dropdownAlwaysOpen", dropdownContainer: "dropdownContainer", excludeCountries: "excludeCountries", fixDropdownWidth: "fixDropdownWidth", formatAsYouType: "formatAsYouType", formatOnDisplay: "formatOnDisplay", geoIpLookup: "geoIpLookup", hiddenInput: "hiddenInput", i18n: "i18n", initialCountry: "initialCountry", loadUtils: "loadUtils", nationalMode: "nationalMode", onlyCountries: "onlyCountries", placeholderNumberType: "placeholderNumberType", searchInputClass: "searchInputClass", separateDialCode: "separateDialCode", showFlags: "showFlags", strictMode: "strictMode", useFullscreenPopup: "useFullscreenPopup" }, outputs: { numberChange: "numberChange", countryChange: "countryChange", validityChange: "validityChange", errorCodeChange: "errorCodeChange", openCountryDropdown: "openCountryDropdown", closeCountryDropdown: "closeCountryDropdown", strictReject: "strictReject", blur: "blur", focus: "focus", keydown: "keydown", keyup: "keyup", paste: "paste", click: "click" }, features: [i0.\u0275\u0275ProvidersFeature([
4845
4889
  {
4846
4890
  provide: NG_VALUE_ACCESSOR,
4847
4891
  useExisting: forwardRef(() => _IntlTelInput),
@@ -4985,6 +5029,12 @@ var IntlTelInput = class _IntlTelInput {
4985
5029
  type: Output
4986
5030
  }], errorCodeChange: [{
4987
5031
  type: Output
5032
+ }], openCountryDropdown: [{
5033
+ type: Output
5034
+ }], closeCountryDropdown: [{
5035
+ type: Output
5036
+ }], strictReject: [{
5037
+ type: Output
4988
5038
  }], blur: [{
4989
5039
  type: Output
4990
5040
  }], focus: [{
@@ -5000,7 +5050,7 @@ var IntlTelInput = class _IntlTelInput {
5000
5050
  }] });
5001
5051
  })();
5002
5052
  (() => {
5003
- (typeof ngDevMode === "undefined" || ngDevMode) && i0.\u0275setClassDebugInfo(IntlTelInput, { className: "IntlTelInput", filePath: "IntlTelInput.ts", lineNumber: 62 });
5053
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.\u0275setClassDebugInfo(IntlTelInput, { className: "IntlTelInput", filePath: "IntlTelInput.ts", lineNumber: 68 });
5004
5054
  })();
5005
5055
  var IntlTelInput_default = IntlTelInput;
5006
5056
  export {
@@ -1,4 +1,4 @@
1
- // dist/js/intlTelInput.mjs
1
+ // src/js/data.ts
2
2
  var rawCountryData = [
3
3
  [
4
4
  "af",
@@ -1755,6 +1755,8 @@ for (const c of rawCountryData) {
1755
1755
  var iso2Set = new Set(allCountries.map((c) => c.iso2));
1756
1756
  var isIso2 = (val) => iso2Set.has(val);
1757
1757
  var data_default = allCountries;
1758
+
1759
+ // src/js/constants.ts
1758
1760
  var EVENTS = {
1759
1761
  OPEN_COUNTRY_DROPDOWN: "open:countrydropdown",
1760
1762
  CLOSE_COUNTRY_DROPDOWN: "close:countrydropdown",
@@ -1879,6 +1881,8 @@ var ARIA = {
1879
1881
  AUTOCOMPLETE: "aria-autocomplete",
1880
1882
  MODAL: "aria-modal"
1881
1883
  };
1884
+
1885
+ // src/js/i18n/en.ts
1882
1886
  var interfaceTranslations = {
1883
1887
  selectedCountryAriaLabel: "Change country for phone number, currently selected ${countryName} (${dialCode})",
1884
1888
  noCountrySelected: "Select country for phone number",
@@ -1897,6 +1901,8 @@ var interfaceTranslations = {
1897
1901
  }
1898
1902
  };
1899
1903
  var en_default = interfaceTranslations;
1904
+
1905
+ // src/js/core/options.ts
1900
1906
  var mediaQuery = (q) => typeof window !== "undefined" && typeof window.matchMedia === "function" && window.matchMedia(q).matches;
1901
1907
  var isNarrowViewport = () => mediaQuery(`(max-width: ${LAYOUT.NARROW_VIEWPORT_WIDTH}px)`);
1902
1908
  var computeDefaultUseFullscreenPopup = () => {
@@ -2205,8 +2211,12 @@ var applyOptionSideEffects = (o) => {
2205
2211
  }
2206
2212
  o.i18n = { ...en_default, ...o.i18n };
2207
2213
  };
2214
+
2215
+ // src/js/helpers/string.ts
2208
2216
  var getNumeric = (s) => s.replace(/\D/g, "");
2209
2217
  var normaliseString = (s = "") => s.normalize("NFD").replace(/[\u0300-\u036f]/g, "").toLowerCase();
2218
+
2219
+ // src/js/helpers/dom.ts
2210
2220
  var buildClassNames = (flags) => Object.keys(flags).filter((k) => Boolean(flags[k])).join(" ");
2211
2221
  var createEl = (tagName, attrs, container) => {
2212
2222
  const el = document.createElement(tagName);
@@ -2220,6 +2230,8 @@ var createEl = (tagName, attrs, container) => {
2220
2230
  }
2221
2231
  return el;
2222
2232
  };
2233
+
2234
+ // src/js/core/icons.ts
2223
2235
  var buildSearchIcon = () => `
2224
2236
  <svg class="iti__search-icon-svg" width="14" height="14" viewBox="0 0 24 24" focusable="false" ${ARIA.HIDDEN}="true">
2225
2237
  <circle cx="11" cy="11" r="7" />
@@ -2245,6 +2257,8 @@ var buildGlobeIcon = () => `
2245
2257
  <path d="M508 213a240 240 0 0 0-449-87l-2 5-2 5c-8 14-13 30-17 46a65 65 0 0 1 56 4c16-10 35-19 56-27l9-3c-6 23-10 48-10 74h-16l4 6c3 4 5 8 6 13h6c0 22 3 44 8 65l2 10-25-10-4 5 12 18 9 3 6 2 8 3 9 26 1 2 16-7h1l-5-13-1-2c24 6 49 9 75 10v26l11 10 7 7v-30l1-13c22 0 44-3 65-8l10-2-21 48-1 1a317 317 0 0 1-14 23l-21 5h-2c6 16 7 33 1 50a240 240 0 0 0 211-265m-401-56-11 6c19-44 54-79 98-98-11 20-21 44-29 69-21 6-40 15-58 23m154 182v4c-29-1-57-6-81-13-7-25-12-52-13-81h94zm0-109h-94c1-29 6-56 13-81 24-7 52-12 81-13zm0-112c-22 1-44 4-65 8l-10 2 12-30 9-17 1-2a332 332 0 0 1 13-23c13-4 26-6 40-7zm187 69 6 4c4 12 6 25 6 38v1h-68c-1-26-4-51-10-74l48 20 1 1 14 8zm-14-44 10 20c-20-11-43-21-68-29-8-25-18-49-29-69 37 16 67 44 87 78M279 49h1c13 1 27 3 39 7l14 23 1 2a343 343 0 0 1 12 26l2 5 6 16c-23-6-48-9-74-10h-1zm0 87h1c29 1 56 6 81 13 7 24 12 51 12 80v1h-94zm2 207h-2v-94h95c-1 29-6 56-13 81-24 7-51 12-80 13m86 60-20 10c11-20 21-43 29-68 25-8 48-18 68-29-16 37-43 67-77 87m87-115-7 5-16 9-2 1a337 337 0 0 1-47 21c6-24 9-49 10-75h68c0 13-2 27-6 39"/>
2246
2258
  <path d="m261 428-2-2-22-21a40 40 0 0 0-32-11h-1a37 37 0 0 0-18 8l-1 1-4 2-2 2-5 4c-9-3-36-31-47-44s-32-45-34-55l3-2a151 151 0 0 0 11-9v-1a39 39 0 0 0 5-48l-3-3-11-19-3-4-5-7h-1l-3-3-4-3-5-2a35 35 0 0 0-16-3h-5c-4 1-14 5-24 11l-4 2-4 3-4 2c-9 8-17 17-18 27a380 380 0 0 0 212 259h3c12 0 25-10 36-21l10-12 6-11a39 39 0 0 0-8-40"/>
2247
2259
  </svg>`;
2260
+
2261
+ // src/js/core/countrySearch.ts
2248
2262
  var getMatchedCountries = (countries, query) => {
2249
2263
  const normalisedQuery = normaliseString(query);
2250
2264
  const iso2Matches = [];
@@ -2288,6 +2302,8 @@ var findFirstCountryStartingWith = (countries, query) => {
2288
2302
  }
2289
2303
  return null;
2290
2304
  };
2305
+
2306
+ // src/js/core/ui.ts
2291
2307
  var UI = class _UI {
2292
2308
  // private
2293
2309
  #options;
@@ -3216,6 +3232,8 @@ var UI = class _UI {
3216
3232
  this.#listItemByIso2.clear();
3217
3233
  }
3218
3234
  };
3235
+
3236
+ // src/js/data/country-data.ts
3219
3237
  var processAllCountries = (options) => {
3220
3238
  const { onlyCountries, excludeCountries } = options;
3221
3239
  if (onlyCountries?.length) {
@@ -3321,6 +3339,8 @@ var cacheSearchTokens = (countries) => {
3321
3339
  c.dialCodePlus = `+${c.dialCode}`;
3322
3340
  }
3323
3341
  };
3342
+
3343
+ // src/js/data/intl-regionless.ts
3324
3344
  var regionlessDialCodes = /* @__PURE__ */ new Set([
3325
3345
  "800",
3326
3346
  "808",
@@ -3335,6 +3355,8 @@ var hasRegionlessDialCode = (number) => {
3335
3355
  const dialCode = getNumeric(number).slice(0, 3);
3336
3356
  return number.startsWith("+") && regionlessDialCodes.has(dialCode);
3337
3357
  };
3358
+
3359
+ // src/js/format/formatting.ts
3338
3360
  var stripSeparateDialCode = (fullNumber, hasValidDialCode, separateDialCode, selectedCountryData) => {
3339
3361
  if (!separateDialCode || !hasValidDialCode) {
3340
3362
  return fullNumber;
@@ -3352,6 +3374,8 @@ var formatNumberAsYouType = (fullNumber, telInputValue, utils, selectedCountryDa
3352
3374
  }
3353
3375
  return result;
3354
3376
  };
3377
+
3378
+ // src/js/format/caret.ts
3355
3379
  var computeNewCaretPosition = (relevantChars, formattedValue, prevCaretPos, isDeleteForwards) => {
3356
3380
  if (prevCaretPos === 0 && !isDeleteForwards) {
3357
3381
  return 0;
@@ -3370,6 +3394,8 @@ var computeNewCaretPosition = (relevantChars, formattedValue, prevCaretPos, isDe
3370
3394
  }
3371
3395
  return formattedValue.length;
3372
3396
  };
3397
+
3398
+ // src/js/data/nanp-regionless.ts
3373
3399
  var regionlessNanpAreaCodes = /* @__PURE__ */ new Set([
3374
3400
  "800",
3375
3401
  "822",
@@ -3397,6 +3423,8 @@ var isRegionlessNanp = (number) => {
3397
3423
  }
3398
3424
  return false;
3399
3425
  };
3426
+
3427
+ // src/js/core/numerals.ts
3400
3428
  var Numerals = class {
3401
3429
  #userNumeralSet;
3402
3430
  constructor(initialValue) {
@@ -3443,6 +3471,8 @@ var Numerals = class {
3443
3471
  return !this.#userNumeralSet || this.#userNumeralSet === "ascii";
3444
3472
  }
3445
3473
  };
3474
+
3475
+ // src/js/intlTelInput.ts
3446
3476
  var nextId = 0;
3447
3477
  var ensureUtils = (methodName) => {
3448
3478
  if (!intlTelInput.utils) {
@@ -4541,7 +4571,7 @@ var intlTelInput = Object.assign(
4541
4571
  attachUtils,
4542
4572
  startedLoadingUtils: false,
4543
4573
  startedLoadingAutoCountry: false,
4544
- version: "27.1.3"
4574
+ version: "27.2.1"
4545
4575
  }
4546
4576
  );
4547
4577
  var intlTelInput_default = intlTelInput;
@@ -10909,6 +10939,9 @@ var IntlTelInput = class _IntlTelInput {
10909
10939
  countryChange = new EventEmitter();
10910
10940
  validityChange = new EventEmitter();
10911
10941
  errorCodeChange = new EventEmitter();
10942
+ openCountryDropdown = new EventEmitter();
10943
+ closeCountryDropdown = new EventEmitter();
10944
+ strictReject = new EventEmitter();
10912
10945
  blur = new EventEmitter();
10913
10946
  focus = new EventEmitter();
10914
10947
  keydown = new EventEmitter();
@@ -10934,8 +10967,16 @@ var IntlTelInput = class _IntlTelInput {
10934
10967
  // eslint-disable-next-line class-methods-use-this
10935
10968
  onValidatorChange = () => {
10936
10969
  };
10970
+ handleOpenDropdown = () => this.openCountryDropdown.emit();
10971
+ handleCloseDropdown = () => this.closeCountryDropdown.emit();
10972
+ handleStrictReject = (e) => {
10973
+ this.strictReject.emit(e.detail);
10974
+ };
10937
10975
  ngAfterViewInit() {
10938
10976
  this.iti = intlTelInput_default(this.inputRef.nativeElement, this.buildInitOptions());
10977
+ this.inputRef.nativeElement.addEventListener("open:countrydropdown", this.handleOpenDropdown);
10978
+ this.inputRef.nativeElement.addEventListener("close:countrydropdown", this.handleCloseDropdown);
10979
+ this.inputRef.nativeElement.addEventListener("strict:reject", this.handleStrictReject);
10939
10980
  this.applyInputAttrs();
10940
10981
  if (this.disabled) {
10941
10982
  this.iti.setDisabled(this.disabled);
@@ -11078,6 +11119,9 @@ var IntlTelInput = class _IntlTelInput {
11078
11119
  return this.inputRef.nativeElement;
11079
11120
  }
11080
11121
  ngOnDestroy() {
11122
+ this.inputRef.nativeElement.removeEventListener("open:countrydropdown", this.handleOpenDropdown);
11123
+ this.inputRef.nativeElement.removeEventListener("close:countrydropdown", this.handleCloseDropdown);
11124
+ this.inputRef.nativeElement.removeEventListener("strict:reject", this.handleStrictReject);
11081
11125
  this.iti?.destroy();
11082
11126
  }
11083
11127
  ignoredInputAttrs = /* @__PURE__ */ new Set([
@@ -11154,7 +11198,7 @@ var IntlTelInput = class _IntlTelInput {
11154
11198
  let _t;
11155
11199
  i0.\u0275\u0275queryRefresh(_t = i0.\u0275\u0275loadQuery()) && (ctx.inputRef = _t.first);
11156
11200
  }
11157
- }, inputs: { initialValue: "initialValue", usePreciseValidation: "usePreciseValidation", inputAttributes: "inputAttributes", disabled: "disabled", readonly: "readonly", allowDropdown: "allowDropdown", allowedNumberTypes: "allowedNumberTypes", allowNumberExtensions: "allowNumberExtensions", allowPhonewords: "allowPhonewords", autoPlaceholder: "autoPlaceholder", containerClass: "containerClass", countryNameLocale: "countryNameLocale", countryOrder: "countryOrder", countrySearch: "countrySearch", customPlaceholder: "customPlaceholder", dropdownAlwaysOpen: "dropdownAlwaysOpen", dropdownContainer: "dropdownContainer", excludeCountries: "excludeCountries", fixDropdownWidth: "fixDropdownWidth", formatAsYouType: "formatAsYouType", formatOnDisplay: "formatOnDisplay", geoIpLookup: "geoIpLookup", hiddenInput: "hiddenInput", i18n: "i18n", initialCountry: "initialCountry", loadUtils: "loadUtils", nationalMode: "nationalMode", onlyCountries: "onlyCountries", placeholderNumberType: "placeholderNumberType", searchInputClass: "searchInputClass", separateDialCode: "separateDialCode", showFlags: "showFlags", strictMode: "strictMode", useFullscreenPopup: "useFullscreenPopup" }, outputs: { numberChange: "numberChange", countryChange: "countryChange", validityChange: "validityChange", errorCodeChange: "errorCodeChange", blur: "blur", focus: "focus", keydown: "keydown", keyup: "keyup", paste: "paste", click: "click" }, features: [i0.\u0275\u0275ProvidersFeature([
11201
+ }, inputs: { initialValue: "initialValue", usePreciseValidation: "usePreciseValidation", inputAttributes: "inputAttributes", disabled: "disabled", readonly: "readonly", allowDropdown: "allowDropdown", allowedNumberTypes: "allowedNumberTypes", allowNumberExtensions: "allowNumberExtensions", allowPhonewords: "allowPhonewords", autoPlaceholder: "autoPlaceholder", containerClass: "containerClass", countryNameLocale: "countryNameLocale", countryOrder: "countryOrder", countrySearch: "countrySearch", customPlaceholder: "customPlaceholder", dropdownAlwaysOpen: "dropdownAlwaysOpen", dropdownContainer: "dropdownContainer", excludeCountries: "excludeCountries", fixDropdownWidth: "fixDropdownWidth", formatAsYouType: "formatAsYouType", formatOnDisplay: "formatOnDisplay", geoIpLookup: "geoIpLookup", hiddenInput: "hiddenInput", i18n: "i18n", initialCountry: "initialCountry", loadUtils: "loadUtils", nationalMode: "nationalMode", onlyCountries: "onlyCountries", placeholderNumberType: "placeholderNumberType", searchInputClass: "searchInputClass", separateDialCode: "separateDialCode", showFlags: "showFlags", strictMode: "strictMode", useFullscreenPopup: "useFullscreenPopup" }, outputs: { numberChange: "numberChange", countryChange: "countryChange", validityChange: "validityChange", errorCodeChange: "errorCodeChange", openCountryDropdown: "openCountryDropdown", closeCountryDropdown: "closeCountryDropdown", strictReject: "strictReject", blur: "blur", focus: "focus", keydown: "keydown", keyup: "keyup", paste: "paste", click: "click" }, features: [i0.\u0275\u0275ProvidersFeature([
11158
11202
  {
11159
11203
  provide: NG_VALUE_ACCESSOR,
11160
11204
  useExisting: forwardRef(() => _IntlTelInput),
@@ -11298,6 +11342,12 @@ var IntlTelInput = class _IntlTelInput {
11298
11342
  type: Output
11299
11343
  }], errorCodeChange: [{
11300
11344
  type: Output
11345
+ }], openCountryDropdown: [{
11346
+ type: Output
11347
+ }], closeCountryDropdown: [{
11348
+ type: Output
11349
+ }], strictReject: [{
11350
+ type: Output
11301
11351
  }], blur: [{
11302
11352
  type: Output
11303
11353
  }], focus: [{
@@ -11313,7 +11363,7 @@ var IntlTelInput = class _IntlTelInput {
11313
11363
  }] });
11314
11364
  })();
11315
11365
  (() => {
11316
- (typeof ngDevMode === "undefined" || ngDevMode) && i0.\u0275setClassDebugInfo(IntlTelInput, { className: "IntlTelInput", filePath: "IntlTelInput.ts", lineNumber: 62 });
11366
+ (typeof ngDevMode === "undefined" || ngDevMode) && i0.\u0275setClassDebugInfo(IntlTelInput, { className: "IntlTelInput", filePath: "IntlTelInput.ts", lineNumber: 68 });
11317
11367
  })();
11318
11368
  var IntlTelInput_default = IntlTelInput;
11319
11369
 
package/dist/js/data.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * International Telephone Input v27.1.3
2
+ * International Telephone Input v27.2.1
3
3
  * git+https://github.com/jackocnr/intl-tel-input.git
4
4
  * Licensed under the MIT license
5
5
  */
@@ -1,5 +1,5 @@
1
1
  /*
2
- * International Telephone Input v27.1.3
2
+ * International Telephone Input v27.2.1
3
3
  * git+https://github.com/jackocnr/intl-tel-input.git
4
4
  * Licensed under the MIT license
5
5
  */
@@ -1,46 +1,46 @@
1
1
  "use strict";
2
- export { default as ar } from "./ar";
3
- export { default as bg } from "./bg";
4
- export { default as bn } from "./bn";
5
- export { default as bs } from "./bs";
6
- export { default as ca } from "./ca";
7
- export { default as cs } from "./cs";
8
- export { default as da } from "./da";
9
- export { default as de } from "./de";
10
- export { default as el } from "./el";
11
- export { default as en } from "./en";
12
- export { default as es } from "./es";
13
- export { default as et } from "./et";
14
- export { default as fa } from "./fa";
15
- export { default as fi } from "./fi";
16
- export { default as fr } from "./fr";
17
- export { default as hi } from "./hi";
18
- export { default as hr } from "./hr";
19
- export { default as hu } from "./hu";
20
- export { default as id } from "./id";
21
- export { default as it } from "./it";
22
- export { default as ja } from "./ja";
23
- export { default as kn } from "./kn";
24
- export { default as ko } from "./ko";
25
- export { default as lt } from "./lt";
26
- export { default as mr } from "./mr";
27
- export { default as nl } from "./nl";
28
- export { default as no } from "./no";
29
- export { default as pl } from "./pl";
30
- export { default as pt } from "./pt";
31
- export { default as ro } from "./ro";
32
- export { default as ru } from "./ru";
33
- export { default as sk } from "./sk";
34
- export { default as sl } from "./sl";
35
- export { default as sq } from "./sq";
36
- export { default as sr } from "./sr";
37
- export { default as sv } from "./sv";
38
- export { default as te } from "./te";
39
- export { default as th } from "./th";
40
- export { default as tr } from "./tr";
41
- export { default as uk } from "./uk";
42
- export { default as ur } from "./ur";
43
- export { default as uz } from "./uz";
44
- export { default as vi } from "./vi";
45
- export { default as zh } from "./zh";
46
- export { default as zhHk } from "./zh-hk";
2
+ export { default as ar } from "./ar.js";
3
+ export { default as bg } from "./bg.js";
4
+ export { default as bn } from "./bn.js";
5
+ export { default as bs } from "./bs.js";
6
+ export { default as ca } from "./ca.js";
7
+ export { default as cs } from "./cs.js";
8
+ export { default as da } from "./da.js";
9
+ export { default as de } from "./de.js";
10
+ export { default as el } from "./el.js";
11
+ export { default as en } from "./en.js";
12
+ export { default as es } from "./es.js";
13
+ export { default as et } from "./et.js";
14
+ export { default as fa } from "./fa.js";
15
+ export { default as fi } from "./fi.js";
16
+ export { default as fr } from "./fr.js";
17
+ export { default as hi } from "./hi.js";
18
+ export { default as hr } from "./hr.js";
19
+ export { default as hu } from "./hu.js";
20
+ export { default as id } from "./id.js";
21
+ export { default as it } from "./it.js";
22
+ export { default as ja } from "./ja.js";
23
+ export { default as kn } from "./kn.js";
24
+ export { default as ko } from "./ko.js";
25
+ export { default as lt } from "./lt.js";
26
+ export { default as mr } from "./mr.js";
27
+ export { default as nl } from "./nl.js";
28
+ export { default as no } from "./no.js";
29
+ export { default as pl } from "./pl.js";
30
+ export { default as pt } from "./pt.js";
31
+ export { default as ro } from "./ro.js";
32
+ export { default as ru } from "./ru.js";
33
+ export { default as sk } from "./sk.js";
34
+ export { default as sl } from "./sl.js";
35
+ export { default as sq } from "./sq.js";
36
+ export { default as sr } from "./sr.js";
37
+ export { default as sv } from "./sv.js";
38
+ export { default as te } from "./te.js";
39
+ export { default as th } from "./th.js";
40
+ export { default as tr } from "./tr.js";
41
+ export { default as uk } from "./uk.js";
42
+ export { default as ur } from "./ur.js";
43
+ export { default as uz } from "./uz.js";
44
+ export { default as vi } from "./vi.js";
45
+ export { default as zh } from "./zh.js";
46
+ export { default as zhHk } from "./zh-hk.js";
@@ -1,5 +1,5 @@
1
1
  /*
2
- * International Telephone Input v27.1.3
2
+ * International Telephone Input v27.2.1
3
3
  * git+https://github.com/jackocnr/intl-tel-input.git
4
4
  * Licensed under the MIT license
5
5
  */
@@ -4603,7 +4603,7 @@ var _factory = (() => {
4603
4603
  attachUtils,
4604
4604
  startedLoadingUtils: false,
4605
4605
  startedLoadingAutoCountry: false,
4606
- version: "27.1.3"
4606
+ version: "27.2.1"
4607
4607
  }
4608
4608
  );
4609
4609
  var intlTelInput_default = intlTelInput;