SchemaSnapshot.fromMap constructor

SchemaSnapshot.fromMap(
  1. Map<String, dynamic> data
)

Creates a schema snapshot from a map.

Implementation

factory SchemaSnapshot.fromMap(Map<String, dynamic> data) {
  _checkKeys(
    data,
    context: 'the schema',
    requiredKeys: const {'dialect', 'tables'},
    optionalKeys: const {'indexes'},
  );
  return SchemaSnapshot(
    dialect: data['dialect'] as String,
    tables: {
      for (final entry in (data['tables'] as Map<String, dynamic>).entries)
        entry.key: TableSnapshot.fromMap(
          entry.key,
          entry.value as Map<String, dynamic>,
        ),
    },
    indexes: {
      for (final entry
          in (data['indexes'] as Map<String, dynamic>? ?? {}).entries)
        entry.key: IndexSnapshot.fromMap(
          entry.key,
          entry.value as Map<String, dynamic>,
        ),
    },
  );
}