format method

String format(
  1. dynamic number
)

Format a number according to the settings of this number formatter instance

Implementation

String format(dynamic number) {
  String result = '';
  if (number != null) {
    if (number is! num && number is! String) {
      throw ArgumentError(
          'Invalid argument type. Expected num or String, got ${number.runtimeType}');
    }
    if (number is num && (number.isNaN || number.isInfinite)) {
      return number.toString();
    }

    final String formatOptions = toJsonString();
    final String numStr = number is String ? number : number.toString();
    result = ILibJS.instance
        .evaluate('new NumFmt($formatOptions).format($numStr).toString()')
        .stringResult;
  }
  return result;
}