convert static method

List<DeltaInsertOp> convert(
  1. List<Map<String, dynamic>>? deltaOps,
  2. OpAttributeSanitizerOptions options
)

Implementation

static List<DeltaInsertOp> convert(
  List<Map<String, dynamic>>? deltaOps,
  OpAttributeSanitizerOptions options,
) {
  if (deltaOps == null) {
    return <DeltaInsertOp>[];
  }

  final List<Map<String, dynamic>> denormalizedOps = deltaOps.map(InsertOpDenormalizer.denormalize).flattened.toList();
  final List<DeltaInsertOp> results = <DeltaInsertOp>[];

  for (final Map<String, dynamic> op in denormalizedOps) {
    final rawInsertValue = op['insert'];
    if (!isTruthy(rawInsertValue)) {
      continue;
    }

    final InsertData? insertVal = InsertOpsConverter.convertInsertVal(rawInsertValue, options);
    if (insertVal == null) {
      continue;
    }

    final rawAttributes = op['attributes'];
    final OpAttributes? attributes =
        rawAttributes == null ? null : OpAttributeSanitizer.sanitize(OpAttributes()..attrs.addAll(rawAttributes), options);

    results.add(DeltaInsertOp(insertVal, attributes));
  }

  return results;
}