hunk.code_window: }
   dependencies {
       expendency 'expo-core'
       expendency 'expo-permissions-interface'
       implementation 'com.android.support:appcompat-v7:26.1.0'
   }
hunk.labels: keep keep keep keep keep replace keep
hunk.after_edit:     implementation 'com.android.support:appcompat-v7:27.1.1'
  
hunk.file_path: packages/expo-permissions/android/build.gradle
hunk.type: replace
file: //
  //  ABI25_0_0AIRUrlTileOverlay.m
  //  AirMaps
  //
  //  Created by cascadian on 3/19/16.
  //  Copyright © 2016. All rights reserved.
  //
  
  #import "ABI25_0_0AIRMapUrlTile.h"
  #import <ReactABI25_0_0/UIView+ReactABI25_0_0.h>
  
  @implementation ABI25_0_0AIRMapUrlTile {
      BOOL _urlTemplateSet;
  }
  
  
  - (void)setUrlTemplate:(NSString *)urlTemplate{
      _urlTemplate = urlTemplate;
      _urlTemplateSet = YES;
      [self createTileOverlayAndRendererIfPossible];
      [self update];
  }
  
  - (void) createTileOverlayAndRendererIfPossible
  {
      if (!_urlTemplateSet) return;
      self.tileOverlay = [[MKTileOverlay alloc] initWithURLTemplate:self.urlTemplate];
      self.tileOverlay.canReplaceMapContent = YES;
      self.renderer = [[MKTileOverlayRenderer alloc] initWithTileOverlay:self.tileOverlay];
  }
  
  - (void) update
  {
      if (!_renderer) return;
      
      if (_map == nil) return;
      [_map removeOverlay:self];
      [_map addOverlay:self level:MKOverlayLevelAboveLabels];
  }
  
  #pragma mark MKOverlay implementation
  
  - (CLLocationCoordinate2D) coordinate
  {
      return self.tileOverlay.coordinate;
  }
  
  - (MKMapRect) boundingMapRect
  {
      return self.tileOverlay.boundingMapRect;
  }
  
  - (BOOL)canReplaceMapContent
  {
      return self.tileOverlay.canReplaceMapContent;
  }
  
  @end
  