MapShapeSource.memory constructor Null safety

const MapShapeSource.memory(
  1. Uint8List bytes,
  2. {String? shapeDataField,
  3. int dataCount = 0,
  4. IndexedStringValueMapper? primaryValueMapper,
  5. List<MapColorMapper>? shapeColorMappers,
  6. List<MapColorMapper>? bubbleColorMappers,
  7. IndexedStringValueMapper? dataLabelMapper,
  8. IndexedDoubleValueMapper? bubbleSizeMapper,
  9. IndexedColorValueMapper? shapeColorValueMapper,
  10. IndexedColorValueMapper? bubbleColorValueMapper}
)

Creates a layer using the GeoJSON source as bytes from Uint8List.

late MapShapeSource _mapSource;

@override
void initState() {
  _mapSource = MapShapeSource.memory(
    bytes,
    shapeDataField: 'name'
  );
}

@override
Widget build(BuildContext context) {
  return Scaffold(
    appBar: AppBar(
      title: Text('Memory sample'),
    ),
    body: Center(
        child: SfMaps(
      layers: [
        MapShapeLayer(
         source: _mapSource,
          showDataLabels: true,
          color: Colors.orange[100],
        ),
      ],
    )),
  );
}

Implementation

const MapShapeSource.memory(
  Uint8List bytes, {
  this.shapeDataField,
  this.dataCount = 0,
  this.primaryValueMapper,
  this.shapeColorMappers,
  this.bubbleColorMappers,
  this.dataLabelMapper,
  this.bubbleSizeMapper,
  this.shapeColorValueMapper,
  this.bubbleColorValueMapper,
})  : _path = bytes,
      _type = GeoJSONSourceType.memory,
      assert((primaryValueMapper != null && dataCount > 0) ||
          primaryValueMapper == null),
      assert((shapeColorMappers != null &&
              primaryValueMapper != null &&
              shapeColorValueMapper != null) ||
          shapeColorMappers == null),
      assert((bubbleColorMappers != null &&
              primaryValueMapper != null &&
              bubbleColorValueMapper != null) ||
          bubbleColorMappers == null);