- Shipped
- 27. August 2026 um 20:43 UTC
- Author
- kamo
- Commit
- d5f44ac
Der Formatierer jede Telefonoberfläche geteilt hielt die LAST TEN DIGITS von was auch immer es wurde ausgehändigt und als NANP-Nummer gekleidet, so "+44 20 7946 0958" wiedergegeben als "(207) 946-0958" - eine andere Zahl, in einem anderen Land, dass eine Person konnte sich vom Bildschirm ablesen und wählen. "CreateLeadClient" hatte seine eigene Kopie, die schlimmer: es auf zehn Ziffern gekürzt, so dass eine internationale Nummer in eine Leerrichtung getippt wurde bei der Einreise verstümmelt und das Original war verschwunden. .app/lib/phone.ts" Formate jetzt über libphonenumber-js: Anzeige, as-you-type Eintrag, E.164 für den Draht, und eine Längenprüfung für die Validierung. Vergleich bleibt handgerollt - ein Last-Ten-Dive-Match ist alles, was die Rückwärts-Lookup-Bedürfnisse, und es hat um weiter an dem Schrott zu arbeiten, den ein Telefonsystem produziert (vierstellige Erweiterungen, Funktionscodes, eine leere Anrufer-ID auf einem lokalen Kanalbein). Diese Eigenschaft ist noch angeheftet: Alles, was nicht eine ganze Zahl ist, kommt unangetastet zurück. Der Eintritt geht durch "PhoneField" (MUI) oder "BarePhoneInput" (für die Oberflächen, die stylen ihre eigenen Eingaben), sowohl über "usePhoneInput", die für die beiden existiert Dinge, die ein As-you-Typ-Feld nutzbar machen, anstatt ärgerlich: die Sorgze bleibt mit der Ziffer nur getippt, anstatt bis zum Ende durch die geschleudert reformatiert, und Backspacing über einen Separator löscht eine Ziffer - naiv löscht es nichts, denn der Formatierer stellt den Separator direkt zurück. Formulare, die bereits ein Land sammeln, passieren es, so dass eine britische org eigene Nummer ist gruppiert, wie das Vereinigte Königreich es und nicht gegen eine US-Vorlage gruppiert. Gate auf "isPossible()", nicht "isValid() ": die min Metadaten zurückweisen Austausch, und Gating auf Gültigkeit würde aufhören Formatierung alle 555 Zahl, die ist die meisten von einer Demo-Org. Auch auf dem Weg fixiert: die "internationale" Feld-Mapping-Transformation emittiert '+' + Ziffern, ein Plus geklebt an eine nationale Nummer, die ein anderes Land ist Nummer; und die SMS-Zifferscheibe gezählt Zeichen statt Ziffern, so ein Siebenstellige Nummer, verkleidet als "(949) 374-7", passierte ihr Zehn-Zeichen-Güro. Bewusst NICHT formatiert: die Telefon-Instance-Konfigurationsfelder und die VoIP ausgehende SMS-Nummer. Diese sind Anbieter-Konfiguration und wollen rohe E.164.