gitextract_v3v4kr9z/ ├── .eslintignore ├── .eslintrc.js ├── .github/ │ ├── CONTRIBUTING.md │ ├── FUNDING.yml │ ├── ISSUE_TEMPLATE/ │ │ ├── 1_bug_report.yml │ │ ├── 2_feature_request.yml │ │ └── config.yml │ ├── copilot-instructions.md │ └── workflows/ │ └── ci.yml ├── .gitignore ├── .gitmodules ├── .node-version ├── .npmrc ├── .vscode/ │ ├── extensions.json │ └── settings.json ├── CHANGELOG.md ├── Gruntfile.js ├── LICENSE ├── README.md ├── angular/ │ ├── README.md │ ├── build.js │ ├── demo/ │ │ ├── form/ │ │ │ ├── form.component.ts │ │ │ ├── index.html │ │ │ └── main.ts │ │ ├── set-number/ │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ └── set-number.component.ts │ │ ├── simple/ │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ └── simple.component.ts │ │ ├── toggle-disabled/ │ │ │ ├── index.html │ │ │ ├── main.ts │ │ │ └── toggle-disabled.component.ts │ │ └── validation/ │ │ ├── index.html │ │ ├── main.ts │ │ └── validation.component.ts │ ├── src/ │ │ └── intl-tel-input/ │ │ ├── angular.ts │ │ └── angularWithUtils.ts │ └── tsconfig.json ├── build.js ├── composer.json ├── cspell.json ├── demo.html ├── functions/ │ └── _middleware.js ├── grunt/ │ ├── bump.js │ ├── clean.js │ ├── closure-compiler.js │ ├── connect.js │ ├── cssmin.js │ ├── generate-sprite.js │ ├── replace.js │ ├── sass.js │ ├── shell.js │ ├── translations.js │ └── watch.js ├── index.js ├── jest.config.js ├── package.json ├── playwright.config.ts ├── react/ │ ├── README.md │ ├── build.js │ ├── demo/ │ │ ├── set-number/ │ │ │ ├── SetNumberApp.tsx │ │ │ └── set-number.html │ │ ├── simple/ │ │ │ ├── SimpleApp.tsx │ │ │ └── simple.html │ │ ├── toggle-disabled/ │ │ │ ├── ToggleDisabledApp.tsx │ │ │ └── toggle-disabled.html │ │ └── validation/ │ │ ├── ValidationApp.tsx │ │ └── validation.html │ ├── src/ │ │ └── intl-tel-input/ │ │ ├── react.tsx │ │ └── reactWithUtils.tsx │ └── tsconfig.json ├── scripts/ │ ├── check-lpn-metadata.cjs │ └── playwright-linux-docker.sh ├── site/ │ ├── .gitignore │ ├── Gruntfile.js │ ├── README.md │ ├── esbuild/ │ │ ├── build.mjs │ │ └── externalUtilsPlugin.mjs │ ├── grunt/ │ │ ├── copy.js │ │ ├── cssmin.js │ │ ├── fetchStats.js │ │ ├── replace.js │ │ ├── sass.js │ │ ├── shell.js │ │ ├── template.js │ │ ├── templateGruntHelpers.js │ │ ├── templateNav.js │ │ ├── templateUtils.js │ │ └── watch.js │ ├── package.json │ ├── src/ │ │ ├── 404/ │ │ │ ├── 404_content.html │ │ │ └── 404_page_template.html.ejs │ │ ├── css/ │ │ │ ├── _base.scss │ │ │ ├── _forms.scss │ │ │ ├── _layout.scss │ │ │ ├── _navbar.scss │ │ │ ├── _variables.scss │ │ │ ├── docs.scss │ │ │ ├── highlightjs_overrides.scss │ │ │ ├── homepage.scss │ │ │ ├── large_flags_overrides.scss │ │ │ ├── playground.scss │ │ │ └── website.scss │ │ ├── docs/ │ │ │ ├── docs_content_template.html.ejs │ │ │ ├── docs_nav_template.html.ejs │ │ │ ├── docs_page_template.html.ejs │ │ │ └── markdown/ │ │ │ ├── accessibility.md │ │ │ ├── angular_component.md │ │ │ ├── choose_integration.md │ │ │ ├── events.md │ │ │ ├── faq.md │ │ │ ├── getting_started.md │ │ │ ├── localisation.md │ │ │ ├── methods.md │ │ │ ├── options.md │ │ │ ├── react_component.md │ │ │ ├── svelte_component.md │ │ │ ├── theming.md │ │ │ ├── troubleshooting.md │ │ │ ├── utils.md │ │ │ └── vue_component.md │ │ ├── examples/ │ │ │ ├── copy/ │ │ │ │ ├── angular_component_desc.html │ │ │ │ ├── display_number_desc.html │ │ │ │ ├── hidden_input_desc.html │ │ │ │ ├── large_flags_desc.html │ │ │ │ ├── lookup_country_desc.html │ │ │ │ ├── multiple_instances_desc.html │ │ │ │ ├── react_component_desc.html │ │ │ │ ├── right_to_left_desc.html │ │ │ │ ├── single_country_desc.html │ │ │ │ ├── svelte_component_desc.html │ │ │ │ ├── validation_practical_desc.html │ │ │ │ ├── validation_precise_desc.html │ │ │ │ └── vue_component_desc.html │ │ │ ├── css/ │ │ │ │ ├── multiple_instances.css │ │ │ │ └── validation.css │ │ │ ├── examples_content_template.html.ejs │ │ │ ├── examples_nav_template.html.ejs │ │ │ ├── examples_page_template.html.ejs │ │ │ ├── html/ │ │ │ │ ├── component.html │ │ │ │ ├── display_number.html │ │ │ │ ├── display_number_display_code.html │ │ │ │ ├── multiple_instances.html │ │ │ │ ├── multiple_instances_display_code.html │ │ │ │ ├── simple_input.html │ │ │ │ ├── simple_input_display_code.html │ │ │ │ ├── validation.html │ │ │ │ └── validation_display_code.html │ │ │ └── js/ │ │ │ ├── angular_component.ts │ │ │ ├── angular_component_display_code.js │ │ │ ├── hidden_input.js │ │ │ ├── hidden_input_display_code.js │ │ │ ├── lookup_country.js │ │ │ ├── lookup_country_display_code.js │ │ │ ├── multiple_instances.js │ │ │ ├── multiple_instances_display_code.js │ │ │ ├── react_component.js │ │ │ ├── react_component_display_code.js │ │ │ ├── right_to_left.js │ │ │ ├── right_to_left_display_code.js │ │ │ ├── simple_init_plugin.js │ │ │ ├── simple_init_plugin_display_code.js │ │ │ ├── single_country.js │ │ │ ├── single_country_display_code.js │ │ │ ├── svelte_component.svelte │ │ │ ├── svelte_component_display_code.svelte │ │ │ ├── svelte_main.js │ │ │ ├── validation.js │ │ │ ├── validation_display_code.js │ │ │ ├── viteSvelteDemo.config.mjs │ │ │ ├── viteVueDemo.config.js │ │ │ ├── vue_component.vue │ │ │ ├── vue_component_display_code.vue │ │ │ └── vue_main.js │ │ ├── homepage/ │ │ │ ├── homepage_content.html │ │ │ └── homepage_page_template.html.ejs │ │ ├── js/ │ │ │ ├── homepage.js │ │ │ └── iti-live-results.js │ │ ├── layout_template.html.ejs │ │ ├── playground/ │ │ │ ├── js/ │ │ │ │ ├── modules/ │ │ │ │ │ ├── clipboard.js │ │ │ │ │ ├── forms.js │ │ │ │ │ ├── i18n.js │ │ │ │ │ ├── initCode.js │ │ │ │ │ ├── itiController.js │ │ │ │ │ ├── playgroundConfig.js │ │ │ │ │ ├── stateUtils.js │ │ │ │ │ └── urlState.js │ │ │ │ ├── playground.js │ │ │ │ └── templates/ │ │ │ │ └── playgroundConstants.js.ejs │ │ │ ├── playground_content.html │ │ │ └── playground_page_template.html.ejs │ │ └── shared/ │ │ ├── common_body_end.html │ │ ├── common_head_end_prod.html │ │ ├── common_meta_tags.html │ │ ├── common_styles.html.ejs │ │ ├── iti_live_results_script.html.ejs │ │ └── iti_script.html.ejs │ └── static/ │ ├── _redirects │ ├── ads.txt │ ├── css/ │ │ └── intlTelInput-largeFlags.css │ └── screenshotting.html ├── src/ │ ├── css/ │ │ ├── _metadata.scss │ │ ├── demo.scss │ │ ├── intlTelInput.scss │ │ └── intlTelInputWithAssets.scss │ └── js/ │ ├── intl-tel-input/ │ │ ├── data.ts │ │ ├── i18n/ │ │ │ ├── ar/ │ │ │ │ └── index.ts │ │ │ ├── bg/ │ │ │ │ └── index.ts │ │ │ ├── bn/ │ │ │ │ └── index.ts │ │ │ ├── bs/ │ │ │ │ └── index.ts │ │ │ ├── ca/ │ │ │ │ └── index.ts │ │ │ ├── cs/ │ │ │ │ └── index.ts │ │ │ ├── da/ │ │ │ │ └── index.ts │ │ │ ├── de/ │ │ │ │ └── index.ts │ │ │ ├── el/ │ │ │ │ └── index.ts │ │ │ ├── en/ │ │ │ │ └── index.ts │ │ │ ├── es/ │ │ │ │ └── index.ts │ │ │ ├── et/ │ │ │ │ └── index.ts │ │ │ ├── fa/ │ │ │ │ └── index.ts │ │ │ ├── fi/ │ │ │ │ └── index.ts │ │ │ ├── fr/ │ │ │ │ └── index.ts │ │ │ ├── hi/ │ │ │ │ └── index.ts │ │ │ ├── hr/ │ │ │ │ └── index.ts │ │ │ ├── hu/ │ │ │ │ └── index.ts │ │ │ ├── id/ │ │ │ │ └── index.ts │ │ │ ├── index.ts │ │ │ ├── it/ │ │ │ │ └── index.ts │ │ │ ├── ja/ │ │ │ │ └── index.ts │ │ │ ├── kn/ │ │ │ │ └── index.ts │ │ │ ├── ko/ │ │ │ │ └── index.ts │ │ │ ├── lt/ │ │ │ │ └── index.ts │ │ │ ├── mr/ │ │ │ │ └── index.ts │ │ │ ├── nl/ │ │ │ │ └── index.ts │ │ │ ├── no/ │ │ │ │ └── index.ts │ │ │ ├── pl/ │ │ │ │ └── index.ts │ │ │ ├── pt/ │ │ │ │ └── index.ts │ │ │ ├── ro/ │ │ │ │ └── index.ts │ │ │ ├── ru/ │ │ │ │ └── index.ts │ │ │ ├── sk/ │ │ │ │ └── index.ts │ │ │ ├── sl/ │ │ │ │ └── index.ts │ │ │ ├── sq/ │ │ │ │ └── index.ts │ │ │ ├── sr/ │ │ │ │ └── index.ts │ │ │ ├── sv/ │ │ │ │ └── index.ts │ │ │ ├── te/ │ │ │ │ └── index.ts │ │ │ ├── th/ │ │ │ │ └── index.ts │ │ │ ├── tr/ │ │ │ │ └── index.ts │ │ │ ├── types.ts │ │ │ ├── uk/ │ │ │ │ └── index.ts │ │ │ ├── ur/ │ │ │ │ └── index.ts │ │ │ ├── uz/ │ │ │ │ └── index.ts │ │ │ ├── vi/ │ │ │ │ └── index.ts │ │ │ ├── zh/ │ │ │ │ └── index.ts │ │ │ └── zh-hk/ │ │ │ └── index.ts │ │ └── intlTelInputWithUtils.ts │ ├── intl-tel-input.ts │ ├── modules/ │ │ ├── constants.ts │ │ ├── core/ │ │ │ ├── countrySearch.ts │ │ │ ├── icons.ts │ │ │ ├── numerals.ts │ │ │ ├── options.ts │ │ │ └── ui.ts │ │ ├── data/ │ │ │ ├── country-data.ts │ │ │ ├── intl-regionless.ts │ │ │ └── nanp-regionless.ts │ │ ├── format/ │ │ │ ├── caret.ts │ │ │ └── formatting.ts │ │ ├── types/ │ │ │ ├── events.ts │ │ │ ├── forEachInstanceArgsMap.ts │ │ │ └── public-api.ts │ │ └── utils/ │ │ ├── dom.ts │ │ ├── isAndroid.ts │ │ └── string.ts │ └── utils.js ├── svelte/ │ ├── README.md │ ├── demo/ │ │ ├── set-number/ │ │ │ ├── App.svelte │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── vite.config.mjs │ │ ├── simple/ │ │ │ ├── App.svelte │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── vite.config.mjs │ │ ├── toggle-disabled/ │ │ │ ├── App.svelte │ │ │ ├── index.html │ │ │ ├── main.js │ │ │ └── vite.config.mjs │ │ └── validation/ │ │ ├── App.svelte │ │ ├── index.html │ │ ├── main.js │ │ └── vite.config.mjs │ ├── src/ │ │ └── intl-tel-input/ │ │ ├── IntlTelInput.svelte │ │ └── IntlTelInputWithUtils.svelte │ ├── viteConfig.mjs │ └── viteConfigWithUtils.mjs ├── tests/ │ ├── integration/ │ │ ├── core/ │ │ │ ├── dropdownShortcuts.test.js │ │ │ ├── easternNumerals.test.js │ │ │ ├── initialValues.test.js │ │ │ ├── multipleInstances.test.js │ │ │ ├── regionless.test.js │ │ │ ├── usingDropdown.test.js │ │ │ └── usingInput.test.js │ │ ├── events/ │ │ │ ├── closeCountryDropdownEvent.test.js │ │ │ ├── countryChangeEvent.test.js │ │ │ └── openCountryDropdownEvent.test.js │ │ ├── helpers/ │ │ │ ├── helpers.js │ │ │ └── matchers.js │ │ ├── methods/ │ │ │ ├── destroy.test.js │ │ │ ├── getExtension.test.js │ │ │ ├── getInstance.test.js │ │ │ ├── getNumber.test.js │ │ │ ├── getNumberType.test.js │ │ │ ├── getSelectedCountryData.test.js │ │ │ ├── getValidationError.test.js │ │ │ ├── isValidNumber.test.js │ │ │ ├── isValidNumberPrecise.test.js │ │ │ ├── setCountry.test.js │ │ │ ├── setDisabled.test.js │ │ │ ├── setNumber.test.js │ │ │ └── setPlaceholderNumberType.test.js │ │ ├── options/ │ │ │ ├── allowDropdown.test.js │ │ │ ├── allowNumberExtensions.test.js │ │ │ ├── allowPhonewords.test.js │ │ │ ├── allowedNumberTypes.test.js │ │ │ ├── autoPlaceholder.test.js │ │ │ ├── containerClass.test.js │ │ │ ├── countryNameLocale.test.js │ │ │ ├── countryOrder.test.js │ │ │ ├── countrySearch.test.js │ │ │ ├── customPlaceholder.test.js │ │ │ ├── dropdownContainer.test.js │ │ │ ├── excludeCountries.test.js │ │ │ ├── fixDropdownWidth.test.js │ │ │ ├── formatAsYouType.test.js │ │ │ ├── formatOnDisplay.test.js │ │ │ ├── geoIpLookup.test.js │ │ │ ├── hiddenInput.test.js │ │ │ ├── i18n-locales.test.js │ │ │ ├── i18n.test.js │ │ │ ├── initialCountry.test.js │ │ │ ├── loadUtils.test.js │ │ │ ├── nationalMode.test.js │ │ │ ├── onlyCountries.test.js │ │ │ ├── placeholderNumberType.test.js │ │ │ ├── separateDialCode.test.js │ │ │ ├── showFlags.test.js │ │ │ ├── strictMode.test.js │ │ │ └── useFullscreenPopup.test.js │ │ └── static/ │ │ ├── attachUtils.test.js │ │ ├── defaults.test.js │ │ └── getCountryData.test.js │ └── unit/ │ ├── core/ │ │ ├── countrySearch.test.js │ │ └── options.test.js │ ├── data/ │ │ ├── country-data.test.js │ │ └── nanp-regionless.test.js │ ├── format/ │ │ ├── caret.test.js │ │ └── formatting.test.js │ ├── intl-tel-input/ │ │ └── constructor.test.js │ └── utils/ │ ├── dom.test.js │ └── string.test.js ├── tests-e2e/ │ ├── angular.spec.ts │ ├── fixtures/ │ │ └── vanilla.html │ ├── react.spec.ts │ ├── simple.spec.ts │ ├── svelte.spec.ts │ ├── visual.spec.ts │ └── vue.spec.ts ├── tsconfig.json └── vue/ ├── README.md ├── demo/ │ ├── set-number/ │ │ ├── App.vue │ │ ├── index.html │ │ ├── main.js │ │ └── vite.config.js │ ├── simple/ │ │ ├── App.vue │ │ ├── index.html │ │ ├── main.js │ │ └── vite.config.js │ ├── toggle-disabled/ │ │ ├── App.vue │ │ ├── index.html │ │ ├── main.js │ │ └── vite.config.js │ └── validation/ │ ├── App.vue │ ├── index.html │ ├── main.js │ └── vite.config.js ├── src/ │ ├── IntlTelInput.vue │ ├── IntlTelInputWithUtils.vue │ ├── env.d.ts │ └── exports/ │ ├── IntlTelInput.ts │ └── IntlTelInputWithUtils.ts ├── tsconfig.app.json ├── tsconfig.json ├── tsconfig.node.json └── vite.config.mts