toJsonSchema method
Map<String, dynamic>
toJsonSchema({
- PlutusSchemaConfig config = const PlutusSchemaConfig(jsonSchema: PlutusJsonSchema.basicConversions),
override
Implementation
@override
Map<String, dynamic> toJsonSchema(
{PlutusSchemaConfig config = const PlutusSchemaConfig(
jsonSchema: PlutusJsonSchema.basicConversions)}) {
if (config.jsonSchema == PlutusJsonSchema.basicConversions) {
final Map<String, dynamic> json = {};
for (final i in value.entries) {
if (i.key is! PlutusInteger && i.key is! PlutusBytes) {
throw ADAPluginException('plutus object are not allowed as key.',
details: {'Key': i.key, 'Type': i.key.runtimeType});
}
final key = i.key.toJsonSchema(config: config).toString();
final value = i.value.toJsonSchema(config: config);
json.addAll({key: value});
}
return json;
} else {
return {
'map': value.entries.map((entry) {
final k = entry.key.toJsonSchema(config: config);
final v = entry.value.toJsonSchema(config: config);
return {'k': k, 'v': v};
}).toList()
};
}
}