[LLC, UI-KIT] Add support for custom attachment upload delegate
Signed-off-by: Sahil Kumar <[email protected]>
This commit is contained in:
@@ -214,18 +214,70 @@ String getWebsiteName(String hostName) {
|
||||
}
|
||||
}
|
||||
|
||||
///
|
||||
String getSizeText(int bytes) {
|
||||
if (bytes == null) {
|
||||
return 'Size N/A';
|
||||
/// A method returns a human readable string representing a file _size
|
||||
String filesize(dynamic size, [int round = 2]) {
|
||||
if (size == null) return 'Size N/A';
|
||||
|
||||
/**
|
||||
* [size] can be passed as number or as string
|
||||
*
|
||||
* the optional parameter [round] specifies the number
|
||||
* of digits after comma/point (default is 2)
|
||||
*/
|
||||
final divider = 1024;
|
||||
int _size;
|
||||
try {
|
||||
_size = int.parse(size.toString());
|
||||
} catch (e) {
|
||||
throw ArgumentError('Can not parse the size parameter: $e');
|
||||
}
|
||||
|
||||
if (bytes <= 1000) {
|
||||
return '$bytes bytes';
|
||||
} else if (bytes <= 100000) {
|
||||
return '${(bytes / 1000).toStringAsFixed(2)} KB';
|
||||
if (_size < divider) {
|
||||
return '$_size B';
|
||||
}
|
||||
|
||||
if (_size < divider * divider && _size % divider == 0) {
|
||||
return '${(_size / divider).toStringAsFixed(0)} KB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider) {
|
||||
return '${(_size / divider).toStringAsFixed(round)} KB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider && _size % divider == 0) {
|
||||
return '${(_size / (divider * divider)).toStringAsFixed(0)} MB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider) {
|
||||
return '${(_size / divider / divider).toStringAsFixed(round)} MB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider * divider && _size % divider == 0) {
|
||||
return '${(_size / (divider * divider * divider)).toStringAsFixed(0)} GB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider * divider) {
|
||||
return '${(_size / divider / divider / divider).toStringAsFixed(round)} GB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider * divider * divider &&
|
||||
_size % divider == 0) {
|
||||
num r = _size / divider / divider / divider / divider;
|
||||
return '${r.toStringAsFixed(0)} TB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider * divider * divider) {
|
||||
num r = _size / divider / divider / divider / divider;
|
||||
return '${r.toStringAsFixed(round)} TB';
|
||||
}
|
||||
|
||||
if (_size < divider * divider * divider * divider * divider * divider &&
|
||||
_size % divider == 0) {
|
||||
num r = _size / divider / divider / divider / divider / divider;
|
||||
return '${r.toStringAsFixed(0)} PB';
|
||||
} else {
|
||||
return '${(bytes / 1000000).toStringAsFixed(2)} MB';
|
||||
num r = _size / divider / divider / divider / divider / divider;
|
||||
return '${r.toStringAsFixed(round)} PB';
|
||||
}
|
||||
}
|
||||
|
||||
|
||||
Reference in New Issue
Block a user