class LidoapiOfp { LidoapiOfp({ required this.briefingPackages, required this.categories, required this.merge, required this.bpRestrictions, required this.categoriesNames, }); final List briefingPackages; static const String briefingPackagesKey = "briefingPackages"; final List categories; static const String categoriesKey = "categories"; final bool? merge; static const String mergeKey = "merge"; final List bpRestrictions; static const String bpRestrictionsKey = "bpRestrictions"; final CategoriesNames? categoriesNames; static const String categoriesNamesKey = "categoriesNames"; LidoapiOfp copyWith({ List? briefingPackages, List? categories, bool? merge, List? bpRestrictions, CategoriesNames? categoriesNames, }) { return LidoapiOfp( briefingPackages: briefingPackages ?? this.briefingPackages, categories: categories ?? this.categories, merge: merge ?? this.merge, bpRestrictions: bpRestrictions ?? this.bpRestrictions, categoriesNames: categoriesNames ?? this.categoriesNames, ); } factory LidoapiOfp.fromJson(Map json) { return LidoapiOfp( briefingPackages: json["briefingPackages"] == null ? [] : List.from(json["briefingPackages"]! .map((x) => BriefingPackage.fromJson(x))), categories: json["categories"] == null ? [] : List.from( json["categories"]!.map((x) => Category.fromJson(x))), merge: json["merge"], bpRestrictions: json["bpRestrictions"] == null ? [] : List.from(json["bpRestrictions"]!.map((x) => x)), categoriesNames: json["categoriesNames"] == null ? null : CategoriesNames.fromJson(json["categoriesNames"]), ); } Map toJson() => { "briefingPackages": briefingPackages.map((x) => x.toJson()).toList(), "categories": categories.map((x) => x.toJson()).toList(), "merge": merge, "bpRestrictions": bpRestrictions.map((x) => x).toList(), "categoriesNames": categoriesNames?.toJson(), }; @override String toString() { return "$briefingPackages, $categories, $merge, $bpRestrictions, $categoriesNames, "; } } class BriefingPackage { BriefingPackage({ required this.status, required this.previousStatus, required this.leg, required this.categories, required this.lidoBriefingData, required this.flightLegIdentifier, required this.briefingPackageDocuments, required this.briefingPackageOrigin, required this.briefingPackageConfirmationHistory, required this.bpVersion, required this.version, required this.creationTimeStamp, required this.latestFuelOrder, required this.interfaceHistory, required this.links, }); final String? status; static const String statusKey = "status"; final String? previousStatus; static const String previousStatusKey = "previousStatus"; final List leg; static const String legKey = "leg"; final List categories; static const String categoriesKey = "categories"; final LidoBriefingData? lidoBriefingData; static const String lidoBriefingDataKey = "lidoBriefingData"; final dynamic flightLegIdentifier; static const String flightLegIdentifierKey = "flightLegIdentifier"; final List briefingPackageDocuments; static const String briefingPackageDocumentsKey = "briefingPackageDocuments"; final String? briefingPackageOrigin; static const String briefingPackageOriginKey = "briefingPackageOrigin"; final List briefingPackageConfirmationHistory; static const String briefingPackageConfirmationHistoryKey = "briefingPackageConfirmationHistory"; final int? bpVersion; static const String bpVersionKey = "bpVersion"; final int? version; static const String versionKey = "version"; final int? creationTimeStamp; static const String creationTimeStampKey = "creationTimeStamp"; final dynamic latestFuelOrder; static const String latestFuelOrderKey = "latestFuelOrder"; final InterfaceHistory? interfaceHistory; static const String interfaceHistoryKey = "interfaceHistory"; final Links? links; static const String linksKey = "_links"; BriefingPackage copyWith({ String? status, String? previousStatus, List? leg, List? categories, LidoBriefingData? lidoBriefingData, dynamic flightLegIdentifier, List? briefingPackageDocuments, String? briefingPackageOrigin, List? briefingPackageConfirmationHistory, int? bpVersion, int? version, int? creationTimeStamp, dynamic latestFuelOrder, InterfaceHistory? interfaceHistory, Links? links, }) { return BriefingPackage( status: status ?? this.status, previousStatus: previousStatus ?? this.previousStatus, leg: leg ?? this.leg, categories: categories ?? this.categories, lidoBriefingData: lidoBriefingData ?? this.lidoBriefingData, flightLegIdentifier: flightLegIdentifier ?? this.flightLegIdentifier, briefingPackageDocuments: briefingPackageDocuments ?? this.briefingPackageDocuments, briefingPackageOrigin: briefingPackageOrigin ?? this.briefingPackageOrigin, briefingPackageConfirmationHistory: briefingPackageConfirmationHistory ?? this.briefingPackageConfirmationHistory, bpVersion: bpVersion ?? this.bpVersion, version: version ?? this.version, creationTimeStamp: creationTimeStamp ?? this.creationTimeStamp, latestFuelOrder: latestFuelOrder ?? this.latestFuelOrder, interfaceHistory: interfaceHistory ?? this.interfaceHistory, links: links ?? this.links, ); } factory BriefingPackage.fromJson(Map json) { return BriefingPackage( status: json["status"], previousStatus: json["previousStatus"], leg: json["leg"] == null ? [] : List.from(json["leg"]!.map((x) => Leg.fromJson(x))), categories: json["categories"] == null ? [] : List.from( json["categories"]!.map((x) => Category.fromJson(x))), lidoBriefingData: json["lidoBriefingData"] == null ? null : LidoBriefingData.fromJson(json["lidoBriefingData"]), flightLegIdentifier: json["flightLegIdentifier"], briefingPackageDocuments: json["briefingPackageDocuments"] == null ? [] : List.from(json["briefingPackageDocuments"]! .map((x) => BriefingPackageDocument.fromJson(x))), briefingPackageOrigin: json["briefingPackageOrigin"], briefingPackageConfirmationHistory: json["briefingPackageConfirmationHistory"] == null ? [] : List.from( json["briefingPackageConfirmationHistory"]!.map((x) => x)), bpVersion: json["bpVersion"], version: json["version"], creationTimeStamp: json["creationTimeStamp"], latestFuelOrder: json["latestFuelOrder"], interfaceHistory: json["interfaceHistory"] == null ? null : InterfaceHistory.fromJson(json["interfaceHistory"]), links: json["_links"] == null ? null : Links.fromJson(json["_links"]), ); } Map toJson() => { "status": status, "previousStatus": previousStatus, "leg": leg.map((x) => x.toJson()).toList(), "categories": categories.map((x) => x.toJson()).toList(), "lidoBriefingData": lidoBriefingData?.toJson(), "flightLegIdentifier": flightLegIdentifier, "briefingPackageDocuments": briefingPackageDocuments.map((x) => x.toJson()).toList(), "briefingPackageOrigin": briefingPackageOrigin, "briefingPackageConfirmationHistory": briefingPackageConfirmationHistory.map((x) => x).toList(), "bpVersion": bpVersion, "version": version, "creationTimeStamp": creationTimeStamp, "latestFuelOrder": latestFuelOrder, "interfaceHistory": interfaceHistory?.toJson(), "_links": links?.toJson(), }; @override String toString() { return "$status, $previousStatus, $leg, $categories, $lidoBriefingData, $flightLegIdentifier, $briefingPackageDocuments, $briefingPackageOrigin, $briefingPackageConfirmationHistory, $bpVersion, $version, $creationTimeStamp, $latestFuelOrder, $interfaceHistory, $links, "; } } class BriefingPackageDocument { BriefingPackageDocument({ required this.name, required this.creationTime, required this.printedBy, }); final String? name; static const String nameKey = "name"; final int? creationTime; static const String creationTimeKey = "creationTime"; final String? printedBy; static const String printedByKey = "printedBy"; BriefingPackageDocument copyWith({ String? name, int? creationTime, String? printedBy, }) { return BriefingPackageDocument( name: name ?? this.name, creationTime: creationTime ?? this.creationTime, printedBy: printedBy ?? this.printedBy, ); } factory BriefingPackageDocument.fromJson(Map json) { return BriefingPackageDocument( name: json["name"], creationTime: json["creationTime"], printedBy: json["printedBy"], ); } Map toJson() => { "name": name, "creationTime": creationTime, "printedBy": printedBy, }; @override String toString() { return "$name, $creationTime, $printedBy, "; } } class Category { Category({ required this.name, required this.documents, required this.flightRelated, required this.type, required this.links, }); final String? name; static const String nameKey = "name"; final List documents; static const String documentsKey = "documents"; final bool? flightRelated; static const String flightRelatedKey = "flightRelated"; final String? type; static const String typeKey = "type"; final Links? links; static const String linksKey = "_links"; Category copyWith({ String? name, List? documents, bool? flightRelated, String? type, Links? links, }) { return Category( name: name ?? this.name, documents: documents ?? this.documents, flightRelated: flightRelated ?? this.flightRelated, type: type ?? this.type, links: links ?? this.links, ); } factory Category.fromJson(Map json) { return Category( name: json["name"], documents: json["documents"] == null ? [] : List.from( json["documents"]!.map((x) => Document.fromJson(x))), flightRelated: json["flightRelated"], type: json["type"], links: json["_links"] == null ? null : Links.fromJson(json["_links"]), ); } Map toJson() => { "name": name, "documents": documents.map((x) => x.toJson()).toList(), "flightRelated": flightRelated, "type": type, "_links": links?.toJson(), }; @override String toString() { return "$name, $documents, $flightRelated, $type, $links, "; } } class Document { Document({ required this.fileId, required this.legIdentifier, required this.mediaType, required this.creationTime, required this.metadata, required this.links, required this.fileName, }); final String? fileId; static const String fileIdKey = "fileId"; final String? legIdentifier; static const String legIdentifierKey = "legIdentifier"; final String? mediaType; static const String mediaTypeKey = "mediaType"; final int? creationTime; static const String creationTimeKey = "creationTime"; final List metadata; static const String metadataKey = "metadata"; final Links? links; static const String linksKey = "_links"; final String? fileName; static const String fileNameKey = "fileName"; Document copyWith({ String? fileId, String? legIdentifier, String? mediaType, int? creationTime, List? metadata, Links? links, String? fileName, }) { return Document( fileId: fileId ?? this.fileId, legIdentifier: legIdentifier ?? this.legIdentifier, mediaType: mediaType ?? this.mediaType, creationTime: creationTime ?? this.creationTime, metadata: metadata ?? this.metadata, links: links ?? this.links, fileName: fileName ?? this.fileName, ); } factory Document.fromJson(Map json) { return Document( fileId: json["fileId"], legIdentifier: json["legIdentifier"], mediaType: json["mediaType"], creationTime: json["creationTime"], metadata: json["metadata"] == null ? [] : List.from( json["metadata"]!.map((x) => Metadatum.fromJson(x))), links: json["_links"] == null ? null : Links.fromJson(json["_links"]), fileName: json["fileName"], ); } Map toJson() => { "fileId": fileId, "legIdentifier": legIdentifier, "mediaType": mediaType, "creationTime": creationTime, "metadata": metadata.map((x) => x.toJson()).toList(), "_links": links?.toJson(), "fileName": fileName, }; @override String toString() { return "$fileId, $legIdentifier, $mediaType, $creationTime, $metadata, $links, $fileName, "; } } class Links { Links({ required this.self, }); final Self? self; static const String selfKey = "self"; Links copyWith({ Self? self, }) { return Links( self: self ?? this.self, ); } factory Links.fromJson(Map json) { return Links( self: json["self"] == null ? null : Self.fromJson(json["self"]), ); } Map toJson() => { "self": self?.toJson(), }; @override String toString() { return "$self, "; } } class Self { Self({ required this.href, }); final String? href; static const String hrefKey = "href"; Self copyWith({ String? href, }) { return Self( href: href ?? this.href, ); } factory Self.fromJson(Map json) { return Self( href: json["href"], ); } Map toJson() => { "href": href, }; @override String toString() { return "$href, "; } } class Metadatum { Metadatum({ required this.key, required this.value, }); final String? key; static const String keyKey = "key"; final dynamic value; static const String valueKey = "value"; Metadatum copyWith({ String? key, dynamic value, }) { return Metadatum( key: key ?? this.key, value: value ?? this.value, ); } factory Metadatum.fromJson(Map json) { return Metadatum( key: json["key"], value: json["value"], ); } Map toJson() => { "key": key, "value": value, }; @override String toString() { return "$key, $value, "; } } class InterfaceHistory { InterfaceHistory({ required this.interfaceTimestamp, }); final int? interfaceTimestamp; static const String interfaceTimestampKey = "interfaceTimestamp"; InterfaceHistory copyWith({ int? interfaceTimestamp, }) { return InterfaceHistory( interfaceTimestamp: interfaceTimestamp ?? this.interfaceTimestamp, ); } factory InterfaceHistory.fromJson(Map json) { return InterfaceHistory( interfaceTimestamp: json["interfaceTimestamp"], ); } Map toJson() => { "interfaceTimestamp": interfaceTimestamp, }; @override String toString() { return "$interfaceTimestamp, "; } } class Leg { Leg({ required this.legidentifier, required this.commercialAirlineIata, required this.commercialAirlineIcao, required this.flightNumber, required this.operationalSuffix, required this.aircraftOperatorIata, required this.aircraftOperatorIcao, required this.departureAirport, required this.destinationAirport, required this.ofpNumber, required this.aircraftDetails, required this.dispatcherInformation, required this.ctot, required this.slotAction, required this.estimatedDepartureTime, required this.scheduledDepartureTime, required this.estimatedTimeOfArrival, required this.scheduledTimeOfArrival, required this.crewMembers, required this.fuel, required this.weight, required this.reclearanceIndicator, required this.dateOfOrigin, required this.dateOfOperation, required this.masterOffice, required this.responsibleOffice, required this.flightDuplicationNumber, required this.destinationAirportIcao, required this.departureAirportIcao, required this.flightRoute, }); final String? legidentifier; static const String legidentifierKey = "legidentifier"; final String? commercialAirlineIata; static const String commercialAirlineIataKey = "commercialAirlineIATA"; final String? commercialAirlineIcao; static const String commercialAirlineIcaoKey = "commercialAirlineICAO"; final String? flightNumber; static const String flightNumberKey = "flightNumber"; final String? operationalSuffix; static const String operationalSuffixKey = "operationalSuffix"; final String? aircraftOperatorIata; static const String aircraftOperatorIataKey = "aircraftOperatorIATA"; final String? aircraftOperatorIcao; static const String aircraftOperatorIcaoKey = "aircraftOperatorICAO"; final String? departureAirport; static const String departureAirportKey = "departureAirport"; final String? destinationAirport; static const String destinationAirportKey = "destinationAirport"; final String? ofpNumber; static const String ofpNumberKey = "ofpNumber"; final AircraftDetails? aircraftDetails; static const String aircraftDetailsKey = "aircraftDetails"; final DispatcherInformation? dispatcherInformation; static const String dispatcherInformationKey = "dispatcherInformation"; final int? ctot; static const String ctotKey = "ctot"; final String? slotAction; static const String slotActionKey = "slotAction"; final int? estimatedDepartureTime; static const String estimatedDepartureTimeKey = "estimatedDepartureTime"; final int? scheduledDepartureTime; static const String scheduledDepartureTimeKey = "scheduledDepartureTime"; final int? estimatedTimeOfArrival; static const String estimatedTimeOfArrivalKey = "estimatedTimeOfArrival"; final int? scheduledTimeOfArrival; static const String scheduledTimeOfArrivalKey = "scheduledTimeOfArrival"; final List crewMembers; static const String crewMembersKey = "crewMembers"; final Fuel? fuel; static const String fuelKey = "fuel"; final Weight? weight; static const String weightKey = "weight"; final bool? reclearanceIndicator; static const String reclearanceIndicatorKey = "reclearanceIndicator"; final int? dateOfOrigin; static const String dateOfOriginKey = "dateOfOrigin"; final int? dateOfOperation; static const String dateOfOperationKey = "dateOfOperation"; final String? masterOffice; static const String masterOfficeKey = "masterOffice"; final String? responsibleOffice; static const String responsibleOfficeKey = "responsibleOffice"; final dynamic flightDuplicationNumber; static const String flightDuplicationNumberKey = "flightDuplicationNumber"; final String? destinationAirportIcao; static const String destinationAirportIcaoKey = "destinationAirportICAO"; final String? departureAirportIcao; static const String departureAirportIcaoKey = "departureAirportICAO"; final String? flightRoute; static const String flightRouteKey = "flightRoute"; Leg copyWith({ String? legidentifier, String? commercialAirlineIata, String? commercialAirlineIcao, String? flightNumber, String? operationalSuffix, String? aircraftOperatorIata, String? aircraftOperatorIcao, String? departureAirport, String? destinationAirport, String? ofpNumber, AircraftDetails? aircraftDetails, DispatcherInformation? dispatcherInformation, int? ctot, String? slotAction, int? estimatedDepartureTime, int? scheduledDepartureTime, int? estimatedTimeOfArrival, int? scheduledTimeOfArrival, List? crewMembers, Fuel? fuel, Weight? weight, bool? reclearanceIndicator, int? dateOfOrigin, int? dateOfOperation, String? masterOffice, String? responsibleOffice, dynamic flightDuplicationNumber, String? destinationAirportIcao, String? departureAirportIcao, String? flightRoute, }) { return Leg( legidentifier: legidentifier ?? this.legidentifier, commercialAirlineIata: commercialAirlineIata ?? this.commercialAirlineIata, commercialAirlineIcao: commercialAirlineIcao ?? this.commercialAirlineIcao, flightNumber: flightNumber ?? this.flightNumber, operationalSuffix: operationalSuffix ?? this.operationalSuffix, aircraftOperatorIata: aircraftOperatorIata ?? this.aircraftOperatorIata, aircraftOperatorIcao: aircraftOperatorIcao ?? this.aircraftOperatorIcao, departureAirport: departureAirport ?? this.departureAirport, destinationAirport: destinationAirport ?? this.destinationAirport, ofpNumber: ofpNumber ?? this.ofpNumber, aircraftDetails: aircraftDetails ?? this.aircraftDetails, dispatcherInformation: dispatcherInformation ?? this.dispatcherInformation, ctot: ctot ?? this.ctot, slotAction: slotAction ?? this.slotAction, estimatedDepartureTime: estimatedDepartureTime ?? this.estimatedDepartureTime, scheduledDepartureTime: scheduledDepartureTime ?? this.scheduledDepartureTime, estimatedTimeOfArrival: estimatedTimeOfArrival ?? this.estimatedTimeOfArrival, scheduledTimeOfArrival: scheduledTimeOfArrival ?? this.scheduledTimeOfArrival, crewMembers: crewMembers ?? this.crewMembers, fuel: fuel ?? this.fuel, weight: weight ?? this.weight, reclearanceIndicator: reclearanceIndicator ?? this.reclearanceIndicator, dateOfOrigin: dateOfOrigin ?? this.dateOfOrigin, dateOfOperation: dateOfOperation ?? this.dateOfOperation, masterOffice: masterOffice ?? this.masterOffice, responsibleOffice: responsibleOffice ?? this.responsibleOffice, flightDuplicationNumber: flightDuplicationNumber ?? this.flightDuplicationNumber, destinationAirportIcao: destinationAirportIcao ?? this.destinationAirportIcao, departureAirportIcao: departureAirportIcao ?? this.departureAirportIcao, flightRoute: flightRoute ?? this.flightRoute, ); } factory Leg.fromJson(Map json) { return Leg( legidentifier: json["legidentifier"], commercialAirlineIata: json["commercialAirlineIATA"], commercialAirlineIcao: json["commercialAirlineICAO"], flightNumber: json["flightNumber"], operationalSuffix: json["operationalSuffix"], aircraftOperatorIata: json["aircraftOperatorIATA"], aircraftOperatorIcao: json["aircraftOperatorICAO"], departureAirport: json["departureAirport"], destinationAirport: json["destinationAirport"], ofpNumber: json["ofpNumber"], aircraftDetails: json["aircraftDetails"] == null ? null : AircraftDetails.fromJson(json["aircraftDetails"]), dispatcherInformation: json["dispatcherInformation"] == null ? null : DispatcherInformation.fromJson(json["dispatcherInformation"]), ctot: json["ctot"], slotAction: json["slotAction"], estimatedDepartureTime: json["estimatedDepartureTime"], scheduledDepartureTime: json["scheduledDepartureTime"], estimatedTimeOfArrival: json["estimatedTimeOfArrival"], scheduledTimeOfArrival: json["scheduledTimeOfArrival"], crewMembers: json["crewMembers"] == null ? [] : List.from( json["crewMembers"]!.map((x) => CrewMember.fromJson(x))), fuel: json["fuel"] == null ? null : Fuel.fromJson(json["fuel"]), weight: json["weight"] == null ? null : Weight.fromJson(json["weight"]), reclearanceIndicator: json["reclearanceIndicator"], dateOfOrigin: json["dateOfOrigin"], dateOfOperation: json["dateOfOperation"], masterOffice: json["masterOffice"], responsibleOffice: json["responsibleOffice"], flightDuplicationNumber: json["flightDuplicationNumber"], destinationAirportIcao: json["destinationAirportICAO"], departureAirportIcao: json["departureAirportICAO"], flightRoute: json["flightRoute"], ); } Map toJson() => { "legidentifier": legidentifier, "commercialAirlineIATA": commercialAirlineIata, "commercialAirlineICAO": commercialAirlineIcao, "flightNumber": flightNumber, "operationalSuffix": operationalSuffix, "aircraftOperatorIATA": aircraftOperatorIata, "aircraftOperatorICAO": aircraftOperatorIcao, "departureAirport": departureAirport, "destinationAirport": destinationAirport, "ofpNumber": ofpNumber, "aircraftDetails": aircraftDetails?.toJson(), "dispatcherInformation": dispatcherInformation?.toJson(), "ctot": ctot, "slotAction": slotAction, "estimatedDepartureTime": estimatedDepartureTime, "scheduledDepartureTime": scheduledDepartureTime, "estimatedTimeOfArrival": estimatedTimeOfArrival, "scheduledTimeOfArrival": scheduledTimeOfArrival, "crewMembers": crewMembers.map((x) => x.toJson()).toList(), "fuel": fuel?.toJson(), "weight": weight?.toJson(), "reclearanceIndicator": reclearanceIndicator, "dateOfOrigin": dateOfOrigin, "dateOfOperation": dateOfOperation, "masterOffice": masterOffice, "responsibleOffice": responsibleOffice, "flightDuplicationNumber": flightDuplicationNumber, "destinationAirportICAO": destinationAirportIcao, "departureAirportICAO": departureAirportIcao, "flightRoute": flightRoute, }; @override String toString() { return "$legidentifier, $commercialAirlineIata, $commercialAirlineIcao, $flightNumber, $operationalSuffix, $aircraftOperatorIata, $aircraftOperatorIcao, $departureAirport, $destinationAirport, $ofpNumber, $aircraftDetails, $dispatcherInformation, $ctot, $slotAction, $estimatedDepartureTime, $scheduledDepartureTime, $estimatedTimeOfArrival, $scheduledTimeOfArrival, $crewMembers, $fuel, $weight, $reclearanceIndicator, $dateOfOrigin, $dateOfOperation, $masterOffice, $responsibleOffice, $flightDuplicationNumber, $destinationAirportIcao, $departureAirportIcao, $flightRoute, "; } } class AircraftDetails { AircraftDetails({ required this.aircraftRegistration, required this.aircraftModel, required this.aircraftIcaoType, }); final String? aircraftRegistration; static const String aircraftRegistrationKey = "aircraftRegistration"; final String? aircraftModel; static const String aircraftModelKey = "aircraftModel"; final String? aircraftIcaoType; static const String aircraftIcaoTypeKey = "aircraftICAOType"; AircraftDetails copyWith({ String? aircraftRegistration, String? aircraftModel, String? aircraftIcaoType, }) { return AircraftDetails( aircraftRegistration: aircraftRegistration ?? this.aircraftRegistration, aircraftModel: aircraftModel ?? this.aircraftModel, aircraftIcaoType: aircraftIcaoType ?? this.aircraftIcaoType, ); } factory AircraftDetails.fromJson(Map json) { return AircraftDetails( aircraftRegistration: json["aircraftRegistration"], aircraftModel: json["aircraftModel"], aircraftIcaoType: json["aircraftICAOType"], ); } Map toJson() => { "aircraftRegistration": aircraftRegistration, "aircraftModel": aircraftModel, "aircraftICAOType": aircraftIcaoType, }; @override String toString() { return "$aircraftRegistration, $aircraftModel, $aircraftIcaoType, "; } } class CrewMember { CrewMember({ required this.position, required this.name, required this.crewId, }); final String? position; static const String positionKey = "position"; final String? name; static const String nameKey = "name"; final String? crewId; static const String crewIdKey = "crewId"; CrewMember copyWith({ String? position, String? name, String? crewId, }) { return CrewMember( position: position ?? this.position, name: name ?? this.name, crewId: crewId ?? this.crewId, ); } factory CrewMember.fromJson(Map json) { return CrewMember( position: json["position"], name: json["name"], crewId: json["crewId"], ); } Map toJson() => { "position": position, "name": name, "crewId": crewId, }; @override String toString() { return "$position, $name, $crewId, "; } } class DispatcherInformation { DispatcherInformation({ required this.dispatchOffice, required this.dispatcherName, required this.dispatcherTelephoneNumber, required this.dispatcherRemarks, }); final String? dispatchOffice; static const String dispatchOfficeKey = "dispatchOffice"; final String? dispatcherName; static const String dispatcherNameKey = "dispatcherName"; final String? dispatcherTelephoneNumber; static const String dispatcherTelephoneNumberKey = "dispatcherTelephoneNumber"; final dynamic dispatcherRemarks; static const String dispatcherRemarksKey = "dispatcherRemarks"; DispatcherInformation copyWith({ String? dispatchOffice, String? dispatcherName, String? dispatcherTelephoneNumber, dynamic dispatcherRemarks, }) { return DispatcherInformation( dispatchOffice: dispatchOffice ?? this.dispatchOffice, dispatcherName: dispatcherName ?? this.dispatcherName, dispatcherTelephoneNumber: dispatcherTelephoneNumber ?? this.dispatcherTelephoneNumber, dispatcherRemarks: dispatcherRemarks ?? this.dispatcherRemarks, ); } factory DispatcherInformation.fromJson(Map json) { return DispatcherInformation( dispatchOffice: json["dispatchOffice"], dispatcherName: json["dispatcherName"], dispatcherTelephoneNumber: json["dispatcherTelephoneNumber"], dispatcherRemarks: json["dispatcherRemarks"], ); } Map toJson() => { "dispatchOffice": dispatchOffice, "dispatcherName": dispatcherName, "dispatcherTelephoneNumber": dispatcherTelephoneNumber, "dispatcherRemarks": dispatcherRemarks, }; @override String toString() { return "$dispatchOffice, $dispatcherName, $dispatcherTelephoneNumber, $dispatcherRemarks, "; } } class Fuel { Fuel({ required this.unitOfMeasure, required this.tankCapacity, required this.averageFuelFlow, required this.taxiFuel, required this.tripFuel, required this.blockFuel, required this.possibleExtra, required this.totalTripTimeMinutes, required this.taxiTimeMinutes, required this.estimTotalFlightTime, required this.takeOffFuel, required this.takeOffFuelTime, required this.averageTaxiFuelFlow, required this.fuelOnBoard, }); final String? unitOfMeasure; static const String unitOfMeasureKey = "unitOfMeasure"; final int? tankCapacity; static const String tankCapacityKey = "tankCapacity"; final int? averageFuelFlow; static const String averageFuelFlowKey = "averageFuelFlow"; final int? taxiFuel; static const String taxiFuelKey = "taxiFuel"; final int? tripFuel; static const String tripFuelKey = "tripFuel"; final int? blockFuel; static const String blockFuelKey = "blockFuel"; final int? possibleExtra; static const String possibleExtraKey = "possibleExtra"; final int? totalTripTimeMinutes; static const String totalTripTimeMinutesKey = "totalTripTimeMinutes"; final int? taxiTimeMinutes; static const String taxiTimeMinutesKey = "taxiTimeMinutes"; final int? estimTotalFlightTime; static const String estimTotalFlightTimeKey = "estimTotalFlightTime"; final int? takeOffFuel; static const String takeOffFuelKey = "takeOffFuel"; final int? takeOffFuelTime; static const String takeOffFuelTimeKey = "takeOffFuelTime"; final int? averageTaxiFuelFlow; static const String averageTaxiFuelFlowKey = "averageTaxiFuelFlow"; final FuelOnBoard? fuelOnBoard; static const String fuelOnBoardKey = "fuelOnBoard"; Fuel copyWith({ String? unitOfMeasure, int? tankCapacity, int? averageFuelFlow, int? taxiFuel, int? tripFuel, int? blockFuel, int? possibleExtra, int? totalTripTimeMinutes, int? taxiTimeMinutes, int? estimTotalFlightTime, int? takeOffFuel, int? takeOffFuelTime, int? averageTaxiFuelFlow, FuelOnBoard? fuelOnBoard, }) { return Fuel( unitOfMeasure: unitOfMeasure ?? this.unitOfMeasure, tankCapacity: tankCapacity ?? this.tankCapacity, averageFuelFlow: averageFuelFlow ?? this.averageFuelFlow, taxiFuel: taxiFuel ?? this.taxiFuel, tripFuel: tripFuel ?? this.tripFuel, blockFuel: blockFuel ?? this.blockFuel, possibleExtra: possibleExtra ?? this.possibleExtra, totalTripTimeMinutes: totalTripTimeMinutes ?? this.totalTripTimeMinutes, taxiTimeMinutes: taxiTimeMinutes ?? this.taxiTimeMinutes, estimTotalFlightTime: estimTotalFlightTime ?? this.estimTotalFlightTime, takeOffFuel: takeOffFuel ?? this.takeOffFuel, takeOffFuelTime: takeOffFuelTime ?? this.takeOffFuelTime, averageTaxiFuelFlow: averageTaxiFuelFlow ?? this.averageTaxiFuelFlow, fuelOnBoard: fuelOnBoard ?? this.fuelOnBoard, ); } factory Fuel.fromJson(Map json) { return Fuel( unitOfMeasure: json["unitOfMeasure"], tankCapacity: json["tankCapacity"], averageFuelFlow: json["averageFuelFlow"], taxiFuel: json["taxiFuel"], tripFuel: json["tripFuel"], blockFuel: json["blockFuel"], possibleExtra: json["possibleExtra"], totalTripTimeMinutes: json["totalTripTimeMinutes"], taxiTimeMinutes: json["taxiTimeMinutes"], estimTotalFlightTime: json["estimTotalFlightTime"], takeOffFuel: json["takeOffFuel"], takeOffFuelTime: json["takeOffFuelTime"], averageTaxiFuelFlow: json["averageTaxiFuelFlow"], fuelOnBoard: json["fuelOnBoard"] == null ? null : FuelOnBoard.fromJson(json["fuelOnBoard"]), ); } Map toJson() => { "unitOfMeasure": unitOfMeasure, "tankCapacity": tankCapacity, "averageFuelFlow": averageFuelFlow, "taxiFuel": taxiFuel, "tripFuel": tripFuel, "blockFuel": blockFuel, "possibleExtra": possibleExtra, "totalTripTimeMinutes": totalTripTimeMinutes, "taxiTimeMinutes": taxiTimeMinutes, "estimTotalFlightTime": estimTotalFlightTime, "takeOffFuel": takeOffFuel, "takeOffFuelTime": takeOffFuelTime, "averageTaxiFuelFlow": averageTaxiFuelFlow, "fuelOnBoard": fuelOnBoard?.toJson(), }; @override String toString() { return "$unitOfMeasure, $tankCapacity, $averageFuelFlow, $taxiFuel, $tripFuel, $blockFuel, $possibleExtra, $totalTripTimeMinutes, $taxiTimeMinutes, $estimTotalFlightTime, $takeOffFuel, $takeOffFuelTime, $averageTaxiFuelFlow, $fuelOnBoard, "; } } class FuelOnBoard { FuelOnBoard({ required this.remainingFuel, required this.unitOfMeasure, required this.remainingFuelIndicator, }); final int? remainingFuel; static const String remainingFuelKey = "remainingFuel"; final String? unitOfMeasure; static const String unitOfMeasureKey = "unitOfMeasure"; final dynamic remainingFuelIndicator; static const String remainingFuelIndicatorKey = "remainingFuelIndicator"; FuelOnBoard copyWith({ int? remainingFuel, String? unitOfMeasure, dynamic remainingFuelIndicator, }) { return FuelOnBoard( remainingFuel: remainingFuel ?? this.remainingFuel, unitOfMeasure: unitOfMeasure ?? this.unitOfMeasure, remainingFuelIndicator: remainingFuelIndicator ?? this.remainingFuelIndicator, ); } factory FuelOnBoard.fromJson(Map json) { return FuelOnBoard( remainingFuel: json["remainingFuel"], unitOfMeasure: json["unitOfMeasure"], remainingFuelIndicator: json["remainingFuelIndicator"], ); } Map toJson() => { "remainingFuel": remainingFuel, "unitOfMeasure": unitOfMeasure, "remainingFuelIndicator": remainingFuelIndicator, }; @override String toString() { return "$remainingFuel, $unitOfMeasure, $remainingFuelIndicator, "; } } class Weight { Weight({ required this.maxZfw, required this.maxTaxiWeight, required this.maxTakeOffWeight, required this.plannedZfw, required this.restrictedTakeOffWeight, required this.maxLandingWeight, }); final int? maxZfw; static const String maxZfwKey = "maxZfw"; final int? maxTaxiWeight; static const String maxTaxiWeightKey = "maxTaxiWeight"; final int? maxTakeOffWeight; static const String maxTakeOffWeightKey = "maxTakeOffWeight"; final int? plannedZfw; static const String plannedZfwKey = "plannedZfw"; final int? restrictedTakeOffWeight; static const String restrictedTakeOffWeightKey = "restrictedTakeOffWeight"; final int? maxLandingWeight; static const String maxLandingWeightKey = "maxLandingWeight"; Weight copyWith({ int? maxZfw, int? maxTaxiWeight, int? maxTakeOffWeight, int? plannedZfw, int? restrictedTakeOffWeight, int? maxLandingWeight, }) { return Weight( maxZfw: maxZfw ?? this.maxZfw, maxTaxiWeight: maxTaxiWeight ?? this.maxTaxiWeight, maxTakeOffWeight: maxTakeOffWeight ?? this.maxTakeOffWeight, plannedZfw: plannedZfw ?? this.plannedZfw, restrictedTakeOffWeight: restrictedTakeOffWeight ?? this.restrictedTakeOffWeight, maxLandingWeight: maxLandingWeight ?? this.maxLandingWeight, ); } factory Weight.fromJson(Map json) { return Weight( maxZfw: json["maxZfw"], maxTaxiWeight: json["maxTaxiWeight"], maxTakeOffWeight: json["maxTakeOffWeight"], plannedZfw: json["plannedZfw"], restrictedTakeOffWeight: json["restrictedTakeOffWeight"], maxLandingWeight: json["maxLandingWeight"], ); } Map toJson() => { "maxZfw": maxZfw, "maxTaxiWeight": maxTaxiWeight, "maxTakeOffWeight": maxTakeOffWeight, "plannedZfw": plannedZfw, "restrictedTakeOffWeight": restrictedTakeOffWeight, "maxLandingWeight": maxLandingWeight, }; @override String toString() { return "$maxZfw, $maxTaxiWeight, $maxTakeOffWeight, $plannedZfw, $restrictedTakeOffWeight, $maxLandingWeight, "; } } class LidoBriefingData { LidoBriefingData({ required this.briefingStatus, }); final String? briefingStatus; static const String briefingStatusKey = "briefingStatus"; LidoBriefingData copyWith({ String? briefingStatus, }) { return LidoBriefingData( briefingStatus: briefingStatus ?? this.briefingStatus, ); } factory LidoBriefingData.fromJson(Map json) { return LidoBriefingData( briefingStatus: json["briefingStatus"], ); } Map toJson() => { "briefingStatus": briefingStatus, }; @override String toString() { return "$briefingStatus, "; } } class CategoriesNames { CategoriesNames({ required this.raim, required this.cda, required this.vertprof, required this.iwfr, required this.uad, required this.dms, required this.disp, required this.ats, required this.addwxnotam, required this.firnotam, required this.wxnotam, required this.advaa, required this.wxsatwx, required this.admtrtaf, required this.notam, required this.sigwxroute, required this.adsigmets, required this.radar, required this.adwxsatwx, required this.abd, required this.ofp, required this.vaatca, required this.tlr, required this.dismap, required this.crewinfo, required this.arptnotam, required this.adwxsigwx, required this.wxsigwx, required this.sfc, }); final String? raim; static const String raimKey = "RAIM"; final String? cda; static const String cdaKey = "CDA"; final String? vertprof; static const String vertprofKey = "VERTPROF"; final String? iwfr; static const String iwfrKey = "IWFR"; final String? uad; static const String uadKey = "UAD"; final String? dms; static const String dmsKey = "DMS"; final String? disp; static const String dispKey = "DISP"; final String? ats; static const String atsKey = "ATS"; final String? addwxnotam; static const String addwxnotamKey = "ADDWXNOTAM"; final String? firnotam; static const String firnotamKey = "FIRNOTAM"; final String? wxnotam; static const String wxnotamKey = "WXNOTAM"; final String? advaa; static const String advaaKey = "ADVAA"; final String? wxsatwx; static const String wxsatwxKey = "WXSATWX"; final String? admtrtaf; static const String admtrtafKey = "ADMTRTAF"; final String? notam; static const String notamKey = "NOTAM"; final String? sigwxroute; static const String sigwxrouteKey = "SIGWXROUTE"; final String? adsigmets; static const String adsigmetsKey = "ADSIGMETS"; final String? radar; static const String radarKey = "RADAR"; final String? adwxsatwx; static const String adwxsatwxKey = "ADWXSATWX"; final String? abd; static const String abdKey = "ABD"; final String? ofp; static const String ofpKey = "OFP"; final String? vaatca; static const String vaatcaKey = "VAATCA"; final String? tlr; static const String tlrKey = "TLR"; final String? dismap; static const String dismapKey = "DISMAP"; final String? crewinfo; static const String crewinfoKey = "CREWINFO"; final String? arptnotam; static const String arptnotamKey = "ARPTNOTAM"; final String? adwxsigwx; static const String adwxsigwxKey = "ADWXSIGWX"; final String? wxsigwx; static const String wxsigwxKey = "WXSIGWX"; final String? sfc; static const String sfcKey = "SFC"; CategoriesNames copyWith({ String? raim, String? cda, String? vertprof, String? iwfr, String? uad, String? dms, String? disp, String? ats, String? addwxnotam, String? firnotam, String? wxnotam, String? advaa, String? wxsatwx, String? admtrtaf, String? notam, String? sigwxroute, String? adsigmets, String? radar, String? adwxsatwx, String? abd, String? ofp, String? vaatca, String? tlr, String? dismap, String? crewinfo, String? arptnotam, String? adwxsigwx, String? wxsigwx, String? sfc, }) { return CategoriesNames( raim: raim ?? this.raim, cda: cda ?? this.cda, vertprof: vertprof ?? this.vertprof, iwfr: iwfr ?? this.iwfr, uad: uad ?? this.uad, dms: dms ?? this.dms, disp: disp ?? this.disp, ats: ats ?? this.ats, addwxnotam: addwxnotam ?? this.addwxnotam, firnotam: firnotam ?? this.firnotam, wxnotam: wxnotam ?? this.wxnotam, advaa: advaa ?? this.advaa, wxsatwx: wxsatwx ?? this.wxsatwx, admtrtaf: admtrtaf ?? this.admtrtaf, notam: notam ?? this.notam, sigwxroute: sigwxroute ?? this.sigwxroute, adsigmets: adsigmets ?? this.adsigmets, radar: radar ?? this.radar, adwxsatwx: adwxsatwx ?? this.adwxsatwx, abd: abd ?? this.abd, ofp: ofp ?? this.ofp, vaatca: vaatca ?? this.vaatca, tlr: tlr ?? this.tlr, dismap: dismap ?? this.dismap, crewinfo: crewinfo ?? this.crewinfo, arptnotam: arptnotam ?? this.arptnotam, adwxsigwx: adwxsigwx ?? this.adwxsigwx, wxsigwx: wxsigwx ?? this.wxsigwx, sfc: sfc ?? this.sfc, ); } factory CategoriesNames.fromJson(Map json) { return CategoriesNames( raim: json["RAIM"], cda: json["CDA"], vertprof: json["VERTPROF"], iwfr: json["IWFR"], uad: json["UAD"], dms: json["DMS"], disp: json["DISP"], ats: json["ATS"], addwxnotam: json["ADDWXNOTAM"], firnotam: json["FIRNOTAM"], wxnotam: json["WXNOTAM"], advaa: json["ADVAA"], wxsatwx: json["WXSATWX"], admtrtaf: json["ADMTRTAF"], notam: json["NOTAM"], sigwxroute: json["SIGWXROUTE"], adsigmets: json["ADSIGMETS"], radar: json["RADAR"], adwxsatwx: json["ADWXSATWX"], abd: json["ABD"], ofp: json["OFP"], vaatca: json["VAATCA"], tlr: json["TLR"], dismap: json["DISMAP"], crewinfo: json["CREWINFO"], arptnotam: json["ARPTNOTAM"], adwxsigwx: json["ADWXSIGWX"], wxsigwx: json["WXSIGWX"], sfc: json["SFC"], ); } Map toJson() => { "RAIM": raim, "CDA": cda, "VERTPROF": vertprof, "IWFR": iwfr, "UAD": uad, "DMS": dms, "DISP": disp, "ATS": ats, "ADDWXNOTAM": addwxnotam, "FIRNOTAM": firnotam, "WXNOTAM": wxnotam, "ADVAA": advaa, "WXSATWX": wxsatwx, "ADMTRTAF": admtrtaf, "NOTAM": notam, "SIGWXROUTE": sigwxroute, "ADSIGMETS": adsigmets, "RADAR": radar, "ADWXSATWX": adwxsatwx, "ABD": abd, "OFP": ofp, "VAATCA": vaatca, "TLR": tlr, "DISMAP": dismap, "CREWINFO": crewinfo, "ARPTNOTAM": arptnotam, "ADWXSIGWX": adwxsigwx, "WXSIGWX": wxsigwx, "SFC": sfc, }; @override String toString() { return "$raim, $cda, $vertprof, $iwfr, $uad, $dms, $disp, $ats, $addwxnotam, $firnotam, $wxnotam, $advaa, $wxsatwx, $admtrtaf, $notam, $sigwxroute, $adsigmets, $radar, $adwxsatwx, $abd, $ofp, $vaatca, $tlr, $dismap, $crewinfo, $arptnotam, $adwxsigwx, $wxsigwx, $sfc, "; } }