urlFromMapBitmap function

String urlFromMapBitmap(
  1. MapBitmap mapBitmap
)

Converts a MapBitmap into a URL.

Implementation

String urlFromMapBitmap(MapBitmap mapBitmap) {
  return switch (mapBitmap) {
    (final BytesMapBitmap bytesMapBitmap) => _bitmapBlobUrlCache.putIfAbsent(
      bytesMapBitmap.byteData.hashCode,
      () {
        final blob = web.Blob(
          <JSUint8Array>[bytesMapBitmap.byteData.toJS].toJS,
        );
        return web.URL.createObjectURL(blob as JSObject);
      },
    ),
    (final AssetMapBitmap assetMapBitmap) => ui_web.assetManager.getAssetUrl(
      assetMapBitmap.assetName,
    ),
    _ => throw UnimplementedError(
      'Only BytesMapBitmap and AssetMapBitmap are supported.',
    ),
  };
}