2026-05-20 10:22:58 -05:00

27 lines
1.0 KiB
Dart

import 'package:drift/drift.dart';
class UserProfileRows extends Table {
TextColumn get firebaseUid => text()();
TextColumn get email => text().nullable()();
TextColumn get displayName => text().nullable()();
TextColumn get photoUrl => text().nullable()();
TextColumn get locale => text().withDefault(const Constant('en'))();
TextColumn get timezone => text().nullable()();
BoolColumn get onboardingCompleted =>
boolean().withDefault(const Constant(false))();
IntColumn get revision => integer().withDefault(const Constant(1))();
DateTimeColumn get updatedAt => dateTime()();
DateTimeColumn get lastSyncedAt => dateTime().nullable()();
BoolColumn get dirty => boolean().withDefault(const Constant(false))();
@override
Set<Column<Object>> get primaryKey => <Column<Object>>{firebaseUid};
}
class SyncOutboxRows extends Table {
IntColumn get id => integer().autoIncrement()();
TextColumn get firebaseUid => text()();
TextColumn get payloadJson => text()();
DateTimeColumn get createdAt => dateTime()();
}