CockpitDocumentValidationResult.fromJson constructor
CockpitDocumentValidationResult.fromJson(
- Object? value, {
- String path = r'$',
- CockpitDecodePolicy decodePolicy = CockpitDecodePolicy.requests,
Decodes a CockpitDocumentValidationResult from a JSON object.
Implementation
factory CockpitDocumentValidationResult.fromJson(
Object? value, {
String path = r'$',
CockpitDecodePolicy decodePolicy = CockpitDecodePolicy.requests,
}) {
final json = CockpitFoundationValueReader.object(value, path);
CockpitFoundationValueReader.keys(
json,
const <String>{
'valid',
'sourceSha256',
'document',
'diagnostics',
'sourceMap',
},
path,
required: const <String>{
'valid',
'sourceSha256',
'diagnostics',
'sourceMap',
},
policy: decodePolicy,
);
final rawDiagnostics = CockpitFoundationValueReader.list(
json['diagnostics'],
'$path.diagnostics',
);
final rawSourceMap = CockpitFoundationValueReader.list(
json['sourceMap'],
'$path.sourceMap',
);
return CockpitDocumentValidationResult(
valid: CockpitFoundationValueReader.boolean(json['valid'], '$path.valid'),
sourceSha256: CockpitFoundationValueReader.sha256(
json['sourceSha256'],
'$path.sourceSha256',
),
document: json['document'] == null
? null
: _document(json['document'], '$path.document'),
diagnostics: <CockpitTestDiagnostic>[
for (var index = 0; index < rawDiagnostics.length; index += 1)
CockpitTestDiagnostic.fromJson(
rawDiagnostics[index],
path: '$path.diagnostics[$index]',
),
],
sourceMap: <CockpitTestSourceMapEntry>[
for (var index = 0; index < rawSourceMap.length; index += 1)
CockpitTestSourceMapEntry.fromJson(
rawSourceMap[index],
path: '$path.sourceMap[$index]',
),
],
);
}