parseRecordData function
Implementation
RecordItem parseRecordData(ProgrammaticScryptoSborValue field, RecordItem acc) {
if (field.fieldName == 'id_additions') {
return acc.copyWith(
idAdditions: (field as ProgrammaticScryptoSborValueArray)
.elements
.map((e) => (e as ProgrammaticScryptoSborValueString).value)
.toList());
}
if (field.fieldName == 'domain_id') {
return acc.copyWith(
domainId:
(field as ProgrammaticScryptoSborValueNonFungibleLocalId).value);
}
if (field.fieldName == 'context') {
return acc.copyWith(
context: (field as ProgrammaticScryptoSborValueString).value);
}
if (field.fieldName == 'directive' &&
(field as ProgrammaticScryptoSborValueEnum).variantName == 'Some') {
return acc.copyWith(
directive:
(field.fields[0] as ProgrammaticScryptoSborValueString).value);
}
if (field.fieldName == 'value' &&
(field as ProgrammaticScryptoSborValueEnum).variantName == 'Some') {
return acc.copyWith(
value: (field.fields[0] as ProgrammaticScryptoSborValueString).value);
}
if (field.fieldName == 'platform_identifier') {
return acc.copyWith(
platformIdentifier: ((field as ProgrammaticScryptoSborValueEnum)
.fields[0] as ProgrammaticScryptoSborValueString)
.value);
}
if (field.fieldName == 'key_image_url') {
return acc.copyWith(
keyImageUrl: (field as ProgrammaticScryptoSborValueString).value);
}
if (field.fieldName == 'domain_id') {
return acc.copyWith(
domainId:
(field as ProgrammaticScryptoSborValueNonFungibleLocalId).value);
}
return acc;
}