pushAttachment method
Implementation
Future<String> pushAttachment(Uint8List data, String? mimeType,
String _xxHashx, String _blurHash) async {
//return -1 on fail
if (data.isEmpty) return '';
//normalize hex
String _xxHash = _xxHashx.toLowerCase();
//assume jpeg for now TODO
_blurHashIndex[_xxHash] = _blurHash;
print('pushAttachment:' + _xxHash.toString());
if (_xxHash.isNotEmpty) {
return xxC.pushXXbytes(_xxHash, data, false).then((value2) async {
if (!value2) {
print('pushAttachment:xxC.pushXXbytes failed' + value2.toString());
return '';
}
print('pushing ipfs attachemnt len ' + data.lengthInBytes.toString());
_ipfsQ.pushToPinataIPFS('', '', data).then((_cid) {
if (_cid.isEmpty) {
print('pushAttachment:pushToPinataIPFS failed');
return _xxHash;
}
xxC.mapCIDtoXX(_cid, _xxHash);
});
return _xxHash;
});
}
return xxHash(data).bake().then((value) async {
return xxC.pushXXbytes(value.toLowerCase(), data, false).then((value2) {
if (!value2) return '';
print('attachemnt len ' + data.lengthInBytes.toString());
print(value);
_ipfsQ.pushToPinataIPFS('', '', data).then((_cid) {
if (_cid.isEmpty) return value.toLowerCase();
xxC.mapCIDtoXX(_cid, value.toLowerCase());
});
return value.toLowerCase();
});
});
}