ProductAttributes.fromJson constructor

ProductAttributes.fromJson(
  1. Map json_
)

Implementation

ProductAttributes.fromJson(core.Map json_)
  : this(
      additionalImageLinks: (json_['additionalImageLinks'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      adsGrouping: json_['adsGrouping'] as core.String?,
      adsLabels: (json_['adsLabels'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      adsRedirect: json_['adsRedirect'] as core.String?,
      adult: json_['adult'] as core.bool?,
      ageGroup: json_['ageGroup'] as core.String?,
      amenityFeature: (json_['amenityFeature'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      autoPricingMinPrice: json_.containsKey('autoPricingMinPrice')
          ? Price.fromJson(
              json_['autoPricingMinPrice']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      availability: json_['availability'] as core.String?,
      availabilityDate: json_['availabilityDate'] as core.String?,
      bodyStyle: json_['bodyStyle'] as core.String?,
      brand: json_['brand'] as core.String?,
      canonicalLink: json_['canonicalLink'] as core.String?,
      carrierShipping: (json_['carrierShipping'] as core.List?)
          ?.map(
            (value) => CarrierShipping.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      certifications: (json_['certifications'] as core.List?)
          ?.map(
            (value) => ProductCertification.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      certifiedPreOwned: json_['certifiedPreOwned'] as core.bool?,
      cloudExportAdditionalProperties:
          (json_['cloudExportAdditionalProperties'] as core.List?)
              ?.map(
                (value) => CloudExportAdditionalProperties.fromJson(
                  value as core.Map<core.String, core.dynamic>,
                ),
              )
              .toList(),
      co2Emissions: json_.containsKey('co2Emissions')
          ? Co2Emissions.fromJson(
              json_['co2Emissions'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      color: json_['color'] as core.String?,
      condition: json_['condition'] as core.String?,
      costOfGoodsSold: json_.containsKey('costOfGoodsSold')
          ? Price.fromJson(
              json_['costOfGoodsSold'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      customLabel0: json_['customLabel0'] as core.String?,
      customLabel1: json_['customLabel1'] as core.String?,
      customLabel2: json_['customLabel2'] as core.String?,
      customLabel3: json_['customLabel3'] as core.String?,
      customLabel4: json_['customLabel4'] as core.String?,
      dateFirstRegistered: json_['dateFirstRegistered'] as core.String?,
      description: json_['description'] as core.String?,
      disclosureDate: json_['disclosureDate'] as core.String?,
      displayAddress: json_.containsKey('displayAddress')
          ? DisplayAddress.fromJson(
              json_['displayAddress'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      displayAdsId: json_['displayAdsId'] as core.String?,
      displayAdsLink: json_['displayAdsLink'] as core.String?,
      displayAdsSimilarIds: (json_['displayAdsSimilarIds'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      displayAdsTitle: json_['displayAdsTitle'] as core.String?,
      displayAdsValue: (json_['displayAdsValue'] as core.num?)?.toDouble(),
      documentLinks: (json_['documentLinks'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      electricRange: json_.containsKey('electricRange')
          ? Mileage.fromJson(
              json_['electricRange'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      emissionsStandard: json_['emissionsStandard'] as core.String?,
      energyConsumption: json_.containsKey('energyConsumption')
          ? EnergyConsumption.fromJson(
              json_['energyConsumption']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      energyEfficiencyClass: json_['energyEfficiencyClass'] as core.String?,
      engine: json_['engine'] as core.String?,
      excludedDestinations: (json_['excludedDestinations'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      expirationDate: json_['expirationDate'] as core.String?,
      externalSellerId: json_['externalSellerId'] as core.String?,
      freeShippingThreshold: (json_['freeShippingThreshold'] as core.List?)
          ?.map(
            (value) => FreeShippingThreshold.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      fuelConsumption: json_.containsKey('fuelConsumption')
          ? FuelConsumption.fromJson(
              json_['fuelConsumption'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      fuelConsumptionDischargedBattery:
          json_.containsKey('fuelConsumptionDischargedBattery')
          ? FuelConsumption.fromJson(
              json_['fuelConsumptionDischargedBattery']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      gender: json_['gender'] as core.String?,
      googleProductCategory: json_['googleProductCategory'] as core.String?,
      gtins: (json_['gtins'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      handlingCutoffTimes: (json_['handlingCutoffTimes'] as core.List?)
          ?.map(
            (value) => HandlingCutoffTime.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      identifierExists: json_['identifierExists'] as core.bool?,
      imageLink: json_['imageLink'] as core.String?,
      includedDestinations: (json_['includedDestinations'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      installment: json_.containsKey('installment')
          ? ProductInstallment.fromJson(
              json_['installment'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      isBundle: json_['isBundle'] as core.bool?,
      itemGroupId: json_['itemGroupId'] as core.String?,
      itemGroupTitle: json_['itemGroupTitle'] as core.String?,
      latitude: (json_['latitude'] as core.num?)?.toDouble(),
      leaseTerm: json_.containsKey('leaseTerm')
          ? LeaseTerm.fromJson(
              json_['leaseTerm'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      lifestyleImageLinks: (json_['lifestyleImageLinks'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      link: json_['link'] as core.String?,
      linkTemplate: json_['linkTemplate'] as core.String?,
      longitude: (json_['longitude'] as core.num?)?.toDouble(),
      loyaltyPoints: json_.containsKey('loyaltyPoints')
          ? LoyaltyPoints.fromJson(
              json_['loyaltyPoints'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      loyaltyPrograms: (json_['loyaltyPrograms'] as core.List?)
          ?.map(
            (value) => LoyaltyProgram.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      material: json_['material'] as core.String?,
      maxEnergyEfficiencyClass:
          json_['maxEnergyEfficiencyClass'] as core.String?,
      maxHandlingTime: json_['maxHandlingTime'] as core.String?,
      maximumRetailPrice: json_.containsKey('maximumRetailPrice')
          ? Price.fromJson(
              json_['maximumRetailPrice']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      mileage: json_.containsKey('mileage')
          ? Mileage.fromJson(
              json_['mileage'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      minEnergyEfficiencyClass:
          json_['minEnergyEfficiencyClass'] as core.String?,
      minHandlingTime: json_['minHandlingTime'] as core.String?,
      minimumOrderValues: (json_['minimumOrderValues'] as core.List?)
          ?.map(
            (value) => ProductMinimumOrderValue.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      mobileLink: json_['mobileLink'] as core.String?,
      mobileLinkTemplate: json_['mobileLinkTemplate'] as core.String?,
      model: json_['model'] as core.String?,
      mpn: json_['mpn'] as core.String?,
      multipack: json_['multipack'] as core.String?,
      neighborhood: json_['neighborhood'] as core.String?,
      numberOfBathrooms: (json_['numberOfBathrooms'] as core.num?)
          ?.toDouble(),
      numberOfBedrooms: (json_['numberOfBedrooms'] as core.num?)?.toDouble(),
      numberOfUnits: json_['numberOfUnits'] as core.String?,
      pattern: json_['pattern'] as core.String?,
      pause: json_['pause'] as core.String?,
      petPolicy: json_.containsKey('petPolicy')
          ? PetPolicy.fromJson(
              json_['petPolicy'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      pickupCost: json_.containsKey('pickupCost')
          ? PickupCost.fromJson(
              json_['pickupCost'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      pickupMethod: json_['pickupMethod'] as core.String?,
      pickupSla: json_['pickupSla'] as core.String?,
      popularityRank: (json_['popularityRank'] as core.num?)?.toDouble(),
      price: json_.containsKey('price')
          ? Price.fromJson(
              json_['price'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      productDetails: (json_['productDetails'] as core.List?)
          ?.map(
            (value) => ProductDetail.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      productFee: (json_['productFee'] as core.List?)
          ?.map(
            (value) => ProductFee.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      productHeight: json_.containsKey('productHeight')
          ? ProductDimension.fromJson(
              json_['productHeight'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      productHighlights: (json_['productHighlights'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      productLength: json_.containsKey('productLength')
          ? ProductDimension.fromJson(
              json_['productLength'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      productTypes: (json_['productTypes'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      productWeight: json_.containsKey('productWeight')
          ? ProductWeight.fromJson(
              json_['productWeight'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      productWidth: json_.containsKey('productWidth')
          ? ProductDimension.fromJson(
              json_['productWidth'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      promotionIds: (json_['promotionIds'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      propertyName: json_['propertyName'] as core.String?,
      propertyType: json_['propertyType'] as core.String?,
      questionsAndAnswers: (json_['questionsAndAnswers'] as core.List?)
          ?.map(
            (value) => QuestionAndAnswer.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      relatedProducts: (json_['relatedProducts'] as core.List?)
          ?.map(
            (value) => RelatedProduct.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      returnPolicyLabel: json_['returnPolicyLabel'] as core.String?,
      returns: (json_['returns'] as core.List?)
          ?.map(
            (value) => Returns.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      salePrice: json_.containsKey('salePrice')
          ? Price.fromJson(
              json_['salePrice'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      salePriceEffectiveDate: json_.containsKey('salePriceEffectiveDate')
          ? Interval.fromJson(
              json_['salePriceEffectiveDate']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      sellOnGoogleQuantity: json_['sellOnGoogleQuantity'] as core.String?,
      shipping: (json_['shipping'] as core.List?)
          ?.map(
            (value) => Shipping.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      shippingHandlingBusinessDays:
          (json_['shippingHandlingBusinessDays'] as core.List?)
              ?.map(
                (value) => ShippingBusinessDaysConfig.fromJson(
                  value as core.Map<core.String, core.dynamic>,
                ),
              )
              .toList(),
      shippingHeight: json_.containsKey('shippingHeight')
          ? ShippingDimension.fromJson(
              json_['shippingHeight'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      shippingLabel: json_['shippingLabel'] as core.String?,
      shippingLength: json_.containsKey('shippingLength')
          ? ShippingDimension.fromJson(
              json_['shippingLength'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      shippingTransitBusinessDays:
          (json_['shippingTransitBusinessDays'] as core.List?)
              ?.map(
                (value) => ShippingBusinessDaysConfig.fromJson(
                  value as core.Map<core.String, core.dynamic>,
                ),
              )
              .toList(),
      shippingWeight: json_.containsKey('shippingWeight')
          ? ShippingWeight.fromJson(
              json_['shippingWeight'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      shippingWidth: json_.containsKey('shippingWidth')
          ? ShippingDimension.fromJson(
              json_['shippingWidth'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      shoppingAdsExcludedCountries:
          (json_['shoppingAdsExcludedCountries'] as core.List?)
              ?.map((value) => value as core.String)
              .toList(),
      shortTitle: json_['shortTitle'] as core.String?,
      size: json_['size'] as core.String?,
      sizeSystem: json_['sizeSystem'] as core.String?,
      sizeTypes: (json_['sizeTypes'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      specialtyHousingType: json_['specialtyHousingType'] as core.String?,
      structuredDescription: json_.containsKey('structuredDescription')
          ? StructuredDescription.fromJson(
              json_['structuredDescription']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      structuredTitle: json_.containsKey('structuredTitle')
          ? StructuredTitle.fromJson(
              json_['structuredTitle'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      subscriptionCost: json_.containsKey('subscriptionCost')
          ? SubscriptionCost.fromJson(
              json_['subscriptionCost']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      sustainabilityIncentives:
          (json_['sustainabilityIncentives'] as core.List?)
              ?.map(
                (value) => ProductSustainabilityIncentive.fromJson(
                  value as core.Map<core.String, core.dynamic>,
                ),
              )
              .toList(),
      title: json_['title'] as core.String?,
      transitTimeLabel: json_['transitTimeLabel'] as core.String?,
      trim: json_['trim'] as core.String?,
      unitArea: json_.containsKey('unitArea')
          ? UnitArea.fromJson(
              json_['unitArea'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      unitPricingBaseMeasure: json_.containsKey('unitPricingBaseMeasure')
          ? UnitPricingBaseMeasure.fromJson(
              json_['unitPricingBaseMeasure']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      unitPricingMeasure: json_.containsKey('unitPricingMeasure')
          ? UnitPricingMeasure.fromJson(
              json_['unitPricingMeasure']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      utilitiesIncluded: (json_['utilitiesIncluded'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      variantOptions: (json_['variantOptions'] as core.List?)
          ?.map(
            (value) => VariantOption.fromJson(
              value as core.Map<core.String, core.dynamic>,
            ),
          )
          .toList(),
      vehicleAllInPrice: json_.containsKey('vehicleAllInPrice')
          ? Price.fromJson(
              json_['vehicleAllInPrice']
                  as core.Map<core.String, core.dynamic>,
            )
          : null,
      vehicleExpenses: json_.containsKey('vehicleExpenses')
          ? Price.fromJson(
              json_['vehicleExpenses'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      vehicleMandatoryInspectionIncluded:
          json_['vehicleMandatoryInspectionIncluded'] as core.bool?,
      vehicleMsrp: json_.containsKey('vehicleMsrp')
          ? Price.fromJson(
              json_['vehicleMsrp'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      vehiclePriceType: json_['vehiclePriceType'] as core.String?,
      videoLinks: (json_['videoLinks'] as core.List?)
          ?.map((value) => value as core.String)
          .toList(),
      vin: json_['vin'] as core.String?,
      virtualModelLink: json_['virtualModelLink'] as core.String?,
      warranty: json_.containsKey('warranty')
          ? Warranty.fromJson(
              json_['warranty'] as core.Map<core.String, core.dynamic>,
            )
          : null,
      year: json_['year'] as core.String?,
    );