@@ -8,7 +8,7 @@ module ProcessOut {
88 name : string ,
99 } >
1010 oninput ?: FormFieldUpdate ,
11- onblur ?: ( key : string , value : { dialing_code : string , value : string } ) => void ,
11+ onblur ?: ( key : string , value : { dialing_code : string , number : string } ) => void ,
1212 value ?: { dialing_code : string , value : string } ,
1313 }
1414
@@ -46,7 +46,7 @@ module ProcessOut {
4646
4747 const parseCleanNumber = ( currentValue : string , dialingCode : string , iso : string ) => {
4848 const phoneUtil = ( window as any ) . libphonenumber . PhoneNumberUtil . getInstance ( ) ;
49-
49+
5050 try {
5151 // Try to parse as international number first
5252 const parsedNumber = phoneUtil . parseAndKeepRawInput ( currentValue , iso ) ;
@@ -61,16 +61,16 @@ module ProcessOut {
6161 // Use StateManager for internal state management
6262 const { state, setState } = useComponentState ( {
6363 dialing_code : value && value . dialing_code || dialing_codes [ 0 ] && dialing_codes [ 0 ] . value || '' ,
64- value : value && value . value || '' ,
64+ number : value && value . value || '' ,
6565 iso : ''
6666 } ) ;
67-
67+
6868 // Load libphonenumber and handle all state initialization in callback
6969 ContextImpl . context . page . loadScript ( 'libphonenumber' , 'https://cdnjs.cloudflare.com/ajax/libs/google-libphonenumber/3.2.42/libphonenumber.min.js' , ( ) => {
7070 let dialingCode = state . dialing_code || dialing_codes [ 0 ] . value ;
71- let phoneNumber = state . value || '' ;
71+ let phoneNumber = state . number || '' ;
7272 let iso = state . iso ;
73-
73+
7474 // Set ISO code using libphonenumber
7575 if ( ! iso ) {
7676 const phoneUtil = ( window as any ) . libphonenumber && ( window as any ) . libphonenumber . PhoneNumberUtil && ( window as any ) . libphonenumber . PhoneNumberUtil . getInstance ( ) ;
@@ -88,7 +88,7 @@ module ProcessOut {
8888 iso = dialing_codes . find ( item => item . value === state . dialing_code ) && dialing_codes . find ( item => item . value === state . dialing_code ) . region_code || '' ;
8989 }
9090 }
91-
91+
9292 // Update the UI if elements are available
9393 if ( phoneRef ) {
9494 phoneRef . value = getFullNumber ( dialingCode , phoneNumber ) ;
@@ -100,15 +100,15 @@ module ProcessOut {
100100 if ( dialingCodesRef ) {
101101 dialingCodesRef . value = iso ;
102102 }
103-
103+
104104 // Trigger callback to update form state if there's a value
105105 if ( value ) {
106106 oninput && oninput ( name , state , true ) ;
107107 }
108108
109109 setState ( {
110110 dialing_code : dialingCode ,
111- value : phoneNumber ,
111+ number : phoneNumber ,
112112 iso : iso
113113 } ) ;
114114 } ) ;
@@ -130,47 +130,47 @@ module ProcessOut {
130130 const cursorPosition = input . selectionStart ;
131131
132132 let dialingCode = state . dialing_code ;
133- let phoneNumber = state . value ;
133+ let phoneNumber = state . number ;
134134 let iso = state . iso ;
135135
136136 // Helper function to update state and UI when country is detected
137137 const updateDetectedCountry = ( detectedCountry , nationalNumber : string ) => {
138138 dialingCode = detectedCountry . dialingCode . value ;
139139 phoneNumber = nationalNumber ;
140140 iso = detectedCountry . region ;
141-
141+
142142 // Update the input with formatted value
143143 const formattedValue = getFullNumber ( dialingCode , phoneNumber ) ;
144144 input . value = formattedValue ;
145-
145+
146146 // Update flag image
147147 const flagImg = input . parentElement . querySelector ( 'img' ) ;
148148 if ( flagImg ) {
149149 flagImg . src = `https://flagcdn.com/w80/${ iso . toLowerCase ( ) } .jpg` ;
150150 flagImg . alt = `Selected ${ detectedCountry . dialingCode . name } dialing code` ;
151151 }
152-
152+
153153 // Update select value
154154 if ( dialingCodesRef ) {
155155 dialingCodesRef . value = iso ;
156156 }
157-
157+
158158 if ( label ) {
159159 updateFilledState ( input ) ;
160160 }
161-
161+
162162 // Trigger callback
163163 oninput && oninput ( name , {
164164 dialing_code : dialingCode ,
165- value : phoneNumber ,
165+ number : phoneNumber ,
166166 } ) ;
167-
167+
168168 // Set cursor at end
169169 input . setSelectionRange ( formattedValue . length , formattedValue . length ) ;
170170
171171 setState ( {
172172 dialing_code : dialingCode ,
173- value : phoneNumber ,
173+ number : phoneNumber ,
174174 iso : iso
175175 } ) ;
176176 } ;
@@ -187,12 +187,12 @@ module ProcessOut {
187187 const parsedNumber = phoneUtil . parseAndKeepRawInput ( valueWithoutCurrentPrefix , '' ) ;
188188 const countryCode = parsedNumber . getCountryCode ( ) ;
189189 const nationalNumber = parsedNumber . getNationalNumber ( ) . toString ( ) ;
190-
190+
191191 // Find matching dialing code in our list
192- const matchingDialingCode = dialing_codes . find ( code =>
192+ const matchingDialingCode = dialing_codes . find ( code =>
193193 code . value === `+${ countryCode } `
194194 ) ;
195-
195+
196196 if ( matchingDialingCode ) {
197197 const detectedCountry = {
198198 dialingCode : matchingDialingCode ,
@@ -219,7 +219,7 @@ module ProcessOut {
219219
220220 // Use libphonenumber to properly parse the number
221221 const cleanNumber = parseCleanNumber ( currentValue , dialingCode , iso ) ;
222-
222+
223223 const formattedValue = getFullNumber ( dialingCode , cleanNumber ) ;
224224
225225 let newCursorPosition = numberStartIndex ;
@@ -247,22 +247,22 @@ module ProcessOut {
247247 dialingCodesRef . showPicker ( )
248248 setState ( {
249249 dialing_code : dialingCode ,
250- value : phoneNumber ,
250+ number : phoneNumber ,
251251 iso : iso
252252 } ) ;
253253 return
254254 }
255255
256- if ( state . value !== cleanNumber ) {
256+ if ( state . number !== cleanNumber ) {
257257 phoneNumber = cleanNumber ;
258258 oninput && oninput ( name , {
259259 dialing_code : dialingCode ,
260- value : phoneNumber ,
260+ number : phoneNumber ,
261261 } ) ;
262262 }
263263 setState ( {
264264 dialing_code : dialingCode ,
265- value : phoneNumber ,
265+ number : phoneNumber ,
266266 iso : iso
267267 } ) ;
268268 input . setSelectionRange ( newCursorPosition , newCursorPosition ) ;
@@ -299,19 +299,19 @@ module ProcessOut {
299299
300300 const handleSelectChange = e => {
301301 const currentValue = ( e . target as HTMLSelectElement ) . value ;
302- const cleanNumber = parseCleanNumber ( getFullNumber ( state . dialing_code , state . value ) , state . dialing_code , state . iso ) ;
302+ const cleanNumber = parseCleanNumber ( getFullNumber ( state . dialing_code , state . number ) , state . dialing_code , state . iso ) ;
303303
304304 const newDialingCode = dialing_codes . find ( item => item . region_code === currentValue ) . value ;
305-
305+
306306 setState ( {
307307 dialing_code : newDialingCode ,
308308 iso : currentValue ,
309- value : cleanNumber
309+ number : cleanNumber
310310 } ) ;
311-
311+
312312 phoneRef . value = getFullNumber ( newDialingCode , cleanNumber ) ;
313313 phoneRef . focus ( ) ;
314- oninput && oninput ( name , { dialing_code : newDialingCode , value : cleanNumber } ) ;
314+ oninput && oninput ( name , { dialing_code : newDialingCode , number : cleanNumber } ) ;
315315
316316 ( e . target as HTMLSelectElement ) . parentElement . querySelector ( 'img' ) . src = `https://flagcdn.com/w80/${ currentValue . toLowerCase ( ) } .jpg` ;
317317 }
@@ -349,7 +349,7 @@ module ProcessOut {
349349 const handleMouseDown = ( ) => {
350350 focusMethod = 'mouse' ;
351351 }
352-
352+
353353 if ( ! state . dialing_code ) {
354354 return null
355355 }
@@ -382,7 +382,7 @@ module ProcessOut {
382382 input ( {
383383 type : "tel" ,
384384 autocomplete : "tel" ,
385- value : getFullNumber ( state . dialing_code , state . value ) ,
385+ value : getFullNumber ( state . dialing_code , state . number ) ,
386386 inputMode : "tel" ,
387387 name : `${ name } .value` ,
388388 disabled,
0 commit comments