@transferwise/components 0.0.0-experimental-cf10171 → 0.0.0-experimental-ae2a4e7

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
package/build/index.js CHANGED
@@ -9650,11 +9650,11 @@ const explodeNumberModel = number => {
9650
9650
  return country ? {
9651
9651
  prefix: country.phone,
9652
9652
  suffix: number.slice(country.phone.length),
9653
- format: country.phoneFormat ?? ''
9653
+ format: country.phoneFormat
9654
9654
  } : {
9655
- prefix: '',
9655
+ prefix: null,
9656
9656
  suffix: number.slice(1),
9657
- format: ''
9657
+ format: undefined
9658
9658
  };
9659
9659
  };
9660
9660
 
@@ -9715,7 +9715,7 @@ const PhoneNumberInput = ({
9715
9715
  return {
9716
9716
  prefix: setDefaultPrefix(locale, countryCode),
9717
9717
  suffix: '',
9718
- format: ''
9718
+ format: undefined
9719
9719
  };
9720
9720
  }
9721
9721
  return explodeNumberModel(cleanValue);
@@ -9736,29 +9736,22 @@ const PhoneNumberInput = ({
9736
9736
  return;
9737
9737
  }
9738
9738
  const pastedValue = (event.nativeEvent.clipboardData.getData('text/plain') || '').replace(/(\s|-)+/g, '');
9739
- const {
9740
- prefix: pastedPrefix,
9741
- suffix: pastedSuffix
9742
- } = explodeNumberModel(pastedValue);
9743
- if (countriesByPrefix.has(pastedPrefix) && ALLOWED_PHONE_CHARS.test(pastedSuffix)) {
9744
- setInternalValue(prev => ({
9745
- ...prev,
9746
- prefix: pastedPrefix,
9747
- suffix: pastedSuffix
9748
- }));
9739
+ const pastedNumber = explodeNumberModel(pastedValue);
9740
+ if (pastedNumber.prefix != null && countriesByPrefix.has(pastedNumber.prefix) && ALLOWED_PHONE_CHARS.test(pastedNumber.suffix)) {
9741
+ setInternalValue(pastedNumber);
9749
9742
  }
9750
9743
  };
9751
9744
  React.useEffect(() => {
9752
9745
  if (broadcastedValue === null) {
9753
9746
  return setBroadcastedValue(internalValue);
9754
9747
  }
9755
- const internalPhoneNumber = internalValue.prefix + internalValue.suffix;
9756
- const broadcastedPhoneNumber = broadcastedValue.prefix + broadcastedValue.suffix;
9748
+ const internalPhoneNumber = `${internalValue.prefix ?? ''}${internalValue.suffix}`;
9749
+ const broadcastedPhoneNumber = `${broadcastedValue.prefix ?? ''}${broadcastedValue.suffix}`;
9757
9750
  if (internalPhoneNumber === broadcastedPhoneNumber) {
9758
9751
  return;
9759
9752
  }
9760
9753
  const newValue = isValidPhoneNumber(internalPhoneNumber) ? cleanNumber(internalPhoneNumber) : null;
9761
- onChange(newValue, internalValue.prefix);
9754
+ onChange(newValue, internalValue.prefix ?? '');
9762
9755
  setBroadcastedValue(internalValue);
9763
9756
  }, [onChange, broadcastedValue, internalValue]);
9764
9757
  return /*#__PURE__*/jsxRuntime.jsxs("div", {