getFormattedAddress method

String getFormattedAddress({
  1. required MailingAddress address,
  2. required String encodingPrefix,
})

Get formatted address @param {Map<String, String>} address @param {String} type address type @param {String} Encoding prefix encodingPrefix @return {String} Formatted address

Implementation

String getFormattedAddress(
    {required MailingAddress address, required String encodingPrefix}) {
  var formattedAddress = '';

  if (address.label.isNotEmpty ||
      address.street.isNotEmpty ||
      address.city.isNotEmpty ||
      address.stateProvince.isNotEmpty ||
      address.postalCode.isNotEmpty ||
      address.countryRegion.isNotEmpty) {
    if (majorVersion >= 4) {
      formattedAddress = 'ADR' +
          encodingPrefix +
          ';TYPE=' +
          address.type +
          (address.label.isNotEmpty
              ? ';LABEL="' + e(address.label) + '"'
              : '') +
          ':;;' +
          e(address.street) +
          ';' +
          e(address.city) +
          ';' +
          e(address.stateProvince) +
          ';' +
          e(address.postalCode) +
          ';' +
          e(address.countryRegion) +
          nl();
    } else {
      if (address.label.isNotEmpty) {
        formattedAddress = 'LABEL' +
            encodingPrefix +
            ';TYPE=' +
            address.type +
            ':' +
            e(address.label) +
            nl();
      }
      formattedAddress += 'ADR' +
          encodingPrefix +
          ';TYPE=' +
          address.type +
          ':;;' +
          e(address.street) +
          ';' +
          e(address.city) +
          ';' +
          e(address.stateProvince) +
          ';' +
          e(address.postalCode) +
          ';' +
          e(address.countryRegion) +
          nl();
    }
  }

  return formattedAddress;
}