SummaryNode.fromJson constructor

SummaryNode.fromJson(
  1. Map<String, dynamic> json
)

Implementation

factory SummaryNode.fromJson(Map<String, dynamic> json) {
  return SummaryNode(
    summaryId: json['summaryId'] as String? ?? '',
    workspaceId: json['workspaceId'] as String? ?? 'default',
    summaryText: json['summaryText'] as String? ?? '',
    coversFactIds: (json['coversFactIds'] as List<dynamic>?)
            ?.map((e) => e as String)
            .toList() ??
        [],
    asOf: json['asOf'] != null
        ? DateTime.parse(json['asOf'] as String)
        : DateTime.now(),
    policyVersion: json['policyVersion'] as String? ?? '1.0.0',
    supersedes: json['supersedes'] as String?,
    status:
        SummaryStatus.fromString(json['status'] as String? ?? 'active'),
    scope: json['scope'] != null
        ? SummaryScope.fromJson(json['scope'] as Map<String, dynamic>)
        : const SummaryScope(scopeType: 'period'),
    metadata: json['metadata'] as Map<String, dynamic>?,
    createdAt: json['createdAt'] != null
        ? DateTime.parse(json['createdAt'] as String)
        : DateTime.now(),
    updatedAt: json['updatedAt'] != null
        ? DateTime.parse(json['updatedAt'] as String)
        : DateTime.now(),
  );
}