20 lines
408 B
Go
20 lines
408 B
Go
package phoneutil
|
|
|
|
import (
|
|
"errors"
|
|
|
|
"github.com/nyaruka/phonenumbers"
|
|
)
|
|
|
|
func ParseAndFormatPhoneNumber(phoneNumber string) (string, error) {
|
|
parsedNumber, err := phonenumbers.Parse(phoneNumber, "RU")
|
|
if err != nil {
|
|
return "", err
|
|
}
|
|
result := phonenumbers.Format(parsedNumber, phonenumbers.E164)
|
|
if result == "" {
|
|
return "", errors.New("failed to format phone number")
|
|
}
|
|
return result, nil
|
|
}
|