Libphonenumber autonome (sans masse de dépendances de Google)? Autre lib?

J'utilise http://code.google.com/p/libphonenumber/ pour un projet bien établi. Aujourd'hui, le projet n'utilise pas les bibliothèques de Google pour JavaScript, en privilégiant jQuery, jQueryUI, requirejs, etc.

Libphonenumber semble génial … sauf que la version javascript (svn co http://libphonenumber.googlecode.com/svn/trunk/javascript/ libphonenumber-js) est liée aux appels goog.require. Si on exécute la démo (libphonenumber-js / i18n / phonenumbers / demo.html si vous avez vérifié comme suggéré), il tire beaucoup de bibliothèques google de closing-library.googlecode.com:

GET base.js GET deps.js GET error.js GET string.js GET asserts.js GET array.js GET useragent.js GET browserfeature.js GET tagname.js GET classes.js GET math.js GET coordinate.js GET size.js GET object.js GET dom.js GET json.js GET util.js GET descriptor.js GET fielddescriptor.js GET message.js GET serializer.js GET objectserializer.js GET stringbuffer.js GET lazydeserializer.js GET pbliteserializer.js 

Je crois que si je compile cela en utilisant le compilateur de fermeture ("Si vous donnez au paramètre use_closure_library une valeur de vrai, le compilateur recherche les déclarations goog.require () dans le code source et fournit le code de bibliothèque de fermeture demandé par ces instructions". , Https://developers.google.com/closure/compiler/docs/api-ref ) Je peux réduire le nombre brut de requêtes, mais cela semble toujours être une quantité assez excessive de contenu pour un analyseur de numéro de téléphone, même un Complet.

Ma question comporte deux réponses possibles:

  1. Une façon d'utiliser libphonenumber en JavaScript sans avoir à extraire toutes les bibliothèques de base JavaScript de Google
  2. Une librairie de traitement de numéro de téléphone de première classe autonome (comme dans les douzaines de dépendances) avec les implémentations Java et Java

Toutes les suggestions les plus appréciées.

Il semble que le code sur http://www.phoneformat.com combine tout le nécessaire dans un seul fichier .JS: http://www.phoneformat.com/

Il semble que cela inclue le boilerplate Google, la base de données de format de téléphone et certaines fonctions d'assistance.

J'ai une version personnalisée (actuellement 220KB) que j'utilise pour mon plugin International Telephone Input , avec beaucoup de fonctions auxiliaires exposées. Lisez la source pour plus de détails.

Vous pouvez également utiliser ma lib. https://github.com/Gilshallem/phoneparser

Il n'y a qu'un seul moyen, mais vous pouvez en faire beaucoup

 parsePhone("12025550104"); result: { countryCode:1, areaCode:202, number:5550104, countryISOCode:"US" }