versionNumberIncrementor function

String versionNumberIncrementor(
  1. String version
)

Increments the patch version and build number of a semantic version string.

This function takes a semantic version string (e.g., "1.0.0+1") and increments its patch version number and build number. If the new patch version is greater than the new build number, the patch version is used as the unified number; otherwise, the build number is used.

version The semantic version string to increment.

Returns a new semantic version string with the incremented numbers.

Implementation

String versionNumberIncrementor(String version) {
  final versionParts = version.split('+');
  final versionNumbers = versionParts[0].split('.');
  final buildNumber = int.parse(versionParts.last) + 1;
  versionNumbers[versionNumbers.length - 1] =
      (int.parse(versionNumbers.last) + 1).toString();
  final unifiedNumber = int.parse(versionNumbers.last) > buildNumber
      ? int.parse(versionNumbers.last)
      : buildNumber;
  versionNumbers[versionNumbers.length - 1] = unifiedNumber.toString();
  final newVersion = '${versionNumbers.join('.')}+$unifiedNumber';
  return newVersion;
}