save<T extends Document<T>> method

  1. @override
void save<T extends Document<T>>(
  1. Document<T> document, {
  2. DocumentReference<Object?>? reference,
})
override

Implementation

@override
void save<T extends Document<T>>(
  Document<T> document, {
  DocumentReference? reference,
}) {
  final data = document.toData();
  final nowAt = Timestamp.now();
  data[document.createdFieldValueKey] = nowAt;
  data[document.updatedFieldValueKey] = nowAt;
  document.setAt(createdAt: nowAt, updatedAt: nowAt);
  _writeBatch.set(
    reference ?? document.reference,
    data,
    SetOptions(merge: true),
  );
  _batchDocument.add(_BatchDocument(document, ExecuteType.create));
}