insert method

  1. @override
Future<void> insert({
  1. required String id,
  2. required Uint8List vector,
  3. required String text,
  4. Map<String, dynamic>? metadata,
})
override

Implementation

@override
Future<void> insert({required String id, required Uint8List vector, required String text, Map<String, dynamic>? metadata}) async {
  await _database.transaction((txn) async {
    await txn.insert(_documentsTableName, {
      "id": id,
      "text": text,
      "metadata": jsonEncode(metadata ?? <String, dynamic>{}),
      "created_at": DateTime.now().millisecondsSinceEpoch}
    );

    await txn.insert(_vectorsTableName, {"id": id, "vector": vector});
  });
}