2025-11-27 15:47:21 +01:00

401 lines
13 KiB
Dart

//
// AUTO-GENERATED FILE, DO NOT MODIFY!
//
// @dart=2.18
// ignore_for_file: unused_element, unused_import
// ignore_for_file: always_put_required_named_parameters_first
// ignore_for_file: constant_identifier_names
// ignore_for_file: lines_longer_than_80_chars
part of openapi.api;
class SectionGame {
/// Returns a new [SectionGame] instance.
SectionGame({
required this.id,
required this.label,
this.title = const [],
required this.configurationId,
required this.type,
required this.isSubSection,
required this.instanceId,
this.gameMessageDebut = const [],
this.gameMessageFin = const [],
required this.gamePuzzleRows,
required this.gamePuzzleCols,
this.description = const [],
this.order,
this.imageId,
this.imageSource,
this.parentId,
this.dateCreation,
this.isBeacon,
this.beaconId,
this.latitude,
this.longitude,
this.meterZoneGPS,
this.isActive,
this.gamePuzzleImageId,
this.gamePuzzleImage,
this.gameType,
});
String id;
String label;
List<TranslationDTO> title;
String configurationId;
SectionType type;
bool isSubSection;
String instanceId;
List<TranslationAndResourceDTO> gameMessageDebut;
List<TranslationAndResourceDTO> gameMessageFin;
int gamePuzzleRows;
int gamePuzzleCols;
List<TranslationDTO>? description;
///
/// Please note: This property should have been non-nullable! Since the specification file
/// does not include a default value (using the "default:" property), however, the generated
/// source code must fall back to having a nullable type.
/// Consider adding a "default:" property in the specification file to hide this note.
///
int? order;
String? imageId;
String? imageSource;
String? parentId;
///
/// Please note: This property should have been non-nullable! Since the specification file
/// does not include a default value (using the "default:" property), however, the generated
/// source code must fall back to having a nullable type.
/// Consider adding a "default:" property in the specification file to hide this note.
///
DateTime? dateCreation;
///
/// Please note: This property should have been non-nullable! Since the specification file
/// does not include a default value (using the "default:" property), however, the generated
/// source code must fall back to having a nullable type.
/// Consider adding a "default:" property in the specification file to hide this note.
///
bool? isBeacon;
int? beaconId;
String? latitude;
String? longitude;
int? meterZoneGPS;
///
/// Please note: This property should have been non-nullable! Since the specification file
/// does not include a default value (using the "default:" property), however, the generated
/// source code must fall back to having a nullable type.
/// Consider adding a "default:" property in the specification file to hide this note.
///
bool? isActive;
String? gamePuzzleImageId;
SectionGameAllOfGamePuzzleImage? gamePuzzleImage;
///
/// Please note: This property should have been non-nullable! Since the specification file
/// does not include a default value (using the "default:" property), however, the generated
/// source code must fall back to having a nullable type.
/// Consider adding a "default:" property in the specification file to hide this note.
///
GameTypes? gameType;
@override
bool operator ==(Object other) =>
identical(this, other) ||
other is SectionGame &&
other.id == id &&
other.label == label &&
_deepEquality.equals(other.title, title) &&
other.configurationId == configurationId &&
other.type == type &&
other.isSubSection == isSubSection &&
other.instanceId == instanceId &&
_deepEquality.equals(other.gameMessageDebut, gameMessageDebut) &&
_deepEquality.equals(other.gameMessageFin, gameMessageFin) &&
other.gamePuzzleRows == gamePuzzleRows &&
other.gamePuzzleCols == gamePuzzleCols &&
_deepEquality.equals(other.description, description) &&
other.order == order &&
other.imageId == imageId &&
other.imageSource == imageSource &&
other.parentId == parentId &&
other.dateCreation == dateCreation &&
other.isBeacon == isBeacon &&
other.beaconId == beaconId &&
other.latitude == latitude &&
other.longitude == longitude &&
other.meterZoneGPS == meterZoneGPS &&
other.isActive == isActive &&
other.gamePuzzleImageId == gamePuzzleImageId &&
other.gamePuzzleImage == gamePuzzleImage &&
other.gameType == gameType;
@override
int get hashCode =>
// ignore: unnecessary_parenthesis
(id.hashCode) +
(label.hashCode) +
(title.hashCode) +
(configurationId.hashCode) +
(type.hashCode) +
(isSubSection.hashCode) +
(instanceId.hashCode) +
(gameMessageDebut.hashCode) +
(gameMessageFin.hashCode) +
(gamePuzzleRows.hashCode) +
(gamePuzzleCols.hashCode) +
(description == null ? 0 : description!.hashCode) +
(order == null ? 0 : order!.hashCode) +
(imageId == null ? 0 : imageId!.hashCode) +
(imageSource == null ? 0 : imageSource!.hashCode) +
(parentId == null ? 0 : parentId!.hashCode) +
(dateCreation == null ? 0 : dateCreation!.hashCode) +
(isBeacon == null ? 0 : isBeacon!.hashCode) +
(beaconId == null ? 0 : beaconId!.hashCode) +
(latitude == null ? 0 : latitude!.hashCode) +
(longitude == null ? 0 : longitude!.hashCode) +
(meterZoneGPS == null ? 0 : meterZoneGPS!.hashCode) +
(isActive == null ? 0 : isActive!.hashCode) +
(gamePuzzleImageId == null ? 0 : gamePuzzleImageId!.hashCode) +
(gamePuzzleImage == null ? 0 : gamePuzzleImage!.hashCode) +
(gameType == null ? 0 : gameType!.hashCode);
@override
String toString() =>
'SectionGame[id=$id, label=$label, title=$title, configurationId=$configurationId, type=$type, isSubSection=$isSubSection, instanceId=$instanceId, gameMessageDebut=$gameMessageDebut, gameMessageFin=$gameMessageFin, gamePuzzleRows=$gamePuzzleRows, gamePuzzleCols=$gamePuzzleCols, description=$description, order=$order, imageId=$imageId, imageSource=$imageSource, parentId=$parentId, dateCreation=$dateCreation, isBeacon=$isBeacon, beaconId=$beaconId, latitude=$latitude, longitude=$longitude, meterZoneGPS=$meterZoneGPS, isActive=$isActive, gamePuzzleImageId=$gamePuzzleImageId, gamePuzzleImage=$gamePuzzleImage, gameType=$gameType]';
Map<String, dynamic> toJson() {
final json = <String, dynamic>{};
json[r'id'] = this.id;
json[r'label'] = this.label;
json[r'title'] = this.title;
json[r'configurationId'] = this.configurationId;
json[r'type'] = this.type;
json[r'isSubSection'] = this.isSubSection;
json[r'instanceId'] = this.instanceId;
json[r'gameMessageDebut'] = this.gameMessageDebut;
json[r'gameMessageFin'] = this.gameMessageFin;
json[r'gamePuzzleRows'] = this.gamePuzzleRows;
json[r'gamePuzzleCols'] = this.gamePuzzleCols;
if (this.description != null) {
json[r'description'] = this.description;
} else {
json[r'description'] = null;
}
if (this.order != null) {
json[r'order'] = this.order;
} else {
json[r'order'] = null;
}
if (this.imageId != null) {
json[r'imageId'] = this.imageId;
} else {
json[r'imageId'] = null;
}
if (this.imageSource != null) {
json[r'imageSource'] = this.imageSource;
} else {
json[r'imageSource'] = null;
}
if (this.parentId != null) {
json[r'parentId'] = this.parentId;
} else {
json[r'parentId'] = null;
}
if (this.dateCreation != null) {
json[r'dateCreation'] = this.dateCreation!.toUtc().toIso8601String();
} else {
json[r'dateCreation'] = null;
}
if (this.isBeacon != null) {
json[r'isBeacon'] = this.isBeacon;
} else {
json[r'isBeacon'] = null;
}
if (this.beaconId != null) {
json[r'beaconId'] = this.beaconId;
} else {
json[r'beaconId'] = null;
}
if (this.latitude != null) {
json[r'latitude'] = this.latitude;
} else {
json[r'latitude'] = null;
}
if (this.longitude != null) {
json[r'longitude'] = this.longitude;
} else {
json[r'longitude'] = null;
}
if (this.meterZoneGPS != null) {
json[r'meterZoneGPS'] = this.meterZoneGPS;
} else {
json[r'meterZoneGPS'] = null;
}
if (this.isActive != null) {
json[r'isActive'] = this.isActive;
} else {
json[r'isActive'] = null;
}
if (this.gamePuzzleImageId != null) {
json[r'gamePuzzleImageId'] = this.gamePuzzleImageId;
} else {
json[r'gamePuzzleImageId'] = null;
}
if (this.gamePuzzleImage != null) {
json[r'gamePuzzleImage'] = this.gamePuzzleImage;
} else {
json[r'gamePuzzleImage'] = null;
}
if (this.gameType != null) {
json[r'gameType'] = this.gameType;
} else {
json[r'gameType'] = null;
}
return json;
}
/// Returns a new [SectionGame] instance and imports its values from
/// [value] if it's a [Map], null otherwise.
// ignore: prefer_constructors_over_static_methods
static SectionGame? fromJson(dynamic value) {
if (value is Map) {
final json = value.cast<String, dynamic>();
// Ensure that the map contains the required keys.
// Note 1: the values aren't checked for validity beyond being non-null.
// Note 2: this code is stripped in release mode!
assert(() {
requiredKeys.forEach((key) {
assert(json.containsKey(key),
'Required key "SectionGame[$key]" is missing from JSON.');
assert(json[key] != null,
'Required key "SectionGame[$key]" has a null value in JSON.');
});
return true;
}());
return SectionGame(
id: mapValueOfType<String>(json, r'id')!,
label: mapValueOfType<String>(json, r'label')!,
title: TranslationDTO.listFromJson(json[r'title']),
configurationId: mapValueOfType<String>(json, r'configurationId')!,
type: SectionType.fromJson(json[r'type'])!,
isSubSection: mapValueOfType<bool>(json, r'isSubSection')!,
instanceId: mapValueOfType<String>(json, r'instanceId')!,
gameMessageDebut:
TranslationAndResourceDTO.listFromJson(json[r'gameMessageDebut']),
gameMessageFin:
TranslationAndResourceDTO.listFromJson(json[r'gameMessageFin']),
gamePuzzleRows: mapValueOfType<int>(json, r'gamePuzzleRows')!,
gamePuzzleCols: mapValueOfType<int>(json, r'gamePuzzleCols')!,
description: TranslationDTO.listFromJson(json[r'description']),
order: mapValueOfType<int>(json, r'order'),
imageId: mapValueOfType<String>(json, r'imageId'),
imageSource: mapValueOfType<String>(json, r'imageSource'),
parentId: mapValueOfType<String>(json, r'parentId'),
dateCreation: mapDateTime(json, r'dateCreation', r''),
isBeacon: mapValueOfType<bool>(json, r'isBeacon'),
beaconId: mapValueOfType<int>(json, r'beaconId'),
latitude: mapValueOfType<String>(json, r'latitude'),
longitude: mapValueOfType<String>(json, r'longitude'),
meterZoneGPS: mapValueOfType<int>(json, r'meterZoneGPS'),
isActive: mapValueOfType<bool>(json, r'isActive'),
gamePuzzleImageId: mapValueOfType<String>(json, r'gamePuzzleImageId'),
gamePuzzleImage:
SectionGameAllOfGamePuzzleImage.fromJson(json[r'gamePuzzleImage']),
gameType: GameTypes.fromJson(json[r'gameType']),
);
}
return null;
}
static List<SectionGame> listFromJson(
dynamic json, {
bool growable = false,
}) {
final result = <SectionGame>[];
if (json is List && json.isNotEmpty) {
for (final row in json) {
final value = SectionGame.fromJson(row);
if (value != null) {
result.add(value);
}
}
}
return result.toList(growable: growable);
}
static Map<String, SectionGame> mapFromJson(dynamic json) {
final map = <String, SectionGame>{};
if (json is Map && json.isNotEmpty) {
json = json.cast<String, dynamic>(); // ignore: parameter_assignments
for (final entry in json.entries) {
final value = SectionGame.fromJson(entry.value);
if (value != null) {
map[entry.key] = value;
}
}
}
return map;
}
// maps a json object with a list of SectionGame-objects as value to a dart map
static Map<String, List<SectionGame>> mapListFromJson(
dynamic json, {
bool growable = false,
}) {
final map = <String, List<SectionGame>>{};
if (json is Map && json.isNotEmpty) {
// ignore: parameter_assignments
json = json.cast<String, dynamic>();
for (final entry in json.entries) {
map[entry.key] = SectionGame.listFromJson(
entry.value,
growable: growable,
);
}
}
return map;
}
/// The list of required keys that must be present in a JSON.
static const requiredKeys = <String>{
'id',
'label',
'title',
'configurationId',
'type',
'isSubSection',
'instanceId',
'gameMessageDebut',
'gameMessageFin',
'gamePuzzleRows',
'gamePuzzleCols',
};
}