Offline Support
This commit is contained in:
@@ -0,0 +1,315 @@
|
||||
// GENERATED CODE DO NOT EDIT
|
||||
part of '../brick.g.dart';
|
||||
|
||||
Future<NotificationItem> _$NotificationItemFromSupabase(
|
||||
Map<String, dynamic> data, {
|
||||
required SupabaseProvider provider,
|
||||
OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async {
|
||||
return NotificationItem(
|
||||
id: data['id'] as String,
|
||||
userId: data['user_id'] as String,
|
||||
actorId: data['actor_id'] == null ? null : data['actor_id'] as String?,
|
||||
ticketId: data['ticket_id'] == null ? null : data['ticket_id'] as String?,
|
||||
taskId: data['task_id'] == null ? null : data['task_id'] as String?,
|
||||
leaveId: data['leave_id'] == null ? null : data['leave_id'] as String?,
|
||||
passSlipId: data['pass_slip_id'] == null
|
||||
? null
|
||||
: data['pass_slip_id'] as String?,
|
||||
itServiceRequestId: data['it_service_request_id'] == null
|
||||
? null
|
||||
: data['it_service_request_id'] as String?,
|
||||
announcementId: data['announcement_id'] == null
|
||||
? null
|
||||
: data['announcement_id'] as String?,
|
||||
messageId: data['message_id'] == null ? null : data['message_id'] as int?,
|
||||
type: data['type'] as String,
|
||||
createdAt: DateTime.parse(data['created_at'] as String),
|
||||
readAt: data['read_at'] == null
|
||||
? null
|
||||
: data['read_at'] == null
|
||||
? null
|
||||
: DateTime.tryParse(data['read_at'] as String),
|
||||
);
|
||||
}
|
||||
|
||||
Future<Map<String, dynamic>> _$NotificationItemToSupabase(
|
||||
NotificationItem instance, {
|
||||
required SupabaseProvider provider,
|
||||
OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async {
|
||||
return {
|
||||
'id': instance.id,
|
||||
'user_id': instance.userId,
|
||||
'actor_id': instance.actorId,
|
||||
'ticket_id': instance.ticketId,
|
||||
'task_id': instance.taskId,
|
||||
'leave_id': instance.leaveId,
|
||||
'pass_slip_id': instance.passSlipId,
|
||||
'it_service_request_id': instance.itServiceRequestId,
|
||||
'announcement_id': instance.announcementId,
|
||||
'message_id': instance.messageId,
|
||||
'type': instance.type,
|
||||
'created_at': instance.createdAt.toIso8601String(),
|
||||
'read_at': instance.readAt?.toIso8601String(),
|
||||
};
|
||||
}
|
||||
|
||||
Future<NotificationItem> _$NotificationItemFromSqlite(
|
||||
Map<String, dynamic> data, {
|
||||
required SqliteProvider provider,
|
||||
OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async {
|
||||
return NotificationItem(
|
||||
id: data['id'] as String,
|
||||
userId: data['user_id'] as String,
|
||||
actorId: data['actor_id'] == null ? null : data['actor_id'] as String?,
|
||||
ticketId: data['ticket_id'] == null ? null : data['ticket_id'] as String?,
|
||||
taskId: data['task_id'] == null ? null : data['task_id'] as String?,
|
||||
leaveId: data['leave_id'] == null ? null : data['leave_id'] as String?,
|
||||
passSlipId: data['pass_slip_id'] == null
|
||||
? null
|
||||
: data['pass_slip_id'] as String?,
|
||||
itServiceRequestId: data['it_service_request_id'] == null
|
||||
? null
|
||||
: data['it_service_request_id'] as String?,
|
||||
announcementId: data['announcement_id'] == null
|
||||
? null
|
||||
: data['announcement_id'] as String?,
|
||||
messageId: data['message_id'] == null ? null : data['message_id'] as int?,
|
||||
type: data['type'] as String,
|
||||
createdAt: DateTime.parse(data['created_at'] as String),
|
||||
readAt: data['read_at'] == null
|
||||
? null
|
||||
: data['read_at'] == null
|
||||
? null
|
||||
: DateTime.tryParse(data['read_at'] as String),
|
||||
)..primaryKey = data['_brick_id'] as int;
|
||||
}
|
||||
|
||||
Future<Map<String, dynamic>> _$NotificationItemToSqlite(
|
||||
NotificationItem instance, {
|
||||
required SqliteProvider provider,
|
||||
OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async {
|
||||
return {
|
||||
'id': instance.id,
|
||||
'user_id': instance.userId,
|
||||
'actor_id': instance.actorId,
|
||||
'ticket_id': instance.ticketId,
|
||||
'task_id': instance.taskId,
|
||||
'leave_id': instance.leaveId,
|
||||
'pass_slip_id': instance.passSlipId,
|
||||
'it_service_request_id': instance.itServiceRequestId,
|
||||
'announcement_id': instance.announcementId,
|
||||
'message_id': instance.messageId,
|
||||
'type': instance.type,
|
||||
'created_at': instance.createdAt.toIso8601String(),
|
||||
'read_at': instance.readAt?.toIso8601String(),
|
||||
};
|
||||
}
|
||||
|
||||
/// Construct a [NotificationItem]
|
||||
class NotificationItemAdapter
|
||||
extends OfflineFirstWithSupabaseAdapter<NotificationItem> {
|
||||
NotificationItemAdapter();
|
||||
|
||||
@override
|
||||
final supabaseTableName = 'notifications';
|
||||
@override
|
||||
final defaultToNull = true;
|
||||
@override
|
||||
final fieldsToSupabaseColumns = {
|
||||
'id': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'id',
|
||||
),
|
||||
'userId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'user_id',
|
||||
),
|
||||
'actorId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'actor_id',
|
||||
),
|
||||
'ticketId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'ticket_id',
|
||||
),
|
||||
'taskId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'task_id',
|
||||
),
|
||||
'leaveId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'leave_id',
|
||||
),
|
||||
'passSlipId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'pass_slip_id',
|
||||
),
|
||||
'itServiceRequestId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'it_service_request_id',
|
||||
),
|
||||
'announcementId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'announcement_id',
|
||||
),
|
||||
'messageId': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'message_id',
|
||||
),
|
||||
'type': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'type',
|
||||
),
|
||||
'createdAt': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'created_at',
|
||||
),
|
||||
'readAt': const RuntimeSupabaseColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'read_at',
|
||||
),
|
||||
};
|
||||
@override
|
||||
final ignoreDuplicates = false;
|
||||
@override
|
||||
final uniqueFields = {};
|
||||
@override
|
||||
final Map<String, RuntimeSqliteColumnDefinition> fieldsToSqliteColumns = {
|
||||
'primaryKey': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: '_brick_id',
|
||||
iterable: false,
|
||||
type: int,
|
||||
),
|
||||
'id': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'userId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'user_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'actorId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'actor_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'ticketId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'ticket_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'taskId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'task_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'leaveId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'leave_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'passSlipId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'pass_slip_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'itServiceRequestId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'it_service_request_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'announcementId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'announcement_id',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'messageId': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'message_id',
|
||||
iterable: false,
|
||||
type: int,
|
||||
),
|
||||
'type': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'type',
|
||||
iterable: false,
|
||||
type: String,
|
||||
),
|
||||
'createdAt': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'created_at',
|
||||
iterable: false,
|
||||
type: DateTime,
|
||||
),
|
||||
'readAt': const RuntimeSqliteColumnDefinition(
|
||||
association: false,
|
||||
columnName: 'read_at',
|
||||
iterable: false,
|
||||
type: DateTime,
|
||||
),
|
||||
};
|
||||
@override
|
||||
Future<int?> primaryKeyByUniqueColumns(
|
||||
NotificationItem instance,
|
||||
DatabaseExecutor executor,
|
||||
) async => instance.primaryKey;
|
||||
@override
|
||||
final String tableName = 'NotificationItem';
|
||||
|
||||
@override
|
||||
Future<NotificationItem> fromSupabase(
|
||||
Map<String, dynamic> input, {
|
||||
required provider,
|
||||
covariant OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async => await _$NotificationItemFromSupabase(
|
||||
input,
|
||||
provider: provider,
|
||||
repository: repository,
|
||||
);
|
||||
@override
|
||||
Future<Map<String, dynamic>> toSupabase(
|
||||
NotificationItem input, {
|
||||
required provider,
|
||||
covariant OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async => await _$NotificationItemToSupabase(
|
||||
input,
|
||||
provider: provider,
|
||||
repository: repository,
|
||||
);
|
||||
@override
|
||||
Future<NotificationItem> fromSqlite(
|
||||
Map<String, dynamic> input, {
|
||||
required provider,
|
||||
covariant OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async => await _$NotificationItemFromSqlite(
|
||||
input,
|
||||
provider: provider,
|
||||
repository: repository,
|
||||
);
|
||||
@override
|
||||
Future<Map<String, dynamic>> toSqlite(
|
||||
NotificationItem input, {
|
||||
required provider,
|
||||
covariant OfflineFirstWithSupabaseRepository? repository,
|
||||
}) async => await _$NotificationItemToSqlite(
|
||||
input,
|
||||
provider: provider,
|
||||
repository: repository,
|
||||
);
|
||||
}
|
||||
Reference in New Issue
Block a user