You can not select more than 25 topics
			Topics must start with a letter or number, can include dashes ('-') and can be up to 35 characters long.
		
		
		
		
		
			
		
			
				
					34 lines
				
				1.0 KiB
			
		
		
			
		
	
	
					34 lines
				
				1.0 KiB
			| 
								 
											3 years ago
										 
									 | 
							
								import _parseNumber from './parse_.js'
							 | 
						||
| 
								 | 
							
								import { normalizeArguments } from './parsePhoneNumber.js'
							 | 
						||
| 
								 | 
							
								
							 | 
						||
| 
								 | 
							
								// `options`:
							 | 
						||
| 
								 | 
							
								//  {
							 | 
						||
| 
								 | 
							
								//    country:
							 | 
						||
| 
								 | 
							
								//    {
							 | 
						||
| 
								 | 
							
								//      restrict - (a two-letter country code)
							 | 
						||
| 
								 | 
							
								//                 the phone number must be in this country
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								//      default - (a two-letter country code)
							 | 
						||
| 
								 | 
							
								//                default country to use for phone number parsing and validation
							 | 
						||
| 
								 | 
							
								//                (if no country code could be derived from the phone number)
							 | 
						||
| 
								 | 
							
								//    }
							 | 
						||
| 
								 | 
							
								//  }
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Returns `{ country, number }`
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// Example use cases:
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								// ```js
							 | 
						||
| 
								 | 
							
								// parse('8 (800) 555-35-35', 'RU')
							 | 
						||
| 
								 | 
							
								// parse('8 (800) 555-35-35', 'RU', metadata)
							 | 
						||
| 
								 | 
							
								// parse('8 (800) 555-35-35', { country: { default: 'RU' } })
							 | 
						||
| 
								 | 
							
								// parse('8 (800) 555-35-35', { country: { default: 'RU' } }, metadata)
							 | 
						||
| 
								 | 
							
								// parse('+7 800 555 35 35')
							 | 
						||
| 
								 | 
							
								// parse('+7 800 555 35 35', metadata)
							 | 
						||
| 
								 | 
							
								// ```
							 | 
						||
| 
								 | 
							
								//
							 | 
						||
| 
								 | 
							
								export default function parseNumber()
							 | 
						||
| 
								 | 
							
								{
							 | 
						||
| 
								 | 
							
									const { text, options, metadata } = normalizeArguments(arguments)
							 | 
						||
| 
								 | 
							
									return _parseNumber(text, options, metadata)
							 | 
						||
| 
								 | 
							
								}
							 |