intl-tel-input 25.7.0 → 25.8.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.
@@ -3,6 +3,7 @@
3
3
  --iti-border-color: #ccc;
4
4
  --iti-dialcode-color: #999;
5
5
  --iti-dropdown-bg: white;
6
+ --iti-search-icon-color: #999;
6
7
  --iti-spacer-horizontal: 8px;
7
8
  --iti-flag-height: 12px;
8
9
  --iti-flag-width: 16px;
@@ -28,12 +29,6 @@
28
29
  .iti * {
29
30
  box-sizing: border-box;
30
31
  }
31
- .iti__hide {
32
- display: none;
33
- }
34
- .iti__v-hide {
35
- visibility: hidden;
36
- }
37
32
  .iti__a11y-text {
38
33
  width: 1px;
39
34
  height: 1px;
@@ -115,10 +110,70 @@
115
110
  width: 100%;
116
111
  border-width: 0;
117
112
  border-radius: 3px;
113
+ padding-left: 30px;
114
+ padding-right: 28px;
115
+ }
116
+ [dir=rtl] .iti__search-input {
117
+ padding-left: inherit;
118
+ padding-right: 30px;
119
+ background-position: right 8px center;
118
120
  }
119
121
  .iti__search-input + .iti__country-list {
120
122
  border-top: 1px solid var(--iti-border-color);
121
123
  }
124
+ .iti__search-input-wrapper {
125
+ position: relative;
126
+ display: flex;
127
+ align-items: center;
128
+ }
129
+ .iti__search-icon {
130
+ position: absolute;
131
+ left: 8px;
132
+ display: flex;
133
+ pointer-events: none;
134
+ }
135
+ [dir=rtl] .iti__search-icon {
136
+ left: auto;
137
+ right: 8px;
138
+ }
139
+ .iti__search-icon-svg {
140
+ stroke: var(--iti-search-icon-color);
141
+ fill: none;
142
+ stroke-width: 3;
143
+ }
144
+ .iti__search-clear {
145
+ position: absolute;
146
+ right: 4px;
147
+ background: transparent;
148
+ border: 0;
149
+ border-radius: 3px;
150
+ cursor: pointer;
151
+ padding: 4px;
152
+ display: flex;
153
+ align-items: center;
154
+ justify-content: center;
155
+ transition: background-color 0.15s ease;
156
+ width: 24px;
157
+ height: 24px;
158
+ }
159
+ .iti__search-clear .iti__search-clear-x {
160
+ stroke-width: 2;
161
+ }
162
+ .iti__search-clear .iti__search-clear-bg {
163
+ fill: var(--iti-search-icon-color);
164
+ }
165
+ [dir=rtl] .iti__search-clear {
166
+ right: auto;
167
+ left: 4px;
168
+ }
169
+ .iti__search-clear:hover, .iti__search-clear:focus-visible {
170
+ background: var(--iti-hover-color);
171
+ outline: none;
172
+ }
173
+ .iti__no-results {
174
+ text-align: center;
175
+ padding: 30px 0;
176
+ }
122
177
  .iti__country-list {
123
178
  list-style: none;
124
179
  padding: 0;
@@ -180,6 +235,12 @@
180
235
  .iti--container:hover {
181
236
  cursor: pointer;
182
237
  }
238
+ .iti__hide {
239
+ display: none;
240
+ }
241
+ .iti__v-hide {
242
+ visibility: hidden;
243
+ }
183
244
 
184
245
  .iti--fullscreen-popup.iti--container {
185
246
  background-color: rgba(0, 0, 0, 0.5);
@@ -1 +1 @@
1
- :root{--iti-hover-color:rgba(0, 0, 0, 0.05);--iti-border-color:#ccc;--iti-dialcode-color:#999;--iti-dropdown-bg:white;--iti-spacer-horizontal:8px;--iti-flag-height:12px;--iti-flag-width:16px;--iti-border-width:1px;--iti-arrow-height:4px;--iti-arrow-width:6px;--iti-triangle-border:calc(var(--iti-arrow-width) / 2);--iti-arrow-padding:6px;--iti-arrow-color:#555;--iti-path-flags-1x:url("../img/flags.webp");--iti-path-flags-2x:url("../img/flags@2x.webp");--iti-path-globe-1x:url("../img/globe.webp");--iti-path-globe-2x:url("../img/globe@2x.webp");--iti-flag-sprite-width:3904px;--iti-flag-sprite-height:12px;--iti-mobile-popup-margin:30px}.iti{position:relative;display:inline-block}.iti *{box-sizing:border-box}.iti__hide{display:none}.iti__v-hide{visibility:hidden}.iti__a11y-text{width:1px;height:1px;clip:rect(1px,1px,1px,1px);overflow:hidden;position:absolute}.iti input.iti__tel-input,.iti input.iti__tel-input[type=tel],.iti input.iti__tel-input[type=text]{position:relative;z-index:0;margin:0!important}[dir=rtl] .iti input.iti__tel-input,[dir=rtl] .iti input.iti__tel-input[type=tel],[dir=rtl] .iti input.iti__tel-input[type=text]{text-align:right}.iti__country-container{position:absolute;top:0;bottom:0;padding:var(--iti-border-width)}.iti__selected-country{z-index:1;position:relative;display:flex;align-items:center;height:100%;background:0 0;border:0;margin:0;padding:0;font-family:inherit;font-size:inherit;color:inherit;border-radius:0;font-weight:inherit;line-height:inherit;text-decoration:none}.iti__selected-country-primary{display:flex;align-items:center;height:100%;padding:0 var(--iti-arrow-padding) 0 var(--iti-spacer-horizontal)}.iti__arrow{margin-left:var(--iti-arrow-padding);width:0;height:0;border-left:var(--iti-triangle-border) solid transparent;border-right:var(--iti-triangle-border) solid transparent;border-top:var(--iti-arrow-height) solid var(--iti-arrow-color)}[dir=rtl] .iti__arrow{margin-right:var(--iti-arrow-padding);margin-left:0}.iti__arrow--up{border-top:none;border-bottom:var(--iti-arrow-height) solid var(--iti-arrow-color)}.iti__dropdown-content{border-radius:3px;background-color:var(--iti-dropdown-bg)}.iti--inline-dropdown .iti__dropdown-content{position:absolute;z-index:2;margin-top:3px;margin-left:calc(var(--iti-border-width) * -1);border:var(--iti-border-width) solid var(--iti-border-color);box-shadow:1px 1px 4px rgba(0,0,0,.2)}.iti__search-input{width:100%;border-width:0;border-radius:3px}.iti__search-input+.iti__country-list{border-top:1px solid var(--iti-border-color)}.iti__country-list{list-style:none;padding:0;margin:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}.iti--inline-dropdown .iti__country-list{max-height:185px}.iti--flexible-dropdown-width .iti__country-list{white-space:nowrap}@media (max-width:500px){.iti--flexible-dropdown-width .iti__country-list{white-space:normal}}.iti__country{display:flex;align-items:center;padding:8px var(--iti-spacer-horizontal);outline:0}.iti__dial-code{color:var(--iti-dialcode-color)}.iti__country.iti__highlight{background-color:var(--iti-hover-color)}.iti__country-list .iti__flag,.iti__country-name{margin-right:var(--iti-spacer-horizontal)}[dir=rtl] .iti__country-list .iti__flag,[dir=rtl] .iti__country-name{margin-right:0;margin-left:var(--iti-spacer-horizontal)}.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])):hover,.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])):hover button{cursor:pointer}.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) .iti__selected-country-primary:hover,.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) .iti__selected-country:has(+ .iti__dropdown-content:hover) .iti__selected-country-primary{background-color:var(--iti-hover-color)}.iti .iti__selected-dial-code{margin-left:4px}[dir=rtl] .iti .iti__selected-dial-code{margin-left:0;margin-right:4px}.iti--container{position:fixed;top:-1000px;left:-1000px;z-index:1060;padding:var(--iti-border-width)}.iti--container:hover{cursor:pointer}.iti--fullscreen-popup.iti--container{background-color:rgba(0,0,0,.5);top:0;bottom:0;left:0;right:0;position:fixed;padding:var(--iti-mobile-popup-margin);display:flex;flex-direction:column;justify-content:flex-start}.iti--fullscreen-popup .iti__dropdown-content{display:flex;flex-direction:column;max-height:100%;position:relative}.iti--fullscreen-popup .iti__country{padding:10px 10px;line-height:1.5em}.iti__flag{--iti-flag-offset:100px;height:var(--iti-flag-height);width:var(--iti-flag-width);border-radius:1px;box-shadow:0 0 1px 0 #888;background-image:var(--iti-path-flags-1x);background-repeat:no-repeat;background-position:var(--iti-flag-offset) 0;background-size:var(--iti-flag-sprite-width) var(--iti-flag-sprite-height)}.iti__ac{--iti-flag-offset:0px}.iti__ad{--iti-flag-offset:-16px}.iti__ae{--iti-flag-offset:-32px}.iti__af{--iti-flag-offset:-48px}.iti__ag{--iti-flag-offset:-64px}.iti__ai{--iti-flag-offset:-80px}.iti__al{--iti-flag-offset:-96px}.iti__am{--iti-flag-offset:-112px}.iti__ao{--iti-flag-offset:-128px}.iti__ar{--iti-flag-offset:-144px}.iti__as{--iti-flag-offset:-160px}.iti__at{--iti-flag-offset:-176px}.iti__au{--iti-flag-offset:-192px}.iti__aw{--iti-flag-offset:-208px}.iti__ax{--iti-flag-offset:-224px}.iti__az{--iti-flag-offset:-240px}.iti__ba{--iti-flag-offset:-256px}.iti__bb{--iti-flag-offset:-272px}.iti__bd{--iti-flag-offset:-288px}.iti__be{--iti-flag-offset:-304px}.iti__bf{--iti-flag-offset:-320px}.iti__bg{--iti-flag-offset:-336px}.iti__bh{--iti-flag-offset:-352px}.iti__bi{--iti-flag-offset:-368px}.iti__bj{--iti-flag-offset:-384px}.iti__bl{--iti-flag-offset:-400px}.iti__bm{--iti-flag-offset:-416px}.iti__bn{--iti-flag-offset:-432px}.iti__bo{--iti-flag-offset:-448px}.iti__bq{--iti-flag-offset:-464px}.iti__br{--iti-flag-offset:-480px}.iti__bs{--iti-flag-offset:-496px}.iti__bt{--iti-flag-offset:-512px}.iti__bw{--iti-flag-offset:-528px}.iti__by{--iti-flag-offset:-544px}.iti__bz{--iti-flag-offset:-560px}.iti__ca{--iti-flag-offset:-576px}.iti__cc{--iti-flag-offset:-592px}.iti__cd{--iti-flag-offset:-608px}.iti__cf{--iti-flag-offset:-624px}.iti__cg{--iti-flag-offset:-640px}.iti__ch{--iti-flag-offset:-656px}.iti__ci{--iti-flag-offset:-672px}.iti__ck{--iti-flag-offset:-688px}.iti__cl{--iti-flag-offset:-704px}.iti__cm{--iti-flag-offset:-720px}.iti__cn{--iti-flag-offset:-736px}.iti__co{--iti-flag-offset:-752px}.iti__cr{--iti-flag-offset:-768px}.iti__cu{--iti-flag-offset:-784px}.iti__cv{--iti-flag-offset:-800px}.iti__cw{--iti-flag-offset:-816px}.iti__cx{--iti-flag-offset:-832px}.iti__cy{--iti-flag-offset:-848px}.iti__cz{--iti-flag-offset:-864px}.iti__de{--iti-flag-offset:-880px}.iti__dj{--iti-flag-offset:-896px}.iti__dk{--iti-flag-offset:-912px}.iti__dm{--iti-flag-offset:-928px}.iti__do{--iti-flag-offset:-944px}.iti__dz{--iti-flag-offset:-960px}.iti__ec{--iti-flag-offset:-976px}.iti__ee{--iti-flag-offset:-992px}.iti__eg{--iti-flag-offset:-1008px}.iti__eh{--iti-flag-offset:-1024px}.iti__er{--iti-flag-offset:-1040px}.iti__es{--iti-flag-offset:-1056px}.iti__et{--iti-flag-offset:-1072px}.iti__fi{--iti-flag-offset:-1088px}.iti__fj{--iti-flag-offset:-1104px}.iti__fk{--iti-flag-offset:-1120px}.iti__fm{--iti-flag-offset:-1136px}.iti__fo{--iti-flag-offset:-1152px}.iti__fr{--iti-flag-offset:-1168px}.iti__ga{--iti-flag-offset:-1184px}.iti__gb{--iti-flag-offset:-1200px}.iti__gd{--iti-flag-offset:-1216px}.iti__ge{--iti-flag-offset:-1232px}.iti__gf{--iti-flag-offset:-1248px}.iti__gg{--iti-flag-offset:-1264px}.iti__gh{--iti-flag-offset:-1280px}.iti__gi{--iti-flag-offset:-1296px}.iti__gl{--iti-flag-offset:-1312px}.iti__gm{--iti-flag-offset:-1328px}.iti__gn{--iti-flag-offset:-1344px}.iti__gp{--iti-flag-offset:-1360px}.iti__gq{--iti-flag-offset:-1376px}.iti__gr{--iti-flag-offset:-1392px}.iti__gt{--iti-flag-offset:-1408px}.iti__gu{--iti-flag-offset:-1424px}.iti__gw{--iti-flag-offset:-1440px}.iti__gy{--iti-flag-offset:-1456px}.iti__hk{--iti-flag-offset:-1472px}.iti__hn{--iti-flag-offset:-1488px}.iti__hr{--iti-flag-offset:-1504px}.iti__ht{--iti-flag-offset:-1520px}.iti__hu{--iti-flag-offset:-1536px}.iti__id{--iti-flag-offset:-1552px}.iti__ie{--iti-flag-offset:-1568px}.iti__il{--iti-flag-offset:-1584px}.iti__im{--iti-flag-offset:-1600px}.iti__in{--iti-flag-offset:-1616px}.iti__io{--iti-flag-offset:-1632px}.iti__iq{--iti-flag-offset:-1648px}.iti__ir{--iti-flag-offset:-1664px}.iti__is{--iti-flag-offset:-1680px}.iti__it{--iti-flag-offset:-1696px}.iti__je{--iti-flag-offset:-1712px}.iti__jm{--iti-flag-offset:-1728px}.iti__jo{--iti-flag-offset:-1744px}.iti__jp{--iti-flag-offset:-1760px}.iti__ke{--iti-flag-offset:-1776px}.iti__kg{--iti-flag-offset:-1792px}.iti__kh{--iti-flag-offset:-1808px}.iti__ki{--iti-flag-offset:-1824px}.iti__km{--iti-flag-offset:-1840px}.iti__kn{--iti-flag-offset:-1856px}.iti__kp{--iti-flag-offset:-1872px}.iti__kr{--iti-flag-offset:-1888px}.iti__kw{--iti-flag-offset:-1904px}.iti__ky{--iti-flag-offset:-1920px}.iti__kz{--iti-flag-offset:-1936px}.iti__la{--iti-flag-offset:-1952px}.iti__lb{--iti-flag-offset:-1968px}.iti__lc{--iti-flag-offset:-1984px}.iti__li{--iti-flag-offset:-2000px}.iti__lk{--iti-flag-offset:-2016px}.iti__lr{--iti-flag-offset:-2032px}.iti__ls{--iti-flag-offset:-2048px}.iti__lt{--iti-flag-offset:-2064px}.iti__lu{--iti-flag-offset:-2080px}.iti__lv{--iti-flag-offset:-2096px}.iti__ly{--iti-flag-offset:-2112px}.iti__ma{--iti-flag-offset:-2128px}.iti__mc{--iti-flag-offset:-2144px}.iti__md{--iti-flag-offset:-2160px}.iti__me{--iti-flag-offset:-2176px}.iti__mf{--iti-flag-offset:-2192px}.iti__mg{--iti-flag-offset:-2208px}.iti__mh{--iti-flag-offset:-2224px}.iti__mk{--iti-flag-offset:-2240px}.iti__ml{--iti-flag-offset:-2256px}.iti__mm{--iti-flag-offset:-2272px}.iti__mn{--iti-flag-offset:-2288px}.iti__mo{--iti-flag-offset:-2304px}.iti__mp{--iti-flag-offset:-2320px}.iti__mq{--iti-flag-offset:-2336px}.iti__mr{--iti-flag-offset:-2352px}.iti__ms{--iti-flag-offset:-2368px}.iti__mt{--iti-flag-offset:-2384px}.iti__mu{--iti-flag-offset:-2400px}.iti__mv{--iti-flag-offset:-2416px}.iti__mw{--iti-flag-offset:-2432px}.iti__mx{--iti-flag-offset:-2448px}.iti__my{--iti-flag-offset:-2464px}.iti__mz{--iti-flag-offset:-2480px}.iti__na{--iti-flag-offset:-2496px}.iti__nc{--iti-flag-offset:-2512px}.iti__ne{--iti-flag-offset:-2528px}.iti__nf{--iti-flag-offset:-2544px}.iti__ng{--iti-flag-offset:-2560px}.iti__ni{--iti-flag-offset:-2576px}.iti__nl{--iti-flag-offset:-2592px}.iti__no{--iti-flag-offset:-2608px}.iti__np{--iti-flag-offset:-2624px}.iti__nr{--iti-flag-offset:-2640px}.iti__nu{--iti-flag-offset:-2656px}.iti__nz{--iti-flag-offset:-2672px}.iti__om{--iti-flag-offset:-2688px}.iti__pa{--iti-flag-offset:-2704px}.iti__pe{--iti-flag-offset:-2720px}.iti__pf{--iti-flag-offset:-2736px}.iti__pg{--iti-flag-offset:-2752px}.iti__ph{--iti-flag-offset:-2768px}.iti__pk{--iti-flag-offset:-2784px}.iti__pl{--iti-flag-offset:-2800px}.iti__pm{--iti-flag-offset:-2816px}.iti__pr{--iti-flag-offset:-2832px}.iti__ps{--iti-flag-offset:-2848px}.iti__pt{--iti-flag-offset:-2864px}.iti__pw{--iti-flag-offset:-2880px}.iti__py{--iti-flag-offset:-2896px}.iti__qa{--iti-flag-offset:-2912px}.iti__re{--iti-flag-offset:-2928px}.iti__ro{--iti-flag-offset:-2944px}.iti__rs{--iti-flag-offset:-2960px}.iti__ru{--iti-flag-offset:-2976px}.iti__rw{--iti-flag-offset:-2992px}.iti__sa{--iti-flag-offset:-3008px}.iti__sb{--iti-flag-offset:-3024px}.iti__sc{--iti-flag-offset:-3040px}.iti__sd{--iti-flag-offset:-3056px}.iti__se{--iti-flag-offset:-3072px}.iti__sg{--iti-flag-offset:-3088px}.iti__sh{--iti-flag-offset:-3104px}.iti__si{--iti-flag-offset:-3120px}.iti__sj{--iti-flag-offset:-3136px}.iti__sk{--iti-flag-offset:-3152px}.iti__sl{--iti-flag-offset:-3168px}.iti__sm{--iti-flag-offset:-3184px}.iti__sn{--iti-flag-offset:-3200px}.iti__so{--iti-flag-offset:-3216px}.iti__sr{--iti-flag-offset:-3232px}.iti__ss{--iti-flag-offset:-3248px}.iti__st{--iti-flag-offset:-3264px}.iti__sv{--iti-flag-offset:-3280px}.iti__sx{--iti-flag-offset:-3296px}.iti__sy{--iti-flag-offset:-3312px}.iti__sz{--iti-flag-offset:-3328px}.iti__tc{--iti-flag-offset:-3344px}.iti__td{--iti-flag-offset:-3360px}.iti__tg{--iti-flag-offset:-3376px}.iti__th{--iti-flag-offset:-3392px}.iti__tj{--iti-flag-offset:-3408px}.iti__tk{--iti-flag-offset:-3424px}.iti__tl{--iti-flag-offset:-3440px}.iti__tm{--iti-flag-offset:-3456px}.iti__tn{--iti-flag-offset:-3472px}.iti__to{--iti-flag-offset:-3488px}.iti__tr{--iti-flag-offset:-3504px}.iti__tt{--iti-flag-offset:-3520px}.iti__tv{--iti-flag-offset:-3536px}.iti__tw{--iti-flag-offset:-3552px}.iti__tz{--iti-flag-offset:-3568px}.iti__ua{--iti-flag-offset:-3584px}.iti__ug{--iti-flag-offset:-3600px}.iti__us{--iti-flag-offset:-3616px}.iti__uy{--iti-flag-offset:-3632px}.iti__uz{--iti-flag-offset:-3648px}.iti__va{--iti-flag-offset:-3664px}.iti__vc{--iti-flag-offset:-3680px}.iti__ve{--iti-flag-offset:-3696px}.iti__vg{--iti-flag-offset:-3712px}.iti__vi{--iti-flag-offset:-3728px}.iti__vn{--iti-flag-offset:-3744px}.iti__vu{--iti-flag-offset:-3760px}.iti__wf{--iti-flag-offset:-3776px}.iti__ws{--iti-flag-offset:-3792px}.iti__xk{--iti-flag-offset:-3808px}.iti__ye{--iti-flag-offset:-3824px}.iti__yt{--iti-flag-offset:-3840px}.iti__za{--iti-flag-offset:-3856px}.iti__zm{--iti-flag-offset:-3872px}.iti__zw{--iti-flag-offset:-3888px}.iti__globe{background-image:var(--iti-path-globe-1x);background-size:contain;background-position:right;box-shadow:none;height:19px}@media (min-resolution:2x){.iti__flag{background-image:var(--iti-path-flags-2x)}.iti__globe{background-image:var(--iti-path-globe-2x)}}
1
+ :root{--iti-hover-color:rgba(0, 0, 0, 0.05);--iti-border-color:#ccc;--iti-dialcode-color:#999;--iti-dropdown-bg:white;--iti-search-icon-color:#999;--iti-spacer-horizontal:8px;--iti-flag-height:12px;--iti-flag-width:16px;--iti-border-width:1px;--iti-arrow-height:4px;--iti-arrow-width:6px;--iti-triangle-border:calc(var(--iti-arrow-width) / 2);--iti-arrow-padding:6px;--iti-arrow-color:#555;--iti-path-flags-1x:url("../img/flags.webp");--iti-path-flags-2x:url("../img/flags@2x.webp");--iti-path-globe-1x:url("../img/globe.webp");--iti-path-globe-2x:url("../img/globe@2x.webp");--iti-flag-sprite-width:3904px;--iti-flag-sprite-height:12px;--iti-mobile-popup-margin:30px}.iti{position:relative;display:inline-block}.iti *{box-sizing:border-box}.iti__a11y-text{width:1px;height:1px;clip:rect(1px,1px,1px,1px);overflow:hidden;position:absolute}.iti input.iti__tel-input,.iti input.iti__tel-input[type=tel],.iti input.iti__tel-input[type=text]{position:relative;z-index:0;margin:0!important}[dir=rtl] .iti input.iti__tel-input,[dir=rtl] .iti input.iti__tel-input[type=tel],[dir=rtl] .iti input.iti__tel-input[type=text]{text-align:right}.iti__country-container{position:absolute;top:0;bottom:0;padding:var(--iti-border-width)}.iti__selected-country{z-index:1;position:relative;display:flex;align-items:center;height:100%;background:0 0;border:0;margin:0;padding:0;font-family:inherit;font-size:inherit;color:inherit;border-radius:0;font-weight:inherit;line-height:inherit;text-decoration:none}.iti__selected-country-primary{display:flex;align-items:center;height:100%;padding:0 var(--iti-arrow-padding) 0 var(--iti-spacer-horizontal)}.iti__arrow{margin-left:var(--iti-arrow-padding);width:0;height:0;border-left:var(--iti-triangle-border) solid transparent;border-right:var(--iti-triangle-border) solid transparent;border-top:var(--iti-arrow-height) solid var(--iti-arrow-color)}[dir=rtl] .iti__arrow{margin-right:var(--iti-arrow-padding);margin-left:0}.iti__arrow--up{border-top:none;border-bottom:var(--iti-arrow-height) solid var(--iti-arrow-color)}.iti__dropdown-content{border-radius:3px;background-color:var(--iti-dropdown-bg)}.iti--inline-dropdown .iti__dropdown-content{position:absolute;z-index:2;margin-top:3px;margin-left:calc(var(--iti-border-width) * -1);border:var(--iti-border-width) solid var(--iti-border-color);box-shadow:1px 1px 4px rgba(0,0,0,.2)}.iti__search-input{width:100%;border-width:0;border-radius:3px;padding-left:30px;padding-right:28px}[dir=rtl] .iti__search-input{padding-left:inherit;padding-right:30px;background-position:right 8px center}.iti__search-input+.iti__country-list{border-top:1px solid var(--iti-border-color)}.iti__search-input-wrapper{position:relative;display:flex;align-items:center}.iti__search-icon{position:absolute;left:8px;display:flex;pointer-events:none}[dir=rtl] .iti__search-icon{left:auto;right:8px}.iti__search-icon-svg{stroke:var(--iti-search-icon-color);fill:none;stroke-width:3}.iti__search-clear{position:absolute;right:4px;background:0 0;border:0;border-radius:3px;cursor:pointer;padding:4px;display:flex;align-items:center;justify-content:center;transition:background-color .15s ease;width:24px;height:24px}.iti__search-clear .iti__search-clear-x{stroke-width:2}.iti__search-clear .iti__search-clear-bg{fill:var(--iti-search-icon-color)}[dir=rtl] .iti__search-clear{right:auto;left:4px}.iti__search-clear:focus-visible,.iti__search-clear:hover{background:var(--iti-hover-color);outline:0}.iti__no-results{text-align:center;padding:30px 0}.iti__country-list{list-style:none;padding:0;margin:0;overflow-y:scroll;-webkit-overflow-scrolling:touch}.iti--inline-dropdown .iti__country-list{max-height:185px}.iti--flexible-dropdown-width .iti__country-list{white-space:nowrap}@media (max-width:500px){.iti--flexible-dropdown-width .iti__country-list{white-space:normal}}.iti__country{display:flex;align-items:center;padding:8px var(--iti-spacer-horizontal);outline:0}.iti__dial-code{color:var(--iti-dialcode-color)}.iti__country.iti__highlight{background-color:var(--iti-hover-color)}.iti__country-list .iti__flag,.iti__country-name{margin-right:var(--iti-spacer-horizontal)}[dir=rtl] .iti__country-list .iti__flag,[dir=rtl] .iti__country-name{margin-right:0;margin-left:var(--iti-spacer-horizontal)}.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])):hover,.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])):hover button{cursor:pointer}.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) .iti__selected-country-primary:hover,.iti--allow-dropdown .iti__country-container:not(:has(+ input[disabled])):not(:has(+ input[readonly])) .iti__selected-country:has(+ .iti__dropdown-content:hover) .iti__selected-country-primary{background-color:var(--iti-hover-color)}.iti .iti__selected-dial-code{margin-left:4px}[dir=rtl] .iti .iti__selected-dial-code{margin-left:0;margin-right:4px}.iti--container{position:fixed;top:-1000px;left:-1000px;z-index:1060;padding:var(--iti-border-width)}.iti--container:hover{cursor:pointer}.iti__hide{display:none}.iti__v-hide{visibility:hidden}.iti--fullscreen-popup.iti--container{background-color:rgba(0,0,0,.5);top:0;bottom:0;left:0;right:0;position:fixed;padding:var(--iti-mobile-popup-margin);display:flex;flex-direction:column;justify-content:flex-start}.iti--fullscreen-popup .iti__dropdown-content{display:flex;flex-direction:column;max-height:100%;position:relative}.iti--fullscreen-popup .iti__country{padding:10px 10px;line-height:1.5em}.iti__flag{--iti-flag-offset:100px;height:var(--iti-flag-height);width:var(--iti-flag-width);border-radius:1px;box-shadow:0 0 1px 0 #888;background-image:var(--iti-path-flags-1x);background-repeat:no-repeat;background-position:var(--iti-flag-offset) 0;background-size:var(--iti-flag-sprite-width) var(--iti-flag-sprite-height)}.iti__ac{--iti-flag-offset:0px}.iti__ad{--iti-flag-offset:-16px}.iti__ae{--iti-flag-offset:-32px}.iti__af{--iti-flag-offset:-48px}.iti__ag{--iti-flag-offset:-64px}.iti__ai{--iti-flag-offset:-80px}.iti__al{--iti-flag-offset:-96px}.iti__am{--iti-flag-offset:-112px}.iti__ao{--iti-flag-offset:-128px}.iti__ar{--iti-flag-offset:-144px}.iti__as{--iti-flag-offset:-160px}.iti__at{--iti-flag-offset:-176px}.iti__au{--iti-flag-offset:-192px}.iti__aw{--iti-flag-offset:-208px}.iti__ax{--iti-flag-offset:-224px}.iti__az{--iti-flag-offset:-240px}.iti__ba{--iti-flag-offset:-256px}.iti__bb{--iti-flag-offset:-272px}.iti__bd{--iti-flag-offset:-288px}.iti__be{--iti-flag-offset:-304px}.iti__bf{--iti-flag-offset:-320px}.iti__bg{--iti-flag-offset:-336px}.iti__bh{--iti-flag-offset:-352px}.iti__bi{--iti-flag-offset:-368px}.iti__bj{--iti-flag-offset:-384px}.iti__bl{--iti-flag-offset:-400px}.iti__bm{--iti-flag-offset:-416px}.iti__bn{--iti-flag-offset:-432px}.iti__bo{--iti-flag-offset:-448px}.iti__bq{--iti-flag-offset:-464px}.iti__br{--iti-flag-offset:-480px}.iti__bs{--iti-flag-offset:-496px}.iti__bt{--iti-flag-offset:-512px}.iti__bw{--iti-flag-offset:-528px}.iti__by{--iti-flag-offset:-544px}.iti__bz{--iti-flag-offset:-560px}.iti__ca{--iti-flag-offset:-576px}.iti__cc{--iti-flag-offset:-592px}.iti__cd{--iti-flag-offset:-608px}.iti__cf{--iti-flag-offset:-624px}.iti__cg{--iti-flag-offset:-640px}.iti__ch{--iti-flag-offset:-656px}.iti__ci{--iti-flag-offset:-672px}.iti__ck{--iti-flag-offset:-688px}.iti__cl{--iti-flag-offset:-704px}.iti__cm{--iti-flag-offset:-720px}.iti__cn{--iti-flag-offset:-736px}.iti__co{--iti-flag-offset:-752px}.iti__cr{--iti-flag-offset:-768px}.iti__cu{--iti-flag-offset:-784px}.iti__cv{--iti-flag-offset:-800px}.iti__cw{--iti-flag-offset:-816px}.iti__cx{--iti-flag-offset:-832px}.iti__cy{--iti-flag-offset:-848px}.iti__cz{--iti-flag-offset:-864px}.iti__de{--iti-flag-offset:-880px}.iti__dj{--iti-flag-offset:-896px}.iti__dk{--iti-flag-offset:-912px}.iti__dm{--iti-flag-offset:-928px}.iti__do{--iti-flag-offset:-944px}.iti__dz{--iti-flag-offset:-960px}.iti__ec{--iti-flag-offset:-976px}.iti__ee{--iti-flag-offset:-992px}.iti__eg{--iti-flag-offset:-1008px}.iti__eh{--iti-flag-offset:-1024px}.iti__er{--iti-flag-offset:-1040px}.iti__es{--iti-flag-offset:-1056px}.iti__et{--iti-flag-offset:-1072px}.iti__fi{--iti-flag-offset:-1088px}.iti__fj{--iti-flag-offset:-1104px}.iti__fk{--iti-flag-offset:-1120px}.iti__fm{--iti-flag-offset:-1136px}.iti__fo{--iti-flag-offset:-1152px}.iti__fr{--iti-flag-offset:-1168px}.iti__ga{--iti-flag-offset:-1184px}.iti__gb{--iti-flag-offset:-1200px}.iti__gd{--iti-flag-offset:-1216px}.iti__ge{--iti-flag-offset:-1232px}.iti__gf{--iti-flag-offset:-1248px}.iti__gg{--iti-flag-offset:-1264px}.iti__gh{--iti-flag-offset:-1280px}.iti__gi{--iti-flag-offset:-1296px}.iti__gl{--iti-flag-offset:-1312px}.iti__gm{--iti-flag-offset:-1328px}.iti__gn{--iti-flag-offset:-1344px}.iti__gp{--iti-flag-offset:-1360px}.iti__gq{--iti-flag-offset:-1376px}.iti__gr{--iti-flag-offset:-1392px}.iti__gt{--iti-flag-offset:-1408px}.iti__gu{--iti-flag-offset:-1424px}.iti__gw{--iti-flag-offset:-1440px}.iti__gy{--iti-flag-offset:-1456px}.iti__hk{--iti-flag-offset:-1472px}.iti__hn{--iti-flag-offset:-1488px}.iti__hr{--iti-flag-offset:-1504px}.iti__ht{--iti-flag-offset:-1520px}.iti__hu{--iti-flag-offset:-1536px}.iti__id{--iti-flag-offset:-1552px}.iti__ie{--iti-flag-offset:-1568px}.iti__il{--iti-flag-offset:-1584px}.iti__im{--iti-flag-offset:-1600px}.iti__in{--iti-flag-offset:-1616px}.iti__io{--iti-flag-offset:-1632px}.iti__iq{--iti-flag-offset:-1648px}.iti__ir{--iti-flag-offset:-1664px}.iti__is{--iti-flag-offset:-1680px}.iti__it{--iti-flag-offset:-1696px}.iti__je{--iti-flag-offset:-1712px}.iti__jm{--iti-flag-offset:-1728px}.iti__jo{--iti-flag-offset:-1744px}.iti__jp{--iti-flag-offset:-1760px}.iti__ke{--iti-flag-offset:-1776px}.iti__kg{--iti-flag-offset:-1792px}.iti__kh{--iti-flag-offset:-1808px}.iti__ki{--iti-flag-offset:-1824px}.iti__km{--iti-flag-offset:-1840px}.iti__kn{--iti-flag-offset:-1856px}.iti__kp{--iti-flag-offset:-1872px}.iti__kr{--iti-flag-offset:-1888px}.iti__kw{--iti-flag-offset:-1904px}.iti__ky{--iti-flag-offset:-1920px}.iti__kz{--iti-flag-offset:-1936px}.iti__la{--iti-flag-offset:-1952px}.iti__lb{--iti-flag-offset:-1968px}.iti__lc{--iti-flag-offset:-1984px}.iti__li{--iti-flag-offset:-2000px}.iti__lk{--iti-flag-offset:-2016px}.iti__lr{--iti-flag-offset:-2032px}.iti__ls{--iti-flag-offset:-2048px}.iti__lt{--iti-flag-offset:-2064px}.iti__lu{--iti-flag-offset:-2080px}.iti__lv{--iti-flag-offset:-2096px}.iti__ly{--iti-flag-offset:-2112px}.iti__ma{--iti-flag-offset:-2128px}.iti__mc{--iti-flag-offset:-2144px}.iti__md{--iti-flag-offset:-2160px}.iti__me{--iti-flag-offset:-2176px}.iti__mf{--iti-flag-offset:-2192px}.iti__mg{--iti-flag-offset:-2208px}.iti__mh{--iti-flag-offset:-2224px}.iti__mk{--iti-flag-offset:-2240px}.iti__ml{--iti-flag-offset:-2256px}.iti__mm{--iti-flag-offset:-2272px}.iti__mn{--iti-flag-offset:-2288px}.iti__mo{--iti-flag-offset:-2304px}.iti__mp{--iti-flag-offset:-2320px}.iti__mq{--iti-flag-offset:-2336px}.iti__mr{--iti-flag-offset:-2352px}.iti__ms{--iti-flag-offset:-2368px}.iti__mt{--iti-flag-offset:-2384px}.iti__mu{--iti-flag-offset:-2400px}.iti__mv{--iti-flag-offset:-2416px}.iti__mw{--iti-flag-offset:-2432px}.iti__mx{--iti-flag-offset:-2448px}.iti__my{--iti-flag-offset:-2464px}.iti__mz{--iti-flag-offset:-2480px}.iti__na{--iti-flag-offset:-2496px}.iti__nc{--iti-flag-offset:-2512px}.iti__ne{--iti-flag-offset:-2528px}.iti__nf{--iti-flag-offset:-2544px}.iti__ng{--iti-flag-offset:-2560px}.iti__ni{--iti-flag-offset:-2576px}.iti__nl{--iti-flag-offset:-2592px}.iti__no{--iti-flag-offset:-2608px}.iti__np{--iti-flag-offset:-2624px}.iti__nr{--iti-flag-offset:-2640px}.iti__nu{--iti-flag-offset:-2656px}.iti__nz{--iti-flag-offset:-2672px}.iti__om{--iti-flag-offset:-2688px}.iti__pa{--iti-flag-offset:-2704px}.iti__pe{--iti-flag-offset:-2720px}.iti__pf{--iti-flag-offset:-2736px}.iti__pg{--iti-flag-offset:-2752px}.iti__ph{--iti-flag-offset:-2768px}.iti__pk{--iti-flag-offset:-2784px}.iti__pl{--iti-flag-offset:-2800px}.iti__pm{--iti-flag-offset:-2816px}.iti__pr{--iti-flag-offset:-2832px}.iti__ps{--iti-flag-offset:-2848px}.iti__pt{--iti-flag-offset:-2864px}.iti__pw{--iti-flag-offset:-2880px}.iti__py{--iti-flag-offset:-2896px}.iti__qa{--iti-flag-offset:-2912px}.iti__re{--iti-flag-offset:-2928px}.iti__ro{--iti-flag-offset:-2944px}.iti__rs{--iti-flag-offset:-2960px}.iti__ru{--iti-flag-offset:-2976px}.iti__rw{--iti-flag-offset:-2992px}.iti__sa{--iti-flag-offset:-3008px}.iti__sb{--iti-flag-offset:-3024px}.iti__sc{--iti-flag-offset:-3040px}.iti__sd{--iti-flag-offset:-3056px}.iti__se{--iti-flag-offset:-3072px}.iti__sg{--iti-flag-offset:-3088px}.iti__sh{--iti-flag-offset:-3104px}.iti__si{--iti-flag-offset:-3120px}.iti__sj{--iti-flag-offset:-3136px}.iti__sk{--iti-flag-offset:-3152px}.iti__sl{--iti-flag-offset:-3168px}.iti__sm{--iti-flag-offset:-3184px}.iti__sn{--iti-flag-offset:-3200px}.iti__so{--iti-flag-offset:-3216px}.iti__sr{--iti-flag-offset:-3232px}.iti__ss{--iti-flag-offset:-3248px}.iti__st{--iti-flag-offset:-3264px}.iti__sv{--iti-flag-offset:-3280px}.iti__sx{--iti-flag-offset:-3296px}.iti__sy{--iti-flag-offset:-3312px}.iti__sz{--iti-flag-offset:-3328px}.iti__tc{--iti-flag-offset:-3344px}.iti__td{--iti-flag-offset:-3360px}.iti__tg{--iti-flag-offset:-3376px}.iti__th{--iti-flag-offset:-3392px}.iti__tj{--iti-flag-offset:-3408px}.iti__tk{--iti-flag-offset:-3424px}.iti__tl{--iti-flag-offset:-3440px}.iti__tm{--iti-flag-offset:-3456px}.iti__tn{--iti-flag-offset:-3472px}.iti__to{--iti-flag-offset:-3488px}.iti__tr{--iti-flag-offset:-3504px}.iti__tt{--iti-flag-offset:-3520px}.iti__tv{--iti-flag-offset:-3536px}.iti__tw{--iti-flag-offset:-3552px}.iti__tz{--iti-flag-offset:-3568px}.iti__ua{--iti-flag-offset:-3584px}.iti__ug{--iti-flag-offset:-3600px}.iti__us{--iti-flag-offset:-3616px}.iti__uy{--iti-flag-offset:-3632px}.iti__uz{--iti-flag-offset:-3648px}.iti__va{--iti-flag-offset:-3664px}.iti__vc{--iti-flag-offset:-3680px}.iti__ve{--iti-flag-offset:-3696px}.iti__vg{--iti-flag-offset:-3712px}.iti__vi{--iti-flag-offset:-3728px}.iti__vn{--iti-flag-offset:-3744px}.iti__vu{--iti-flag-offset:-3760px}.iti__wf{--iti-flag-offset:-3776px}.iti__ws{--iti-flag-offset:-3792px}.iti__xk{--iti-flag-offset:-3808px}.iti__ye{--iti-flag-offset:-3824px}.iti__yt{--iti-flag-offset:-3840px}.iti__za{--iti-flag-offset:-3856px}.iti__zm{--iti-flag-offset:-3872px}.iti__zw{--iti-flag-offset:-3888px}.iti__globe{background-image:var(--iti-path-globe-1x);background-size:contain;background-position:right;box-shadow:none;height:19px}@media (min-resolution:2x){.iti__flag{background-image:var(--iti-path-flags-2x)}.iti__globe{background-image:var(--iti-path-globe-2x)}}
package/build/js/data.js CHANGED
@@ -1,5 +1,5 @@
1
1
  /*
2
- * International Telephone Input v25.7.0
2
+ * International Telephone Input v25.8.0
3
3
  * 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 v25.7.0
2
+ * International Telephone Input v25.8.0
3
3
  * https://github.com/jackocnr/intl-tel-input.git
4
4
  * Licensed under the MIT license
5
5
  */
@@ -3,6 +3,7 @@ const interfaceTranslations = {
3
3
  noCountrySelected: "No country selected",
4
4
  countryListAriaLabel: "List of countries",
5
5
  searchPlaceholder: "Search",
6
+ clearSearchAriaLabel: "Clear search",
6
7
  zeroSearchResults: "No results found",
7
8
  oneSearchResult: "1 result found",
8
9
  multipleSearchResults: "${count} results found",
@@ -264,6 +264,7 @@ declare module "intl-tel-input/i18n/types" {
264
264
  ax?: string;
265
265
  selectedCountryAriaLabel?: string;
266
266
  searchPlaceholder?: string;
267
+ clearSearchAriaLabel?: string;
267
268
  countryListAriaLabel?: string;
268
269
  oneSearchResult?: string;
269
270
  multipleSearchResults?: string;
@@ -397,6 +398,9 @@ declare module "intl-tel-input" {
397
398
  private dropdownArrow;
398
399
  private dropdownContent;
399
400
  private searchInput;
401
+ private searchIcon;
402
+ private searchClearButton;
403
+ private searchNoResults;
400
404
  private searchResultsA11yText;
401
405
  private countryList;
402
406
  private dropdown;
@@ -418,11 +422,17 @@ declare module "intl-tel-input" {
418
422
  private _handleClickOffToClose;
419
423
  private _handleKeydownOnDropdown;
420
424
  private _handleSearchChange;
425
+ private _handleSearchClear;
421
426
  private _handlePageLoad;
422
427
  private resolveAutoCountryPromise;
423
428
  private rejectAutoCountryPromise;
424
429
  private resolveUtilsScriptPromise;
425
430
  private rejectUtilsScriptPromise;
431
+ /**
432
+ * Build a space-delimited class string from an object map of className -> truthy/falsey.
433
+ * Only keys with truthy values are included.
434
+ */
435
+ private static _buildClassNames;
426
436
  constructor(input: HTMLInputElement, customOptions?: SomeOptions);
427
437
  _init(): void;
428
438
  private _processCountryData;
@@ -449,7 +459,7 @@ declare module "intl-tel-input" {
449
459
  private _bindDropdownListeners;
450
460
  private _searchForCountry;
451
461
  private _filterCountries;
452
- private _updateSearchResultsText;
462
+ private _updateSearchResultsA11yText;
453
463
  private _handleUpDownKey;
454
464
  private _handleEnterKey;
455
465
  private _updateValFromNumber;
@@ -1,5 +1,5 @@
1
1
  /*
2
- * International Telephone Input v25.7.0
2
+ * International Telephone Input v25.8.0
3
3
  * https://github.com/jackocnr/intl-tel-input.git
4
4
  * Licensed under the MIT license
5
5
  */
@@ -1633,6 +1633,7 @@ var factoryOutput = (() => {
1633
1633
  noCountrySelected: "No country selected",
1634
1634
  countryListAriaLabel: "List of countries",
1635
1635
  searchPlaceholder: "Search",
1636
+ clearSearchAriaLabel: "Clear search",
1636
1637
  zeroSearchResults: "No results found",
1637
1638
  oneSearchResult: "1 result found",
1638
1639
  multipleSearchResults: "${count} results found",
@@ -1761,8 +1762,8 @@ var factoryOutput = (() => {
1761
1762
  }
1762
1763
  return formattedValue.length;
1763
1764
  };
1764
- var createEl = (name, attrs, container) => {
1765
- const el = document.createElement(name);
1765
+ var createEl = (tagName, attrs, container) => {
1766
+ const el = document.createElement(tagName);
1766
1767
  if (attrs) {
1767
1768
  Object.entries(attrs).forEach(([key, value]) => el.setAttribute(key, value));
1768
1769
  }
@@ -1775,7 +1776,14 @@ var factoryOutput = (() => {
1775
1776
  const { instances } = intlTelInput;
1776
1777
  Object.values(instances).forEach((instance) => instance[method](...args));
1777
1778
  };
1778
- var Iti = class {
1779
+ var Iti = class _Iti {
1780
+ /**
1781
+ * Build a space-delimited class string from an object map of className -> truthy/falsey.
1782
+ * Only keys with truthy values are included.
1783
+ */
1784
+ static _buildClassNames(flags) {
1785
+ return Object.keys(flags).filter((k) => Boolean(flags[k])).join(" ");
1786
+ }
1779
1787
  constructor(input, customOptions = {}) {
1780
1788
  this.id = id++;
1781
1789
  this.telInput = input;
@@ -1960,20 +1968,14 @@ var factoryOutput = (() => {
1960
1968
  countrySearch,
1961
1969
  i18n
1962
1970
  } = this.options;
1963
- let parentClass = "iti";
1964
- if (allowDropdown) {
1965
- parentClass += " iti--allow-dropdown";
1966
- }
1967
- if (showFlags) {
1968
- parentClass += " iti--show-flags";
1969
- }
1970
- if (containerClass) {
1971
- parentClass += ` ${containerClass}`;
1972
- }
1973
- if (!useFullscreenPopup) {
1974
- parentClass += " iti--inline-dropdown";
1975
- }
1976
- const wrapper = createEl("div", { class: parentClass });
1971
+ const parentClasses = _Iti._buildClassNames({
1972
+ "iti": true,
1973
+ "iti--allow-dropdown": allowDropdown,
1974
+ "iti--show-flags": showFlags,
1975
+ "iti--inline-dropdown": !useFullscreenPopup,
1976
+ [containerClass]: Boolean(containerClass)
1977
+ });
1978
+ const wrapper = createEl("div", { class: parentClasses });
1977
1979
  this.telInput.parentNode?.insertBefore(wrapper, this.telInput);
1978
1980
  if (allowDropdown || showFlags || separateDialCode) {
1979
1981
  this.countryContainer = createEl(
@@ -1994,9 +1996,8 @@ var factoryOutput = (() => {
1994
1996
  class: "iti__selected-country",
1995
1997
  "aria-expanded": "false",
1996
1998
  "aria-label": this.options.i18n.selectedCountryAriaLabel,
1997
- "aria-haspopup": "true",
1998
- "aria-controls": `iti-${this.id}__dropdown-content`,
1999
- "role": "combobox"
1999
+ "aria-haspopup": "dialog",
2000
+ "aria-controls": `iti-${this.id}__dropdown-content`
2000
2001
  },
2001
2002
  this.countryContainer
2002
2003
  );
@@ -2035,15 +2036,38 @@ var factoryOutput = (() => {
2035
2036
  const extraClasses = fixDropdownWidth ? "" : "iti--flexible-dropdown-width";
2036
2037
  this.dropdownContent = createEl("div", {
2037
2038
  id: `iti-${this.id}__dropdown-content`,
2038
- class: `iti__dropdown-content iti__hide ${extraClasses}`
2039
+ class: `iti__dropdown-content iti__hide ${extraClasses}`,
2040
+ role: "dialog",
2041
+ "aria-modal": "true"
2039
2042
  });
2040
2043
  if (countrySearch) {
2044
+ const searchWrapper = createEl(
2045
+ "div",
2046
+ { class: "iti__search-input-wrapper" },
2047
+ this.dropdownContent
2048
+ );
2049
+ this.searchIcon = createEl(
2050
+ "span",
2051
+ {
2052
+ class: "iti__search-icon",
2053
+ "aria-hidden": "true"
2054
+ },
2055
+ searchWrapper
2056
+ );
2057
+ this.searchIcon.innerHTML = `
2058
+ <svg class="iti__search-icon-svg" width="14" height="14" viewBox="0 0 24 24" focusable="false" aria-hidden="true">
2059
+ <circle cx="11" cy="11" r="7" />
2060
+ <line x1="21" y1="21" x2="16.65" y2="16.65" />
2061
+ </svg>`;
2041
2062
  this.searchInput = createEl(
2042
2063
  "input",
2043
2064
  {
2044
- type: "text",
2065
+ id: `iti-${this.id}__search-input`,
2066
+ // Chrome says inputs need either a name or an id
2067
+ type: "search",
2045
2068
  class: "iti__search-input",
2046
2069
  placeholder: i18n.searchPlaceholder,
2070
+ // role=combobox + aria-autocomplete=list + aria-activedescendant allows maintaining focus on the search input while allowing users to navigate search results with up/down keyboard keys
2047
2071
  role: "combobox",
2048
2072
  "aria-expanded": "true",
2049
2073
  "aria-label": i18n.searchPlaceholder,
@@ -2051,13 +2075,42 @@ var factoryOutput = (() => {
2051
2075
  "aria-autocomplete": "list",
2052
2076
  "autocomplete": "off"
2053
2077
  },
2054
- this.dropdownContent
2078
+ searchWrapper
2079
+ );
2080
+ this.searchClearButton = createEl(
2081
+ "button",
2082
+ {
2083
+ type: "button",
2084
+ class: "iti__search-clear iti__hide",
2085
+ "aria-label": i18n.clearSearchAriaLabel,
2086
+ tabindex: "-1"
2087
+ },
2088
+ searchWrapper
2055
2089
  );
2090
+ const maskId = `iti-${this.id}-clear-mask`;
2091
+ this.searchClearButton.innerHTML = `
2092
+ <svg class="iti__search-clear-svg" width="12" height="12" viewBox="0 0 16 16" aria-hidden="true" focusable="false">
2093
+ <mask id="${maskId}" maskUnits="userSpaceOnUse">
2094
+ <rect width="16" height="16" fill="white" />
2095
+ <path d="M5.2 5.2 L10.8 10.8 M10.8 5.2 L5.2 10.8" stroke="black" stroke-linecap="round" class="iti__search-clear-x" />
2096
+ </mask>
2097
+ <circle cx="8" cy="8" r="8" class="iti__search-clear-bg" mask="url(#${maskId})" />
2098
+ </svg>`;
2056
2099
  this.searchResultsA11yText = createEl(
2057
2100
  "span",
2058
2101
  { class: "iti__a11y-text" },
2059
2102
  this.dropdownContent
2060
2103
  );
2104
+ this.searchNoResults = createEl(
2105
+ "div",
2106
+ {
2107
+ class: "iti__no-results iti__hide",
2108
+ "aria-hidden": "true"
2109
+ // all a11y messaging happens in this.searchResultsA11yText
2110
+ },
2111
+ this.dropdownContent
2112
+ );
2113
+ this.searchNoResults.textContent = i18n.zeroSearchResults;
2061
2114
  }
2062
2115
  this.countryList = createEl(
2063
2116
  "ul",
@@ -2071,18 +2124,16 @@ var factoryOutput = (() => {
2071
2124
  );
2072
2125
  this._appendListItems();
2073
2126
  if (countrySearch) {
2074
- this._updateSearchResultsText();
2127
+ this._updateSearchResultsA11yText();
2075
2128
  }
2076
2129
  if (dropdownContainer) {
2077
- let dropdownClasses = "iti iti--container";
2078
- if (containerClass) {
2079
- dropdownClasses += ` ${containerClass}`;
2080
- }
2081
- if (useFullscreenPopup) {
2082
- dropdownClasses += " iti--fullscreen-popup";
2083
- } else {
2084
- dropdownClasses += " iti--inline-dropdown";
2085
- }
2130
+ const dropdownClasses = _Iti._buildClassNames({
2131
+ "iti": true,
2132
+ "iti--container": true,
2133
+ "iti--fullscreen-popup": useFullscreenPopup,
2134
+ "iti--inline-dropdown": !useFullscreenPopup,
2135
+ [containerClass]: Boolean(containerClass)
2136
+ });
2086
2137
  this.dropdown = createEl("div", { class: dropdownClasses });
2087
2138
  this.dropdown.appendChild(this.dropdownContent);
2088
2139
  } else {
@@ -2480,6 +2531,11 @@ var factoryOutput = (() => {
2480
2531
  } else {
2481
2532
  this._filterCountries("", true);
2482
2533
  }
2534
+ if (this.searchInput.value) {
2535
+ this.searchClearButton.classList.remove("iti__hide");
2536
+ } else {
2537
+ this.searchClearButton.classList.add("iti__hide");
2538
+ }
2483
2539
  };
2484
2540
  let keyupTimer = null;
2485
2541
  this._handleSearchChange = () => {
@@ -2492,6 +2548,13 @@ var factoryOutput = (() => {
2492
2548
  }, 100);
2493
2549
  };
2494
2550
  this.searchInput.addEventListener("input", this._handleSearchChange);
2551
+ this._handleSearchClear = (e) => {
2552
+ e.stopPropagation();
2553
+ this.searchInput.value = "";
2554
+ this.searchInput.focus();
2555
+ doFilter();
2556
+ };
2557
+ this.searchClearButton.addEventListener("click", this._handleSearchClear);
2495
2558
  this.searchInput.addEventListener("click", (e) => e.stopPropagation());
2496
2559
  }
2497
2560
  }
@@ -2556,12 +2619,17 @@ var factoryOutput = (() => {
2556
2619
  }
2557
2620
  if (noCountriesAddedYet) {
2558
2621
  this._highlightListItem(null, false);
2622
+ if (this.searchNoResults) {
2623
+ this.searchNoResults.classList.remove("iti__hide");
2624
+ }
2625
+ } else if (this.searchNoResults) {
2626
+ this.searchNoResults.classList.add("iti__hide");
2559
2627
  }
2560
2628
  this.countryList.scrollTop = 0;
2561
- this._updateSearchResultsText();
2629
+ this._updateSearchResultsA11yText();
2562
2630
  }
2563
2631
  //* Update search results text (for a11y).
2564
- _updateSearchResultsText() {
2632
+ _updateSearchResultsA11yText() {
2565
2633
  const { i18n } = this.options;
2566
2634
  const count = this.countryList.childElementCount;
2567
2635
  let searchText;
@@ -2676,9 +2744,8 @@ var factoryOutput = (() => {
2676
2744
  if (this.highlightedItem) {
2677
2745
  this.highlightedItem.classList.add("iti__highlight");
2678
2746
  this.highlightedItem.setAttribute("aria-selected", "true");
2679
- const activeDescendant = this.highlightedItem.getAttribute("id") || "";
2680
- this.selectedCountry.setAttribute("aria-activedescendant", activeDescendant);
2681
2747
  if (this.options.countrySearch) {
2748
+ const activeDescendant = this.highlightedItem.getAttribute("id") || "";
2682
2749
  this.searchInput.setAttribute("aria-activedescendant", activeDescendant);
2683
2750
  }
2684
2751
  }
@@ -2842,7 +2909,6 @@ var factoryOutput = (() => {
2842
2909
  _closeDropdown() {
2843
2910
  this.dropdownContent.classList.add("iti__hide");
2844
2911
  this.selectedCountry.setAttribute("aria-expanded", "false");
2845
- this.selectedCountry.removeAttribute("aria-activedescendant");
2846
2912
  if (this.highlightedItem) {
2847
2913
  this.highlightedItem.setAttribute("aria-selected", "false");
2848
2914
  }
@@ -2850,9 +2916,9 @@ var factoryOutput = (() => {
2850
2916
  this.searchInput.removeAttribute("aria-activedescendant");
2851
2917
  }
2852
2918
  this.dropdownArrow.classList.remove("iti__arrow--up");
2853
- document.removeEventListener("keydown", this._handleKeydownOnDropdown);
2854
2919
  if (this.options.countrySearch) {
2855
2920
  this.searchInput.removeEventListener("input", this._handleSearchChange);
2921
+ this.searchClearButton.removeEventListener("click", this._handleSearchClear);
2856
2922
  }
2857
2923
  document.documentElement.removeEventListener(
2858
2924
  "click",
@@ -3210,7 +3276,7 @@ var factoryOutput = (() => {
3210
3276
  attachUtils,
3211
3277
  startedLoadingUtilsScript: false,
3212
3278
  startedLoadingAutoCountry: false,
3213
- version: "25.7.0"
3279
+ version: "25.8.0"
3214
3280
  }
3215
3281
  );
3216
3282
  var intl_tel_input_default = intlTelInput;