mirror of
https://github.com/wger-project/flutter.git
synced 2026-02-18 00:17:48 +01:00
38 lines
879 B
Dart
38 lines
879 B
Dart
import 'package:powersync/sqlite3.dart' as sqlite;
|
|
import 'package:wger/models/schema.dart';
|
|
import 'package:wger/powersync.dart';
|
|
|
|
class Muscle {
|
|
final String id;
|
|
final String name;
|
|
final String nameEn;
|
|
final bool isFront;
|
|
|
|
const Muscle({
|
|
required this.id,
|
|
required this.name,
|
|
required this.nameEn,
|
|
required this.isFront,
|
|
});
|
|
|
|
factory Muscle.fromRow(sqlite.Row row) {
|
|
return Muscle(
|
|
id: row['id'],
|
|
name: row['name'],
|
|
nameEn: row['name_en'],
|
|
isFront: row['is_front'] == 1,
|
|
);
|
|
}
|
|
|
|
Future<void> delete() async {
|
|
await db.execute('DELETE FROM $tableMuscles WHERE id = ?', [id]);
|
|
}
|
|
|
|
/// Watch all lists.
|
|
static Stream<List<Muscle>> watchMuscles() {
|
|
return db.watch('SELECT * FROM $tableMuscles ORDER BY id').map((results) {
|
|
return results.map(Muscle.fromRow).toList(growable: false);
|
|
});
|
|
}
|
|
}
|