feat: Refactor code structure and optimize performance across multiple modules
This commit is contained in:
@@ -0,0 +1,64 @@
|
||||
import 'package:json_annotation/json_annotation.dart';
|
||||
import 'package:krow/features/shifts/data/models/event_tag.dart';
|
||||
|
||||
part 'event.g.dart';
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class Event {
|
||||
String? id;
|
||||
Business? business;
|
||||
String? name;
|
||||
String? date;
|
||||
String? additionalInfo;
|
||||
List<Addon>? addons;
|
||||
List<EventTag>? tags;
|
||||
|
||||
|
||||
Event({
|
||||
this.business,
|
||||
this.name,
|
||||
this.date,
|
||||
this.additionalInfo,
|
||||
this.addons,
|
||||
this.tags,
|
||||
});
|
||||
|
||||
factory Event.fromJson(Map<String, dynamic> json) {
|
||||
return _$EventFromJson(json);
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$EventToJson(this);
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class Business {
|
||||
String? name;
|
||||
String? avatar;
|
||||
|
||||
Business({this.name, this.avatar});
|
||||
|
||||
factory Business.fromJson(Map<String, dynamic> json) {
|
||||
return _$BusinessFromJson(json);
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() => _$BusinessToJson(this);
|
||||
}
|
||||
|
||||
@JsonSerializable(fieldRename: FieldRename.snake)
|
||||
class Addon {
|
||||
String? name;
|
||||
|
||||
Addon({this.name});
|
||||
|
||||
factory Addon.fromJson(Map<String, dynamic> json) {
|
||||
return Addon(
|
||||
name: json['name'],
|
||||
);
|
||||
}
|
||||
|
||||
Map<String, dynamic> toJson() {
|
||||
return {
|
||||
'name': name,
|
||||
};
|
||||
}
|
||||
}
|
||||
Reference in New Issue
Block a user