diff --git a/.github/workflows/ios.yml b/.github/workflows/ios.yml index 8441b3ecf..fa9170d27 100644 --- a/.github/workflows/ios.yml +++ b/.github/workflows/ios.yml @@ -8,41 +8,21 @@ on: jobs: build: - name: Build and Test default scheme using any available iPhone simulator - runs-on: macos-latest + name: Build and Test using Xcode 15.3 on iPhone 15 Pro + runs-on: macos-14 steps: + - name: Configure Xcode 15.3 + run: | + sudo xcode-select -s /Applications/Xcode_15.3.app + - name: Print Xcode Version + run: | + xcode-select --print-path - name: Checkout uses: actions/checkout@v3 - - name: Set Default Scheme - run: | - scheme_list=$(xcodebuild -list -json | tr -d "\n") - default="All Tests" - echo $default | cat >default - echo Using default scheme: $default - - name: "Carthage Bootstrap" - uses: olejnjak/carthage-workaround@v1 - with: - action: bootstrap --platform iOS --use-xcframeworks --cache-builds - name: Build - env: - scheme: ${{ 'default' }} - platform: ${{ 'iOS Simulator' }} run: | - # xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) - device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"` - if [ $scheme = default ]; then scheme=$(cat default); fi - if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi - file_to_build=`echo $file_to_build | awk '{$1=$1;print}'` - xcodebuild build-for-testing -scheme "$scheme" -"$filetype_parameter" "$file_to_build" -destination "platform=$platform,name=$device" + set -o pipefail && xcodebuild build -scheme maplibre-navigation-ios -destination 'platform=iOS Simulator,OS=17.0.1,name=iPhone 15 Pro' | xcbeautify --renderer github-actions - name: Test - env: - scheme: ${{ 'default' }} - platform: ${{ 'iOS Simulator' }} run: | - # xcrun xctrace returns via stderr, not the expected stdout (see https://developer.apple.com/forums/thread/663959) - device=`xcrun xctrace list devices 2>&1 | grep -oE 'iPhone.*?[^\(]+' | head -1 | awk '{$1=$1;print}' | sed -e "s/ Simulator$//"` - if [ $scheme = default ]; then scheme=$(cat default); fi - if [ "`ls -A | grep -i \\.xcworkspace\$`" ]; then filetype_parameter="workspace" && file_to_build="`ls -A | grep -i \\.xcworkspace\$`"; else filetype_parameter="project" && file_to_build="`ls -A | grep -i \\.xcodeproj\$`"; fi - file_to_build=`echo $file_to_build | awk '{$1=$1;print}'` - xcodebuild test-without-building -scheme "$scheme" -"$filetype_parameter" "$file_to_build" -destination "platform=$platform,name=$device" + set -o pipefail && xcodebuild test -scheme maplibre-navigation-ios -destination 'platform=iOS Simulator,OS=17.0.1,name=iPhone 15 Pro' | xcbeautify --renderer github-actions \ No newline at end of file diff --git a/.gitignore b/.gitignore index 6945502d4..72dde1df7 100644 --- a/.gitignore +++ b/.gitignore @@ -1,21 +1,150 @@ -MapboxNavigation.xcworkspace +# Created by https://www.toptal.com/developers/gitignore/api/xcode,swiftpackagemanager,swiftpm,swift,macos,carthage +# Edit at https://www.toptal.com/developers/gitignore?templates=xcode,swiftpackagemanager,swiftpm,swift,macos,carthage +### Carthage ### +# Carthage +# +# Add this line if you want to avoid checking in source code from Carthage dependencies. +# Carthage/Checkouts + +Carthage/Build + +### macOS ### +# General .DS_Store -.idea +.AppleDouble +.LSOverride -xcuserdata +# Icon must end with two \r +Icon + + +# Thumbnails +._* + +# Files that might appear in the root of a volume +.DocumentRevisions-V100 +.fseventsd +.Spotlight-V100 +.TemporaryItems +.Trashes +.VolumeIcon.icns +.com.apple.timemachine.donotpresent + +# Directories potentially created on remote AFP share +.AppleDB +.AppleDesktop +Network Trash Folder +Temporary Items +.apdisk + +### macOS Patch ### +# iCloud generated files +*.icloud + +### Swift ### +# Xcode +# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore + +## User settings +xcuserdata/ + +## compatibility with Xcode 8 and earlier (ignoring not required starting Xcode 9) +*.xcscmblueprint *.xccheckout + +## compatibility with Xcode 3 and earlier (ignoring not required starting Xcode 4) +build/ +DerivedData/ *.moved-aside -*.xcuserstate -*.xcscmblueprint -IDEWorkspaceChecks.plist +*.pbxuser +!default.pbxuser +*.mode1v3 +!default.mode1v3 +*.mode2v3 +!default.mode2v3 +*.perspectivev3 +!default.perspectivev3 -Pods/ +## Obj-C/Swift specific +*.hmap -Carthage/Build -Carthage/Checkouts -/documentation -/build +## App packaging +*.ipa +*.dSYM.zip +*.dSYM + +## Playgrounds +timeline.xctimeline +playground.xcworkspace + +# Swift Package Manager +# Add this line if you want to avoid checking in source code from Swift Package Manager dependencies. +# Packages/ +# Package.pins +# Package.resolved +# *.xcodeproj +# Xcode automatically generates this directory with a .xcworkspacedata file and xcuserdata +# hence it is not needed unless you have added a package configuration file to your project +# .swiftpm + +.build/ + +# CocoaPods +# We recommend against adding the Pods directory to your .gitignore. However +# you should judge for yourself, the pros and cons are mentioned at: +# https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control +# Pods/ +# Add this line if you want to avoid checking in source code from the Xcode workspace +# *.xcworkspace + +# Carthage +# Add this line if you want to avoid checking in source code from Carthage dependencies. +# Carthage/Checkouts + +Carthage/Build/ + +# Accio dependency management +Dependencies/ +.accio/ + +# fastlane +# It is recommended to not store the screenshots in the git repo. +# Instead, use fastlane to re-generate the screenshots whenever they are needed. +# For more information about the recommended setup visit: +# https://docs.fastlane.tools/best-practices/source-control/#source-control + +fastlane/report.xml +fastlane/Preview.html +fastlane/screenshots/**/*.png +fastlane/test_output + +# Code Injection +# After new code Injection tools there's a generated folder /iOSInjectionProject +# https://github.com/johnno1962/injectionforxcode + +iOSInjectionProject/ + +### SwiftPackageManager ### +Packages +xcuserdata +*.xcodeproj + + +### SwiftPM ### + + +### Xcode ### + +## Xcode 8 and earlier +### Xcode Patch ### +*.xcodeproj/* +!*.xcodeproj/project.pbxproj +!*.xcodeproj/xcshareddata/ +!*.xcodeproj/project.xcworkspace/ +!*.xcworkspace/contents.xcworkspacedata +/*.gcno +**/xcshareddata/WorkspaceSettings.xcsettings -Examples/Swift/Navigation_Example.mobileprovision \ No newline at end of file +# End of https://www.toptal.com/developers/gitignore/api/xcode,swiftpackagemanager,swiftpm,swift,macos,carthage \ No newline at end of file diff --git a/.swift-version b/.swift-version index 5186d0706..95ee81a41 100644 --- a/.swift-version +++ b/.swift-version @@ -1 +1 @@ -4.0 +5.9 diff --git a/MapboxNavigation.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata similarity index 100% rename from MapboxNavigation.xcodeproj/project.xcworkspace/contents.xcworkspacedata rename to .swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/MapboxCoreNavigation.xcscheme b/.swiftpm/xcode/xcshareddata/xcschemes/maplibre-navigation-ios.xcscheme similarity index 54% rename from MapboxNavigation.xcodeproj/xcshareddata/xcschemes/MapboxCoreNavigation.xcscheme rename to .swiftpm/xcode/xcshareddata/xcschemes/maplibre-navigation-ios.xcscheme index d070e0a18..8a565c94d 100644 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/MapboxCoreNavigation.xcscheme +++ b/.swiftpm/xcode/xcshareddata/xcschemes/maplibre-navigation-ios.xcscheme @@ -1,7 +1,7 @@ + LastUpgradeVersion = "1520" + version = "1.7"> @@ -14,10 +14,24 @@ buildForAnalyzing = "YES"> + BlueprintIdentifier = "MapboxNavigation" + BuildableName = "MapboxNavigation" + BlueprintName = "MapboxNavigation" + ReferencedContainer = "container:"> + + + + @@ -26,31 +40,28 @@ buildConfiguration = "Debug" selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB" selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB" - shouldUseLaunchSchemeArgsEnv = "YES"> - - - - + shouldUseLaunchSchemeArgsEnv = "YES" + shouldAutocreateTestPlan = "YES"> + ReferencedContainer = "container:"> + + + + - - - - @@ -64,15 +75,6 @@ debugDocumentVersioning = "YES" debugServiceExtension = "internal" allowLocationSimulation = "YES"> - - - - + BlueprintIdentifier = "MapboxNavigation" + BuildableName = "MapboxNavigation" + BlueprintName = "MapboxNavigation" + ReferencedContainer = "container:"> diff --git a/CHANGELOG.md b/CHANGELOG.md index 15c014c24..e99120c20 100644 --- a/CHANGELOG.md +++ b/CHANGELOG.md @@ -11,6 +11,7 @@ - Remove MapboxVoiceController and Mapbox Speech dependency. If you would like to use MapboxSpeech, you can copy the deleted MapboxVoiceController into your project. - Updated MapLibre Native dependency to ios-v6.0.0 (https://github.com/maplibre/maplibre-native/releases/tag/ios-v6.0.0). Implementers need to change the prefix MGL to MLN for all MapLibre Native classes that are referenced. - Only snap location to route if the location is within the `RouteControllerUserLocationSnappingDistance` + - Add support for Swift Package Manager while dropping Carthage and Cocoapods. ## v2.0.0 (May 23, 2023) - Upgrade minimum iOS version from 11.0 to 12.0. diff --git a/Cartfile b/Cartfile deleted file mode 100644 index 59388cfd1..000000000 --- a/Cartfile +++ /dev/null @@ -1,4 +0,0 @@ -github "mapbox/MapboxGeocoder.swift" ~> 0.15 -github "flitsmeister/Mapbox-directions-swift" "v0.23.1" -github "flitsmeister/turf-swift" "v0.2.2" -github "ceeK/Solar" ~> 3.0.1 diff --git a/Cartfile.private b/Cartfile.private deleted file mode 100644 index 1c16eaa9a..000000000 --- a/Cartfile.private +++ /dev/null @@ -1,3 +0,0 @@ -github "uber/ios-snapshot-test-case" ~> 8.0.0 -github "Quick/Quick" ~> 6.0.0 -github "Quick/Nimble" ~> 12.0.0 \ No newline at end of file diff --git a/Cartfile.resolved b/Cartfile.resolved deleted file mode 100644 index 4b185eef8..000000000 --- a/Cartfile.resolved +++ /dev/null @@ -1,8 +0,0 @@ -github "Quick/Nimble" "v12.3.0" -github "Quick/Quick" "v6.1.0" -github "ceeK/Solar" "3.0.1" -github "flitsmeister/Mapbox-directions-swift" "v0.23.1" -github "flitsmeister/turf-swift" "v0.2.2" -github "mapbox/MapboxGeocoder.swift" "v0.15.0" -github "raphaelmor/Polyline" "v5.1.0" -github "uber/ios-snapshot-test-case" "8.0.0" diff --git a/Examples/Objective-C/AppDelegate.h b/Examples/Objective-C/AppDelegate.h deleted file mode 100644 index 2a9bac67c..000000000 --- a/Examples/Objective-C/AppDelegate.h +++ /dev/null @@ -1,8 +0,0 @@ -#import - -@interface AppDelegate : UIResponder - -@property (strong, nonatomic) UIWindow *window; - -@end - diff --git a/Examples/Objective-C/AppDelegate.m b/Examples/Objective-C/AppDelegate.m deleted file mode 100644 index aa39a97ef..000000000 --- a/Examples/Objective-C/AppDelegate.m +++ /dev/null @@ -1,44 +0,0 @@ -#import "AppDelegate.h" - -@import MapLibre; - -@interface AppDelegate () - -@end - -@implementation AppDelegate - - -- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions { - // Override point for customization after application launch. - return YES; -} - -- (void)applicationWillResignActive:(UIApplication *)application { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. -} - - -- (void)applicationDidEnterBackground:(UIApplication *)application { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. -} - - -- (void)applicationWillEnterForeground:(UIApplication *)application { - // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. -} - - -- (void)applicationDidBecomeActive:(UIApplication *)application { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. -} - - -- (void)applicationWillTerminate:(UIApplication *)application { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. -} - - -@end diff --git a/Examples/Objective-C/Assets.xcassets/AppIcon.appiconset/Contents.json b/Examples/Objective-C/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index d8db8d65f..000000000 --- a/Examples/Objective-C/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,98 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "20x20", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "20x20", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "83.5x83.5", - "scale" : "2x" - }, - { - "idiom" : "ios-marketing", - "size" : "1024x1024", - "scale" : "1x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Examples/Objective-C/Base.lproj/LaunchScreen.storyboard b/Examples/Objective-C/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index fdf3f97d1..000000000 --- a/Examples/Objective-C/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/Objective-C/Base.lproj/Main.storyboard b/Examples/Objective-C/Base.lproj/Main.storyboard deleted file mode 100644 index 9953289b6..000000000 --- a/Examples/Objective-C/Base.lproj/Main.storyboard +++ /dev/null @@ -1,102 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/Objective-C/Info.plist b/Examples/Objective-C/Info.plist deleted file mode 100644 index 0d7581421..000000000 --- a/Examples/Objective-C/Info.plist +++ /dev/null @@ -1,60 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - LSApplicationCategoryType - - LSRequiresIPhoneOS - - MGLMapboxAccessToken - PASTE MAPBOX ACCESS TOKEN HERE - NSLocationAlwaysUsageDescription - Get user location - NSLocationWhenInUseUsageDescription - Get user location - UIBackgroundModes - - audio - location - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - - diff --git a/Examples/Objective-C/ViewController.h b/Examples/Objective-C/ViewController.h deleted file mode 100644 index 9c7dfc57e..000000000 --- a/Examples/Objective-C/ViewController.h +++ /dev/null @@ -1,6 +0,0 @@ -#import - -@interface ViewController : UIViewController - -@end - diff --git a/Examples/Objective-C/ViewController.m b/Examples/Objective-C/ViewController.m deleted file mode 100644 index bd54baa08..000000000 --- a/Examples/Objective-C/ViewController.m +++ /dev/null @@ -1,137 +0,0 @@ -#import "ViewController.h" - -@import AVFoundation; -@import MapboxCoreNavigation; -@import MapboxDirections; -@import MapboxNavigation; -@import MapLibre; - -@interface ViewController () -@property (nonatomic, weak) IBOutlet MLNMapView *mapView; -@property (weak, nonatomic) IBOutlet UIButton *toggleNavigationButton; -@property (weak, nonatomic) IBOutlet UILabel *howToBeginLabel; -@property (nonatomic, assign) CLLocationCoordinate2D destination; -@property (nonatomic) MBDirections *directions; -@property (nonatomic) MBRoute *route; -@property (nonatomic) MBRouteController *navigation; -@property (nonatomic) NSLengthFormatter *lengthFormatter; -@end - -@implementation ViewController - -- (void)viewDidLoad { - [super viewDidLoad]; - // Do any additional setup after loading the view, typically from a nib. - self.mapView.userTrackingMode = MLNUserTrackingModeFollow; - - self.lengthFormatter = [[NSLengthFormatter alloc] init]; - self.lengthFormatter.unitStyle = NSFormattingUnitStyleShort; - - [self resumeNotifications]; -} -- (void)viewDidAppear:(BOOL)animated { - [self.navigation resume]; - [super viewDidAppear:animated]; -} - -- (void)viewDidDisappear:(BOOL)animated { - [super viewDidDisappear:animated]; - - [self suspendNotifications]; - [self.navigation suspendLocationUpdates]; -} - -- (IBAction)didLongPress:(UILongPressGestureRecognizer *)sender { - if (sender.state != UIGestureRecognizerStateBegan) { - return; - } - - CGPoint point = [sender locationInView:self.mapView]; - self.destination = [self.mapView convertPoint:point toCoordinateFromView:self.mapView]; - [self getRoute]; -} - -- (void)resumeNotifications { - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(progressDidChange:) name:MBRouteControllerProgressDidChangeNotification object:_navigation]; - [[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(willReroute:) name:MBRouteControllerWillRerouteNotification object:_navigation]; -} - -- (void)suspendNotifications { - [[NSNotificationCenter defaultCenter] removeObserver:self name:MBRouteControllerProgressDidChangeNotification object:_navigation]; - [[NSNotificationCenter defaultCenter] removeObserver:self name:MBRouteControllerWillRerouteNotification object:_navigation]; -} - -- (void)progressDidChange:(NSNotification *)notification { - // If you are using MapboxCoreNavigation, - // this would be a good time to update UI elements. - // You can grab the current routeProgress like: - // let routeProgress = notification.userInfo![RouteControllerRouteProgressKey] as! RouteProgress -} - -- (void)willReroute:(NSNotification *)notification { - [self getRoute]; -} - -- (void)getRoute { - NSArray *waypoints = @[[[MBWaypoint alloc] initWithCoordinate:self.mapView.userLocation.coordinate coordinateAccuracy:-1 name:nil], - [[MBWaypoint alloc] initWithCoordinate:self.destination coordinateAccuracy:-1 name:nil]]; - - MBNavigationRouteOptions *options = [[MBNavigationRouteOptions alloc] initWithWaypoints:waypoints profileIdentifier:MBDirectionsProfileIdentifierAutomobileAvoidingTraffic]; - options.includesSteps = YES; - options.routeShapeResolution = MBRouteShapeResolutionFull; - - NSURLSessionDataTask *task = [[MBDirections sharedDirections] calculateDirectionsWithOptions:options completionHandler:^(NSArray * _Nullable waypoints, NSArray * _Nullable routes, NSError * _Nullable error) { - - if (!routes.firstObject) { - return; - } - - if (self.mapView.annotations) { - [self.mapView removeAnnotations:self.mapView.annotations]; - } - - MBRoute *route = routes.firstObject; - CLLocationCoordinate2D *routeCoordinates = malloc(route.coordinateCount * sizeof(CLLocationCoordinate2D)); - [route getCoordinates:routeCoordinates]; - - MLNPolyline *polyline = [MLNPolyline polylineWithCoordinates:routeCoordinates count:route.coordinateCount]; - - [self.mapView addAnnotation:polyline]; - [self.mapView setVisibleCoordinates:routeCoordinates count:route.coordinateCount edgePadding:UIEdgeInsetsZero animated:YES]; - - free(routeCoordinates); - - self.route = route; - - [self startNavigation:route]; - }]; - - [task resume]; -} - --(void)prepareForSegue:(UIStoryboardSegue *)segue sender:(id)sender { - if ([segue.identifier isEqualToString:@"StartNavigation"]) { - MBNavigationViewController *controller = (MBNavigationViewController *)[segue destinationViewController]; - - controller.directions = [MBDirections sharedDirections]; - controller.route = self.route; - - controller.routeController.locationManager = [[MBSimulatedLocationManager alloc] initWithRoute:self.route]; - } -} - -- (void)startNavigation:(MBRoute *)route { - MBSimulatedLocationManager *locationManager = [[MBSimulatedLocationManager alloc] initWithRoute:route]; - MBNavigationViewController *controller = [[MBNavigationViewController alloc] initWithRoute:route - directions:[MBDirections sharedDirections] - styles:nil - routeController:nil - locationManager:locationManager - voiceController:nil]; - [self presentViewController:controller animated:YES completion:nil]; - - // Suspend notifications and let `MBNavigationViewController` handle all progress and voice updates. - [self suspendNotifications]; -} - -@end diff --git a/Examples/Objective-C/ar.lproj/Main.strings b/Examples/Objective-C/ar.lproj/Main.strings deleted file mode 100644 index c55f8ed99..000000000 --- a/Examples/Objective-C/ar.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "ابدأ التنقل"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "انقر على الخريطة مطولا لاختيار طريق"; diff --git a/Examples/Objective-C/bg.lproj/Main.strings b/Examples/Objective-C/bg.lproj/Main.strings deleted file mode 100644 index 1804fb846..000000000 --- a/Examples/Objective-C/bg.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Старт навигация"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Задръж върху картата за избор на маршрут"; diff --git a/Examples/Objective-C/ca.lproj/Main.strings b/Examples/Objective-C/ca.lproj/Main.strings deleted file mode 100644 index 4a5caacfc..000000000 --- a/Examples/Objective-C/ca.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Inicia la navegació"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Per escollir una ruta prem el mapa una estona"; diff --git a/Examples/Objective-C/da.lproj/Main.strings b/Examples/Objective-C/da.lproj/Main.strings deleted file mode 100644 index b236c0ff3..000000000 --- a/Examples/Objective-C/da.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Start navigation"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Tryk og hold for at vælge en rute"; diff --git a/Examples/Objective-C/de.lproj/Main.strings b/Examples/Objective-C/de.lproj/Main.strings deleted file mode 100644 index 256c4cb66..000000000 --- a/Examples/Objective-C/de.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Navigation starten"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Lange auf die Karte drücken, um eine Route auszuwählen"; diff --git a/Examples/Objective-C/en.lproj/Main.strings b/Examples/Objective-C/en.lproj/Main.strings deleted file mode 100644 index 754bbf2d6..000000000 --- a/Examples/Objective-C/en.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Start Navigation"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Long press map to select a route"; diff --git a/Examples/Objective-C/es.lproj/Main.strings b/Examples/Objective-C/es.lproj/Main.strings deleted file mode 100644 index 2ae7ea4c4..000000000 --- a/Examples/Objective-C/es.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Empezar navegación"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Pulsar prolongadamente el mapa para elegir una ruta"; diff --git a/Examples/Objective-C/fa.lproj/Main.strings b/Examples/Objective-C/fa.lproj/Main.strings deleted file mode 100644 index 9caf2a107..000000000 --- a/Examples/Objective-C/fa.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "شروع جهت یابی"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "برای اتنخاب مسیر کلید را نگه دارید"; diff --git a/Examples/Objective-C/fr.lproj/Main.strings b/Examples/Objective-C/fr.lproj/Main.strings deleted file mode 100644 index 8264b77a7..000000000 --- a/Examples/Objective-C/fr.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Démarrer la navigation"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Faire un appui long sur la carte pour sélectionner un itinéraire"; diff --git a/Examples/Objective-C/he.lproj/Main.strings b/Examples/Objective-C/he.lproj/Main.strings deleted file mode 100644 index f9bc4ef04..000000000 --- a/Examples/Objective-C/he.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "התחל ניווט"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "לחץ לחיצה ארוכה על המפה כדי לבחור מסלול"; diff --git a/Examples/Objective-C/hu.lproj/Main.strings b/Examples/Objective-C/hu.lproj/Main.strings deleted file mode 100644 index 85a6c40c8..000000000 --- a/Examples/Objective-C/hu.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Navigáció indítása"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Nyomj hosszan a térképre egy útvonal kiválasztásához"; diff --git a/Examples/Objective-C/it.lproj/Main.strings b/Examples/Objective-C/it.lproj/Main.strings deleted file mode 100644 index 8a0799d47..000000000 --- a/Examples/Objective-C/it.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Avvia navigazione"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Mantieni premuto per selezionare un percorso"; diff --git a/Examples/Objective-C/lt.lproj/Main.strings b/Examples/Objective-C/lt.lproj/Main.strings deleted file mode 100644 index 2df18f401..000000000 --- a/Examples/Objective-C/lt.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Pradėti navigaciją"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Ilgai paspauskite ant žemėlapio maršruto pasirinkimui."; diff --git a/Examples/Objective-C/main.m b/Examples/Objective-C/main.m deleted file mode 100644 index 81e84cbb7..000000000 --- a/Examples/Objective-C/main.m +++ /dev/null @@ -1,8 +0,0 @@ -#import -#import "AppDelegate.h" - -int main(int argc, char * argv[]) { - @autoreleasepool { - return UIApplicationMain(argc, argv, nil, NSStringFromClass([AppDelegate class])); - } -} diff --git a/Examples/Objective-C/nl.lproj/Main.strings b/Examples/Objective-C/nl.lproj/Main.strings deleted file mode 100644 index 55a85491f..000000000 --- a/Examples/Objective-C/nl.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Navigatie beginnen"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Tik lang op de map om een route te selecteren"; diff --git a/Examples/Objective-C/pt-BR.lproj/Main.strings b/Examples/Objective-C/pt-BR.lproj/Main.strings deleted file mode 100644 index aab61a5cb..000000000 --- a/Examples/Objective-C/pt-BR.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Começar Navegação"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Toque e segure no mapa para selecionar uma rota "; diff --git a/Examples/Objective-C/pt-PT.lproj/Main.strings b/Examples/Objective-C/pt-PT.lproj/Main.strings deleted file mode 100644 index ddb612e9d..000000000 --- a/Examples/Objective-C/pt-PT.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Iniciar Navegação"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Pressão longa no mapa para selecionar um percurso"; diff --git a/Examples/Objective-C/ru.lproj/Main.strings b/Examples/Objective-C/ru.lproj/Main.strings deleted file mode 100644 index 40ff22ec8..000000000 --- a/Examples/Objective-C/ru.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Начать"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Нажмите и удерживайте на карте, чтобы выбрать маршрут"; diff --git a/Examples/Objective-C/sl.lproj/Main.strings b/Examples/Objective-C/sl.lproj/Main.strings deleted file mode 100644 index fce579877..000000000 --- a/Examples/Objective-C/sl.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Začni navigacijo"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Tapni zemljevid in zadrži za izbiro poti"; diff --git a/Examples/Objective-C/sv.lproj/Main.strings b/Examples/Objective-C/sv.lproj/Main.strings deleted file mode 100644 index b654ce9f3..000000000 --- a/Examples/Objective-C/sv.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Navigera"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Tryck på kartan för att välja rutt"; diff --git a/Examples/Objective-C/uk.lproj/Main.strings b/Examples/Objective-C/uk.lproj/Main.strings deleted file mode 100644 index 984a7304d..000000000 --- a/Examples/Objective-C/uk.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Розпочати навігацію"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Довге натискання на мапі для вибору маршрута"; diff --git a/Examples/Objective-C/vi.lproj/Main.strings b/Examples/Objective-C/vi.lproj/Main.strings deleted file mode 100644 index 4f736be1a..000000000 --- a/Examples/Objective-C/vi.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Bắt đầu Điều hướng"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Chạm lâu vào bản đồ để chọn tuyến đường"; diff --git a/Examples/Objective-C/zh-Hans.lproj/Main.strings b/Examples/Objective-C/zh-Hans.lproj/Main.strings deleted file mode 100644 index 754bbf2d6..000000000 --- a/Examples/Objective-C/zh-Hans.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Start Navigation"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Long press map to select a route"; diff --git a/Examples/Objective-C/zh-Hant.lproj/Main.strings b/Examples/Objective-C/zh-Hant.lproj/Main.strings deleted file mode 100644 index a0162d704..000000000 --- a/Examples/Objective-C/zh-Hant.lproj/Main.strings +++ /dev/null @@ -1,6 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "開始導航"; - -/* Class = "UILabel"; text = "Long press map to select a route"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "長按地圖選取路徑"; diff --git a/Examples/Objective-CTests/Example_Objective_CTests.m b/Examples/Objective-CTests/Example_Objective_CTests.m deleted file mode 100644 index 3017c88ce..000000000 --- a/Examples/Objective-CTests/Example_Objective_CTests.m +++ /dev/null @@ -1,31 +0,0 @@ -#import - -@interface Example_Objective_CTests : XCTestCase - -@end - -@implementation Example_Objective_CTests - -- (void)setUp { - [super setUp]; - // Put setup code here. This method is called before the invocation of each test method in the class. -} - -- (void)tearDown { - // Put teardown code here. This method is called after the invocation of each test method in the class. - [super tearDown]; -} - -- (void)testExample { - // This is an example of a functional test case. - // Use XCTAssert and related functions to verify your tests produce the correct results. -} - -- (void)testPerformanceExample { - // This is an example of a performance test case. - [self measureBlock:^{ - // Put the code you want to measure the time of here. - }]; -} - -@end diff --git a/Examples/Objective-CTests/Info.plist b/Examples/Objective-CTests/Info.plist deleted file mode 100644 index eab933fcb..000000000 --- a/Examples/Objective-CTests/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0.6 - CFBundleVersion - 34 - - diff --git a/Examples/Swift/AppDelegate+CarPlay.swift b/Examples/Swift/AppDelegate+CarPlay.swift deleted file mode 100644 index fa2095e4e..000000000 --- a/Examples/Swift/AppDelegate+CarPlay.swift +++ /dev/null @@ -1,113 +0,0 @@ -import UIKit -import MapboxNavigation -#if canImport(CarPlay) -import CarPlay -import MapboxCoreNavigation -import MapboxDirections - - -/** - This example application delegate implementation is used in both our "Example-Swift" and our "Example-CarPlay" example apps. - - In order to run the "Example-CarPlay" example app with CarPlay functionality enabled, one must first obtain a CarPlay entitlement from Apple. - - Once the entitlement has been obtained and loaded into your ADC account: - - Create a provisioning profile which includes the entitlement - - Download and select the provisioning profile for the "Example-CarPlay" example app - - Be sure to select an iOS simulator or device running iOS 12 or greater - */ -@available(iOS 12.0, *) -extension AppDelegate: CPApplicationDelegate { - - // MARK: CPApplicationDelegate - - func application(_ application: UIApplication, didConnectCarInterfaceController interfaceController: CPInterfaceController, to window: CPWindow) { - CarPlayManager.shared.delegate = self - CarPlayManager.shared.application(application, didConnectCarInterfaceController: interfaceController, to: window) - } - - func application(_ application: UIApplication, didDisconnectCarInterfaceController interfaceController: CPInterfaceController, from window: CPWindow) { - CarPlayManager.shared.delegate = nil - CarPlayManager.shared.application(application, didDisconnectCarInterfaceController: interfaceController, from: window) - } -} - -@available(iOS 12.0, *) -extension AppDelegate: CarPlayManagerDelegate { - - // MARK: CarPlayManagerDelegate - func carPlayManager(_ carPlayManager: CarPlayManager, didBeginNavigationWith routeController: RouteController) { - guard let window = window else { return } - NavigationViewController.carPlayManager(carPlayManager, didBeginNavigationWith:routeController, window: window) - } - - func carPlayManagerDidEndNavigation(_ carPlayManager: CarPlayManager) { - // Dismiss NavigationViewController if it's present in the navigation stack - guard let window = window else { return } - NavigationViewController.carPlayManagerDidEndNavigation(carPlayManager, window: window) - } - - func favoritesListTemplate() -> CPListTemplate { - let mapboxSFItem = CPListItem(text: FavoritesList.POI.mapboxSF.rawValue, - detailText: FavoritesList.POI.mapboxSF.subTitle) - let timesSquareItem = CPListItem(text: FavoritesList.POI.timesSquare.rawValue, - detailText: FavoritesList.POI.timesSquare.subTitle) - mapboxSFItem.userInfo = [CarPlayManager.CarPlayWaypointKey: Waypoint(location: FavoritesList.POI.mapboxSF.location)] - timesSquareItem.userInfo = [CarPlayManager.CarPlayWaypointKey: Waypoint(location: FavoritesList.POI.timesSquare.location)] - let listSection = CPListSection(items: [mapboxSFItem, timesSquareItem]) - return CPListTemplate(title: "Favorites List", sections: [listSection]) - } - - func carPlayManager(_ carPlayManager: CarPlayManager, trailingNavigationBarButtonsCompatibleWith traitCollection: UITraitCollection, in template: CPTemplate, for activity: CarPlayActivity) -> [CPBarButton]? { - - switch activity { - case .previewing: - let disableSimulateText = "Disable Simulation" - let enableSimulateText = "Enable Simulation" - let simulationButton = CPBarButton(type: .text) { (barButton) in - carPlayManager.simulatesLocations = !carPlayManager.simulatesLocations - barButton.title = carPlayManager.simulatesLocations ? disableSimulateText : enableSimulateText - } - simulationButton.title = carPlayManager.simulatesLocations ? disableSimulateText : enableSimulateText - return [simulationButton] - case .browsing: - let favoriteTemplateButton = CPBarButton(type: .image) { [weak self] button in - guard let `self` = self else { return } - let listTemplate = self.favoritesListTemplate() - listTemplate.delegate = self - carPlayManager.interfaceController?.pushTemplate(listTemplate, animated: true) - } - favoriteTemplateButton.image = UIImage(named: "carplay_star", in: nil, compatibleWith: traitCollection) - return [favoriteTemplateButton] - case .navigating: - return nil - } - - } - - #if canImport(MapboxGeocoder) - func carPlayManager(_ carPlayManager: CarPlayManager, searchTemplate: CPSearchTemplate, updatedSearchText searchText: String, completionHandler: @escaping ([CPListItem]) -> Void) { - return CarPlayManager.searchTemplate(searchTemplate, updatedSearchText: searchText, completionHandler: completionHandler) - } - - func carPlayManager(_ carPlayManager: CarPlayManager, searchTemplate: CPSearchTemplate, selectedResult item: CPListItem, completionHandler: @escaping () -> Void) { - return CarPlayManager.carPlayManager(searchTemplate, selectedResult: item, completionHandler: completionHandler) - } - #endif -} - -@available(iOS 12.0, *) -extension AppDelegate: CPListTemplateDelegate { - - func listTemplate(_ listTemplate: CPListTemplate, didSelect item: CPListItem, completionHandler: @escaping () -> Void) { - // Selected a favorite - if let userInfo = item.userInfo as? [String: Any], - let waypoint = userInfo[CarPlayManager.CarPlayWaypointKey] as? Waypoint { - CarPlayManager.shared.calculateRouteAndStart(to: waypoint, completionHandler: completionHandler) - return - } - - completionHandler() - } -} -#endif diff --git a/Examples/Swift/AppDelegate.swift b/Examples/Swift/AppDelegate.swift deleted file mode 100644 index 4384e6fca..000000000 --- a/Examples/Swift/AppDelegate.swift +++ /dev/null @@ -1,21 +0,0 @@ -import UIKit -import MapboxNavigation - - -@UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplication.LaunchOptionsKey: Any]?) -> Bool { - - if isRunningTests() { - window!.rootViewController = UIViewController() - } - return true - } - - private func isRunningTests() -> Bool { - return NSClassFromString("XCTestCase") != nil - } -} diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/AppStore.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/AppStore.png deleted file mode 100644 index d1cb5c50f..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/AppStore.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/CarPlay@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/CarPlay@2x.png deleted file mode 100644 index a068a8a29..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/CarPlay@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/CarPlay@3x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/CarPlay@3x.png deleted file mode 100644 index 4139423c7..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/CarPlay@3x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/Contents.json b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index b0628db99..000000000 --- a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,128 +0,0 @@ -{ - "images" : [ - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "iPhone-Notification@2x.png", - "scale" : "2x" - }, - { - "size" : "20x20", - "idiom" : "iphone", - "filename" : "iPhone-Notification@3x.png", - "scale" : "3x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "iPhone@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "iphone", - "filename" : "iPhone@3x.png", - "scale" : "3x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "iPhone-Spotlight.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "iphone", - "filename" : "iPhone-Spotlight@3x.png", - "scale" : "3x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "iPhone-App.png", - "scale" : "2x" - }, - { - "size" : "60x60", - "idiom" : "iphone", - "filename" : "iPhone-App@3x.png", - "scale" : "3x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "iPad-Notifications.png", - "scale" : "1x" - }, - { - "size" : "20x20", - "idiom" : "ipad", - "filename" : "iPad-Notifications@2x.png", - "scale" : "2x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "iPad-Settings.png", - "scale" : "1x" - }, - { - "size" : "29x29", - "idiom" : "ipad", - "filename" : "iPad-Settings@2x.png", - "scale" : "2x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "iPad-Spotlight.png", - "scale" : "1x" - }, - { - "size" : "40x40", - "idiom" : "ipad", - "filename" : "iPad-Spotlight@2x.png", - "scale" : "2x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "iPad-App.png", - "scale" : "1x" - }, - { - "size" : "76x76", - "idiom" : "ipad", - "filename" : "iPad-App@2x.png", - "scale" : "2x" - }, - { - "size" : "83.5x83.5", - "idiom" : "ipad", - "filename" : "iPadPro-App@2x.png", - "scale" : "2x" - }, - { - "size" : "1024x1024", - "idiom" : "ios-marketing", - "filename" : "AppStore.png", - "scale" : "1x" - }, - { - "size" : "60x60", - "idiom" : "car", - "filename" : "CarPlay@2x.png", - "scale" : "2x" - }, - { - "size" : "60x60", - "idiom" : "car", - "filename" : "CarPlay@3x.png", - "scale" : "3x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-App.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-App.png deleted file mode 100644 index 6866ac111..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-App.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-App@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-App@2x.png deleted file mode 100644 index db8f040ca..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-App@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Notifications.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Notifications.png deleted file mode 100644 index 4c3d72fd0..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Notifications.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Notifications@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Notifications@2x.png deleted file mode 100644 index be3a24d13..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Notifications@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Settings.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Settings.png deleted file mode 100644 index 6973929c9..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Settings.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Settings@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Settings@2x.png deleted file mode 100644 index 15544d270..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Settings@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Spotlight.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Spotlight.png deleted file mode 100644 index c69a417af..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Spotlight.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Spotlight@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Spotlight@2x.png deleted file mode 100644 index a15e380f0..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPad-Spotlight@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPadPro-App@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPadPro-App@2x.png deleted file mode 100644 index 7dc725be7..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPadPro-App@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-App.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-App.png deleted file mode 100644 index a46522d36..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-App.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-App@3x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-App@3x.png deleted file mode 100644 index 5bad7a72f..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-App@3x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Notification@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Notification@2x.png deleted file mode 100644 index be3a24d13..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Notification@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Notification@3x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Notification@3x.png deleted file mode 100644 index a92cecdcc..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Notification@3x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Spotlight.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Spotlight.png deleted file mode 100644 index a15e380f0..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Spotlight.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Spotlight@3x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Spotlight@3x.png deleted file mode 100644 index a46522d36..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone-Spotlight@3x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone@2x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone@2x.png deleted file mode 100644 index 15544d270..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone@2x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone@3x.png b/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone@3x.png deleted file mode 100644 index a07e385c7..000000000 Binary files a/Examples/Swift/Assets.xcassets/AppIcon.appiconset/iPhone@3x.png and /dev/null differ diff --git a/Examples/Swift/Assets.xcassets/Contents.json b/Examples/Swift/Assets.xcassets/Contents.json deleted file mode 100644 index da4a164c9..000000000 --- a/Examples/Swift/Assets.xcassets/Contents.json +++ /dev/null @@ -1,6 +0,0 @@ -{ - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/Examples/Swift/Assets.xcassets/carplay_star.imageset/Contents.json b/Examples/Swift/Assets.xcassets/carplay_star.imageset/Contents.json deleted file mode 100644 index 82ca9c8a2..000000000 --- a/Examples/Swift/Assets.xcassets/carplay_star.imageset/Contents.json +++ /dev/null @@ -1,15 +0,0 @@ -{ - "images" : [ - { - "idiom" : "universal", - "filename" : "carplay_star.pdf" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - }, - "properties" : { - "preserves-vector-representation" : true - } -} \ No newline at end of file diff --git a/Examples/Swift/Assets.xcassets/carplay_star.imageset/carplay_star.pdf b/Examples/Swift/Assets.xcassets/carplay_star.imageset/carplay_star.pdf deleted file mode 100644 index fee627152..000000000 Binary files a/Examples/Swift/Assets.xcassets/carplay_star.imageset/carplay_star.pdf and /dev/null differ diff --git a/Examples/Swift/Base.lproj/LaunchScreen.storyboard b/Examples/Swift/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index fdf3f97d1..000000000 --- a/Examples/Swift/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/Swift/Base.lproj/Main.storyboard b/Examples/Swift/Base.lproj/Main.storyboard deleted file mode 100644 index c1168118b..000000000 --- a/Examples/Swift/Base.lproj/Main.storyboard +++ /dev/null @@ -1,261 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Examples/Swift/CustomStyles.swift b/Examples/Swift/CustomStyles.swift deleted file mode 100644 index 8f6bddf0a..000000000 --- a/Examples/Swift/CustomStyles.swift +++ /dev/null @@ -1,35 +0,0 @@ -import Foundation -import MapboxNavigation - -/** - To find more pieces of the UI to customize, checkout DayStyle.swift. - */ -// MARK: CustomDayStyle -class CustomDayStyle: DayStyle { - - required init() { - super.init() - mapStyleURL = URL(string: "mapbox://styles/mapbox/satellite-streets-v9")! - styleType = .day - } - - override func apply() { - super.apply() - BottomBannerView.appearance().backgroundColor = .orange - } -} - -// MARK: CustomNightStyle -class CustomNightStyle: NightStyle { - - required init() { - super.init() - mapStyleURL = URL(string: "mapbox://styles/mapbox/satellite-streets-v9")! - styleType = .night - } - - override func apply() { - super.apply() - BottomBannerView.appearance().backgroundColor = .purple - } -} diff --git a/Examples/Swift/CustomViewController.swift b/Examples/Swift/CustomViewController.swift deleted file mode 100644 index 3f117d182..000000000 --- a/Examples/Swift/CustomViewController.swift +++ /dev/null @@ -1,177 +0,0 @@ -import UIKit -import MapboxCoreNavigation -import MapboxNavigation -import MapLibre -import CoreLocation -import AVFoundation -import MapboxDirections -import Turf - -class CustomViewController: UIViewController, MLNMapViewDelegate { - - var destination: MLNPointAnnotation! - let directions = Directions.shared - var routeController: RouteController! - var simulateLocation = false - - var userRoute: Route? - - // Start voice instructions - let voiceController = RouteVoiceController() - - var stepsViewController: StepsViewController? - - @IBOutlet var mapView: NavigationMapView! - @IBOutlet weak var cancelButton: UIButton! - @IBOutlet weak var instructionsBannerView: InstructionsBannerView! - - override func viewDidLoad() { - super.viewDidLoad() - - let locationManager = simulateLocation ? SimulatedLocationManager(route: userRoute!) : NavigationLocationManager() - routeController = RouteController(along: userRoute!, locationManager: locationManager) - - mapView.delegate = self - mapView.courseTrackingDelegate = self - mapView.compassView.isHidden = true - - instructionsBannerView.delegate = self - - // Add listeners for progress updates - resumeNotifications() - - // Start navigation - routeController.resume() - - // Center map on user - mapView.recenterMap() - } - - override func viewWillAppear(_ animated: Bool) { - super.viewWillAppear(animated) - // This applies a default style to the top banner. - DayStyle().apply() - } - - deinit { - suspendNotifications() - } - - func resumeNotifications() { - NotificationCenter.default.addObserver(self, selector: #selector(progressDidChange(_ :)), name: .routeControllerProgressDidChange, object: nil) - NotificationCenter.default.addObserver(self, selector: #selector(rerouted(_:)), name: .routeControllerDidReroute, object: nil) - NotificationCenter.default.addObserver(self, selector: #selector(updateInstructionsBanner(notification:)), name: .routeControllerDidPassVisualInstructionPoint, object: routeController) - } - - func suspendNotifications() { - NotificationCenter.default.removeObserver(self, name: .routeControllerProgressDidChange, object: nil) - NotificationCenter.default.removeObserver(self, name: .routeControllerWillReroute, object: nil) - NotificationCenter.default.removeObserver(self, name: .routeControllerDidPassVisualInstructionPoint, object: nil) - } - - func mapView(_ mapView: MLNMapView, didFinishLoading style: MLNStyle) { - self.mapView.showRoutes([routeController.routeProgress.route]) - } - - // Notifications sent on all location updates - @objc func progressDidChange(_ notification: NSNotification) { - let routeProgress = notification.userInfo![RouteControllerNotificationUserInfoKey.routeProgressKey] as! RouteProgress - let location = notification.userInfo![RouteControllerNotificationUserInfoKey.locationKey] as! CLLocation - - // Add maneuver arrow - if routeProgress.currentLegProgress.followOnStep != nil { - mapView.addArrow(route: routeProgress.route, legIndex: routeProgress.legIndex, stepIndex: routeProgress.currentLegProgress.stepIndex + 1) - } else { - mapView.removeArrow() - } - - // Update the top banner with progress updates - instructionsBannerView.updateDistance(for: routeProgress.currentLegProgress.currentStepProgress) - instructionsBannerView.isHidden = false - - // Update the user puck - mapView.updateCourseTracking(location: location, animated: true) - } - - @objc func updateInstructionsBanner(notification: NSNotification) { - guard let routeProgress = notification.userInfo?[RouteControllerNotificationUserInfoKey.routeProgressKey] as? RouteProgress else { return } - instructionsBannerView.update(for: routeProgress.currentLegProgress.currentStepProgress.currentVisualInstruction) - } - - // Fired when the user is no longer on the route. - // Update the route on the map. - @objc func rerouted(_ notification: NSNotification) { - self.mapView.showRoutes([routeController.routeProgress.route]) - } - - @IBAction func cancelButtonPressed(_ sender: Any) { - self.dismiss(animated: true, completion: nil) - } - - @IBAction func recenterMap(_ sender: Any) { - mapView.recenterMap() - } - - func toggleStepsList() { - if let controller = stepsViewController { - controller.dismiss() - stepsViewController = nil - } else { - guard let routeController = routeController else { return } - - let controller = StepsViewController(routeProgress: routeController.routeProgress) - controller.delegate = self - addChild(controller) - view.addSubview(controller.view) - - controller.view.topAnchor.constraint(equalTo: instructionsBannerView.bottomAnchor).isActive = true - controller.view.leadingAnchor.constraint(equalTo: view.leadingAnchor).isActive = true - controller.view.bottomAnchor.constraint(equalTo: view.bottomAnchor).isActive = true - controller.view.trailingAnchor.constraint(equalTo: view.trailingAnchor).isActive = true - - controller.didMove(toParent: self) - controller.dropDownAnimation() - - stepsViewController = controller - return - } - } -} - -extension CustomViewController: InstructionsBannerViewDelegate { - func didTapInstructionsBanner(_ sender: BaseInstructionsBannerView) { - toggleStepsList() - } - - func didDragInstructionsBanner(_ sender: BaseInstructionsBannerView) { - toggleStepsList() - } -} - -extension CustomViewController: StepsViewControllerDelegate { - func didDismissStepsViewController(_ viewController: StepsViewController) { - viewController.dismiss { [weak self] in - self?.stepsViewController = nil - } - } - - func stepsViewController(_ viewController: StepsViewController, didSelect legIndex: Int, stepIndex: Int, cell: StepTableViewCell) { - viewController.dismiss { [weak self] in - self?.stepsViewController = nil - } - } -} - -// MARK: - NavigationMapViewCourseTrackingDelegate -extension CustomViewController: NavigationMapViewCourseTrackingDelegate { - - func updateCamera(_ mapView: NavigationMapView, location: CLLocation, routeProgress: RouteProgress) -> Bool{ - - let newCamera = MLNMapCamera(lookingAtCenter: location.coordinate, acrossDistance: 750, pitch: 5, heading: location.course) - let function: CAMediaTimingFunction = CAMediaTimingFunction(name: CAMediaTimingFunctionName.linear) - mapView.setCamera(newCamera, withDuration: 1, animationTimingFunction: function, edgePadding: UIEdgeInsets.zero, completionHandler: nil) - - return true - } - -} diff --git a/Examples/Swift/Entitlements.plist b/Examples/Swift/Entitlements.plist deleted file mode 100644 index d74cc083a..000000000 --- a/Examples/Swift/Entitlements.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - com.apple.developer.carplay-maps - - - diff --git a/Examples/Swift/Example-Swift-BridgingHeader.h b/Examples/Swift/Example-Swift-BridgingHeader.h deleted file mode 100644 index 6f70f09be..000000000 --- a/Examples/Swift/Example-Swift-BridgingHeader.h +++ /dev/null @@ -1 +0,0 @@ -#pragma once diff --git a/Examples/Swift/FavoritesList.swift b/Examples/Swift/FavoritesList.swift deleted file mode 100644 index 534db51ba..000000000 --- a/Examples/Swift/FavoritesList.swift +++ /dev/null @@ -1,58 +0,0 @@ -#if canImport(CarPlay) -import CarPlay -#endif - -public enum FavoritesList { - - enum POI: RawRepresentable { - typealias RawValue = String - case mapboxSF, timesSquare - static let all: [POI] = [.mapboxSF, .timesSquare] - - var subTitle: String { - switch self { - case .mapboxSF: - return "Office Location" - case .timesSquare: - return "Downtown Attractions" - } - } - - var location: CLLocation { - switch self { - case .mapboxSF: - return CLLocation(latitude: 37.788443, longitude: -122.4020258) - case .timesSquare: - return CLLocation(latitude: 40.758899, longitude: -73.9873197) - } - } - - var rawValue: String { - switch self { - case .mapboxSF: - return "Mapbox SF" - case .timesSquare: - return "Times Square" - } - } - - init?(rawValue: String) { - let value = rawValue.lowercased() - switch value { - case "mapbox sf": - self = .mapboxSF - case "times square": - self = .timesSquare - default: - return nil - } - } - - #if canImport(CarPlay) - @available(iOS 12.0, *) - func listItem() -> CPListItem { - return CPListItem(text: rawValue, detailText: subTitle, image: nil, showsDisclosureIndicator: true) - } - #endif - } -} diff --git a/Examples/Swift/Info.plist b/Examples/Swift/Info.plist deleted file mode 100644 index 706c4b2ed..000000000 --- a/Examples/Swift/Info.plist +++ /dev/null @@ -1,64 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - LSApplicationCategoryType - - LSRequiresIPhoneOS - - MGLMapboxAccessToken - PASTE MAPBOX ACCESS TOKEN HERE - NSLocationAlwaysUsageDescription - Get user location - NSLocationWhenInUseUsageDescription - Get user location - NSLocationAlwaysAndWhenInUseUsageDescription - Get user location - UIBackgroundModes - - audio - location - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UIViewControllerBasedStatusBarAppearance - - MGLMapboxMetricsEnabledSettingShownInApp - YES - - diff --git a/Examples/Swift/RecentItem.swift b/Examples/Swift/RecentItem.swift deleted file mode 100644 index cd0eb27d0..000000000 --- a/Examples/Swift/RecentItem.swift +++ /dev/null @@ -1,81 +0,0 @@ -#if canImport(CarPlay) && canImport(MapboxGeocoder) -import Foundation -import MapboxGeocoder -import CarPlay - -struct RecentItem: Codable, Equatable { - - static func ==(lhs: RecentItem, rhs: RecentItem) -> Bool { - return lhs.timestamp == rhs.timestamp && lhs.geocodedPlacemark == rhs.geocodedPlacemark - } - - var timestamp: Date - var geocodedPlacemark: GeocodedPlacemark - - static let persistenceKey = "RecentItems" - - static var filePathUrl: URL { - get { - let documents = NSSearchPathForDirectoriesInDomains(.documentDirectory, .userDomainMask, true)[0] - let url = URL(fileURLWithPath: documents) - return url.appendingPathComponent(persistenceKey.appending(".data")) - } - } - - static func loadDefaults() -> [RecentItem] { - let data = try? Data(contentsOf: RecentItem.filePathUrl) - let decoder = JSONDecoder() - if let data = data, - let recentItems = try? decoder.decode([RecentItem].self, from: data) { - return recentItems.sorted(by: { $0.timestamp > $1.timestamp }) - } - - return [RecentItem]() - } - - init(_ geocodedPlacemark: GeocodedPlacemark) { - self.geocodedPlacemark = geocodedPlacemark - self.timestamp = Date() - } - - func matches(_ searchText: String) -> Bool { - return geocodedPlacemark.formattedName.contains(searchText) || geocodedPlacemark.address?.contains(searchText) ?? false - } -} - -extension Array where Element == RecentItem { - - func save() { - let encoder = JSONEncoder() - let data = try? encoder.encode(self) - try? data?.write(to: RecentItem.filePathUrl) - } - - mutating func add(_ recentItem: RecentItem) { - let existing = lazy.filter { $0.geocodedPlacemark == recentItem.geocodedPlacemark }.first - - guard let alreadyExisting = existing else { - insert(recentItem, at: 0) - return - } - - var updated = alreadyExisting - updated.timestamp = Date() - remove(alreadyExisting) - add(updated) - } - - mutating func remove(_ recentItem: RecentItem) { - if let index = firstIndex(of: recentItem) { - remove(at: index) - } - } - - func contains(_ geocodedPlacemark: GeocodedPlacemark) -> Bool { - let exists = filter { (recentItem) -> Bool in - return recentItem.geocodedPlacemark == geocodedPlacemark - }.first - return (exists != nil) - } -} -#endif diff --git a/Examples/Swift/ViewController.swift b/Examples/Swift/ViewController.swift deleted file mode 100644 index e34199e99..000000000 --- a/Examples/Swift/ViewController.swift +++ /dev/null @@ -1,435 +0,0 @@ -import MapboxCoreNavigation -import MapboxDirections -import MapboxNavigation -import MapLibre -import UIKit -import UserNotifications - -private typealias RouteRequestSuccess = ([Route]) -> Void -private typealias RouteRequestFailure = (NSError) -> Void - -class ViewController: UIViewController, MLNMapViewDelegate { - - // MARK: - IBOutlets - - @IBOutlet var longPressHintView: UIView! - @IBOutlet var simulationButton: UIButton! - @IBOutlet var startButton: UIButton! - @IBOutlet var bottomBar: UIView! - @IBOutlet var clearMap: UIButton! - @IBOutlet var bottomBarBackground: UIView! - - // MARK: Properties - - var mapView: NavigationMapView? { - didSet { - oldValue?.removeFromSuperview() - if let mapView = mapView { - configureMapView(mapView) - view.insertSubview(mapView, belowSubview: longPressHintView) - } - } - } - - var waypoints: [Waypoint] = [] { - didSet { - waypoints.forEach { - $0.coordinateAccuracy = -1 - } - } - } - - var routes: [Route]? { - didSet { - startButton.isEnabled = (routes?.count ?? 0 > 0) - guard let routes = routes, - let current = routes.first else { mapView?.removeRoutes(); return } - - mapView?.showRoutes(routes) - mapView?.showWaypoints(current) - } - } - - // MARK: Directions Request Handlers - - fileprivate lazy var defaultSuccess: RouteRequestSuccess = { [weak self] routes in - guard let current = routes.first else { return } - self?.mapView?.removeWaypoints() - self?.routes = routes - self?.waypoints = current.routeOptions.waypoints - self?.clearMap.isHidden = false - self?.longPressHintView.isHidden = true - } - - fileprivate lazy var defaultFailure: RouteRequestFailure = { [weak self] error in - self?.routes = nil // clear routes from the map - print(error.localizedDescription) - } - - var alertController: UIAlertController! - - private var selectedLocale: Locale? { - didSet { - guard let routes, let selectedLocale else { return } - for route in routes { - route.routeOptions.locale = selectedLocale - } - } - } - - // MARK: - Lifecycle Methods - - override func viewDidLoad() { - super.viewDidLoad() - - alertController = UIAlertController(title: "Start Navigation", message: "Select the navigation type", preferredStyle: .actionSheet) - - typealias ActionHandler = (UIAlertAction) -> Void - - let basic: ActionHandler = { _ in self.startBasicNavigation() } - let day: ActionHandler = { _ in self.startNavigation(styles: [DayStyle()]) } - let night: ActionHandler = { _ in self.startNavigation(styles: [NightStyle()]) } - let custom: ActionHandler = { _ in self.startCustomNavigation() } - let styled: ActionHandler = { _ in self.startStyledNavigation() } - - let actionPayloads: [(String, UIAlertAction.Style, ActionHandler?)] = [ - ("Default UI", .default, basic), - ("DayStyle UI", .default, day), - ("NightStyle UI", .default, night), - ("Custom UI", .default, custom), - ("Styled UI", .default, styled), - ("Cancel", .cancel, nil) - ] - - actionPayloads - .map { payload in UIAlertAction(title: payload.0, style: payload.1, handler: payload.2) } - .forEach(alertController.addAction(_:)) - - if let popoverController = alertController.popoverPresentationController { - popoverController.sourceView = startButton - } - } - - override func viewWillAppear(_ animated: Bool) { - super.viewWillAppear(animated) - - mapView = NavigationMapView(frame: view.bounds, styleURL: nil) - - // Reset the navigation styling to the defaults if we are returning from a presentation. - if presentedViewController != nil { - DayStyle().apply() - } - } - - override func viewDidAppear(_ animated: Bool) { - super.viewDidAppear(animated) - - if #available(iOS 10.0, *) { - UNUserNotificationCenter.current().requestAuthorization(options: [.badge, .alert, .sound]) { _, _ in - DispatchQueue.main.async { - CLLocationManager().requestWhenInUseAuthorization() - } - } - } - } - - // MARK: Gesture Recognizer Handlers - - @objc func didLongPress(tap: UILongPressGestureRecognizer) { - guard let mapView = mapView, tap.state == .began else { return } - - if let annotation = mapView.annotations?.last, waypoints.count > 2 { - mapView.removeAnnotation(annotation) - } - - if waypoints.count > 1 { - waypoints = Array(waypoints.suffix(1)) - } - - let coordinates = mapView.convert(tap.location(in: mapView), toCoordinateFrom: mapView) - // Note: The destination name can be modified. The value is used in the top banner when arriving at a destination. - let waypoint = Waypoint(coordinate: coordinates, name: "Dropped Pin #\(waypoints.endIndex + 1)") - waypoints.append(waypoint) - - requestRoute() - } - - // MARK: - IBActions - - @IBAction func replay(_ sender: Any) { - let bundle = Bundle(for: ViewController.self) - let filePath = bundle.path(forResource: "tunnel", ofType: "json")! - let routeFilePath = bundle.path(forResource: "tunnel", ofType: "route")! - let route = NSKeyedUnarchiver.unarchiveObject(withFile: routeFilePath) as! Route - - let locationManager = ReplayLocationManager(locations: Array.locations(from: filePath)) - - let navigationViewController = NavigationViewController(for: route, locationManager: locationManager) - - present(navigationViewController, animated: true, completion: nil) - } - - @IBAction func simulateButtonPressed(_ sender: Any) { - simulationButton.isSelected = !simulationButton.isSelected - } - - @IBAction func clearMapPressed(_ sender: Any) { - clearMap.isHidden = true - mapView?.removeRoutes() - mapView?.removeWaypoints() - waypoints.removeAll() - longPressHintView.isHidden = false - } - - @IBAction func startButtonPressed(_ sender: Any) { - present(alertController, animated: true, completion: nil) - } - - @IBAction func languageButtonPressed(_ sender: Any) { - let voiceAlertController = UIAlertController(title: "Select Locale", message: "Select navigation language", preferredStyle: .actionSheet) - - voiceAlertController.addAction(UIAlertAction(title: "German", style: .default, handler: { [weak self] _ in self?.selectedLocale = Locale(identifier: "de") })) - voiceAlertController.addAction(UIAlertAction(title: "Italian", style: .default, handler: { [weak self] _ in self?.selectedLocale = Locale(identifier: "it") })) - voiceAlertController.addAction(UIAlertAction(title: "English", style: .default, handler: { [weak self] _ in self?.selectedLocale = Locale(identifier: "en") })) - voiceAlertController.addAction(UIAlertAction(title: "Spanish", style: .default, handler: { [weak self] _ in self?.selectedLocale = Locale(identifier: "es") })) - voiceAlertController.addAction(UIAlertAction(title: "Cancel", style: .cancel, handler: nil)) - - present(voiceAlertController, animated: true, completion: nil) - } - - // MARK: - Public Methods - - // MARK: Route Requests - - func requestRoute() { - guard waypoints.count > 0 else { return } - guard let mapView = mapView else { return } - - let userWaypoint = Waypoint(location: mapView.userLocation!.location!, heading: mapView.userLocation?.heading, name: "User location") - waypoints.insert(userWaypoint, at: 0) - - let options = NavigationRouteOptions(waypoints: waypoints) - - if let selectedLocale { - options.locale = selectedLocale - } - - requestRoute(with: options, success: defaultSuccess, failure: defaultFailure) - } - - fileprivate func requestRoute(with options: RouteOptions, success: @escaping RouteRequestSuccess, failure: RouteRequestFailure?) { - let handler: Directions.RouteCompletionHandler = { _, potentialRoutes, potentialError in - if let error = potentialError, let fail = failure { return fail(error) } - guard let routes = potentialRoutes else { return } - return success(routes) - } - - _ = Directions.shared.calculate(options, completionHandler: handler) - } - - // MARK: Basic Navigation - - func startBasicNavigation() { - guard let route = routes?.first else { return } - - let navigationViewController = NavigationViewController(for: route, locationManager: navigationLocationManager()) - navigationViewController.delegate = self - - presentAndRemoveMapview(navigationViewController) - } - - func startNavigation(styles: [Style]) { - guard let route = routes?.first else { return } - - let navigationViewController = NavigationViewController(for: route, styles: styles, locationManager: navigationLocationManager()) - navigationViewController.delegate = self - - presentAndRemoveMapview(navigationViewController) - } - - // MARK: Custom Navigation UI - - func startCustomNavigation() { - guard let route = routes?.first else { return } - - guard let customViewController = storyboard?.instantiateViewController(withIdentifier: "custom") as? CustomViewController else { return } - - customViewController.userRoute = route - - let destination = MLNPointAnnotation() - destination.coordinate = route.coordinates!.last! - customViewController.destination = destination - customViewController.simulateLocation = simulationButton.isSelected - - present(customViewController, animated: true, completion: nil) - } - - // MARK: Styling the default UI - - func startStyledNavigation() { - guard let route = routes?.first else { return } - - let styles = [CustomDayStyle(), CustomNightStyle()] - - let navigationViewController = NavigationViewController(for: route, styles: styles, locationManager: navigationLocationManager()) - navigationViewController.delegate = self - - presentAndRemoveMapview(navigationViewController) - } - - func navigationLocationManager() -> NavigationLocationManager { - guard let route = routes?.first else { return NavigationLocationManager() } - return simulationButton.isSelected ? SimulatedLocationManager(route: route) : NavigationLocationManager() - } - - func presentAndRemoveMapview(_ navigationViewController: NavigationViewController) { - present(navigationViewController, animated: true) { - self.mapView?.removeFromSuperview() - self.mapView = nil - } - } - - func configureMapView(_ mapView: NavigationMapView) { - mapView.autoresizingMask = [.flexibleWidth, .flexibleHeight] - mapView.delegate = self - mapView.navigationMapDelegate = self - mapView.userTrackingMode = .follow - mapView.logoView.isHidden = true - - let singleTap = UILongPressGestureRecognizer(target: self, action: #selector(didLongPress(tap:))) - mapView.gestureRecognizers?.filter { $0 is UILongPressGestureRecognizer }.forEach(singleTap.require(toFail:)) - mapView.addGestureRecognizer(singleTap) - } - - func mapView(_ mapView: MLNMapView, didFinishLoading style: MLNStyle) { - self.mapView?.localizeLabels() - - if let routes = routes, let currentRoute = routes.first, let coords = currentRoute.coordinates { - mapView.setVisibleCoordinateBounds(MLNPolygon(coordinates: coords, count: currentRoute.coordinateCount).overlayBounds, animated: false) - self.mapView?.showRoutes(routes) - self.mapView?.showWaypoints(currentRoute) - } - } -} - -// MARK: - NavigationMapViewDelegate - -extension ViewController: NavigationMapViewDelegate { - func navigationMapView(_ mapView: NavigationMapView, didSelect waypoint: Waypoint) { - guard let routeOptions = routes?.first?.routeOptions else { return } - let modifiedOptions = routeOptions.without(waypoint: waypoint) - - presentWaypointRemovalActionSheet { _ in - self.requestRoute(with: modifiedOptions, success: self.defaultSuccess, failure: self.defaultFailure) - } - } - - func navigationMapView(_ mapView: NavigationMapView, didSelect route: Route) { - guard let routes = routes else { return } - guard let index = routes.firstIndex(where: { $0 == route }) else { return } - self.routes!.remove(at: index) - self.routes!.insert(route, at: 0) - } - - private func presentWaypointRemovalActionSheet(completionHandler approve: @escaping ((UIAlertAction) -> Void)) { - let title = NSLocalizedString("Remove Waypoint?", comment: "Waypoint Removal Action Sheet Title") - let message = NSLocalizedString("Would you like to remove this waypoint?", comment: "Waypoint Removal Action Sheet Message") - let removeTitle = NSLocalizedString("Remove Waypoint", comment: "Waypoint Removal Action Item Title") - let cancelTitle = NSLocalizedString("Cancel", comment: "Waypoint Removal Action Sheet Cancel Item Title") - - let actionSheet = UIAlertController(title: title, message: message, preferredStyle: .actionSheet) - let remove = UIAlertAction(title: removeTitle, style: .destructive, handler: approve) - let cancel = UIAlertAction(title: cancelTitle, style: .cancel, handler: nil) - [remove, cancel].forEach(actionSheet.addAction(_:)) - - present(actionSheet, animated: true, completion: nil) - } -} - -// MARK: VoiceControllerDelegate methods - -// To use these delegate methods, set the `VoiceControllerDelegate` on your `VoiceController`. -extension ViewController: VoiceControllerDelegate { - // Called when there is an error with speaking a voice instruction. - func voiceController(_ voiceController: RouteVoiceController, spokenInstructionsDidFailWith error: Error) { - print(error.localizedDescription) - } - - // Called when an instruction is interrupted by a new voice instruction. - func voiceController(_ voiceController: RouteVoiceController, didInterrupt interruptedInstruction: SpokenInstruction, with interruptingInstruction: SpokenInstruction) { - print(interruptedInstruction.text, interruptingInstruction.text) - } - - func voiceController(_ voiceController: RouteVoiceController, willSpeak instruction: SpokenInstruction, routeProgress: RouteProgress?) -> SpokenInstruction? { - return SpokenInstruction(distanceAlongStep: instruction.distanceAlongStep, text: "New Instruction!", ssmlText: "New Instruction!") - } - - // By default, the routeController will attempt to filter out bad locations. - // If however you would like to filter these locations in, - // you can conditionally return a Bool here according to your own heuristics. - // See CLLocation.swift `isQualified` for what makes a location update unqualified. - func navigationViewController(_ navigationViewController: NavigationViewController, shouldDiscard location: CLLocation) -> Bool { - return true - } -} - -// MARK: WaypointConfirmationViewControllerDelegate - -extension ViewController: WaypointConfirmationViewControllerDelegate { - func confirmationControllerDidConfirm(_ confirmationController: WaypointConfirmationViewController) { - confirmationController.dismiss(animated: true, completion: { - guard let navigationViewController = self.presentedViewController as? NavigationViewController else { return } - - guard navigationViewController.routeController.routeProgress.route.legs.count > navigationViewController.routeController.routeProgress.legIndex + 1 else { return } - navigationViewController.routeController.routeProgress.legIndex += 1 - navigationViewController.routeController.resume() - }) - } -} - -// MARK: NavigationViewControllerDelegate - -extension ViewController: NavigationViewControllerDelegate { - // By default, when the user arrives at a waypoint, the next leg starts immediately. - // If you implement this method, return true to preserve this behavior. - // Return false to remain on the current leg, for example to allow the user to provide input. - // If you return false, you must manually advance to the next leg. See the example above in `confirmationControllerDidConfirm(_:)`. - func navigationViewController(_ navigationViewController: NavigationViewController, didArriveAt waypoint: Waypoint) -> Bool { - // When the user arrives, present a view controller that prompts the user to continue to their next destination - // This type of screen could show information about a destination, pickup/dropoff confirmation, instructions upon arrival, etc. - - // If we're not in a "Multiple Stops" demo, show the normal EORVC - if navigationViewController.routeController.routeProgress.isFinalLeg { - return true - } - - guard let confirmationController = storyboard?.instantiateViewController(withIdentifier: "waypointConfirmation") as? WaypointConfirmationViewController else { - return true - } - - confirmationController.delegate = self - - navigationViewController.present(confirmationController, animated: true, completion: nil) - return false - } - - // Called when the user hits the exit button. - // If implemented, you are responsible for also dismissing the UI. - func navigationViewControllerDidDismiss(_ navigationViewController: NavigationViewController, byCanceling canceled: Bool) { - navigationViewController.dismiss(animated: true, completion: nil) - } -} - -// MARK: VisualInstructionDelegate - -extension ViewController: VisualInstructionDelegate { - func label(_ label: InstructionLabel, willPresent instruction: VisualInstruction, as presented: NSAttributedString) -> NSAttributedString? { - // Uncomment to mutate the instruction shown in the top instruction banner - // let range = NSRange(location: 0, length: presented.length) - // let mutable = NSMutableAttributedString(attributedString: presented) - // mutable.mutableString.applyTransform(.latinToKatakana, reverse: false, range: range, updatedRange: nil) - // return mutable - - return presented - } -} diff --git a/Examples/Swift/WaypointConfirmationViewController.swift b/Examples/Swift/WaypointConfirmationViewController.swift deleted file mode 100644 index e1098f166..000000000 --- a/Examples/Swift/WaypointConfirmationViewController.swift +++ /dev/null @@ -1,14 +0,0 @@ -import UIKit - -protocol WaypointConfirmationViewControllerDelegate: NSObjectProtocol { - func confirmationControllerDidConfirm(_ controller: WaypointConfirmationViewController) -} - -class WaypointConfirmationViewController: UIViewController { - - weak var delegate: WaypointConfirmationViewControllerDelegate? - - @IBAction func continueButtonPressed(_ sender: Any) { - delegate?.confirmationControllerDidConfirm(self) - } -} diff --git a/Examples/Swift/_TestPath.gpx b/Examples/Swift/_TestPath.gpx deleted file mode 100644 index a279b59be..000000000 --- a/Examples/Swift/_TestPath.gpx +++ /dev/null @@ -1,10 +0,0 @@ - - - - - diff --git a/Examples/Swift/ar.lproj/Main.strings b/Examples/Swift/ar.lproj/Main.strings deleted file mode 100644 index 8745dad0d..000000000 --- a/Examples/Swift/ar.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "تابع نحو المقصد التالي"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "انقر مطولا لاختيار مقصد"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "حاكِ الأماكن"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "ابدأ التنقل"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigation"; diff --git a/Examples/Swift/bg.lproj/Main.strings b/Examples/Swift/bg.lproj/Main.strings deleted file mode 100644 index 7fc09e34a..000000000 --- a/Examples/Swift/bg.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Продължи към следващата дестинация"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Задръж за избор на дестинация"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Симулирай локации"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Старт навигация"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox навигация"; diff --git a/Examples/Swift/ca.lproj/Main.strings b/Examples/Swift/ca.lproj/Main.strings deleted file mode 100644 index 80e7b5744..000000000 --- a/Examples/Swift/ca.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continueu cap a la propera destinació"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Per escollir una destinació prem una estona"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simular ubicacions"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Comença la navegació"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Navegació Mapbox"; diff --git a/Examples/Swift/da.lproj/Main.strings b/Examples/Swift/da.lproj/Main.strings deleted file mode 100644 index 8d6acb287..000000000 --- a/Examples/Swift/da.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Fortsæt til næste destination"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Tryk og hold for at vælge en destination"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simulere lokalitet"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Start navigation"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox navigation"; diff --git a/Examples/Swift/de.lproj/Main.strings b/Examples/Swift/de.lproj/Main.strings deleted file mode 100644 index 3ca31034f..000000000 --- a/Examples/Swift/de.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Weiter zum nächsten Ziel"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Lange drücken, um ein Ziel auszuwählen"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Standorte simulieren"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Navigation starten"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigation"; diff --git a/Examples/Swift/en.lproj/Main.strings b/Examples/Swift/en.lproj/Main.strings deleted file mode 100644 index 3af494d35..000000000 --- a/Examples/Swift/en.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continue to next destination"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Long press to select a destination"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simulate Locations"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Start Navigation"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigation"; diff --git a/Examples/Swift/es.lproj/Main.strings b/Examples/Swift/es.lproj/Main.strings deleted file mode 100644 index d81089089..000000000 --- a/Examples/Swift/es.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continuar al próximo destino"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Pulsar prolongadamente para elegir un destino"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simular ubicaciones"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Empezar navegación"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Navegación por Mapbox"; diff --git a/Examples/Swift/fa.lproj/Main.strings b/Examples/Swift/fa.lproj/Main.strings deleted file mode 100644 index e4eb05b34..000000000 --- a/Examples/Swift/fa.lproj/Main.strings +++ /dev/null @@ -1,9 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "شروع جهت یابی"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "برای اتنخاب مسیر کلید را نگه دارید"; - -/* Class = "UIButton"; normalTitle = "Simulate Navigation"; ObjectID = "KIU-cH-IXd"; */ -"KIU-cH-IXd.normalTitle" = "شبیه سازی جهت یابی"; diff --git a/Examples/Swift/fr.lproj/Main.strings b/Examples/Swift/fr.lproj/Main.strings deleted file mode 100644 index ee9d34f2d..000000000 --- a/Examples/Swift/fr.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continuer vers la destination suivante"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Faire un appui long pour sélectionner une destination"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simuler les positions"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Démarrer la navigation"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Navigation Mapbox"; diff --git a/Examples/Swift/he.lproj/Main.strings b/Examples/Swift/he.lproj/Main.strings deleted file mode 100644 index adf082f9f..000000000 --- a/Examples/Swift/he.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "המשך ליעד הבא"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "לחץ לחיצה ארוכה כדי לבחור יעד"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "הדמה מיקום"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "התחל ניווט"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigation"; diff --git a/Examples/Swift/hu.lproj/Main.strings b/Examples/Swift/hu.lproj/Main.strings deleted file mode 100644 index 53063a8dc..000000000 --- a/Examples/Swift/hu.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Tovább a következő úticélra"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Nyomd hosszan úticél kiválasztásához"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simulate Locations"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Navigáció indítása"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigáció"; diff --git a/Examples/Swift/it.lproj/Main.strings b/Examples/Swift/it.lproj/Main.strings deleted file mode 100644 index 3a6af4162..000000000 --- a/Examples/Swift/it.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continua alla prossima destinazione"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Mantieni premuto per selezionare una destinazione"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simula posizione"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Avvia navigazione"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Navigazione Mapbox"; diff --git a/Examples/Swift/lt.lproj/Main.strings b/Examples/Swift/lt.lproj/Main.strings deleted file mode 100644 index 7e5c0f274..000000000 --- a/Examples/Swift/lt.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Tęsti link kito kelionės tikslo"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Ilgai paspauskite, kad pasirinktumėte kelionės tikslą."; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simuliuoti vietas."; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Pradėti navigaciją."; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox navigacija."; diff --git a/Examples/Swift/nl.lproj/Main.strings b/Examples/Swift/nl.lproj/Main.strings deleted file mode 100644 index 8fc39969d..000000000 --- a/Examples/Swift/nl.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Doorgaan naar volgende bestemming"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Lange tik om een bestemming te kiezen"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simuleer locaties"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Start Navigatie"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigatie"; diff --git a/Examples/Swift/pt-BR.lproj/Main.strings b/Examples/Swift/pt-BR.lproj/Main.strings deleted file mode 100644 index 8167bbf4a..000000000 --- a/Examples/Swift/pt-BR.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continue para o próximo destino"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Toque e segure para selecionar um destino"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simular Locais"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Começar Navegação"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Navegação Mapbox"; diff --git a/Examples/Swift/pt-PT.lproj/Main.strings b/Examples/Swift/pt-PT.lproj/Main.strings deleted file mode 100644 index 7bd2f5982..000000000 --- a/Examples/Swift/pt-PT.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Continue para o destino seguinte"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Pressione longamente para selecionar um destino"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simular Localizações"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Iniciar Navegação"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Navegação Mapbox"; diff --git a/Examples/Swift/ru.lproj/Main.strings b/Examples/Swift/ru.lproj/Main.strings deleted file mode 100644 index 28f428572..000000000 --- a/Examples/Swift/ru.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "К следующему пункту назначения"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Нажмите и удерживайте, чтобы выбрать пункт назначения"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Моделирование маршрута"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Начать"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Навигация Mapbox"; diff --git a/Examples/Swift/sl.lproj/Main.strings b/Examples/Swift/sl.lproj/Main.strings deleted file mode 100644 index 051b9a9d9..000000000 --- a/Examples/Swift/sl.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Nadaljuj na naslednjo destinacijo"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Pritisni in zadrži za izbiro cilja"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simuliraj lokacijo"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Začni navigacijo"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox navigacija"; diff --git a/Examples/Swift/sv.lproj/Main.strings b/Examples/Swift/sv.lproj/Main.strings deleted file mode 100644 index d715d6136..000000000 --- a/Examples/Swift/sv.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Fortsätt mot nästa destination"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Tryck för att välja destination"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Simulera"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Starta Navigation"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigation"; diff --git a/Examples/Swift/tunnel.json b/Examples/Swift/tunnel.json deleted file mode 100644 index be1614fbe..000000000 --- a/Examples/Swift/tunnel.json +++ /dev/null @@ -1,122 +0,0 @@ -[ - { - "verticalAccuracy" : 6, - "speed" : 22.899999618530273, - "longitude" : -122.45956801250402, - "horizontalAccuracy" : 5, - "course" : 67.859794616699219, - "latitude" : 37.801929819902256, - "timestamp" : 1497475499.0256791, - "altitude" : 23.702549187157306 - }, - { - "verticalAccuracy" : 6, - "speed" : 23.280000686645508, - "longitude" : -122.45932581643162, - "horizontalAccuracy" : 5, - "course" : 67.859794616699219, - "latitude" : 37.802020704125916, - "timestamp" : 1497475500.04006, - "altitude" : 22.810098907476391 - }, - { - "verticalAccuracy" : 6, - "speed" : 23.059999465942383, - "longitude" : -122.45906355161894, - "horizontalAccuracy" : 5, - "course" : 67.859794616699219, - "latitude" : 37.802109132033124, - "timestamp" : 1497475501.0420461, - "altitude" : 22.003214925033497 - }, - { - "verticalAccuracy" : 6, - "speed" : 23.020000457763672, - "longitude" : -122.45882975747831, - "horizontalAccuracy" : 5, - "course" : 67.859794616699219, - "latitude" : 37.802185453583604, - "timestamp" : 1497475502.040133, - "altitude" : 21.47761759014524 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.850000381469727, - "longitude" : -122.45859724198759, - "horizontalAccuracy" : 5, - "course" : 69.7305908203125, - "latitude" : 37.802259399870124, - "timestamp" : 1497475503.059294, - "altitude" : 20.227788424849507 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.940000534057617, - "longitude" : -122.45835469888969, - "horizontalAccuracy" : 5, - "course" : 70.288505554199219, - "latitude" : 37.802340558295121, - "timestamp" : 1497475504.070745, - "altitude" : 19.921009934433961 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.959999084472656, - "longitude" : -122.45812377041734, - "horizontalAccuracy" : 5, - "course" : 70.288505554199219, - "latitude" : 37.802421605266439, - "timestamp" : 1497475505.03931, - "altitude" : 19.050089638479612 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.590000152587891, - "longitude" : -122.45788721230271, - "horizontalAccuracy" : 5, - "course" : 70.230934143066406, - "latitude" : 37.802494510830861, - "timestamp" : 1497475506.0359511, - "altitude" : 18.383877173140085 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.469999313354492, - "longitude" : -122.45764916464815, - "horizontalAccuracy" : 5, - "course" : 70.230934143066406, - "latitude" : 37.802562549697868, - "timestamp" : 1497475507.038976, - "altitude" : 17.417158889435495 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.350000381469727, - "longitude" : -122.45742081797762, - "horizontalAccuracy" : 5, - "course" : 70.926567077636719, - "latitude" : 37.802609044489465, - "timestamp" : 1497475508.0399661, - "altitude" : 16.990964193201091 - }, - { - "verticalAccuracy" : 4, - "speed" : 22.260000228881836, - "longitude" : -122.45717497985068, - "horizontalAccuracy" : 5, - "course" : 71.793121337890625, - "latitude" : 37.802681546020445, - "timestamp" : 1497475509.0264881, - "altitude" : 16.993961965274575 - }, - { - "verticalAccuracy" : 4, - "speed" : 12.909999847412109, - "longitude" : -122.45272421289464, - "horizontalAccuracy" : 5, - "course" : 95.9765625, - "latitude" : 37.80292640909348, - "timestamp" : 1497475530.0280781, - "altitude" : 14.228695074569107 - } -] diff --git a/Examples/Swift/uk.lproj/Main.strings b/Examples/Swift/uk.lproj/Main.strings deleted file mode 100644 index f351b2ba7..000000000 --- a/Examples/Swift/uk.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Рухатись до наступного місця"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Довге натискання для вибору місця призначення"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Імітувати визначення місця розташування"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Розпочати навігацію"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox Navigation"; diff --git a/Examples/Swift/vi.lproj/Main.strings b/Examples/Swift/vi.lproj/Main.strings deleted file mode 100644 index b0eb511fc..000000000 --- a/Examples/Swift/vi.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "Đi tiếp đến nơi đến sau"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "Chạm lâu để chọn nơi đến"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "Mô phỏng các Vị trí"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "Bắt đầu Điều hướng"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Điều hướng của Mapbox"; diff --git a/Examples/Swift/zh-Hans.lproj/Main.strings b/Examples/Swift/zh-Hans.lproj/Main.strings deleted file mode 100644 index a14de13d4..000000000 --- a/Examples/Swift/zh-Hans.lproj/Main.strings +++ /dev/null @@ -1,9 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "8Sl-bV-xyU"; */ -"8Sl-bV-xyU.normalTitle" = "Start Navigation"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "Hk0-SM-2Wl"; */ -"Hk0-SM-2Wl.text" = "Long press to select a destination"; - -/* Class = "UIButton"; normalTitle = "Simulate Navigation"; ObjectID = "KIU-cH-IXd"; */ -"KIU-cH-IXd.normalTitle" = "Simulate Navigation"; diff --git a/Examples/Swift/zh-Hant.lproj/Main.strings b/Examples/Swift/zh-Hant.lproj/Main.strings deleted file mode 100644 index b6edc0ede..000000000 --- a/Examples/Swift/zh-Hant.lproj/Main.strings +++ /dev/null @@ -1,15 +0,0 @@ - -/* Class = "UIButton"; normalTitle = "Continue to next destination"; ObjectID = "1vl-kS-fBt"; */ -"1vl-kS-fBt.normalTitle" = "繼續到下一個目的地"; - -/* Class = "UILabel"; text = "Long press to select a destination"; ObjectID = "dEY-t6-Ect"; */ -"dEY-t6-Ect.text" = "長按選取目的地"; - -/* Class = "UIButton"; normalTitle = "Simulate Locations"; ObjectID = "iiq-Gf-SKY"; */ -"iiq-Gf-SKY.normalTitle" = "模擬位置"; - -/* Class = "UIButton"; normalTitle = "Start Navigation"; ObjectID = "nMe-Tl-a1N"; */ -"nMe-Tl-a1N.normalTitle" = "開始導航"; - -/* Class = "UINavigationItem"; title = "Mapbox Navigation"; ObjectID = "zxr-0T-HBr"; */ -"zxr-0T-HBr.title" = "Mapbox 導航"; diff --git a/Examples/SwiftTests/Example_SwiftTests.swift b/Examples/SwiftTests/Example_SwiftTests.swift deleted file mode 100644 index 3b26f78b9..000000000 --- a/Examples/SwiftTests/Example_SwiftTests.swift +++ /dev/null @@ -1,27 +0,0 @@ -import XCTest - -class Example_SwiftTests: XCTestCase { - - override func setUp() { - super.setUp() - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - super.tearDown() - } - - func testExample() { - // This is an example of a functional test case. - // Use XCTAssert and related functions to verify your tests produce the correct results. - } - - func testPerformanceExample() { - // This is an example of a performance test case. - self.measure { - // Put the code you want to measure the time of here. - } - } - -} diff --git a/Examples/SwiftTests/Info.plist b/Examples/SwiftTests/Info.plist deleted file mode 100644 index eab933fcb..000000000 --- a/Examples/SwiftTests/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0.6 - CFBundleVersion - 34 - - diff --git a/MapboxCoreNavigation.podspec b/MapboxCoreNavigation.podspec deleted file mode 100644 index c6a1829a2..000000000 --- a/MapboxCoreNavigation.podspec +++ /dev/null @@ -1,53 +0,0 @@ -Pod::Spec.new do |s| - - # ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.name = "MapboxCoreNavigation" - s.version = "1.0.2" - s.summary = "Core components for turn-by-turn navigation on iOS." - - s.description = <<-DESC - Mapbox Core Navigation provides the core spatial and timing logic for turn-by-turn navigation along a route. For a complete turn-by-turn navigation interface, use the Mapbox Navigation SDK for iOS (MapboxNavigation). - DESC - - s.homepage = "https://www.mapbox.com/ios-sdk/navigation/" - s.documentation_url = "https://www.mapbox.com/mapbox-navigation-ios/navigation/" - - # ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.license = { :type => "ISC", :file => "LICENSE.md" } - - # ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.author = { "Mapbox" => "mobile@mapbox.com" } - s.social_media_url = "https://twitter.com/mapbox" - - # ――― Platform Specifics ――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.ios.deployment_target = "9.0" - - - # ――― Source Location ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.source = { :git => "https://github.com/mapbox/mapbox-navigation-ios.git", :tag => "v#{s.version.to_s}" } - - # ――― Source Code ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.source_files = "MapboxCoreNavigation" - - # ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.requires_arc = true - s.module_name = "MapboxCoreNavigation" - - s.dependency "MapboxDirections.swift", "~> 0.23.0" - s.dependency "MapboxMobileEvents", "~> 0.5" - s.dependency "Turf", "~> 0.2" - - # `swift_version` was introduced in CocoaPods 1.4.0. Without this check, if a user were to - # directly specify this podspec while using <1.4.0, ruby would throw an unknown method error. - if s.respond_to?(:swift_version) - s.swift_version = "4.0" - end - -end diff --git a/MapboxCoreNavigation/Constants.swift b/MapboxCoreNavigation/Constants.swift index 262ff9dc0..00feadfeb 100644 --- a/MapboxCoreNavigation/Constants.swift +++ b/MapboxCoreNavigation/Constants.swift @@ -1,8 +1,8 @@ import Foundation import CoreLocation +import MapboxCoreNavigationObjC import MapboxDirections - // MARK: - RouteController /** Maximum number of meters the user can travel away from step before `RouteControllerShouldReroute` is emitted. diff --git a/MapboxCoreNavigation/Fixture.swift b/MapboxCoreNavigation/Fixture.swift new file mode 100644 index 000000000..e370df313 --- /dev/null +++ b/MapboxCoreNavigation/Fixture.swift @@ -0,0 +1,29 @@ +import Foundation + +public class Fixture: NSObject { + + public class func stringFromFileNamed(name: String, bundle: Bundle) -> String { + guard let path = bundle.path(forResource: name, ofType: "json") ?? bundle.path(forResource: name, ofType: "geojson") else { + return "" + } + do { + return try String(contentsOfFile: path, encoding: .utf8) + } catch { + return "" + } + } + + @objc public class func JSONFromFileNamed(name: String, bundle: Bundle) -> [String: Any] { + guard let path = bundle.path(forResource: name, ofType: "json") ?? bundle.path(forResource: name, ofType: "geojson") else { + return [:] + } + guard let data = NSData(contentsOfFile: path) else { + return [:] + } + do { + return try JSONSerialization.jsonObject(with: data as Data, options: []) as! [String: AnyObject] + } catch { + return [:] + } + } +} diff --git a/MapboxCoreNavigation/Info.plist b/MapboxCoreNavigation/Info.plist deleted file mode 100644 index caf8a88d7..000000000 --- a/MapboxCoreNavigation/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.6 - CFBundleVersion - 34 - NSPrincipalClass - - - diff --git a/MapboxCoreNavigation/NavigationRouteOptions.swift b/MapboxCoreNavigation/NavigationRouteOptions.swift index ae6eb051b..77ab71e59 100644 --- a/MapboxCoreNavigation/NavigationRouteOptions.swift +++ b/MapboxCoreNavigation/NavigationRouteOptions.swift @@ -1,5 +1,6 @@ import Foundation import MapboxDirections +import MapboxDirectionsObjc /** A `NavigationRouteOptions` object specifies turn-by-turn-optimized criteria for results returned by the Mapbox Directions API. diff --git a/MapboxCoreNavigation/Route.swift b/MapboxCoreNavigation/Route.swift index 55a49c05f..005ef6b4c 100644 --- a/MapboxCoreNavigation/Route.swift +++ b/MapboxCoreNavigation/Route.swift @@ -5,6 +5,8 @@ // Created by Sander van Tulden on 28/10/2022. // Copyright © 2022 Mapbox. All rights reserved. // + +import CoreLocation import MapboxDirections extension Route { diff --git a/MapboxCoreNavigation/RouteController.swift b/MapboxCoreNavigation/RouteController.swift index 205906603..af0c5f226 100644 --- a/MapboxCoreNavigation/RouteController.swift +++ b/MapboxCoreNavigation/RouteController.swift @@ -701,7 +701,7 @@ extension RouteController: CLLocationManagerDelegate { self.lastRerouteLocation = location - let complete = { [weak self] (mostSimilarRoute: Route?, routes: [Route]?, error: NSError?) in + let complete = { (mostSimilarRoute: Route?, routes: [Route]?, error: NSError?) in completion(mostSimilarRoute, routes, error) } diff --git a/MapboxCoreNavigation/RouteOptions.swift b/MapboxCoreNavigation/RouteOptions.swift index 08d612bfe..c3c8b9059 100644 --- a/MapboxCoreNavigation/RouteOptions.swift +++ b/MapboxCoreNavigation/RouteOptions.swift @@ -1,4 +1,6 @@ +import CoreLocation import MapboxDirections +import MapboxDirectionsObjc extension RouteOptions { internal var activityType: CLActivityType { diff --git a/MapboxCoreNavigation/SimulatedLocationManager.swift b/MapboxCoreNavigation/SimulatedLocationManager.swift index 817719fa9..8658aa622 100644 --- a/MapboxCoreNavigation/SimulatedLocationManager.swift +++ b/MapboxCoreNavigation/SimulatedLocationManager.swift @@ -1,4 +1,4 @@ -import Foundation +import CoreLocation import MapboxDirections import Turf diff --git a/MapboxCoreNavigation/String.swift b/MapboxCoreNavigation/String.swift index 9ac6147ef..84d3ec982 100644 --- a/MapboxCoreNavigation/String.swift +++ b/MapboxCoreNavigation/String.swift @@ -16,9 +16,9 @@ extension String { return startIndex.. String { + public func byReplacing(_ replacements: [Replacement]) -> String { return replacements.reduce(self) { $0.replacingOccurrences(of: $1.of, with: $1.with) } } diff --git a/MapboxCoreNavigation/MBNavigationSettings.h b/MapboxCoreNavigationObjc/MBNavigationSettings.h similarity index 100% rename from MapboxCoreNavigation/MBNavigationSettings.h rename to MapboxCoreNavigationObjc/MBNavigationSettings.h diff --git a/MapboxCoreNavigation/MBNavigationSettings.m b/MapboxCoreNavigationObjc/MBNavigationSettings.m similarity index 100% rename from MapboxCoreNavigation/MBNavigationSettings.m rename to MapboxCoreNavigationObjc/MBNavigationSettings.m diff --git a/MapboxCoreNavigation/MBRouteController.h b/MapboxCoreNavigationObjc/MBRouteController.h similarity index 100% rename from MapboxCoreNavigation/MBRouteController.h rename to MapboxCoreNavigationObjc/MBRouteController.h diff --git a/MapboxCoreNavigation/MBRouteController.m b/MapboxCoreNavigationObjc/MBRouteController.m similarity index 100% rename from MapboxCoreNavigation/MBRouteController.m rename to MapboxCoreNavigationObjc/MBRouteController.m diff --git a/MapboxCoreNavigation/MapboxCoreNavigation.h b/MapboxCoreNavigationObjc/include/MapboxCoreNavigation.h similarity index 85% rename from MapboxCoreNavigation/MapboxCoreNavigation.h rename to MapboxCoreNavigationObjc/include/MapboxCoreNavigation.h index 58d10f372..7779322a5 100644 --- a/MapboxCoreNavigation/MapboxCoreNavigation.h +++ b/MapboxCoreNavigationObjc/include/MapboxCoreNavigation.h @@ -6,8 +6,8 @@ FOUNDATION_EXPORT double MapboxCoreNavigationVersionNumber; //! Project version string for MapboxCoreNavigation. FOUNDATION_EXPORT const unsigned char MapboxCoreNavigationVersionString[]; -#import "MBNavigationSettings.h" -#import "MBRouteController.h" +#import "../MBNavigationSettings.h" +#import "../MBRouteController.h" /** Constant representing the domain in which errors created in this library will live under. diff --git a/MapboxCoreNavigationTests/BridgingTests.m b/MapboxCoreNavigationTests/BridgingTests.m deleted file mode 100644 index 197f5c40f..000000000 --- a/MapboxCoreNavigationTests/BridgingTests.m +++ /dev/null @@ -1,42 +0,0 @@ -#import -#import "MapboxCoreNavigationTests-Swift.h" -@import MapLibre; -@import MapboxCoreNavigation; -@import MapboxDirections; - -@interface BridgingTests : XCTestCase -@property (nonatomic) MBRouteController *routeController; -@end - -@implementation BridgingTests - -- (void)setUp { - [super setUp]; -} - -- (void)testUpdateRoute { - NSDictionary *response = [MBFixture JSONFromFileNamedWithName:@"routeWithInstructions"]; - NSDictionary *routeDict = response[@"routes"][0]; - MBWaypoint *wp1 = [[MBWaypoint alloc] initWithCoordinate:CLLocationCoordinate2DMake(37.795042, -122.413165) coordinateAccuracy:0 name:@"wp1"]; - MBWaypoint *wp2 = [[MBWaypoint alloc] initWithCoordinate:CLLocationCoordinate2DMake(37.7727, -122.433378) coordinateAccuracy:0 name:@"wp2"]; - NSArray *waypoints = @[wp1, wp2]; - MBNavigationRouteOptions *options = [[MBNavigationRouteOptions alloc] initWithWaypoints:waypoints profileIdentifier:MBDirectionsProfileIdentifierAutomobileAvoidingTraffic]; - MBRoute *route = [[MBRoute alloc] initWithJSON:routeDict waypoints:waypoints routeOptions:options]; - route.accessToken = @"garbage"; - XCTAssertNotNil(route); - - MBDirectionsSpy *directions = [[MBDirectionsSpy alloc] initWithAccessToken:@"garbage" host:nil]; - MBNavigationLocationManager *locationManager = [[MBNavigationLocationManager alloc] init]; - _routeController = [[MBRouteController alloc] initWithRoute:route directions:directions locationManager:locationManager]; - XCTAssertNotNil(_routeController); - - XCTestExpectation *expectation = [self expectationForNotification:MBRouteControllerDidRerouteNotification object:nil handler:^BOOL(NSNotification * _Nonnull notification) { - return YES; - }]; - - _routeController.routeProgress = [[MBRouteProgress alloc] initWithRoute:route legIndex:0 spokenInstructionIndex:0]; - [self waitForExpectations:@[expectation] timeout:5]; -} - -@end - diff --git a/MapboxCoreNavigationTests/CLHeadingPrivate.h b/MapboxCoreNavigationTests/CLHeadingPrivate.h deleted file mode 100644 index 56c4171e1..000000000 --- a/MapboxCoreNavigationTests/CLHeadingPrivate.h +++ /dev/null @@ -1,6 +0,0 @@ -#import -#import "CoreLocation/CoreLocation.h" - -@interface CLHeading (Private) -- (id)initWithHeading:(double)arg1 accuracy:(double)arg2; -@end diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/.gitignore b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/.gitignore deleted file mode 100644 index c765619ec..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/.gitignore +++ /dev/null @@ -1,25 +0,0 @@ -# Xcode -# -# gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore -.DS_Store -Pods/ -PodInstall.xcworkspace/ - -## Build generated -build/ -DerivedData/ - -## Various settings -*.pbxuser -!default.pbxuser -*.mode1v3 -!default.mode1v3 -*.mode2v3 -!default.mode2v3 -*.perspectivev3 -!default.perspectivev3 -xcuserdata/ - -## Other -*.moved-aside -*.xcuserstate diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/project.pbxproj b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/project.pbxproj deleted file mode 100644 index 3f719345b..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/project.pbxproj +++ /dev/null @@ -1,525 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 46; - objects = { - -/* Begin PBXBuildFile section */ - 0E531498D2BD4D0A35E05631 /* Pods_PodInstall.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 7F5A1E4FF264F1A7445D5F88 /* Pods_PodInstall.framework */; }; - 352544E01E66623D004C8F1C /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352544DF1E66623D004C8F1C /* AppDelegate.swift */; }; - 352544E21E66623D004C8F1C /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352544E11E66623D004C8F1C /* ViewController.swift */; }; - 352544E51E66623D004C8F1C /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 352544E31E66623D004C8F1C /* Main.storyboard */; }; - 352544E71E66623D004C8F1C /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 352544E61E66623D004C8F1C /* Assets.xcassets */; }; - 352544EA1E66623D004C8F1C /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 352544E81E66623D004C8F1C /* LaunchScreen.storyboard */; }; - 352544F51E66623D004C8F1C /* PodInstallTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352544F41E66623D004C8F1C /* PodInstallTests.swift */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 352544F11E66623D004C8F1C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = 352544D41E66623D004C8F1C /* Project object */; - proxyType = 1; - remoteGlobalIDString = 352544DB1E66623D004C8F1C; - remoteInfo = PodInstall; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXFileReference section */ - 205A693AB5C3CBB057D1292F /* Pods-PodInstall.release.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodInstall.release.xcconfig"; path = "Pods/Target Support Files/Pods-PodInstall/Pods-PodInstall.release.xcconfig"; sourceTree = ""; }; - 352544DC1E66623D004C8F1C /* PodInstall.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = PodInstall.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 352544DF1E66623D004C8F1C /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 352544E11E66623D004C8F1C /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ViewController.swift; sourceTree = ""; }; - 352544E41E66623D004C8F1C /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 352544E61E66623D004C8F1C /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 352544E91E66623D004C8F1C /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/LaunchScreen.storyboard; sourceTree = ""; }; - 352544EB1E66623D004C8F1C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 352544F01E66623D004C8F1C /* PodInstallTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = PodInstallTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 352544F41E66623D004C8F1C /* PodInstallTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = PodInstallTests.swift; sourceTree = ""; }; - 352544F61E66623D004C8F1C /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 7F5A1E4FF264F1A7445D5F88 /* Pods_PodInstall.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = Pods_PodInstall.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 8D0A6BF1CF95F2DF1E378B22 /* Pods-PodInstall.debug.xcconfig */ = {isa = PBXFileReference; includeInIndex = 1; lastKnownFileType = text.xcconfig; name = "Pods-PodInstall.debug.xcconfig"; path = "Pods/Target Support Files/Pods-PodInstall/Pods-PodInstall.debug.xcconfig"; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 352544D91E66623D004C8F1C /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 0E531498D2BD4D0A35E05631 /* Pods_PodInstall.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352544ED1E66623D004C8F1C /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 352544D31E66623D004C8F1C = { - isa = PBXGroup; - children = ( - 352544DE1E66623D004C8F1C /* PodInstall */, - 352544F31E66623D004C8F1C /* PodInstallTests */, - 352544DD1E66623D004C8F1C /* Products */, - CBF3FEAD56D90E4C57D46762 /* Pods */, - 6EE19F25422BE76D5CB478CF /* Frameworks */, - ); - sourceTree = ""; - }; - 352544DD1E66623D004C8F1C /* Products */ = { - isa = PBXGroup; - children = ( - 352544DC1E66623D004C8F1C /* PodInstall.app */, - 352544F01E66623D004C8F1C /* PodInstallTests.xctest */, - ); - name = Products; - sourceTree = ""; - }; - 352544DE1E66623D004C8F1C /* PodInstall */ = { - isa = PBXGroup; - children = ( - 352544DF1E66623D004C8F1C /* AppDelegate.swift */, - 352544E11E66623D004C8F1C /* ViewController.swift */, - 352544E31E66623D004C8F1C /* Main.storyboard */, - 352544E61E66623D004C8F1C /* Assets.xcassets */, - 352544E81E66623D004C8F1C /* LaunchScreen.storyboard */, - 352544EB1E66623D004C8F1C /* Info.plist */, - ); - path = PodInstall; - sourceTree = ""; - }; - 352544F31E66623D004C8F1C /* PodInstallTests */ = { - isa = PBXGroup; - children = ( - 352544F41E66623D004C8F1C /* PodInstallTests.swift */, - 352544F61E66623D004C8F1C /* Info.plist */, - ); - path = PodInstallTests; - sourceTree = ""; - }; - 6EE19F25422BE76D5CB478CF /* Frameworks */ = { - isa = PBXGroup; - children = ( - 7F5A1E4FF264F1A7445D5F88 /* Pods_PodInstall.framework */, - ); - name = Frameworks; - sourceTree = ""; - }; - CBF3FEAD56D90E4C57D46762 /* Pods */ = { - isa = PBXGroup; - children = ( - 8D0A6BF1CF95F2DF1E378B22 /* Pods-PodInstall.debug.xcconfig */, - 205A693AB5C3CBB057D1292F /* Pods-PodInstall.release.xcconfig */, - ); - name = Pods; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXNativeTarget section */ - 352544DB1E66623D004C8F1C /* PodInstall */ = { - isa = PBXNativeTarget; - buildConfigurationList = 352544F91E66623D004C8F1C /* Build configuration list for PBXNativeTarget "PodInstall" */; - buildPhases = ( - FCAEDB6CF8C116409B047EA1 /* [CP] Check Pods Manifest.lock */, - 352544D81E66623D004C8F1C /* Sources */, - 352544D91E66623D004C8F1C /* Frameworks */, - 352544DA1E66623D004C8F1C /* Resources */, - 2C42AC3C47F2A0A83F753C88 /* [CP] Embed Pods Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = PodInstall; - productName = PodInstall; - productReference = 352544DC1E66623D004C8F1C /* PodInstall.app */; - productType = "com.apple.product-type.application"; - }; - 352544EF1E66623D004C8F1C /* PodInstallTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 352544FC1E66623D004C8F1C /* Build configuration list for PBXNativeTarget "PodInstallTests" */; - buildPhases = ( - 352544EC1E66623D004C8F1C /* Sources */, - 352544ED1E66623D004C8F1C /* Frameworks */, - 352544EE1E66623D004C8F1C /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 352544F21E66623D004C8F1C /* PBXTargetDependency */, - ); - name = PodInstallTests; - productName = PodInstallTests; - productReference = 352544F01E66623D004C8F1C /* PodInstallTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - 352544D41E66623D004C8F1C /* Project object */ = { - isa = PBXProject; - attributes = { - LastSwiftUpdateCheck = 0820; - LastUpgradeCheck = 0920; - TargetAttributes = { - 352544DB1E66623D004C8F1C = { - CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = GJZR2MEM28; - ProvisioningStyle = Automatic; - }; - 352544EF1E66623D004C8F1C = { - CreatedOnToolsVersion = 8.2.1; - DevelopmentTeam = GJZR2MEM28; - ProvisioningStyle = Automatic; - TestTargetID = 352544DB1E66623D004C8F1C; - }; - }; - }; - buildConfigurationList = 352544D71E66623D004C8F1C /* Build configuration list for PBXProject "PodInstall" */; - compatibilityVersion = "Xcode 3.2"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - en, - Base, - ); - mainGroup = 352544D31E66623D004C8F1C; - productRefGroup = 352544DD1E66623D004C8F1C /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 352544DB1E66623D004C8F1C /* PodInstall */, - 352544EF1E66623D004C8F1C /* PodInstallTests */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 352544DA1E66623D004C8F1C /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 352544EA1E66623D004C8F1C /* LaunchScreen.storyboard in Resources */, - 352544E71E66623D004C8F1C /* Assets.xcassets in Resources */, - 352544E51E66623D004C8F1C /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352544EE1E66623D004C8F1C /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 2C42AC3C47F2A0A83F753C88 /* [CP] Embed Pods Frameworks */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${SRCROOT}/Pods/Target Support Files/Pods-PodInstall/Pods-PodInstall-frameworks.sh", - "${PODS_ROOT}/Mapbox-iOS-SDK/dynamic/Mapbox.framework", - "${PODS_ROOT}/Mapbox-iOS-SDK/dynamic/Mapbox.framework.dSYM", - "${BUILT_PRODUCTS_DIR}/MapboxCoreNavigation/MapboxCoreNavigation.framework", - "${BUILT_PRODUCTS_DIR}/MapboxDirections.swift/MapboxDirections.framework", - "${BUILT_PRODUCTS_DIR}/MapboxMobileEvents/MapboxMobileEvents.framework", - "${BUILT_PRODUCTS_DIR}/MapboxNavigation/MapboxNavigation.framework", - "${BUILT_PRODUCTS_DIR}/MapboxSpeech/MapboxSpeech.framework", - "${BUILT_PRODUCTS_DIR}/Polyline/Polyline.framework", - "${BUILT_PRODUCTS_DIR}/Solar/Solar.framework", - "${BUILT_PRODUCTS_DIR}/Turf/Turf.framework", - ); - name = "[CP] Embed Pods Frameworks"; - outputPaths = ( - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Mapbox.framework", - "${DWARF_DSYM_FOLDER_PATH}/Mapbox.framework.dSYM", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MapboxCoreNavigation.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MapboxDirections.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MapboxMobileEvents.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MapboxNavigation.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/MapboxSpeech.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Polyline.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Solar.framework", - "${TARGET_BUILD_DIR}/${FRAMEWORKS_FOLDER_PATH}/Turf.framework", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "\"${SRCROOT}/Pods/Target Support Files/Pods-PodInstall/Pods-PodInstall-frameworks.sh\"\n"; - showEnvVarsInLog = 0; - }; - FCAEDB6CF8C116409B047EA1 /* [CP] Check Pods Manifest.lock */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "${PODS_PODFILE_DIR_PATH}/Podfile.lock", - "${PODS_ROOT}/Manifest.lock", - ); - name = "[CP] Check Pods Manifest.lock"; - outputPaths = ( - "$(DERIVED_FILE_DIR)/Pods-PodInstall-checkManifestLockResult.txt", - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "diff \"${PODS_PODFILE_DIR_PATH}/Podfile.lock\" \"${PODS_ROOT}/Manifest.lock\" > /dev/null\nif [ $? != 0 ] ; then\n # print error to STDERR\n echo \"error: The sandbox is not in sync with the Podfile.lock. Run 'pod install' or update your CocoaPods installation.\" >&2\n exit 1\nfi\n# This output is used by Xcode 'outputs' to avoid re-running this script phase.\necho \"SUCCESS\" > \"${SCRIPT_OUTPUT_FILE_0}\"\n"; - showEnvVarsInLog = 0; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 352544D81E66623D004C8F1C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 352544E21E66623D004C8F1C /* ViewController.swift in Sources */, - 352544E01E66623D004C8F1C /* AppDelegate.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352544EC1E66623D004C8F1C /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 352544F51E66623D004C8F1C /* PodInstallTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 352544F21E66623D004C8F1C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 352544DB1E66623D004C8F1C /* PodInstall */; - targetProxy = 352544F11E66623D004C8F1C /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 352544E31E66623D004C8F1C /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 352544E41E66623D004C8F1C /* Base */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 352544E81E66623D004C8F1C /* LaunchScreen.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 352544E91E66623D004C8F1C /* Base */, - ); - name = LaunchScreen.storyboard; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 352544F71E66623D004C8F1C /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = dwarf; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.2; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 352544F81E66623D004C8F1C /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 10.2; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SWIFT_OPTIMIZATION_LEVEL = "-Owholemodule"; - SWIFT_VERSION = 4.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - }; - name = Release; - }; - 352544FA1E66623D004C8F1C /* Debug */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 8D0A6BF1CF95F2DF1E378B22 /* Pods-PodInstall.debug.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - DEVELOPMENT_TEAM = GJZR2MEM28; - INFOPLIST_FILE = PodInstall/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.navigation.PodInstall; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 352544FB1E66623D004C8F1C /* Release */ = { - isa = XCBuildConfiguration; - baseConfigurationReference = 205A693AB5C3CBB057D1292F /* Pods-PodInstall.release.xcconfig */; - buildSettings = { - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - DEVELOPMENT_TEAM = GJZR2MEM28; - INFOPLIST_FILE = PodInstall/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.navigation.PodInstall; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 352544FD1E66623D004C8F1C /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - BUNDLE_LOADER = "$(TEST_HOST)"; - DEVELOPMENT_TEAM = GJZR2MEM28; - INFOPLIST_FILE = PodInstallTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.navigation.PodInstallTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/PodInstall.app/PodInstall"; - }; - name = Debug; - }; - 352544FE1E66623D004C8F1C /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - BUNDLE_LOADER = "$(TEST_HOST)"; - DEVELOPMENT_TEAM = GJZR2MEM28; - INFOPLIST_FILE = PodInstallTests/Info.plist; - LD_RUNPATH_SEARCH_PATHS = "$(inherited) @executable_path/Frameworks @loader_path/Frameworks"; - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.navigation.PodInstallTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 3.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/PodInstall.app/PodInstall"; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 352544D71E66623D004C8F1C /* Build configuration list for PBXProject "PodInstall" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 352544F71E66623D004C8F1C /* Debug */, - 352544F81E66623D004C8F1C /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 352544F91E66623D004C8F1C /* Build configuration list for PBXNativeTarget "PodInstall" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 352544FA1E66623D004C8F1C /* Debug */, - 352544FB1E66623D004C8F1C /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 352544FC1E66623D004C8F1C /* Build configuration list for PBXNativeTarget "PodInstallTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 352544FD1E66623D004C8F1C /* Debug */, - 352544FE1E66623D004C8F1C /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - }; - rootObject = 352544D41E66623D004C8F1C /* Project object */; -} diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/project.xcworkspace/contents.xcworkspacedata b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/project.xcworkspace/contents.xcworkspacedata deleted file mode 100644 index 28fd90033..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/project.xcworkspace/contents.xcworkspacedata +++ /dev/null @@ -1,7 +0,0 @@ - - - - - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/xcshareddata/xcschemes/PodInstall.xcscheme b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/xcshareddata/xcschemes/PodInstall.xcscheme deleted file mode 100644 index 3b6348715..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall.xcodeproj/xcshareddata/xcschemes/PodInstall.xcscheme +++ /dev/null @@ -1,103 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/AppDelegate.swift b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/AppDelegate.swift deleted file mode 100644 index ecede7fe5..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/AppDelegate.swift +++ /dev/null @@ -1,38 +0,0 @@ -import UIKit - -@UIApplicationMain -class AppDelegate: UIResponder, UIApplicationDelegate { - - var window: UIWindow? - - - func application(_ application: UIApplication, didFinishLaunchingWithOptions launchOptions: [UIApplicationLaunchOptionsKey: Any]?) -> Bool { - // Override point for customization after application launch. - return true - } - - func applicationWillResignActive(_ application: UIApplication) { - // Sent when the application is about to move from active to inactive state. This can occur for certain types of temporary interruptions (such as an incoming phone call or SMS message) or when the user quits the application and it begins the transition to the background state. - // Use this method to pause ongoing tasks, disable timers, and invalidate graphics rendering callbacks. Games should use this method to pause the game. - } - - func applicationDidEnterBackground(_ application: UIApplication) { - // Use this method to release shared resources, save user data, invalidate timers, and store enough application state information to restore your application to its current state in case it is terminated later. - // If your application supports background execution, this method is called instead of applicationWillTerminate: when the user quits. - } - - func applicationWillEnterForeground(_ application: UIApplication) { - // Called as part of the transition from the background to the active state; here you can undo many of the changes made on entering the background. - } - - func applicationDidBecomeActive(_ application: UIApplication) { - // Restart any tasks that were paused (or not yet started) while the application was inactive. If the application was previously in the background, optionally refresh the user interface. - } - - func applicationWillTerminate(_ application: UIApplication) { - // Called when the application is about to terminate. Save data if appropriate. See also applicationDidEnterBackground:. - } - - -} - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Assets.xcassets/AppIcon.appiconset/Contents.json b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Assets.xcassets/AppIcon.appiconset/Contents.json deleted file mode 100644 index 36d2c80d8..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Assets.xcassets/AppIcon.appiconset/Contents.json +++ /dev/null @@ -1,68 +0,0 @@ -{ - "images" : [ - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "29x29", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "40x40", - "scale" : "3x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "2x" - }, - { - "idiom" : "iphone", - "size" : "60x60", - "scale" : "3x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "29x29", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "40x40", - "scale" : "2x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "1x" - }, - { - "idiom" : "ipad", - "size" : "76x76", - "scale" : "2x" - } - ], - "info" : { - "version" : 1, - "author" : "xcode" - } -} \ No newline at end of file diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Base.lproj/LaunchScreen.storyboard b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Base.lproj/LaunchScreen.storyboard deleted file mode 100644 index fdf3f97d1..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Base.lproj/LaunchScreen.storyboard +++ /dev/null @@ -1,27 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Base.lproj/Main.storyboard b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Base.lproj/Main.storyboard deleted file mode 100644 index 273375fc7..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Base.lproj/Main.storyboard +++ /dev/null @@ -1,26 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Info.plist b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Info.plist deleted file mode 100644 index 7683b57e4..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/Info.plist +++ /dev/null @@ -1,47 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - APPL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - LSRequiresIPhoneOS - - UILaunchStoryboardName - LaunchScreen - UIMainStoryboardFile - Main - UIRequiredDeviceCapabilities - - armv7 - - UISupportedInterfaceOrientations - - UIInterfaceOrientationPortrait - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - UISupportedInterfaceOrientations~ipad - - UIInterfaceOrientationPortrait - UIInterfaceOrientationPortraitUpsideDown - UIInterfaceOrientationLandscapeLeft - UIInterfaceOrientationLandscapeRight - - NSLocationAlwaysUsageDescription - Get user location - - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/ViewController.swift b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/ViewController.swift deleted file mode 100644 index 977f17d6f..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstall/ViewController.swift +++ /dev/null @@ -1,12 +0,0 @@ -import UIKit -import MapboxNavigation -import MapboxCoreNavigation - -class ViewController: UIViewController { - - override func viewDidLoad() { - super.viewDidLoad() - // Do any additional setup after loading the view, typically from a nib. - } -} - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstallTests/Info.plist b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstallTests/Info.plist deleted file mode 100644 index 6c6c23c43..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstallTests/Info.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - BNDL - CFBundleShortVersionString - 1.0 - CFBundleVersion - 1 - - diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstallTests/PodInstallTests.swift b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstallTests/PodInstallTests.swift deleted file mode 100644 index 1dc75490c..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/PodInstallTests/PodInstallTests.swift +++ /dev/null @@ -1,28 +0,0 @@ -import XCTest -@testable import PodInstall - -class PodInstallTests: XCTestCase { - - override func setUp() { - super.setUp() - // Put setup code here. This method is called before the invocation of each test method in the class. - } - - override func tearDown() { - // Put teardown code here. This method is called after the invocation of each test method in the class. - super.tearDown() - } - - func testExample() { - // This is an example of a functional test case. - // Use XCTAssert and related functions to verify your tests produce the correct results. - } - - func testPerformanceExample() { - // This is an example of a performance test case. - self.measure { - // Put the code you want to measure the time of here. - } - } - -} diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/Podfile b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/Podfile deleted file mode 100644 index 750139c2c..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/Podfile +++ /dev/null @@ -1,8 +0,0 @@ -platform :ios, '9.0' -use_frameworks! - -target 'PodInstall' do - # The branch of MapboxNavigation and MapboxNavigation will be replaced by Bitrise to use the current branch. - pod 'MapboxNavigation', :path => '../../../' - pod 'MapboxCoreNavigation', :path => '../../../' -end diff --git a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/Podfile.lock b/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/Podfile.lock deleted file mode 100644 index 0ca372550..000000000 --- a/MapboxCoreNavigationTests/CocoaPodsTest/PodInstall/Podfile.lock +++ /dev/null @@ -1,53 +0,0 @@ -PODS: - - Mapbox-iOS-SDK (4.3.0) - - MapboxCoreNavigation (0.20.1): - - MapboxDirections.swift (~> 0.23.0) - - MapboxMobileEvents (~> 0.5) - - Turf (~> 0.2) - - MapboxDirections.swift (0.23.0): - - Polyline (~> 4.2) - - MapboxMobileEvents (0.5.0) - - MapboxNavigation (0.20.1): - - Mapbox-iOS-SDK (~> 4.3) - - MapboxCoreNavigation (= 0.20.1) - - MapboxSpeech (~> 0.0.1) - - Solar (~> 2.1) - - MapboxSpeech (0.0.1) - - Polyline (4.2.0) - - Solar (2.1.0) - - Turf (0.2.0) - -DEPENDENCIES: - - MapboxCoreNavigation (from `../../../`) - - MapboxNavigation (from `../../../`) - -SPEC REPOS: - https://github.com/cocoapods/specs.git: - - Mapbox-iOS-SDK - - MapboxDirections.swift - - MapboxMobileEvents - - MapboxSpeech - - Polyline - - Solar - - Turf - -EXTERNAL SOURCES: - MapboxCoreNavigation: - :path: "../../../" - MapboxNavigation: - :path: "../../../" - -SPEC CHECKSUMS: - Mapbox-iOS-SDK: 7d8d510088ba7900d11aa3ceb98f563b040efca1 - MapboxCoreNavigation: 67ea54fd4919bc1d5de9eaf104c020f0f63ee08a - MapboxDirections.swift: 1c8eb3fd29b7548d9ce53edc99e2e2aabfa767fa - MapboxMobileEvents: e4aa629e4e2e3c250b5dadc15b63d67b91469a79 - MapboxNavigation: c69ce7e9b7487bee4b8e5260f86426d036961c51 - MapboxSpeech: 6cc9b3d53adc2988af3ebc704dd17907b84a3f9f - Polyline: 3d69f75bb136357e27291d439d0436c6ebda57a4 - Solar: 2dc6e7cc39186cb0c8228fa08df76fb50c7d8f24 - Turf: 65817136031583da7ea2b43e6611dd10ddbdab2f - -PODFILE CHECKSUM: 55ae5a7edbc3dedda5149ba3d58b992ab7327f95 - -COCOAPODS: 1.6.0.beta.1 diff --git a/MapboxCoreNavigationTests/Fixture.swift b/MapboxCoreNavigationTests/Fixture.swift deleted file mode 100644 index 52b76073e..000000000 --- a/MapboxCoreNavigationTests/Fixture.swift +++ /dev/null @@ -1,35 +0,0 @@ -import XCTest -import Foundation - -@objc(MBFixture) -class Fixture: NSObject { - @objc class func stringFromFileNamed(name: String) -> String { - guard let path = Bundle(for: self).path(forResource: name, ofType: "json") ?? Bundle(for: self).path(forResource: name, ofType: "geojson") else { - XCTAssert(false, "Fixture \(name) not found.") - return "" - } - do { - return try String(contentsOfFile: path, encoding: .utf8) - } catch { - XCTAssert(false, "Unable to decode fixture at \(path): \(error).") - return "" - } - } - - @objc class func JSONFromFileNamed(name: String) -> [String: Any] { - guard let path = Bundle(for: self).path(forResource: name, ofType: "json") ?? Bundle(for: self).path(forResource: name, ofType: "geojson") else { - XCTAssert(false, "Fixture \(name) not found.") - return [:] - } - guard let data = NSData(contentsOfFile: path) else { - XCTAssert(false, "No data found at \(path).") - return [:] - } - do { - return try JSONSerialization.jsonObject(with: data as Data, options: []) as! [String: AnyObject] - } catch { - XCTAssert(false, "Unable to decode JSON fixture at \(path): \(error).") - return [:] - } - } -} diff --git a/MapboxCoreNavigationTests/Heading.swift b/MapboxCoreNavigationTests/Heading.swift new file mode 100644 index 000000000..eee28ebf3 --- /dev/null +++ b/MapboxCoreNavigationTests/Heading.swift @@ -0,0 +1,35 @@ +import CoreLocation + +class Heading: CLHeading { + + private var _heading: CLLocationDirection + private var _accuracy: CLLocationDirection + + init(heading: CLLocationDirection, accuracy: CLLocationDirection) { + self._heading = heading + self._accuracy = accuracy + super.init() + } + + required init?(coder: NSCoder) { + fatalError("init(coder:) has not been implemented") + } + + open override var trueHeading: CLLocationDirection { + get { + return _heading + } + set { + _heading = newValue + } + } + + open override var headingAccuracy: CLLocationDirection { + get { + return _accuracy + } + set { + _accuracy = newValue + } + } +} diff --git a/MapboxCoreNavigationTests/MD5Tests.swift b/MapboxCoreNavigationTests/MD5Tests.swift index 20199e24e..ca329378a 100644 --- a/MapboxCoreNavigationTests/MD5Tests.swift +++ b/MapboxCoreNavigationTests/MD5Tests.swift @@ -49,7 +49,7 @@ class Tests: XCTestCase { } func testNaughtyStrings() { - let path = Bundle(for: Tests.self).path(forResource: "md5_crazy_strings", ofType: "txt")! + let path = Bundle.module.path(forResource: "md5_crazy_strings", ofType: "txt")! let content = try! String(contentsOfFile: path, encoding: .utf8) let lines = content.components(separatedBy: .newlines) diff --git a/MapboxCoreNavigationTests/MapboxCoreNavigationTests-Bridging-Header.h b/MapboxCoreNavigationTests/MapboxCoreNavigationTests-Bridging-Header.h deleted file mode 100644 index 2d8d89128..000000000 --- a/MapboxCoreNavigationTests/MapboxCoreNavigationTests-Bridging-Header.h +++ /dev/null @@ -1,2 +0,0 @@ -#import -#import "CLHeadingPrivate.h" diff --git a/MapboxCoreNavigationTests/MapboxCoreNavigationTests.swift b/MapboxCoreNavigationTests/MapboxCoreNavigationTests.swift index 3c3159e90..0dff9db4e 100644 --- a/MapboxCoreNavigationTests/MapboxCoreNavigationTests.swift +++ b/MapboxCoreNavigationTests/MapboxCoreNavigationTests.swift @@ -1,9 +1,10 @@ import XCTest import MapboxDirections import Turf +import CoreLocation @testable import MapboxCoreNavigation -let response = Fixture.JSONFromFileNamed(name: "routeWithInstructions") +let response = Fixture.JSONFromFileNamed(name: "routeWithInstructions", bundle: .module) let jsonRoute = (response["routes"] as! [AnyObject]).first as! [String : Any] // -122.413165,37.795042 let waypoint1 = Waypoint(coordinate: CLLocationCoordinate2D(latitude: 37.795042, longitude: -122.413165)) diff --git a/MapboxCoreNavigationTests/NavigationLocationManagerTests.swift b/MapboxCoreNavigationTests/NavigationLocationManagerTests.swift index 52717893b..88f80d0bf 100644 --- a/MapboxCoreNavigationTests/NavigationLocationManagerTests.swift +++ b/MapboxCoreNavigationTests/NavigationLocationManagerTests.swift @@ -1,5 +1,6 @@ -import XCTest +import CoreLocation import MapboxCoreNavigation +import XCTest class NavigationLocationManagerTests: XCTestCase { diff --git a/MapboxCoreNavigationTests/A12-To-Veenendaal-Bigger-Detour.json b/MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Bigger-Detour.json similarity index 100% rename from MapboxCoreNavigationTests/A12-To-Veenendaal-Bigger-Detour.json rename to MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Bigger-Detour.json diff --git a/MapboxCoreNavigationTests/A12-To-Veenendaal-Normal-With-Big-Trafficjam.json b/MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Normal-With-Big-Trafficjam.json similarity index 100% rename from MapboxCoreNavigationTests/A12-To-Veenendaal-Normal-With-Big-Trafficjam.json rename to MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Normal-With-Big-Trafficjam.json diff --git a/MapboxCoreNavigationTests/A12-To-Veenendaal-Normal.json b/MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Normal.json similarity index 100% rename from MapboxCoreNavigationTests/A12-To-Veenendaal-Normal.json rename to MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Normal.json diff --git a/MapboxCoreNavigationTests/A12-To-Veenendaal-Slight-Difference.json b/MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Slight-Difference.json similarity index 100% rename from MapboxCoreNavigationTests/A12-To-Veenendaal-Slight-Difference.json rename to MapboxCoreNavigationTests/Resources/A12-To-Veenendaal-Slight-Difference.json diff --git a/MapboxCoreNavigationTests/Info.plist b/MapboxCoreNavigationTests/Resources/Info.plist similarity index 100% rename from MapboxCoreNavigationTests/Info.plist rename to MapboxCoreNavigationTests/Resources/Info.plist diff --git a/MapboxCoreNavigationTests/Nijmegen-Arnhem-Veenendaal.json b/MapboxCoreNavigationTests/Resources/Nijmegen-Arnhem-Veenendaal.json similarity index 100% rename from MapboxCoreNavigationTests/Nijmegen-Arnhem-Veenendaal.json rename to MapboxCoreNavigationTests/Resources/Nijmegen-Arnhem-Veenendaal.json diff --git a/MapboxCoreNavigationTests/Nijmegen-Bemmel-Veenendaal.json b/MapboxCoreNavigationTests/Resources/Nijmegen-Bemmel-Veenendaal.json similarity index 100% rename from MapboxCoreNavigationTests/Nijmegen-Bemmel-Veenendaal.json rename to MapboxCoreNavigationTests/Resources/Nijmegen-Bemmel-Veenendaal.json diff --git a/MapboxCoreNavigationTests/Nijmegen-Bemmel-Veenendaal2.json b/MapboxCoreNavigationTests/Resources/Nijmegen-Bemmel-Veenendaal2.json similarity index 100% rename from MapboxCoreNavigationTests/Nijmegen-Bemmel-Veenendaal2.json rename to MapboxCoreNavigationTests/Resources/Nijmegen-Bemmel-Veenendaal2.json diff --git a/MapboxCoreNavigationTests/Wolfheze-Veenendaal-Normal.json b/MapboxCoreNavigationTests/Resources/Wolfheze-Veenendaal-Normal.json similarity index 100% rename from MapboxCoreNavigationTests/Wolfheze-Veenendaal-Normal.json rename to MapboxCoreNavigationTests/Resources/Wolfheze-Veenendaal-Normal.json diff --git a/MapboxCoreNavigationTests/Wolfheze-Veenendaal-Small-Detour-At-End.json b/MapboxCoreNavigationTests/Resources/Wolfheze-Veenendaal-Small-Detour-At-End.json similarity index 100% rename from MapboxCoreNavigationTests/Wolfheze-Veenendaal-Small-Detour-At-End.json rename to MapboxCoreNavigationTests/Resources/Wolfheze-Veenendaal-Small-Detour-At-End.json diff --git a/MapboxCoreNavigationTests/dc-line.geojson b/MapboxCoreNavigationTests/Resources/dc-line.geojson similarity index 100% rename from MapboxCoreNavigationTests/dc-line.geojson rename to MapboxCoreNavigationTests/Resources/dc-line.geojson diff --git a/MapboxCoreNavigationTests/md5_crazy_strings.txt b/MapboxCoreNavigationTests/Resources/md5_crazy_strings.txt similarity index 100% rename from MapboxCoreNavigationTests/md5_crazy_strings.txt rename to MapboxCoreNavigationTests/Resources/md5_crazy_strings.txt diff --git a/MapboxCoreNavigationTests/route.json b/MapboxCoreNavigationTests/Resources/route.json similarity index 100% rename from MapboxCoreNavigationTests/route.json rename to MapboxCoreNavigationTests/Resources/route.json diff --git a/MapboxCoreNavigationTests/routeWithInstructions.json b/MapboxCoreNavigationTests/Resources/routeWithInstructions.json similarity index 100% rename from MapboxCoreNavigationTests/routeWithInstructions.json rename to MapboxCoreNavigationTests/Resources/routeWithInstructions.json diff --git a/MapboxCoreNavigationTests/routeWithTunnels_9thStreetDC.json b/MapboxCoreNavigationTests/Resources/routeWithTunnels_9thStreetDC.json similarity index 100% rename from MapboxCoreNavigationTests/routeWithTunnels_9thStreetDC.json rename to MapboxCoreNavigationTests/Resources/routeWithTunnels_9thStreetDC.json diff --git a/MapboxCoreNavigationTests/straight-line.json b/MapboxCoreNavigationTests/Resources/straight-line.json similarity index 100% rename from MapboxCoreNavigationTests/straight-line.json rename to MapboxCoreNavigationTests/Resources/straight-line.json diff --git a/MapboxCoreNavigationTests/tunnel.json b/MapboxCoreNavigationTests/Resources/tunnel.json similarity index 100% rename from MapboxCoreNavigationTests/tunnel.json rename to MapboxCoreNavigationTests/Resources/tunnel.json diff --git a/Examples/Swift/tunnel.route b/MapboxCoreNavigationTests/Resources/tunnel.route similarity index 100% rename from Examples/Swift/tunnel.route rename to MapboxCoreNavigationTests/Resources/tunnel.route diff --git a/MapboxCoreNavigationTests/RouteControllerTests.swift b/MapboxCoreNavigationTests/RouteControllerTests.swift index d3c0f3a25..23214ec1a 100644 --- a/MapboxCoreNavigationTests/RouteControllerTests.swift +++ b/MapboxCoreNavigationTests/RouteControllerTests.swift @@ -1,16 +1,11 @@ -import XCTest +import CoreLocation import MapboxDirections import Turf +import XCTest @testable import MapboxCoreNavigation fileprivate let mbTestHeading: CLLocationDirection = 50 -extension Bundle { - class var testingBundle: Bundle { - get { return Bundle(for: RouteControllerTests.self) } - } -} - class RouteControllerTests: XCTestCase { struct Constants { @@ -159,7 +154,7 @@ class RouteControllerTests: XCTestCase { func testUserPuckShouldFaceBackwards() { // This route is a simple straight line: http://geojson.io/#id=gist:anonymous/64cfb27881afba26e3969d06bacc707c&map=17/37.77717/-122.46484 - let response = Fixture.JSONFromFileNamed(name: "straight-line") + let response = Fixture.JSONFromFileNamed(name: "straight-line", bundle: .module) let jsonRoute = (response["routes"] as! [AnyObject]).first as! [String: Any] let waypoint1 = Waypoint(coordinate: CLLocationCoordinate2D(latitude: 37.795042, longitude: -122.413165)) let waypoint2 = Waypoint(coordinate: CLLocationCoordinate2D(latitude: 37.7727, longitude: -122.433378)) @@ -195,7 +190,7 @@ class RouteControllerTests: XCTestCase { let invalidCourseLocation = CLLocation(coordinate: firstLocation.coordinate, altitude: firstLocation.altitude, horizontalAccuracy: firstLocation.horizontalAccuracy, verticalAccuracy: firstLocation.verticalAccuracy, course: -1, speed: firstLocation.speed, timestamp: firstLocation.timestamp) - let heading = CLHeading(heading: mbTestHeading, accuracy: 1)! + let heading = Heading(heading: mbTestHeading, accuracy: 1) navigation.locationManager(navigation.locationManager, didUpdateLocations: [invalidCourseLocation]) navigation.locationManager(navigation.locationManager, didUpdateHeading: heading) @@ -336,7 +331,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 51.83116792, longitude: 5.83897820), CLLocationCoordinate2D(latitude: 52.03920380, longitude: 5.55133121) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -348,7 +343,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 51.83116792, longitude: 5.83897820), CLLocationCoordinate2D(latitude: 52.03920380, longitude: 5.55133121) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -361,7 +356,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 51.83116792, longitude: 5.83897820), CLLocationCoordinate2D(latitude: 52.03920380, longitude: 5.55133121) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -373,7 +368,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 51.99711882858318, longitude: 5.7932572786103265), CLLocationCoordinate2D(latitude: 52.0392038, longitude: 5.55133121) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -386,7 +381,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 52.04451273, longitude: 5.57902714), CLLocationCoordinate2D(latitude: 52.0392038, longitude: 5.55133121) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -398,7 +393,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 52.02224357, longitude: 5.78149084), CLLocationCoordinate2D(latitude: 52.03924958, longitude: 5.55054131) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -411,7 +406,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 52.03917716, longitude: 5.55201356), CLLocationCoordinate2D(latitude: 52.03924958, longitude: 5.55054131) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -424,7 +419,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 52.04520875, longitude: 5.5748937), CLLocationCoordinate2D(latitude: 52.03924958, longitude: 5.55054131) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() @@ -591,7 +586,7 @@ class RouteControllerTests: XCTestCase { CLLocationCoordinate2D(latitude: 52.02224357, longitude: 5.78149084), CLLocationCoordinate2D(latitude: 52.03924958, longitude: 5.55054131) ], - bundle: .testingBundle, + bundle: .module, accessToken: Constants.accessToken ) }() diff --git a/MapboxCoreNavigationTests/Support/RouteControllerDelegateSpy.swift b/MapboxCoreNavigationTests/Support/RouteControllerDelegateSpy.swift index ad793c9c2..1a0990364 100644 --- a/MapboxCoreNavigationTests/Support/RouteControllerDelegateSpy.swift +++ b/MapboxCoreNavigationTests/Support/RouteControllerDelegateSpy.swift @@ -1,3 +1,4 @@ +import CoreLocation import Foundation import MapboxCoreNavigation import MapboxDirections diff --git a/MapboxCoreNavigationTests/TunnelIntersectionManagerTests.swift b/MapboxCoreNavigationTests/TunnelIntersectionManagerTests.swift index 72436f42f..9278f7215 100644 --- a/MapboxCoreNavigationTests/TunnelIntersectionManagerTests.swift +++ b/MapboxCoreNavigationTests/TunnelIntersectionManagerTests.swift @@ -1,6 +1,7 @@ import XCTest import MapboxDirections import Turf +import CoreLocation @testable import MapboxCoreNavigation struct TunnelDetectorTestData { @@ -10,7 +11,7 @@ struct TunnelDetectorTestData { static let endLocation = CLLocationCoordinate2D(latitude: 38.88061238536352, longitude: -77.02471810711819) } -let tunnelResponse = Fixture.JSONFromFileNamed(name: TunnelDetectorTestData.ninthStreetFileName) +let tunnelResponse = Fixture.JSONFromFileNamed(name: TunnelDetectorTestData.ninthStreetFileName, bundle: .module) let tunnelJsonRoute = (tunnelResponse[TunnelDetectorTestData.kRouteKey] as! [AnyObject]).first as! [String: Any] let tunnelWayPoint1 = Waypoint(coordinate: TunnelDetectorTestData.startLocation) let tunnelWaypoint2 = Waypoint(coordinate: TunnelDetectorTestData.endLocation) diff --git a/MapboxCoreNavigationTests/tunnel.route b/MapboxCoreNavigationTests/tunnel.route deleted file mode 100644 index e8be4bd31..000000000 Binary files a/MapboxCoreNavigationTests/tunnel.route and /dev/null differ diff --git a/MapboxNavigation-Documentation.podspec b/MapboxNavigation-Documentation.podspec deleted file mode 100644 index c1d2055c6..000000000 --- a/MapboxNavigation-Documentation.podspec +++ /dev/null @@ -1,62 +0,0 @@ -Pod::Spec.new do |s| - - # ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.name = "MapboxNavigation-Documentation" - s.version = "1.0.2" - s.summary = "Complete turn-by-turn navigation interface for iOS." - - s.description = <<-DESC - The Mapbox Navigation SDK for iOS is a drop-in interface for turn-by-turn navigation along a route, complete with a well-designed map and easy-to-understand spoken directions. Routes are powered by Mapbox Directions. - DESC - - s.homepage = "https://www.mapbox.com/ios-sdk/navigation/" - s.documentation_url = "https://www.mapbox.com/mapbox-navigation-ios/navigation/" - - # ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.license = { :type => "ISC", :file => "LICENSE.md" } - - # ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.author = { "Mapbox" => "mobile@mapbox.com" } - s.social_media_url = "https://twitter.com/mapbox" - - # ――― Platform Specifics ――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.ios.deployment_target = "12.0" - - # ――― Source Location ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.source = { :git => "https://github.com/mapbox/mapbox-navigation-ios.git", :tag => "v#{s.version.to_s}" } - - # ――― Source Code ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.source_files = ["MapboxNavigation/*", "MapboxCoreNavigation/*"] - - # ――― Resources ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.resources = ['MapboxNavigation/Resources/*/*', 'MapboxNavigation/Resources/*'] - - # ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.requires_arc = true - s.module_name = "MapboxNavigation" - - s.frameworks = ['CarPlay'] - - s.dependency "MapboxDirections.swift", "~> 0.23.0" - s.dependency "MapboxGeocoder.swift", "~> 0.10.0" - s.dependency "Mapbox-iOS-SDK", "~> 4.3" - s.dependency "MapboxMobileEvents", "~> 0.5" - s.dependency "Solar", "~> 2.1" - s.dependency "Turf", "~> 0.2" - s.dependency "MapboxSpeech", "~> 0.0.1" - - # `swift_version` was introduced in CocoaPods 1.4.0. Without this check, if a user were to - # directly specify this podspec while using <1.4.0, ruby would throw an unknown method error. - if s.respond_to?(:swift_version) - s.swift_version = "4.0" - end - -end diff --git a/MapboxNavigation.podspec b/MapboxNavigation.podspec deleted file mode 100644 index 8ed2bf75d..000000000 --- a/MapboxNavigation.podspec +++ /dev/null @@ -1,57 +0,0 @@ -Pod::Spec.new do |s| - - # ――― Spec Metadata ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.name = "MapboxNavigation" - s.version = "1.0.2" - s.summary = "Complete turn-by-turn navigation interface for iOS." - - s.description = <<-DESC - The Mapbox Navigation SDK for iOS is a drop-in interface for turn-by-turn navigation along a route, complete with a well-designed map and easy-to-understand spoken directions. Routes are powered by Mapbox Directions. - DESC - - s.homepage = "https://www.mapbox.com/ios-sdk/navigation/" - s.documentation_url = "https://www.mapbox.com/mapbox-navigation-ios/navigation/" - - # ――― Spec License ――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.license = { :type => "ISC", :file => "LICENSE.md" } - - # ――― Author Metadata ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.author = { "Mapbox" => "mobile@mapbox.com" } - s.social_media_url = "https://twitter.com/mapbox" - - # ――― Platform Specifics ――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.ios.deployment_target = "9.0" - - # ――― Source Location ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.source = { :git => "https://github.com/mapbox/mapbox-navigation-ios.git", :tag => "v#{s.version.to_s}" } - - # ――― Source Code ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.source_files = ["MapboxNavigation/**/*.{h,m,swift}", "MapboxCoreNavigation/{Date,Sequence,String}.swift"] - - # ――― Resources ―――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.resources = ['MapboxNavigation/Resources/*/*', 'MapboxNavigation/Resources/*'] - - # ――― Project Settings ――――――――――――――――――――――――――――――――――――――――――――――――――――――――― # - - s.requires_arc = true - s.module_name = "MapboxNavigation" - - s.dependency "MapboxCoreNavigation", "#{s.version.to_s}" - s.dependency "Mapbox-iOS-SDK", "~> 4.3" - s.dependency "Solar", "~> 2.1" - s.dependency "MapboxSpeech", "~> 0.0.1" - - # `swift_version` was introduced in CocoaPods 1.4.0. Without this check, if a user were to - # directly specify this podspec while using <1.4.0, ruby would throw an unknown method error. - if s.respond_to?(:swift_version) - s.swift_version = "4.0" - end - -end diff --git a/MapboxNavigation.xcodeproj/project.pbxproj b/MapboxNavigation.xcodeproj/project.pbxproj deleted file mode 100644 index d00651972..000000000 --- a/MapboxNavigation.xcodeproj/project.pbxproj +++ /dev/null @@ -1,3290 +0,0 @@ -// !$*UTF8*$! -{ - archiveVersion = 1; - classes = { - }; - objectVersion = 55; - objects = { - -/* Begin PBXBuildFile section */ - 160A4A712127A46C0028B070 /* CPBarButton+MBTestable.m in Sources */ = {isa = PBXBuildFile; fileRef = 160A4A69212791010028B070 /* CPBarButton+MBTestable.m */; }; - 160D8279205996DA00D278D6 /* DataCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 160D8278205996DA00D278D6 /* DataCache.swift */; }; - 160D827B2059973C00D278D6 /* DataCacheTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 160D827A2059973C00D278D6 /* DataCacheTests.swift */; }; - 16435E03206EE32F00AF48B6 /* DirectionsSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16435E02206EE32F00AF48B6 /* DirectionsSpy.swift */; }; - 16435E05206EE37800AF48B6 /* DummyURLSessionDataTask.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16435E04206EE37800AF48B6 /* DummyURLSessionDataTask.swift */; }; - 16435E06206EE37800AF48B6 /* DummyURLSessionDataTask.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16435E04206EE37800AF48B6 /* DummyURLSessionDataTask.swift */; }; - 166224452025699600EA4824 /* ImageRepositoryTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 166224442025699600EA4824 /* ImageRepositoryTests.swift */; }; - 1662244720256C0700EA4824 /* ImageLoadingURLProtocolSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1662244620256C0700EA4824 /* ImageLoadingURLProtocolSpy.swift */; }; - 1662244B2029059C00EA4824 /* ImageCacheTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 1662244A2029059C00EA4824 /* ImageCacheTests.swift */; }; - 16A509D5202A87B20011D788 /* ImageDownloaderTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16A509D4202A87B20011D788 /* ImageDownloaderTests.swift */; }; - 16A509D7202BC0CA0011D788 /* ImageDownload.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16A509D6202BC0CA0011D788 /* ImageDownload.swift */; }; - 16B63DCD205C8EEF002D56D4 /* route-with-instructions.json in Resources */ = {isa = PBXBuildFile; fileRef = 16B63DCC205C8EEF002D56D4 /* route-with-instructions.json */; }; - 16C2A421211526EE00FE6E68 /* CarPlayManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16C2A420211526EE00FE6E68 /* CarPlayManager.swift */; }; - 16E3625C201265D600DF0592 /* ImageDownloadOperationSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16E3625B201265D600DF0592 /* ImageDownloadOperationSpy.swift */; }; - 16EF6C22211BA4B300AA580B /* CarPlayMapViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16EF6C21211BA4B300AA580B /* CarPlayMapViewController.swift */; }; - 2CEB743228D078E6007ED4A9 /* Solar.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; }; - 35002D611E5F6ADB0090E733 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 35002D5F1E5F6ADB0090E733 /* Assets.xcassets */; }; - 35002D621E5F6ADB0090E733 /* Base.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 35002D601E5F6ADB0090E733 /* Base.lproj */; }; - 35002D691E5F6B2F0090E733 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 35002D661E5F6B1B0090E733 /* Main.storyboard */; }; - 35002D6E1E5F6C7F0090E733 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 35002D6A1E5F6C7F0090E733 /* Assets.xcassets */; }; - 35002D6F1E5F6C7F0090E733 /* Base.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 35002D6B1E5F6C7F0090E733 /* Base.lproj */; }; - 35002D711E5F6C7F0090E733 /* main.m in Sources */ = {isa = PBXBuildFile; fileRef = 35002D6D1E5F6C7F0090E733 /* main.m */; }; - 35002D761E5F6CD30090E733 /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 35002D741E5F6CD30090E733 /* Main.storyboard */; }; - 3502231A205BC94E00E1449A /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35022319205BC94E00E1449A /* Constants.swift */; }; - 35025F3F1F051DD2002BA3EA /* DialogViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35025F3E1F051DD2002BA3EA /* DialogViewController.swift */; }; - 351030111F54B72000E3B7E7 /* route-for-lane-testing.json in Resources */ = {isa = PBXBuildFile; fileRef = 351030101F54B72000E3B7E7 /* route-for-lane-testing.json */; }; - 351174F41EF1C0530065E248 /* ReplayLocationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351174F31EF1C0530065E248 /* ReplayLocationManager.swift */; }; - 351927361F0FA072003A702D /* ScreenCapture.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351927351F0FA072003A702D /* ScreenCapture.swift */; }; - 351BEBF11E5BCC63006FE110 /* MLNMapView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBDF1E5BCC63006FE110 /* MLNMapView.swift */; }; - 351BEBF21E5BCC63006FE110 /* Style.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBE01E5BCC63006FE110 /* Style.swift */; }; - 351BEBF61E5BCC63006FE110 /* RouteMapViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBE41E5BCC63006FE110 /* RouteMapViewController.swift */; }; - 351BEBFC1E5BCC63006FE110 /* NavigationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBEA1E5BCC63006FE110 /* NavigationViewController.swift */; }; - 351BEBFF1E5BCC63006FE110 /* ManeuversStyleKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBED1E5BCC63006FE110 /* ManeuversStyleKit.swift */; }; - 351BEC011E5BCC63006FE110 /* ManeuverView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBEF1E5BCC63006FE110 /* ManeuverView.swift */; }; - 351BEC021E5BCC63006FE110 /* UIView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEBF01E5BCC63006FE110 /* UIView.swift */; }; - 351BEC051E5BCC6C006FE110 /* LaneView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEC031E5BCC6C006FE110 /* LaneView.swift */; }; - 351BEC061E5BCC6C006FE110 /* ManeuverDirection.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEC041E5BCC6C006FE110 /* ManeuverDirection.swift */; }; - 351BEC0D1E5BCC72006FE110 /* Bundle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEC081E5BCC72006FE110 /* Bundle.swift */; }; - 351BEC0E1E5BCC72006FE110 /* DashedLineView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEC091E5BCC72006FE110 /* DashedLineView.swift */; }; - 351BEC291E5BD530006FE110 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 351BEC281E5BD530006FE110 /* Assets.xcassets */; }; - 3525449D1E663D32004C8F1C /* MapboxCoreNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; }; - 352690491ECC843700E387BD /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352690481ECC843700E387BD /* Fixture.swift */; }; - 3527D2B91EC4619400C07FC9 /* Fixtures.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 3527D2B61EC45FBD00C07FC9 /* Fixtures.xcassets */; }; - 352BBC3B1E5E6A0C00703DF1 /* MapboxCoreNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; }; - 352BBC401E5E6C9F00703DF1 /* AppDelegate.m in Sources */ = {isa = PBXBuildFile; fileRef = 35C6A3471E5E418D0004CA57 /* AppDelegate.m */; }; - 352BBC4A1E5E78D700703DF1 /* Example_SwiftTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352BBC491E5E78D700703DF1 /* Example_SwiftTests.swift */; }; - 352BBC581E5E78EA00703DF1 /* Example_Objective_CTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 352BBC571E5E78EA00703DF1 /* Example_Objective_CTests.m */; }; - 3531C2701F9E095400D92F9A /* InstructionsBannerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3531C26F1F9E095400D92F9A /* InstructionsBannerView.swift */; }; - 353280A11FA72871005175F3 /* InstructionLabel.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353280A01FA72871005175F3 /* InstructionLabel.swift */; }; - 353610CE1FAB6A8F00FB1746 /* BottomBannerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353610CD1FAB6A8F00FB1746 /* BottomBannerView.swift */; }; - 35379CFD21480C0500FD402E /* AppDelegate+CarPlay.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35379CFB21480BFB00FD402E /* AppDelegate+CarPlay.swift */; }; - 35379D0221480E1300FD402E /* CarPlayManager+Search.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35379D0121480E1300FD402E /* CarPlayManager+Search.swift */; }; - 35379D0321480E5700FD402E /* RecentItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352C35BF2134958F00D77796 /* RecentItem.swift */; }; - 353AA5601FCEF583009F0384 /* StyleManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353AA55F1FCEF583009F0384 /* StyleManager.swift */; }; - 353E3C8F20A3501C00FD1789 /* MLNStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353E3C8E20A3501C00FD1789 /* MLNStyle.swift */; }; - 353E68FC1EF0B7F8007B2AE5 /* NavigationLocationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353E68FB1EF0B7F8007B2AE5 /* NavigationLocationManager.swift */; }; - 353E68FE1EF0B985007B2AE5 /* BundleAdditions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353E68FD1EF0B985007B2AE5 /* BundleAdditions.swift */; }; - 353E69041EF0C4E5007B2AE5 /* SimulatedLocationManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353E69031EF0C4E5007B2AE5 /* SimulatedLocationManager.swift */; }; - 353EC9D71FB09708002EB0AB /* StepsViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 353EC9D61FB09708002EB0AB /* StepsViewController.swift */; }; - 3540514D1F73F3BB00ED572D /* route-with-straight-roundabout.json in Resources */ = {isa = PBXBuildFile; fileRef = 3540514C1F73F3BB00ED572D /* route-with-straight-roundabout.json */; }; - 3546BF77207BA4A8007FF453 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3546BF76207BA4A8007FF453 /* AppDelegate.swift */; }; - 3546BF7E207BA4AA007FF453 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 3546BF7D207BA4AA007FF453 /* Assets.xcassets */; }; - 3546BF88207BA73C007FF453 /* downtown-sf.json in Resources */ = {isa = PBXBuildFile; fileRef = 3546BF87207BA73C007FF453 /* downtown-sf.json */; }; - 3546BF8A207BA920007FF453 /* MapboxCoreNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; }; - 3546BF8B207BA920007FF453 /* MapboxCoreNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 3546BF8E207BA920007FF453 /* MapboxNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; }; - 3546BF8F207BA920007FF453 /* MapboxNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 3546BFA3207BAB14007FF453 /* LaunchScreen.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 3546BFA2207BAB14007FF453 /* LaunchScreen.storyboard */; }; - 3546BFA5207BAB7A007FF453 /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3546BFA4207BAB7A007FF453 /* Fixture.swift */; }; - 354A01D51E6626AC00D765C2 /* MapboxCoreNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 354A01DB1E6626E900D765C2 /* MapboxCoreNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; }; - 354A01DC1E6626E900D765C2 /* MapboxCoreNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 354A01DD1E6626EA00D765C2 /* MapboxNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; }; - 354A01DE1E6626EA00D765C2 /* MapboxNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 354A9BC620EA991900F03325 /* SessionState.swift in Sources */ = {isa = PBXBuildFile; fileRef = 354A9BC520EA991900F03325 /* SessionState.swift */; }; - 354A9BCD20EA9C8100F03325 /* CoreFeedbackEvent.swift in Sources */ = {isa = PBXBuildFile; fileRef = 354A9BCC20EA9C8100F03325 /* CoreFeedbackEvent.swift */; }; - 354D9F891EF2FE900006FAA8 /* tunnel.json in Resources */ = {isa = PBXBuildFile; fileRef = 354D9F871EF2FE900006FAA8 /* tunnel.json */; }; - 355D20DC1EF30A6D0012B1E0 /* tunnel.route in Resources */ = {isa = PBXBuildFile; fileRef = 355D20DB1EF30A6D0012B1E0 /* tunnel.route */; }; - 355DB5751EFA78070091BFB7 /* GGPark-to-BernalHeights.route in Resources */ = {isa = PBXBuildFile; fileRef = 355DB5741EFA78070091BFB7 /* GGPark-to-BernalHeights.route */; }; - 355DB5771EFA780E0091BFB7 /* UnionSquare-to-GGPark.route in Resources */ = {isa = PBXBuildFile; fileRef = 355DB5761EFA780E0091BFB7 /* UnionSquare-to-GGPark.route */; }; - 355ED3701FAB724F00BCE1B8 /* BottomBannerViewLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 355ED36F1FAB724F00BCE1B8 /* BottomBannerViewLayout.swift */; }; - 35718BE71EF3194200AFA3D1 /* tunnel.json in Resources */ = {isa = PBXBuildFile; fileRef = 35718BE41EF316BA00AFA3D1 /* tunnel.json */; }; - 35718BE81EF3194500AFA3D1 /* tunnel.route in Resources */ = {isa = PBXBuildFile; fileRef = 35718BE31EF316BA00AFA3D1 /* tunnel.route */; }; - 35726EE81F0856E900AFA1B6 /* DayStyle.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35726EE71F0856E900AFA1B6 /* DayStyle.swift */; }; - 3577B878214FF35800094294 /* FavoritesList.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3577B877214FF35800094294 /* FavoritesList.swift */; }; - 3582A25020EEC46B0029C5DE /* Router.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3582A24F20EEC46B0029C5DE /* Router.swift */; }; - 3582A25220EFA9680029C5DE /* RouteControllerDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3582A25120EFA9680029C5DE /* RouteControllerDelegate.swift */; }; - 358D14661E5E3B7700ADE590 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 358D14651E5E3B7700ADE590 /* AppDelegate.swift */; }; - 358D14681E5E3B7700ADE590 /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 358D14671E5E3B7700ADE590 /* ViewController.swift */; }; - 359416FE20A9CB0400372638 /* multiwaypoints.json in Resources */ = {isa = PBXBuildFile; fileRef = 359416FD20A9CB0400372638 /* multiwaypoints.json */; }; - 359574A81F28CC5A00838209 /* CLLocation.swift in Sources */ = {isa = PBXBuildFile; fileRef = 359574A71F28CC3800838209 /* CLLocation.swift */; }; - 359574AA1F28CCBB00838209 /* LocationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 359574A91F28CCBB00838209 /* LocationTests.swift */; }; - 3597B9A42149B2C20021B0D9 /* UIViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 352AFFA22139986E00EB3567 /* UIViewController.swift */; }; - 359A8AED1FA78D3000BDB486 /* DistanceFormatterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 359A8AEC1FA78D3000BDB486 /* DistanceFormatterTests.swift */; }; - 359A8AEF1FA7B25B00BDB486 /* LanesStyleKit.swift in Sources */ = {isa = PBXBuildFile; fileRef = 359A8AEE1FA7B25800BDB486 /* LanesStyleKit.swift */; }; - 359D1B281FFE70D30052FA42 /* NavigationView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 359D1B271FFE70D30052FA42 /* NavigationView.swift */; }; - 359D283C1F9DC14F00FDE9C9 /* UICollectionView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 359D283B1F9DC14F00FDE9C9 /* UICollectionView.swift */; }; - 35A5413B1EFC052700E49846 /* RouteOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35A5413A1EFC052700E49846 /* RouteOptions.swift */; }; - 35B1E2951F1FF8EC00A13D32 /* UserCourseView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35B1E2941F1FF8EC00A13D32 /* UserCourseView.swift */; }; - 35B5A47E1FFFDCE5000A3C8D /* NavigationViewLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35B5A47D1FFFDCE5000A3C8D /* NavigationViewLayout.swift */; }; - 35B711D41E5E7AD2001EDA8D /* MapboxNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; }; - 35B7837E1F9547B300291F9A /* Transitioning.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35B7837D1F9547B300291F9A /* Transitioning.swift */; }; - 35B839491E2E3D5D0045A868 /* MBRouteController.m in Sources */ = {isa = PBXBuildFile; fileRef = 35B839481E2E3D5D0045A868 /* MBRouteController.m */; }; - 35BA8239214BDBBD00468349 /* Locale.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35BA8238214BDBBD00468349 /* Locale.swift */; }; - 35BF8CA21F28EB60003F6125 /* Array.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35BF8CA11F28EB60003F6125 /* Array.swift */; }; - 35BF8CA41F28EBD8003F6125 /* String.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35BF8CA31F28EBD8003F6125 /* String.swift */; }; - 35C57D6A208DD4A200BDD2A6 /* BridgingTests.m in Sources */ = {isa = PBXBuildFile; fileRef = 35C57D69208DD4A200BDD2A6 /* BridgingTests.m */; }; - 35C6A35B1E5E418D0004CA57 /* ViewController.m in Sources */ = {isa = PBXBuildFile; fileRef = 35C6A34D1E5E418D0004CA57 /* ViewController.m */; }; - 35C77F621FE8219900338416 /* NavigationSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35375EC01F31FA86004CE727 /* NavigationSettings.swift */; }; - 35C9973F1E732C1B00544D1C /* RouteVoiceController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35C9973E1E732C1B00544D1C /* RouteVoiceController.swift */; }; - 35CB1E131F97DD740011CC44 /* FeedbackItem.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35CB1E121F97DD740011CC44 /* FeedbackItem.swift */; }; - 35CF34B11F0A733200C2692E /* UIFont.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35CF34B01F0A733200C2692E /* UIFont.swift */; }; - 35D428291FA0B61F00176028 /* InstructionsBannerViewLayout.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35D428281FA0B61F00176028 /* InstructionsBannerViewLayout.swift */; }; - 35D4282B1FA0DF1D00176028 /* MapboxNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - 35D457A71E2D253100A89946 /* MBRouteController.h in Headers */ = {isa = PBXBuildFile; fileRef = 35D457A61E2D253100A89946 /* MBRouteController.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 35D825FC1E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.m in Sources */ = {isa = PBXBuildFile; fileRef = 35D825FA1E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.m */; }; - 35D825FE1E6A2EC60088F83B /* MapboxNavigation.h in Headers */ = {isa = PBXBuildFile; fileRef = 35D825FD1E6A2EC60088F83B /* MapboxNavigation.h */; settings = {ATTRIBUTES = (Public, ); }; }; - 35DA85791FC45787004092EC /* StatusView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DA85781FC45787004092EC /* StatusView.swift */; }; - 35DC585D1FABC61100B5A956 /* InstructionsBannerViewIntegrationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DC585C1FABC61100B5A956 /* InstructionsBannerViewIntegrationTests.swift */; }; - 35DC9D8D1F431E59001ECD64 /* route.json in Resources */ = {isa = PBXBuildFile; fileRef = C52D09CD1DEF5E5100BE3C5C /* route.json */; }; - 35DC9D8F1F4321CC001ECD64 /* route-with-lanes.json in Resources */ = {isa = PBXBuildFile; fileRef = 35DC9D8E1F4321CC001ECD64 /* route-with-lanes.json */; }; - 35DC9D911F4323AA001ECD64 /* LanesView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35DC9D901F4323AA001ECD64 /* LanesView.swift */; }; - 35E407681F5625FF00EFC814 /* StyleKitMarker.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35E407671F5625FF00EFC814 /* StyleKitMarker.swift */; }; - 35E9B0AD1F9E0F8F00BF84AB /* MapboxNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; }; - 35EB9A6A20A1AB7C00CB1225 /* turn_left.data in Resources */ = {isa = PBXBuildFile; fileRef = 35EB9A6920A1A89500CB1225 /* turn_left.data */; }; - 35ECAF2D2092275100DC3BC3 /* UIImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35ECAF2C2092275100DC3BC3 /* UIImage.swift */; }; - 35F1F5931FD57EFD00F8E502 /* StyleManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35F1F5921FD57EFD00F8E502 /* StyleManagerTests.swift */; }; - 35F520C01FB482A200FC9C37 /* NextBannerView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35F520BF1FB482A200FC9C37 /* NextBannerView.swift */; }; - 3EA9301B03F8679BEDD4795F /* Cache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA93A10227A7DAF1861D9F5 /* Cache.swift */; }; - 3EA9369C33A8F10DAE9043AA /* ImageDownloader.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA934C5D8DBAA19DB0F5271 /* ImageDownloader.swift */; }; - 3EA9371104016CD402547F1A /* ImageCache.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA938479CF48D7AD1B6369B /* ImageCache.swift */; }; - 3EA937B1F4DF73EB004BA6BE /* InstructionPresenter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA93230997B8D59E3B76C8C /* InstructionPresenter.swift */; }; - 3EA93A1FEFDDB709DE84BED9 /* ImageRepository.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA938BE5468824787100228 /* ImageRepository.swift */; }; - 3EA93DC5BA00B5DFCBE7BAC3 /* RouteControllerDelegateSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA93EBD6E6BEC966BBE51D6 /* RouteControllerDelegateSpy.swift */; }; - 6441B16A1EFC64E50076499F /* WaypointConfirmationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6441B1691EFC64E50076499F /* WaypointConfirmationViewController.swift */; }; - 64847A041F04629D003F3A69 /* Feedback.swift in Sources */ = {isa = PBXBuildFile; fileRef = 64847A031F04629D003F3A69 /* Feedback.swift */; }; - 7152FF182B71214100BF70D4 /* MapLibre in Frameworks */ = {isa = PBXBuildFile; productRef = 7152FF172B71214100BF70D4 /* MapLibre */; }; - 7170CCBA2B6D2AE00054DF8E /* MapLibre in Frameworks */ = {isa = PBXBuildFile; productRef = 7170CCB92B6D2AE00054DF8E /* MapLibre */; }; - 7170CCBC2B6D2AF10054DF8E /* MapLibre in Frameworks */ = {isa = PBXBuildFile; productRef = 7170CCBB2B6D2AF10054DF8E /* MapLibre */; }; - 7170CCBE2B6D2B570054DF8E /* MapLibre in Frameworks */ = {isa = PBXBuildFile; productRef = 7170CCBD2B6D2B570054DF8E /* MapLibre */; }; - 8D07C5A820B612310093D779 /* EmptyStyle.json in Resources */ = {isa = PBXBuildFile; fileRef = 8D07C5A720B612310093D779 /* EmptyStyle.json */; }; - 8D24A2F62040960C0098CBF8 /* UIEdgeInsets.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D24A2F52040960C0098CBF8 /* UIEdgeInsets.swift */; }; - 8D24A2F820409A890098CBF8 /* CGSize.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D24A2F720409A890098CBF8 /* CGSize.swift */; }; - 8D24A2FA20449B430098CBF8 /* Dictionary.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D24A2F920449B430098CBF8 /* Dictionary.swift */; }; - 8D391CE21FD71E78006BB91F /* Waypoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D391CE11FD71E78006BB91F /* Waypoint.swift */; }; - 8D53136B20653FA20044891E /* ExitView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D53136A20653FA20044891E /* ExitView.swift */; }; - 8D54F14A206ECF720038736D /* InstructionPresenterTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D54F149206ECF720038736D /* InstructionPresenterTests.swift */; }; - 8D5CF3B0215054AF005592D6 /* FBSnapshotTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D5CF3AF215054AF005592D6 /* FBSnapshotTestCase.swift */; }; - 8D5DFFF1207C04840093765A /* NSAttributedString.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D5DFFF0207C04840093765A /* NSAttributedString.swift */; }; - 8D8EA9BC20575CD80077F478 /* FeedbackCollectionViewCell.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D8EA9BB20575CD80077F478 /* FeedbackCollectionViewCell.swift */; }; - 8D9ADEA720A0C61A0067E845 /* GenericRouteShield.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D9ADEA620A0C61A0067E845 /* GenericRouteShield.swift */; }; - 8D9CD7FF20880581004DC4B3 /* XCTestCase.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8D9CD7FD20880581004DC4B3 /* XCTestCase.swift */; }; - 8DB45E90201698EB001EA6A3 /* UIStackView.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB45E8F201698EB001EA6A3 /* UIStackView.swift */; }; - 8DB63A3A1FBBCA2200928389 /* RatingControl.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DB63A391FBBCA2200928389 /* RatingControl.swift */; }; - 8DCE1050210FC5880048B0FB /* EndOfRouteFeedback.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DCE104F210FC5880048B0FB /* EndOfRouteFeedback.swift */; }; - 8DE879661FBB9980002F06C0 /* EndOfRouteViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DE879651FBB9980002F06C0 /* EndOfRouteViewController.swift */; }; - 8DF399B21FB257B30034904C /* UIGestureRecognizer.swift in Sources */ = {isa = PBXBuildFile; fileRef = 8DF399B11FB257B30034904C /* UIGestureRecognizer.swift */; }; - AE00A73A209A2C38006A3DC7 /* StepsViewControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE00A739209A2C38006A3DC7 /* StepsViewControllerTests.swift */; }; - AE291FFF20975A7E00F23DFC /* NavigationViewControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AED2156E208F7FEA009AA673 /* NavigationViewControllerTests.swift */; }; - AE46F95520EA735B00537AC2 /* VisualInstruction.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE46F95420EA735B00537AC2 /* VisualInstruction.swift */; }; - AE5F8771209A082500F58FDB /* route-with-banner-instructions.json in Resources */ = {isa = PBXBuildFile; fileRef = AE5F8770209A082500F58FDB /* route-with-banner-instructions.json */; }; - AE8B1B95207BFAEF003050F6 /* TunnelIntersectionManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE09EC13207BD88200782A33 /* TunnelIntersectionManager.swift */; }; - AE8B1B97207D2B2B003050F6 /* TunnelIntersectionManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE8B1B96207D2B2B003050F6 /* TunnelIntersectionManagerTests.swift */; }; - AE997D2221137B8B00EB0AAB /* String+LocalizedConstants.swift in Sources */ = {isa = PBXBuildFile; fileRef = AE997D2121137B8B00EB0AAB /* String+LocalizedConstants.swift */; }; - AEC3AC9A2106703100A26F34 /* HighwayShield.swift in Sources */ = {isa = PBXBuildFile; fileRef = AEC3AC992106703100A26F34 /* HighwayShield.swift */; }; - AEF2C8F22072B603007B061F /* routeWithTunnels_9thStreetDC.json in Resources */ = {isa = PBXBuildFile; fileRef = AEF2C8F12072B603007B061F /* routeWithTunnels_9thStreetDC.json */; }; - C51511D120EAC89D00372A91 /* CPMapTemplate.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51511D020EAC89D00372A91 /* CPMapTemplate.swift */; }; - C51DF8661F38C31C006C6A15 /* Locale.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51DF8651F38C31C006C6A15 /* Locale.swift */; }; - C51DF8671F38C337006C6A15 /* Date.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5D9800E1EFBCDAD006DBF2E /* Date.swift */; }; - C51FC31720F689F800400CE7 /* CustomStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51FC31620F689F800400CE7 /* CustomStyles.swift */; }; - C520EE901EBB84F9008805BC /* Navigation.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = C520EE921EBB84F9008805BC /* Navigation.storyboard */; }; - C52AC1261DF0E48600396B9F /* RouteProgressTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C52AC1251DF0E48600396B9F /* RouteProgressTests.swift */; }; - C52D09CE1DEF5E5100BE3C5C /* route.json in Resources */ = {isa = PBXBuildFile; fileRef = C52D09CD1DEF5E5100BE3C5C /* route.json */; }; - C52D09D31DEF636C00BE3C5C /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = C52D09D21DEF636C00BE3C5C /* Fixture.swift */; }; - C53208AB1E81FFB900910266 /* NavigationMapView.swift in Sources */ = {isa = PBXBuildFile; fileRef = C53208AA1E81FFB900910266 /* NavigationMapView.swift */; }; - C5381F02204E03B600A5493E /* UIDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5381F01204E03B600A5493E /* UIDevice.swift */; }; - C5381F03204E052A00A5493E /* UIDevice.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5381F01204E03B600A5493E /* UIDevice.swift */; }; - C5387A9D1F8FDB13000D2E93 /* routeWithInstructions.json in Resources */ = {isa = PBXBuildFile; fileRef = C5387A9C1F8FDB13000D2E93 /* routeWithInstructions.json */; }; - C538E4ED278DC96700200823 /* MapboxDirections.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; }; - C538E4EF278DC96700200823 /* Turf.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; }; - C538E4F0278DC97600200823 /* MapboxGeocoder.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; }; - C538E4F1278DC97600200823 /* Turf.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; }; - C538E4F2278DCA6E00200823 /* Polyline.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; }; - C538E4F7278DCD0200200823 /* MapboxDirections.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; }; - C538E4F8278DCD0200200823 /* MapboxDirections.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E4F9278DCD0400200823 /* MapboxGeocoder.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; }; - C538E4FA278DCD0400200823 /* MapboxGeocoder.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E4FF278DCD0800200823 /* Polyline.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; }; - C538E500278DCD0800200823 /* Polyline.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E501278DCD0900200823 /* Solar.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; }; - C538E502278DCD0900200823 /* Solar.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E503278DCD0A00200823 /* Turf.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; }; - C538E504278DCD0B00200823 /* Turf.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E505278DCD0E00200823 /* MapboxDirections.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; }; - C538E506278DCD0E00200823 /* MapboxDirections.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E507278DCD0F00200823 /* MapboxGeocoder.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; }; - C538E508278DCD0F00200823 /* MapboxGeocoder.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E50D278DCD1C00200823 /* Polyline.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; }; - C538E50E278DCD1C00200823 /* Polyline.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E50F278DCD1E00200823 /* Solar.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; }; - C538E510278DCD1E00200823 /* Solar.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E511278DCD1F00200823 /* Turf.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; }; - C538E512278DCD1F00200823 /* Turf.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E513278DCD2400200823 /* MapboxDirections.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; }; - C538E514278DCD2400200823 /* MapboxDirections.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E515278DCD2500200823 /* MapboxGeocoder.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; }; - C538E516278DCD2500200823 /* MapboxGeocoder.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E51B278DCD2900200823 /* Polyline.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; }; - C538E51C278DCD2900200823 /* Polyline.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D5278DC92F00200823 /* Polyline.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E51D278DCD2A00200823 /* Solar.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; }; - C538E51E278DCD2A00200823 /* Solar.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4D8278DC92F00200823 /* Solar.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C538E51F278DCD2B00200823 /* Turf.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; }; - C538E520278DCD2B00200823 /* Turf.xcframework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C538E4DA278DC92F00200823 /* Turf.xcframework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C53C196D1F38EA25008DB406 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = C53C196F1F38EA25008DB406 /* Localizable.strings */; }; - C53F2EE420EBC95600D9798F /* ViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 358D14671E5E3B7700ADE590 /* ViewController.swift */; }; - C53F2EE520EBC95600D9798F /* CustomViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5D9800C1EFA8BA9006DBF2E /* CustomViewController.swift */; }; - C53F2EE720EBC95600D9798F /* WaypointConfirmationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = 6441B1691EFC64E50076499F /* WaypointConfirmationViewController.swift */; }; - C53F2EE820EBC95600D9798F /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = 358D14651E5E3B7700ADE590 /* AppDelegate.swift */; }; - C53F2EEA20EBC95600D9798F /* MapboxNavigation.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; }; - C53F2EF320EBC95600D9798F /* Entitlements.plist in Resources */ = {isa = PBXBuildFile; fileRef = C57AD98920EAA39A0087B24B /* Entitlements.plist */; }; - C53F2EF420EBC95600D9798F /* Main.storyboard in Resources */ = {isa = PBXBuildFile; fileRef = 35002D661E5F6B1B0090E733 /* Main.storyboard */; }; - C53F2EF520EBC95600D9798F /* tunnel.json in Resources */ = {isa = PBXBuildFile; fileRef = 354D9F871EF2FE900006FAA8 /* tunnel.json */; }; - C53F2EF620EBC95600D9798F /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = 35002D5F1E5F6ADB0090E733 /* Assets.xcassets */; }; - C53F2EF720EBC95600D9798F /* Base.lproj in Resources */ = {isa = PBXBuildFile; fileRef = 35002D601E5F6ADB0090E733 /* Base.lproj */; }; - C53F2EF820EBC95600D9798F /* tunnel.route in Resources */ = {isa = PBXBuildFile; fileRef = 355D20DB1EF30A6D0012B1E0 /* tunnel.route */; }; - C53F2EFC20EBC95600D9798F /* MapboxCoreNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C53F2EFF20EBC95600D9798F /* MapboxNavigation.framework in Embed Frameworks */ = {isa = PBXBuildFile; fileRef = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; settings = {ATTRIBUTES = (CodeSignOnCopy, RemoveHeadersOnCopy, ); }; }; - C546586628FECEFA00C068EA /* Quick.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C546586528FECEFA00C068EA /* Quick.xcframework */; }; - C546586928FED58800C068EA /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = C52D09D21DEF636C00BE3C5C /* Fixture.swift */; }; - C546586A28FED5E600C068EA /* DirectionsSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16435E02206EE32F00AF48B6 /* DirectionsSpy.swift */; }; - C546586B28FED5F300C068EA /* MapboxCoreNavigationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5ADFBD71DDCC7840011824B /* MapboxCoreNavigationTests.swift */; }; - C546586C28FED5FC00C068EA /* RouteControllerDelegateSpy.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3EA93EBD6E6BEC966BBE51D6 /* RouteControllerDelegateSpy.swift */; }; - C546586D28FED61000C068EA /* DummyURLSessionDataTask.swift in Sources */ = {isa = PBXBuildFile; fileRef = 16435E04206EE37800AF48B6 /* DummyURLSessionDataTask.swift */; }; - C546587028FED7F200C068EA /* FBSnapshotTestCase.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C546586E28FED7F200C068EA /* FBSnapshotTestCase.xcframework */; }; - C54658B2290001B500C068EA /* Nimble.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54658B1290001B500C068EA /* Nimble.xcframework */; }; - C54658B3290001B500C068EA /* Nimble.xcframework in Frameworks */ = {isa = PBXBuildFile; fileRef = C54658B1290001B500C068EA /* Nimble.xcframework */; }; - C54658B429000A8300C068EA /* Nijmegen-Bemmel-Veenendaal.json in Resources */ = {isa = PBXBuildFile; fileRef = C56967AB28FD9146008304BF /* Nijmegen-Bemmel-Veenendaal.json */; }; - C54658B629000EFA00C068EA /* Nijmegen-Arnhem-Veenendaal.json in Resources */ = {isa = PBXBuildFile; fileRef = C54658B529000D5D00C068EA /* Nijmegen-Arnhem-Veenendaal.json */; }; - C54C655220336F2600D338E0 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = C54C655120336F2600D338E0 /* Constants.swift */; }; - C551B0E620D42222009A986F /* NavigationLocationManagerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C551B0E520D42222009A986F /* NavigationLocationManagerTests.swift */; }; - C55C299920D2E2F600B0406C /* NavigationMapViewTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C55C299820D2E2F600B0406C /* NavigationMapViewTests.swift */; }; - C561735B1F182113005954F6 /* RouteStep.swift in Sources */ = {isa = PBXBuildFile; fileRef = C561735A1F182113005954F6 /* RouteStep.swift */; }; - C56D563F29067D4800E9813B /* A12-To-Veenendaal-Normal.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA3329028F6600A1D10A /* A12-To-Veenendaal-Normal.json */; }; - C56D564029067D4B00E9813B /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA392902E35800A1D10A /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json */; }; - C57491DF1FACC42F006F97BC /* CGPoint.swift in Sources */ = {isa = PBXBuildFile; fileRef = C57491DE1FACC42F006F97BC /* CGPoint.swift */; }; - C578DA081EFD0FFF0052079F /* ProcessInfo.swift in Sources */ = {isa = PBXBuildFile; fileRef = C578DA071EFD0FFF0052079F /* ProcessInfo.swift */; }; - C57AD98A20EAA39A0087B24B /* Entitlements.plist in Resources */ = {isa = PBXBuildFile; fileRef = C57AD98920EAA39A0087B24B /* Entitlements.plist */; }; - C58159011EA6D02700FC6C3D /* MLNVectorTileSource.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58159001EA6D02700FC6C3D /* MLNVectorTileSource.swift */; }; - C582BA2C2073E77E00647DAA /* StringTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C582BA2B2073E77E00647DAA /* StringTests.swift */; }; - C582FD5F203626E900A9086E /* CLLocationDirection.swift in Sources */ = {isa = PBXBuildFile; fileRef = C582FD5E203626E900A9086E /* CLLocationDirection.swift */; }; - C58822001FB0F0D7008B0A2D /* Error.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58821FF1FB0F0D7008B0A2D /* Error.swift */; }; - C588C3C21F33882100520EF2 /* String.swift in Sources */ = {isa = PBXBuildFile; fileRef = 35BF8CA31F28EBD8003F6125 /* String.swift */; }; - C58D6BAD1DDCF2AE00387F53 /* Constants.swift in Sources */ = {isa = PBXBuildFile; fileRef = C58D6BAC1DDCF2AE00387F53 /* Constants.swift */; }; - C5A60ECC20A25BC900C21178 /* MD5Tests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5A60EC820A2417200C21178 /* MD5Tests.swift */; }; - C5A60ECD20A25DA100C21178 /* md5_crazy_strings.txt in Resources */ = {isa = PBXBuildFile; fileRef = C5A60ECA20A241B600C21178 /* md5_crazy_strings.txt */; }; - C5A6B2DD1F4CE8E8004260EA /* StyleType.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5A6B2DC1F4CE8E8004260EA /* StyleType.swift */; }; - C5A7EC5C1FD610A80008B9BA /* VisualInstructionComponent.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5A7EC5B1FD610A80008B9BA /* VisualInstructionComponent.swift */; }; - C5ABB50E20408D2C00AFA92C /* RouteControllerTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5ABB50D20408D2C00AFA92C /* RouteControllerTests.swift */; }; - C5ADFBD81DDCC7840011824B /* MapboxCoreNavigationTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5ADFBD71DDCC7840011824B /* MapboxCoreNavigationTests.swift */; }; - C5BBFDC4290ACF900088F288 /* Fixture.swift in Sources */ = {isa = PBXBuildFile; fileRef = 3546BFA4207BAB7A007FF453 /* Fixture.swift */; }; - C5BBFDC6290BB6250088F288 /* Route.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5BBFDC5290BB6250088F288 /* Route.swift */; }; - C5C94C1B1DDCD22B0097296A /* MapboxCoreNavigation.h in Headers */ = {isa = PBXBuildFile; fileRef = C5ADFBCC1DDCC7840011824B /* MapboxCoreNavigation.h */; settings = {ATTRIBUTES = (Public, ); }; }; - C5C94C1C1DDCD2340097296A /* RouteController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5ADFBF91DDCC9580011824B /* RouteController.swift */; }; - C5C94C1D1DDCD2370097296A /* RouteProgress.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5ADFBFB1DDCC9AD0011824B /* RouteProgress.swift */; }; - C5CFE4881EF2FD4C006F48E8 /* MMEEventsManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5CFE4871EF2FD4C006F48E8 /* MMEEventsManager.swift */; }; - C5D1C9941FB236900067C619 /* ErrorCode.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5D1C9931FB236900067C619 /* ErrorCode.swift */; }; - C5D9800D1EFA8BA9006DBF2E /* CustomViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5D9800C1EFA8BA9006DBF2E /* CustomViewController.swift */; }; - C5D9800F1EFBCDAD006DBF2E /* Date.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5D9800E1EFBCDAD006DBF2E /* Date.swift */; }; - C5DE4B6220F6B6B3007AFBE6 /* CustomStyles.swift in Sources */ = {isa = PBXBuildFile; fileRef = C51FC31620F689F800400CE7 /* CustomStyles.swift */; }; - C5E7A31C1F4F6828001CB015 /* NavigationRouteOptions.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5E7A31B1F4F6828001CB015 /* NavigationRouteOptions.swift */; }; - C5E8FA2C2901493F00A1D10A /* routeWithInstructions.json in Resources */ = {isa = PBXBuildFile; fileRef = C5387A9C1F8FDB13000D2E93 /* routeWithInstructions.json */; }; - C5E8FA2E29027D0A00A1D10A /* Nijmegen-Bemmel-Veenendaal2.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA2D29027D0700A1D10A /* Nijmegen-Bemmel-Veenendaal2.json */; }; - C5E8FA3029028AB100A1D10A /* Wolfheze-Veenendaal-Normal.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA2F29028AA700A1D10A /* Wolfheze-Veenendaal-Normal.json */; }; - C5E8FA3229028B0E00A1D10A /* Wolfheze-Veenendaal-Small-Detour-At-End.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA3129028B0E00A1D10A /* Wolfheze-Veenendaal-Small-Detour-At-End.json */; }; - C5E8FA3429028F6600A1D10A /* A12-To-Veenendaal-Normal.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA3329028F6600A1D10A /* A12-To-Veenendaal-Normal.json */; }; - C5E8FA3629028FA400A1D10A /* A12-To-Veenendaal-Slight-Difference.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA3529028FA400A1D10A /* A12-To-Veenendaal-Slight-Difference.json */; }; - C5E8FA382902952100A1D10A /* A12-To-Veenendaal-Bigger-Detour.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA372902952100A1D10A /* A12-To-Veenendaal-Bigger-Detour.json */; }; - C5E8FA3A2902E35800A1D10A /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json in Resources */ = {isa = PBXBuildFile; fileRef = C5E8FA392902E35800A1D10A /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json */; }; - C5EF397520599120009A2C50 /* straight-line.json in Resources */ = {isa = PBXBuildFile; fileRef = C5EF397420599120009A2C50 /* straight-line.json */; }; - C5F2DCA0206DBF5E002F99F6 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5F2DC9F206DBF5E002F99F6 /* Sequence.swift */; }; - C5F2DCA1206DBF5E002F99F6 /* Sequence.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5F2DC9F206DBF5E002F99F6 /* Sequence.swift */; }; - C5F4D21920DC468B0059FABF /* CongestionLevel.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5F4D21820DC468B0059FABF /* CongestionLevel.swift */; }; - C5FFAC1520D96F5C009E7F98 /* CarPlayNavigationViewController.swift in Sources */ = {isa = PBXBuildFile; fileRef = C5FFAC1420D96F5B009E7F98 /* CarPlayNavigationViewController.swift */; }; - D72CC42C2451A2F800238549 /* ConfigManager.swift in Sources */ = {isa = PBXBuildFile; fileRef = D72CC42B2451A2F800238549 /* ConfigManager.swift */; }; - DA23C9611F4FC05C00BA9522 /* MLNMapView+MLNNavigationAdditions.h in Headers */ = {isa = PBXBuildFile; fileRef = 35D825F91E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DA3525702010A5210048DDFC /* Localizable.stringsdict in Resources */ = {isa = PBXBuildFile; fileRef = DA35256E2010A5200048DDFC /* Localizable.stringsdict */; }; - DAAE5F301EAE4C4700832871 /* Localizable.strings in Resources */ = {isa = PBXBuildFile; fileRef = DAAE5F321EAE4C4700832871 /* Localizable.strings */; }; - DAB2CCE71DF7AFDF001B2FE1 /* dc-line.geojson in Resources */ = {isa = PBXBuildFile; fileRef = DAB2CCE61DF7AFDE001B2FE1 /* dc-line.geojson */; }; - DAD17202214DB12B009C8161 /* CPMapTemplateTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = DAD17201214DB12B009C8161 /* CPMapTemplateTests.swift */; }; - DADAD828203504C6002E25CA /* MBNavigationSettings.h in Headers */ = {isa = PBXBuildFile; fileRef = DADAD826203504C6002E25CA /* MBNavigationSettings.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DADAD829203504C6002E25CA /* MBNavigationSettings.m in Sources */ = {isa = PBXBuildFile; fileRef = DADAD827203504C6002E25CA /* MBNavigationSettings.m */; }; - DADAD82E20350849002E25CA /* MBRouteVoiceController.h in Headers */ = {isa = PBXBuildFile; fileRef = DADAD82C20350849002E25CA /* MBRouteVoiceController.h */; settings = {ATTRIBUTES = (Public, ); }; }; - DADAD82F20350849002E25CA /* MBRouteVoiceController.m in Sources */ = {isa = PBXBuildFile; fileRef = DADAD82D20350849002E25CA /* MBRouteVoiceController.m */; }; - DAFA92071F01735000A7FB09 /* DistanceFormatter.swift in Sources */ = {isa = PBXBuildFile; fileRef = 351BEC0B1E5BCC72006FE110 /* DistanceFormatter.swift */; }; - F1D8FD2F28DB0A67006626A1 /* _TestPath.gpx in Resources */ = {isa = PBXBuildFile; fileRef = F1D8FD2E28DB0A67006626A1 /* _TestPath.gpx */; }; -/* End PBXBuildFile section */ - -/* Begin PBXContainerItemProxy section */ - 3525449B1E663D2C004C8F1C /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; - 352BBC4C1E5E78D700703DF1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 358D14621E5E3B7700ADE590; - remoteInfo = "Example-Swift"; - }; - 352BBC5A1E5E78EA00703DF1 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 358D14A51E5E3FDC00ADE590; - remoteInfo = "Example-Objective-C"; - }; - 3546BF8C207BA920007FF453 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; - 3546BF90207BA920007FF453 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 351BEBD61E5BCC28006FE110; - remoteInfo = MapboxNavigation; - }; - 354A01D11E66268400D765C2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 351BEBD61E5BCC28006FE110; - remoteInfo = MapboxNavigation; - }; - 354A01D31E66268800D765C2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; - 354A01D71E6626D400D765C2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; - 354A01D91E6626D400D765C2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 351BEBD61E5BCC28006FE110; - remoteInfo = MapboxNavigation; - }; - 35B711D51E5E7AD2001EDA8D /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 351BEBD61E5BCC28006FE110; - remoteInfo = MapboxNavigation; - }; - 35CEA3571E5CEBBC009F2255 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; - 8DBCA7772080174600981EB2 /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 358D14621E5E3B7700ADE590; - remoteInfo = "Example-Swift"; - }; - C53F2EE020EBC95600D9798F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; - C53F2EE220EBC95600D9798F /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = 351BEBD61E5BCC28006FE110; - remoteInfo = MapboxNavigation; - }; - C5ADFBD41DDCC7840011824B /* PBXContainerItemProxy */ = { - isa = PBXContainerItemProxy; - containerPortal = C5ADFBC01DDCC7840011824B /* Project object */; - proxyType = 1; - remoteGlobalIDString = C5ADFBC81DDCC7840011824B; - remoteInfo = MapboxCoreNavigation; - }; -/* End PBXContainerItemProxy section */ - -/* Begin PBXCopyFilesBuildPhase section */ - 3546BF92207BA920007FF453 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - 3546BF8B207BA920007FF453 /* MapboxCoreNavigation.framework in Embed Frameworks */, - 3546BF8F207BA920007FF453 /* MapboxNavigation.framework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 354A01C41E66265100D765C2 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - C538E502278DCD0900200823 /* Solar.xcframework in Embed Frameworks */, - 354A01D51E6626AC00D765C2 /* MapboxCoreNavigation.framework in Embed Frameworks */, - 35D4282B1FA0DF1D00176028 /* MapboxNavigation.framework in Embed Frameworks */, - C538E4F8278DCD0200200823 /* MapboxDirections.xcframework in Embed Frameworks */, - C538E4FA278DCD0400200823 /* MapboxGeocoder.xcframework in Embed Frameworks */, - C538E504278DCD0B00200823 /* Turf.xcframework in Embed Frameworks */, - C538E500278DCD0800200823 /* Polyline.xcframework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - 354A01DF1E6626EA00D765C2 /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - C538E510278DCD1E00200823 /* Solar.xcframework in Embed Frameworks */, - 354A01DC1E6626E900D765C2 /* MapboxCoreNavigation.framework in Embed Frameworks */, - 354A01DE1E6626EA00D765C2 /* MapboxNavigation.framework in Embed Frameworks */, - C538E508278DCD0F00200823 /* MapboxGeocoder.xcframework in Embed Frameworks */, - C538E506278DCD0E00200823 /* MapboxDirections.xcframework in Embed Frameworks */, - C538E512278DCD1F00200823 /* Turf.xcframework in Embed Frameworks */, - C538E50E278DCD1C00200823 /* Polyline.xcframework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; - C53F2EF920EBC95600D9798F /* Embed Frameworks */ = { - isa = PBXCopyFilesBuildPhase; - buildActionMask = 2147483647; - dstPath = ""; - dstSubfolderSpec = 10; - files = ( - C538E51E278DCD2A00200823 /* Solar.xcframework in Embed Frameworks */, - C53F2EFC20EBC95600D9798F /* MapboxCoreNavigation.framework in Embed Frameworks */, - C53F2EFF20EBC95600D9798F /* MapboxNavigation.framework in Embed Frameworks */, - C538E514278DCD2400200823 /* MapboxDirections.xcframework in Embed Frameworks */, - C538E516278DCD2500200823 /* MapboxGeocoder.xcframework in Embed Frameworks */, - C538E520278DCD2B00200823 /* Turf.xcframework in Embed Frameworks */, - C538E51C278DCD2900200823 /* Polyline.xcframework in Embed Frameworks */, - ); - name = "Embed Frameworks"; - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXCopyFilesBuildPhase section */ - -/* Begin PBXFileReference section */ - 160A4A68212791010028B070 /* CPBarButton+MBTestable.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "CPBarButton+MBTestable.h"; sourceTree = ""; }; - 160A4A69212791010028B070 /* CPBarButton+MBTestable.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = "CPBarButton+MBTestable.m"; sourceTree = ""; }; - 160D8278205996DA00D278D6 /* DataCache.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataCache.swift; sourceTree = ""; }; - 160D827A2059973C00D278D6 /* DataCacheTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DataCacheTests.swift; sourceTree = ""; }; - 16435E02206EE32F00AF48B6 /* DirectionsSpy.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DirectionsSpy.swift; sourceTree = ""; }; - 16435E04206EE37800AF48B6 /* DummyURLSessionDataTask.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DummyURLSessionDataTask.swift; sourceTree = ""; }; - 166224442025699600EA4824 /* ImageRepositoryTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageRepositoryTests.swift; sourceTree = ""; }; - 1662244620256C0700EA4824 /* ImageLoadingURLProtocolSpy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageLoadingURLProtocolSpy.swift; sourceTree = ""; }; - 1662244A2029059C00EA4824 /* ImageCacheTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageCacheTests.swift; sourceTree = ""; }; - 16A509D4202A87B20011D788 /* ImageDownloaderTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageDownloaderTests.swift; sourceTree = ""; }; - 16A509D6202BC0CA0011D788 /* ImageDownload.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageDownload.swift; sourceTree = ""; }; - 16B63DCC205C8EEF002D56D4 /* route-with-instructions.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "route-with-instructions.json"; sourceTree = ""; }; - 16C2A420211526EE00FE6E68 /* CarPlayManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CarPlayManager.swift; sourceTree = ""; }; - 16E11B54212B40A900027CD3 /* MapboxNavigationTests-Bridging.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MapboxNavigationTests-Bridging.h"; sourceTree = ""; }; - 16E3625B201265D600DF0592 /* ImageDownloadOperationSpy.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageDownloadOperationSpy.swift; sourceTree = ""; }; - 16EF6C21211BA4B300AA580B /* CarPlayMapViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CarPlayMapViewController.swift; sourceTree = ""; }; - 35002D5D1E5F6ABB0090E733 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 35002D5F1E5F6ADB0090E733 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 35002D601E5F6ADB0090E733 /* Base.lproj */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Base.lproj; sourceTree = ""; }; - 35002D671E5F6B1B0090E733 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 35002D6A1E5F6C7F0090E733 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 35002D6B1E5F6C7F0090E733 /* Base.lproj */ = {isa = PBXFileReference; lastKnownFileType = folder; path = Base.lproj; sourceTree = ""; }; - 35002D6C1E5F6C7F0090E733 /* Info.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 35002D6D1E5F6C7F0090E733 /* main.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = main.m; sourceTree = ""; }; - 35002D751E5F6CD30090E733 /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Main.storyboard; sourceTree = ""; }; - 35022319205BC94E00E1449A /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = ""; }; - 35025F3E1F051DD2002BA3EA /* DialogViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DialogViewController.swift; sourceTree = ""; }; - 351030101F54B72000E3B7E7 /* route-for-lane-testing.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "route-for-lane-testing.json"; sourceTree = ""; }; - 351174F31EF1C0530065E248 /* ReplayLocationManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ReplayLocationManager.swift; sourceTree = ""; }; - 3512C7C71FB0A0C100CDD2A3 /* UIViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIViewController.swift; sourceTree = ""; }; - 35190E911F461A32007C1393 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Main.strings; sourceTree = ""; }; - 35190E921F461A32007C1393 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Main.strings; sourceTree = ""; }; - 35190E931F461A32007C1393 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Navigation.strings; sourceTree = ""; }; - 351927351F0FA072003A702D /* ScreenCapture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ScreenCapture.swift; sourceTree = ""; }; - 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MapboxNavigation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - 351BEBDA1E5BCC28006FE110 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 351BEBDF1E5BCC63006FE110 /* MLNMapView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MLNMapView.swift; sourceTree = ""; }; - 351BEBE01E5BCC63006FE110 /* Style.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Style.swift; sourceTree = ""; }; - 351BEBE41E5BCC63006FE110 /* RouteMapViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = RouteMapViewController.swift; sourceTree = ""; }; - 351BEBEA1E5BCC63006FE110 /* NavigationViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = NavigationViewController.swift; sourceTree = ""; }; - 351BEBED1E5BCC63006FE110 /* ManeuversStyleKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ManeuversStyleKit.swift; sourceTree = ""; }; - 351BEBEF1E5BCC63006FE110 /* ManeuverView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ManeuverView.swift; sourceTree = ""; }; - 351BEBF01E5BCC63006FE110 /* UIView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = UIView.swift; sourceTree = ""; }; - 351BEC031E5BCC6C006FE110 /* LaneView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LaneView.swift; sourceTree = ""; }; - 351BEC041E5BCC6C006FE110 /* ManeuverDirection.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ManeuverDirection.swift; sourceTree = ""; }; - 351BEC081E5BCC72006FE110 /* Bundle.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Bundle.swift; sourceTree = ""; }; - 351BEC091E5BCC72006FE110 /* DashedLineView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DashedLineView.swift; sourceTree = ""; }; - 351BEC0B1E5BCC72006FE110 /* DistanceFormatter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DistanceFormatter.swift; sourceTree = ""; }; - 351BEC281E5BD530006FE110 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; name = Assets.xcassets; path = Resources/Assets.xcassets; sourceTree = ""; }; - 352690481ECC843700E387BD /* Fixture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Fixture.swift; sourceTree = ""; }; - 3527D2B61EC45FBD00C07FC9 /* Fixtures.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Fixtures.xcassets; sourceTree = ""; }; - 352AFFA22139986E00EB3567 /* UIViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIViewController.swift; sourceTree = ""; }; - 352BBC471E5E78D700703DF1 /* Example-SwiftTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Example-SwiftTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 352BBC491E5E78D700703DF1 /* Example_SwiftTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Example_SwiftTests.swift; sourceTree = ""; }; - 352BBC4B1E5E78D700703DF1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 352BBC551E5E78EA00703DF1 /* Example-Objective-CTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = "Example-Objective-CTests.xctest"; sourceTree = BUILT_PRODUCTS_DIR; }; - 352BBC571E5E78EA00703DF1 /* Example_Objective_CTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = Example_Objective_CTests.m; sourceTree = ""; }; - 352BBC591E5E78EA00703DF1 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 352C35BF2134958F00D77796 /* RecentItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = RecentItem.swift; path = ../Examples/Swift/RecentItem.swift; sourceTree = ""; }; - 3531C2671F9DDC6E00D92F9A /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Main.strings"; sourceTree = ""; }; - 3531C2681F9DDC6E00D92F9A /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Main.strings"; sourceTree = ""; }; - 3531C2691F9DDC6F00D92F9A /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Navigation.strings"; sourceTree = ""; }; - 3531C26A1F9DDC6F00D92F9A /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; - 3531C26B1F9DDC6F00D92F9A /* pt-BR */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-BR"; path = "pt-BR.lproj/Localizable.strings"; sourceTree = ""; }; - 3531C26F1F9E095400D92F9A /* InstructionsBannerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InstructionsBannerView.swift; sourceTree = ""; }; - 353280A01FA72871005175F3 /* InstructionLabel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InstructionLabel.swift; sourceTree = ""; }; - 353610CD1FAB6A8F00FB1746 /* BottomBannerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottomBannerView.swift; sourceTree = ""; }; - 35375EC01F31FA86004CE727 /* NavigationSettings.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = NavigationSettings.swift; sourceTree = ""; }; - 35379CFB21480BFB00FD402E /* AppDelegate+CarPlay.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "AppDelegate+CarPlay.swift"; sourceTree = ""; }; - 35379D0121480E1300FD402E /* CarPlayManager+Search.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "CarPlayManager+Search.swift"; sourceTree = ""; }; - 353AA55F1FCEF583009F0384 /* StyleManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StyleManager.swift; sourceTree = ""; }; - 353E3C8E20A3501C00FD1789 /* MLNStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MLNStyle.swift; sourceTree = ""; }; - 353E68FB1EF0B7F8007B2AE5 /* NavigationLocationManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationLocationManager.swift; sourceTree = ""; }; - 353E68FD1EF0B985007B2AE5 /* BundleAdditions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BundleAdditions.swift; sourceTree = ""; }; - 353E69031EF0C4E5007B2AE5 /* SimulatedLocationManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SimulatedLocationManager.swift; sourceTree = ""; }; - 353EC9D61FB09708002EB0AB /* StepsViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StepsViewController.swift; sourceTree = ""; }; - 3540514C1F73F3BB00ED572D /* route-with-straight-roundabout.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "route-with-straight-roundabout.json"; sourceTree = ""; }; - 3546BF74207BA4A8007FF453 /* RouteTest.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = RouteTest.app; sourceTree = BUILT_PRODUCTS_DIR; }; - 3546BF76207BA4A8007FF453 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 3546BF7D207BA4AA007FF453 /* Assets.xcassets */ = {isa = PBXFileReference; lastKnownFileType = folder.assetcatalog; path = Assets.xcassets; sourceTree = ""; }; - 3546BF82207BA4AA007FF453 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 3546BF87207BA73C007FF453 /* downtown-sf.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "downtown-sf.json"; sourceTree = ""; }; - 3546BFA2207BAB14007FF453 /* LaunchScreen.storyboard */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; path = LaunchScreen.storyboard; sourceTree = ""; }; - 3546BFA4207BAB7A007FF453 /* Fixture.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Fixture.swift; sourceTree = ""; }; - 354A9BC520EA991900F03325 /* SessionState.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SessionState.swift; sourceTree = ""; }; - 354A9BCC20EA9C8100F03325 /* CoreFeedbackEvent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CoreFeedbackEvent.swift; sourceTree = ""; }; - 354D9F871EF2FE900006FAA8 /* tunnel.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = tunnel.json; sourceTree = ""; }; - 355D20DB1EF30A6D0012B1E0 /* tunnel.route */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = tunnel.route; sourceTree = ""; }; - 355DB5741EFA78070091BFB7 /* GGPark-to-BernalHeights.route */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = "GGPark-to-BernalHeights.route"; sourceTree = ""; }; - 355DB5761EFA780E0091BFB7 /* UnionSquare-to-GGPark.route */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = "UnionSquare-to-GGPark.route"; sourceTree = ""; }; - 355ED36F1FAB724F00BCE1B8 /* BottomBannerViewLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = BottomBannerViewLayout.swift; sourceTree = ""; }; - 356B7D8A1EE166E100FE5B89 /* scripts */ = {isa = PBXFileReference; lastKnownFileType = folder; path = scripts; sourceTree = SOURCE_ROOT; }; - 35718BE31EF316BA00AFA3D1 /* tunnel.route */ = {isa = PBXFileReference; lastKnownFileType = file.bplist; path = tunnel.route; sourceTree = ""; }; - 35718BE41EF316BA00AFA3D1 /* tunnel.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = tunnel.json; sourceTree = ""; }; - 35726EE71F0856E900AFA1B6 /* DayStyle.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DayStyle.swift; sourceTree = ""; }; - 3577B877214FF35800094294 /* FavoritesList.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FavoritesList.swift; sourceTree = ""; }; - 357F0DF01EB9D99F00A0B53C /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Localizable.strings; sourceTree = ""; }; - 357F0DF11EB9DAB400A0B53C /* vi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Localizable.strings; sourceTree = ""; }; - 3582A24F20EEC46B0029C5DE /* Router.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Router.swift; sourceTree = ""; }; - 3582A25120EFA9680029C5DE /* RouteControllerDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RouteControllerDelegate.swift; sourceTree = ""; }; - 358D14631E5E3B7700ADE590 /* Example-Swift.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Example-Swift.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 358D14651E5E3B7700ADE590 /* AppDelegate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = AppDelegate.swift; sourceTree = ""; }; - 358D14671E5E3B7700ADE590 /* ViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = ViewController.swift; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.swift; }; - 358D14A61E5E3FDC00ADE590 /* Example-Objective-C.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Example-Objective-C.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - 359416FD20A9CB0400372638 /* multiwaypoints.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = multiwaypoints.json; sourceTree = ""; }; - 359574A71F28CC3800838209 /* CLLocation.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = CLLocation.swift; path = MapboxCoreNavigation/CLLocation.swift; sourceTree = SOURCE_ROOT; }; - 359574A91F28CCBB00838209 /* LocationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LocationTests.swift; sourceTree = ""; }; - 359A8AEC1FA78D3000BDB486 /* DistanceFormatterTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = DistanceFormatterTests.swift; sourceTree = ""; }; - 359A8AEE1FA7B25800BDB486 /* LanesStyleKit.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = LanesStyleKit.swift; sourceTree = ""; }; - 359D1B271FFE70D30052FA42 /* NavigationView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationView.swift; sourceTree = ""; }; - 359D283B1F9DC14F00FDE9C9 /* UICollectionView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UICollectionView.swift; sourceTree = ""; }; - 35A5413A1EFC052700E49846 /* RouteOptions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RouteOptions.swift; sourceTree = ""; }; - 35B1E2941F1FF8EC00A13D32 /* UserCourseView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UserCourseView.swift; sourceTree = ""; }; - 35B5A47D1FFFDCE5000A3C8D /* NavigationViewLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationViewLayout.swift; sourceTree = ""; }; - 35B711CF1E5E7AD2001EDA8D /* MapboxNavigationTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MapboxNavigationTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - 35B711D11E5E7AD2001EDA8D /* MapboxNavigationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapboxNavigationTests.swift; sourceTree = ""; }; - 35B711D31E5E7AD2001EDA8D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - 35B7837D1F9547B300291F9A /* Transitioning.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Transitioning.swift; sourceTree = ""; }; - 35B839481E2E3D5D0045A868 /* MBRouteController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = MBRouteController.m; sourceTree = ""; }; - 35BA8238214BDBBD00468349 /* Locale.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Locale.swift; sourceTree = ""; }; - 35BF8CA11F28EB60003F6125 /* Array.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Array.swift; sourceTree = ""; }; - 35BF8CA31F28EBD8003F6125 /* String.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = String.swift; sourceTree = ""; }; - 35C57D69208DD4A200BDD2A6 /* BridgingTests.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = BridgingTests.m; sourceTree = ""; }; - 35C6A3461E5E418D0004CA57 /* AppDelegate.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = AppDelegate.h; sourceTree = ""; }; - 35C6A3471E5E418D0004CA57 /* AppDelegate.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = AppDelegate.m; sourceTree = ""; }; - 35C6A34C1E5E418D0004CA57 /* ViewController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = ViewController.h; sourceTree = ""; }; - 35C6A34D1E5E418D0004CA57 /* ViewController.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; lineEnding = 0; path = ViewController.m; sourceTree = ""; xcLanguageSpecificationIdentifier = xcode.lang.objc; }; - 35C6ED9A1EBB1DE400A27EF8 /* ca */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Localizable.strings; sourceTree = ""; }; - 35C6ED9C1EBB224A00A27EF8 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Main.strings"; sourceTree = ""; }; - 35C6ED9E1EBB224D00A27EF8 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Main.strings; sourceTree = ""; }; - 35C6EDA01EBB224E00A27EF8 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Main.strings; sourceTree = ""; }; - 35C6EDA21EBB224F00A27EF8 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Main.strings; sourceTree = ""; }; - 35C6EDA41EBB227100A27EF8 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Main.strings"; sourceTree = ""; }; - 35C6EDA61EBB227600A27EF8 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Main.strings; sourceTree = ""; }; - 35C6EDA81EBB227900A27EF8 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Main.strings; sourceTree = ""; }; - 35C6EDAA1EBB228000A27EF8 /* ca */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Main.strings; sourceTree = ""; }; - 35C6EDAD1EBB266300A27EF8 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Main.strings; sourceTree = ""; }; - 35C6EDB21EBB286500A27EF8 /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = en.lproj/Main.strings; sourceTree = ""; }; - 35C9973E1E732C1B00544D1C /* RouteVoiceController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RouteVoiceController.swift; sourceTree = ""; }; - 35CB1E121F97DD740011CC44 /* FeedbackItem.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackItem.swift; sourceTree = ""; }; - 35CF34B01F0A733200C2692E /* UIFont.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIFont.swift; sourceTree = ""; }; - 35D428281FA0B61F00176028 /* InstructionsBannerViewLayout.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InstructionsBannerViewLayout.swift; sourceTree = ""; }; - 35D457A61E2D253100A89946 /* MBRouteController.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MBRouteController.h; sourceTree = ""; }; - 35D825F91E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "MLNMapView+MLNNavigationAdditions.h"; sourceTree = ""; }; - 35D825FA1E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.m */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.objc; path = "MLNMapView+MLNNavigationAdditions.m"; sourceTree = ""; }; - 35D825FD1E6A2EC60088F83B /* MapboxNavigation.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = MapboxNavigation.h; sourceTree = ""; }; - 35DA85781FC45787004092EC /* StatusView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StatusView.swift; sourceTree = ""; }; - 35DC585C1FABC61100B5A956 /* InstructionsBannerViewIntegrationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InstructionsBannerViewIntegrationTests.swift; sourceTree = ""; }; - 35DC9D8E1F4321CC001ECD64 /* route-with-lanes.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "route-with-lanes.json"; sourceTree = ""; }; - 35DC9D901F4323AA001ECD64 /* LanesView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = LanesView.swift; sourceTree = ""; }; - 35E407671F5625FF00EFC814 /* StyleKitMarker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StyleKitMarker.swift; sourceTree = ""; }; - 35EB9A6920A1A89500CB1225 /* turn_left.data */ = {isa = PBXFileReference; lastKnownFileType = file; path = turn_left.data; sourceTree = ""; }; - 35ECAF2C2092275100DC3BC3 /* UIImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIImage.swift; sourceTree = ""; }; - 35F1F5921FD57EFD00F8E502 /* StyleManagerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StyleManagerTests.swift; sourceTree = ""; }; - 35F520BF1FB482A200FC9C37 /* NextBannerView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NextBannerView.swift; sourceTree = ""; }; - 3EA93230997B8D59E3B76C8C /* InstructionPresenter.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = InstructionPresenter.swift; sourceTree = ""; }; - 3EA934C5D8DBAA19DB0F5271 /* ImageDownloader.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageDownloader.swift; sourceTree = ""; }; - 3EA938479CF48D7AD1B6369B /* ImageCache.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageCache.swift; sourceTree = ""; }; - 3EA938BE5468824787100228 /* ImageRepository.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ImageRepository.swift; sourceTree = ""; }; - 3EA93A10227A7DAF1861D9F5 /* Cache.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Cache.swift; sourceTree = ""; }; - 3EA93EBD6E6BEC966BBE51D6 /* RouteControllerDelegateSpy.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RouteControllerDelegateSpy.swift; sourceTree = ""; }; - 6441B1691EFC64E50076499F /* WaypointConfirmationViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = WaypointConfirmationViewController.swift; sourceTree = ""; }; - 64847A031F04629D003F3A69 /* Feedback.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Feedback.swift; sourceTree = ""; }; - 8D07C5A720B612310093D779 /* EmptyStyle.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = EmptyStyle.json; sourceTree = ""; }; - 8D24A2F52040960C0098CBF8 /* UIEdgeInsets.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIEdgeInsets.swift; sourceTree = ""; }; - 8D24A2F720409A890098CBF8 /* CGSize.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CGSize.swift; sourceTree = ""; }; - 8D24A2F920449B430098CBF8 /* Dictionary.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Dictionary.swift; sourceTree = ""; }; - 8D391CE11FD71E78006BB91F /* Waypoint.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Waypoint.swift; sourceTree = ""; }; - 8D53136A20653FA20044891E /* ExitView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ExitView.swift; sourceTree = ""; }; - 8D54F149206ECF720038736D /* InstructionPresenterTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = InstructionPresenterTests.swift; sourceTree = ""; }; - 8D5CF3AF215054AF005592D6 /* FBSnapshotTestCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FBSnapshotTestCase.swift; sourceTree = ""; }; - 8D5DFFF0207C04840093765A /* NSAttributedString.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NSAttributedString.swift; sourceTree = ""; }; - 8D8EA9BB20575CD80077F478 /* FeedbackCollectionViewCell.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = FeedbackCollectionViewCell.swift; sourceTree = ""; }; - 8D9ADEA620A0C61A0067E845 /* GenericRouteShield.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = GenericRouteShield.swift; sourceTree = ""; }; - 8D9CD7FD20880581004DC4B3 /* XCTestCase.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = XCTestCase.swift; sourceTree = ""; }; - 8DB45E8F201698EB001EA6A3 /* UIStackView.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIStackView.swift; sourceTree = ""; }; - 8DB63A391FBBCA2200928389 /* RatingControl.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RatingControl.swift; sourceTree = ""; }; - 8DCE104F210FC5880048B0FB /* EndOfRouteFeedback.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EndOfRouteFeedback.swift; sourceTree = ""; }; - 8DE879651FBB9980002F06C0 /* EndOfRouteViewController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = EndOfRouteViewController.swift; sourceTree = ""; }; - 8DF399B11FB257B30034904C /* UIGestureRecognizer.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIGestureRecognizer.swift; sourceTree = ""; }; - AE00A739209A2C38006A3DC7 /* StepsViewControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StepsViewControllerTests.swift; sourceTree = ""; }; - AE09EC13207BD88200782A33 /* TunnelIntersectionManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelIntersectionManager.swift; sourceTree = ""; }; - AE46F95420EA735B00537AC2 /* VisualInstruction.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VisualInstruction.swift; sourceTree = ""; }; - AE5F8770209A082500F58FDB /* route-with-banner-instructions.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "route-with-banner-instructions.json"; sourceTree = ""; }; - AE8B1B96207D2B2B003050F6 /* TunnelIntersectionManagerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = TunnelIntersectionManagerTests.swift; sourceTree = ""; }; - AE997D2121137B8B00EB0AAB /* String+LocalizedConstants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = "String+LocalizedConstants.swift"; sourceTree = ""; }; - AEC3AC992106703100A26F34 /* HighwayShield.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = HighwayShield.swift; sourceTree = ""; }; - AED2156E208F7FEA009AA673 /* NavigationViewControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationViewControllerTests.swift; sourceTree = ""; }; - AEF2C8F12072B603007B061F /* routeWithTunnels_9thStreetDC.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = routeWithTunnels_9thStreetDC.json; sourceTree = ""; }; - C51511D020EAC89D00372A91 /* CPMapTemplate.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CPMapTemplate.swift; sourceTree = ""; }; - C51DF8651F38C31C006C6A15 /* Locale.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Locale.swift; sourceTree = ""; }; - C51FC31620F689F800400CE7 /* CustomStyles.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CustomStyles.swift; sourceTree = ""; }; - C520EE911EBB84F9008805BC /* Base */ = {isa = PBXFileReference; lastKnownFileType = file.storyboard; name = Base; path = Base.lproj/Navigation.storyboard; sourceTree = ""; }; - C520EE941EBBBD55008805BC /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = en; path = Base.lproj/Navigation.strings; sourceTree = ""; }; - C52AC1251DF0E48600396B9F /* RouteProgressTests.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RouteProgressTests.swift; sourceTree = ""; }; - C52D09CD1DEF5E5100BE3C5C /* route.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = route.json; sourceTree = ""; }; - C52D09D21DEF636C00BE3C5C /* Fixture.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Fixture.swift; sourceTree = ""; }; - C53208AA1E81FFB900910266 /* NavigationMapView.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; lineEnding = 0; path = NavigationMapView.swift; sourceTree = ""; }; - C5381F01204E03B600A5493E /* UIDevice.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIDevice.swift; sourceTree = ""; }; - C5387A9C1F8FDB13000D2E93 /* routeWithInstructions.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = routeWithInstructions.json; sourceTree = ""; }; - C538E4D5278DC92F00200823 /* Polyline.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Polyline.xcframework; path = Carthage/Build/Polyline.xcframework; sourceTree = ""; }; - C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MapboxGeocoder.xcframework; path = Carthage/Build/MapboxGeocoder.xcframework; sourceTree = ""; }; - C538E4D8278DC92F00200823 /* Solar.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Solar.xcframework; path = Carthage/Build/Solar.xcframework; sourceTree = ""; }; - C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = MapboxDirections.xcframework; path = Carthage/Build/MapboxDirections.xcframework; sourceTree = ""; }; - C538E4DA278DC92F00200823 /* Turf.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Turf.xcframework; path = Carthage/Build/Turf.xcframework; sourceTree = ""; }; - C53C19701F38EACD008DB406 /* zh-Hans */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = ""; }; - C53C19711F38EADB008DB406 /* it */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Localizable.strings; sourceTree = ""; }; - C53C19721F38EADB008DB406 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; - C53C19731F38EADC008DB406 /* lt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = lt; path = lt.lproj/Localizable.strings; sourceTree = ""; }; - C53C19751F38EADE008DB406 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; - C53C19771F38EAE4008DB406 /* ca */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Localizable.strings; sourceTree = ""; }; - C53C197A1F38EAEA008DB406 /* Base */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.strings; sourceTree = ""; }; - C53F2F0720EBC95600D9798F /* Example-CarPlay.app */ = {isa = PBXFileReference; explicitFileType = wrapper.application; includeInIndex = 0; path = "Example-CarPlay.app"; sourceTree = BUILT_PRODUCTS_DIR; }; - C546586528FECEFA00C068EA /* Quick.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Quick.xcframework; path = Carthage/Build/Quick.xcframework; sourceTree = ""; }; - C546586E28FED7F200C068EA /* FBSnapshotTestCase.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = FBSnapshotTestCase.xcframework; path = Carthage/Build/FBSnapshotTestCase.xcframework; sourceTree = ""; }; - C54658B1290001B500C068EA /* Nimble.xcframework */ = {isa = PBXFileReference; lastKnownFileType = wrapper.xcframework; name = Nimble.xcframework; path = Carthage/Build/Nimble.xcframework; sourceTree = ""; }; - C54658B529000D5D00C068EA /* Nijmegen-Arnhem-Veenendaal.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "Nijmegen-Arnhem-Veenendaal.json"; sourceTree = ""; }; - C54C655120336F2600D338E0 /* Constants.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = ""; }; - C551B0E520D42222009A986F /* NavigationLocationManagerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationLocationManagerTests.swift; sourceTree = ""; }; - C55C299820D2E2F600B0406C /* NavigationMapViewTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationMapViewTests.swift; sourceTree = ""; }; - C561735A1F182113005954F6 /* RouteStep.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RouteStep.swift; sourceTree = ""; }; - C56967AB28FD9146008304BF /* Nijmegen-Bemmel-Veenendaal.json */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.json; path = "Nijmegen-Bemmel-Veenendaal.json"; sourceTree = ""; }; - C57491DE1FACC42F006F97BC /* CGPoint.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; name = CGPoint.swift; path = ../MapboxNavigation/CGPoint.swift; sourceTree = ""; }; - C578DA071EFD0FFF0052079F /* ProcessInfo.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = ProcessInfo.swift; sourceTree = ""; }; - C57AD98920EAA39A0087B24B /* Entitlements.plist */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.xml; path = Entitlements.plist; sourceTree = ""; }; - C58159001EA6D02700FC6C3D /* MLNVectorTileSource.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MLNVectorTileSource.swift; sourceTree = ""; }; - C582BA2B2073E77E00647DAA /* StringTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StringTests.swift; sourceTree = ""; }; - C582FD5E203626E900A9086E /* CLLocationDirection.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CLLocationDirection.swift; sourceTree = ""; }; - C58821FF1FB0F0D7008B0A2D /* Error.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Error.swift; sourceTree = ""; }; - C58D6BAC1DDCF2AE00387F53 /* Constants.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Constants.swift; sourceTree = ""; }; - C5A60EC820A2417200C21178 /* MD5Tests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MD5Tests.swift; sourceTree = ""; }; - C5A60ECA20A241B600C21178 /* md5_crazy_strings.txt */ = {isa = PBXFileReference; lastKnownFileType = text; path = md5_crazy_strings.txt; sourceTree = ""; }; - C5A6B2DC1F4CE8E8004260EA /* StyleType.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = StyleType.swift; sourceTree = ""; }; - C5A7EC5B1FD610A80008B9BA /* VisualInstructionComponent.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = VisualInstructionComponent.swift; sourceTree = ""; }; - C5ABB50D20408D2C00AFA92C /* RouteControllerTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = RouteControllerTests.swift; sourceTree = ""; }; - C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; includeInIndex = 0; path = MapboxCoreNavigation.framework; sourceTree = BUILT_PRODUCTS_DIR; }; - C5ADFBCC1DDCC7840011824B /* MapboxCoreNavigation.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MapboxCoreNavigation.h; sourceTree = ""; }; - C5ADFBCD1DDCC7840011824B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - C5ADFBD21DDCC7840011824B /* MapboxCoreNavigationTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; includeInIndex = 0; path = MapboxCoreNavigationTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; }; - C5ADFBD71DDCC7840011824B /* MapboxCoreNavigationTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MapboxCoreNavigationTests.swift; sourceTree = ""; }; - C5ADFBD91DDCC7840011824B /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; }; - C5ADFBF91DDCC9580011824B /* RouteController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RouteController.swift; sourceTree = ""; }; - C5ADFBFB1DDCC9AD0011824B /* RouteProgress.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = RouteProgress.swift; sourceTree = ""; }; - C5BBFDC5290BB6250088F288 /* Route.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Route.swift; sourceTree = ""; }; - C5BF7370206AB0DE00CDBB6D /* MapboxCoreNavigationTests-Bridging-Header.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = "MapboxCoreNavigationTests-Bridging-Header.h"; sourceTree = ""; }; - C5BF7371206AB0DF00CDBB6D /* CLHeadingPrivate.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = CLHeadingPrivate.h; sourceTree = ""; }; - C5CFE4871EF2FD4C006F48E8 /* MMEEventsManager.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = MMEEventsManager.swift; sourceTree = ""; }; - C5D1C9931FB236900067C619 /* ErrorCode.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ErrorCode.swift; sourceTree = ""; }; - C5D9800C1EFA8BA9006DBF2E /* CustomViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CustomViewController.swift; sourceTree = ""; }; - C5D9800E1EFBCDAD006DBF2E /* Date.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = Date.swift; sourceTree = ""; }; - C5E7A31B1F4F6828001CB015 /* NavigationRouteOptions.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = NavigationRouteOptions.swift; sourceTree = ""; }; - C5E8FA2D29027D0700A1D10A /* Nijmegen-Bemmel-Veenendaal2.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "Nijmegen-Bemmel-Veenendaal2.json"; sourceTree = ""; }; - C5E8FA2F29028AA700A1D10A /* Wolfheze-Veenendaal-Normal.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "Wolfheze-Veenendaal-Normal.json"; sourceTree = ""; }; - C5E8FA3129028B0E00A1D10A /* Wolfheze-Veenendaal-Small-Detour-At-End.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "Wolfheze-Veenendaal-Small-Detour-At-End.json"; sourceTree = ""; }; - C5E8FA3329028F6600A1D10A /* A12-To-Veenendaal-Normal.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "A12-To-Veenendaal-Normal.json"; sourceTree = ""; }; - C5E8FA3529028FA400A1D10A /* A12-To-Veenendaal-Slight-Difference.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "A12-To-Veenendaal-Slight-Difference.json"; sourceTree = ""; }; - C5E8FA372902952100A1D10A /* A12-To-Veenendaal-Bigger-Detour.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "A12-To-Veenendaal-Bigger-Detour.json"; sourceTree = ""; }; - C5E8FA392902E35800A1D10A /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "A12-To-Veenendaal-Normal-With-Big-Trafficjam.json"; sourceTree = ""; }; - C5EF397420599120009A2C50 /* straight-line.json */ = {isa = PBXFileReference; lastKnownFileType = text.json; path = "straight-line.json"; sourceTree = ""; }; - C5F2DC9F206DBF5E002F99F6 /* Sequence.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = Sequence.swift; sourceTree = ""; }; - C5F4D21820DC468B0059FABF /* CongestionLevel.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CongestionLevel.swift; sourceTree = ""; }; - C5FFAC1420D96F5B009E7F98 /* CarPlayNavigationViewController.swift */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.swift; path = CarPlayNavigationViewController.swift; sourceTree = ""; }; - D72CC42B2451A2F800238549 /* ConfigManager.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ConfigManager.swift; sourceTree = ""; }; - DA1811FD20128B0900C91918 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Main.strings; sourceTree = ""; }; - DA1811FE20128B0900C91918 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Navigation.strings; sourceTree = ""; }; - DA18120120128B7B00C91918 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Localizable.strings; sourceTree = ""; }; - DA18120320128E9400C91918 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Localizable.strings; sourceTree = ""; }; - DA181204201290FC00C91918 /* es */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = es; path = Resources/es.lproj/Localizable.stringsdict; sourceTree = ""; }; - DA1812052012910000C91918 /* vi */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = vi; path = Resources/vi.lproj/Localizable.stringsdict; sourceTree = ""; }; - DA181207201292E700C91918 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = fr; path = Resources/fr.lproj/Localizable.stringsdict; sourceTree = ""; }; - DA3327391F50C6DA00C5EE88 /* sl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sl; path = sl.lproj/Main.strings; sourceTree = ""; }; - DA33273A1F50C6FC00C5EE88 /* sl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sl; path = sl.lproj/Main.strings; sourceTree = ""; }; - DA33273B1F50C70E00C5EE88 /* sl */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sl; path = sl.lproj/Navigation.strings; sourceTree = ""; }; - DA33273D1F50C7CA00C5EE88 /* uk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Main.strings; sourceTree = ""; }; - DA33273E1F50C7D800C5EE88 /* uk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Main.strings; sourceTree = ""; }; - DA33273F1F50C7E400C5EE88 /* uk */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Navigation.strings; sourceTree = ""; }; - DA352568201096F20048DDFC /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Main.strings; sourceTree = ""; }; - DA35256F2010A5200048DDFC /* en */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = en; path = Resources/en.lproj/Localizable.stringsdict; sourceTree = ""; }; - DA3525712011435E0048DDFC /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Main.strings; sourceTree = ""; }; - DA352572201143BA0048DDFC /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Navigation.strings; sourceTree = ""; }; - DA352573201143D30048DDFC /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = da; path = da.lproj/Localizable.strings; sourceTree = ""; }; - DA545ABA1FA993DF0090908E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Main.strings; sourceTree = ""; }; - DA545ABB1FA993FB0090908E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Main.strings; sourceTree = ""; }; - DA545ABC1FA9941F0090908E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = ""; }; - DA545ABE1FA9A1370090908E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Main.strings; sourceTree = ""; }; - DA545ABF1FA9A1530090908E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Main.strings; sourceTree = ""; }; - DA545AC01FA9A15A0090908E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; - DA545AC21FA9A16D0090908E /* nl */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = nl; path = nl.lproj/Localizable.strings; sourceTree = ""; }; - DA545AC31FAA86350090908E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Navigation.strings; sourceTree = ""; }; - DA545AC41FAA86450090908E /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = de; path = de.lproj/Localizable.strings; sourceTree = ""; }; - DA5AD03C1FEBA03700FC7D7B /* bg */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = bg; path = bg.lproj/Main.strings; sourceTree = ""; }; - DA5AD03D1FEBA03700FC7D7B /* bg */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = bg; path = bg.lproj/Main.strings; sourceTree = ""; }; - DA5AD0401FEBA23200FC7D7B /* bg */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = bg; path = bg.lproj/Localizable.strings; sourceTree = ""; }; - DA625E901F10557300FBE176 /* fa */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fa; path = fa.lproj/Main.strings; sourceTree = ""; }; - DA625E911F10559600FBE176 /* fa */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fa; path = fa.lproj/Main.strings; sourceTree = ""; }; - DA625E921F1055DE00FBE176 /* fa */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fa; path = fa.lproj/Navigation.strings; sourceTree = ""; }; - DA625E931F105B1900FBE176 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Main.strings; sourceTree = ""; }; - DA625E941F105B1A00FBE176 /* fr */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Main.strings; sourceTree = ""; }; - DA625E951F105B1A00FBE176 /* fr */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = fr; path = fr.lproj/Navigation.strings; sourceTree = ""; }; - DA625E981F105C1200FBE176 /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Main.strings; sourceTree = ""; }; - DA625E991F105C1300FBE176 /* hu */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Main.strings; sourceTree = ""; }; - DA625E9A1F105C1300FBE176 /* hu */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Navigation.strings; sourceTree = ""; }; - DA625E9C1F105CB100FBE176 /* hu */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Localizable.strings; sourceTree = ""; }; - DA625E9D1F105D1A00FBE176 /* lt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = lt; path = lt.lproj/Main.strings; sourceTree = ""; }; - DA625E9E1F105D1A00FBE176 /* lt */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = lt; path = lt.lproj/Main.strings; sourceTree = ""; }; - DA625EA41F1060E300FBE176 /* ca */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = ca; path = ca.lproj/Navigation.strings; sourceTree = ""; }; - DA625EA51F10614500FBE176 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Navigation.strings; sourceTree = ""; }; - DA625EA71F10616600FBE176 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Localizable.strings; sourceTree = ""; }; - DA625EA91F1061DA00FBE176 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Navigation.strings; sourceTree = ""; }; - DA625EAA1F10621A00FBE176 /* vi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Navigation.strings; sourceTree = ""; }; - DA678B7A1F6CEE6200F05913 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = ""; }; - DA678B7B1F6CF46600F05913 /* hu */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = hu; path = hu.lproj/Localizable.strings; sourceTree = ""; }; - DA678B7C1F6CF47200F05913 /* sv */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = sv; path = sv.lproj/Localizable.strings; sourceTree = ""; }; - DA678B7D1F6CF47A00F05913 /* vi */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = vi; path = vi.lproj/Localizable.strings; sourceTree = ""; }; - DA73F87820BF851B0067649B /* de */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = de; path = Resources/de.lproj/Localizable.stringsdict; sourceTree = ""; }; - DA8264851F2AAD8400454B24 /* zh-Hant */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/Main.strings"; sourceTree = ""; }; - DA8264861F2AAD9F00454B24 /* zh-Hant */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/Main.strings"; sourceTree = ""; }; - DA8264871F2AADC200454B24 /* zh-Hant */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = "zh-Hant"; path = "zh-Hant.lproj/Navigation.strings"; sourceTree = ""; }; - DAA292FF1F16CC2200D94613 /* lt */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = lt; path = lt.lproj/Navigation.strings; sourceTree = ""; }; - DAA293011F16DA0C00D94613 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Main.strings; sourceTree = ""; }; - DAA293021F16DA1300D94613 /* es */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = es; path = es.lproj/Main.strings; sourceTree = ""; }; - DAAE5F311EAE4C4700832871 /* Base */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = Base; path = Base.lproj/Localizable.strings; sourceTree = ""; }; - DAAE5F331EAE4C5A00832871 /* zh-Hans */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = "zh-Hans"; path = "zh-Hans.lproj/Localizable.strings"; sourceTree = ""; }; - DAB2CCE61DF7AFDE001B2FE1 /* dc-line.geojson */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text; path = "dc-line.geojson"; sourceTree = ""; }; - DAC049BE201715D5004C2217 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ru; path = ru.lproj/Localizable.strings; sourceTree = ""; }; - DAC049BF201715EA004C2217 /* ru */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ru; path = Resources/ru.lproj/Localizable.stringsdict; sourceTree = ""; }; - DAC049C020171886004C2217 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Main.strings; sourceTree = ""; }; - DAC049C1201718AC004C2217 /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = he; path = he.lproj/Localizable.strings; sourceTree = ""; }; - DACCD9CD1F1FE05C00BB09A1 /* Example-Swift-BridgingHeader.h */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = sourcecode.c.h; path = "Example-Swift-BridgingHeader.h"; sourceTree = ""; }; - DAD17201214DB12B009C8161 /* CPMapTemplateTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = CPMapTemplateTests.swift; sourceTree = ""; }; - DAD88E00202AC7AA00AAA536 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = uk; path = Resources/uk.lproj/Localizable.stringsdict; sourceTree = ""; }; - DAD88E01202AC80100AAA536 /* uk */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = uk; path = uk.lproj/Localizable.strings; sourceTree = ""; }; - DAD88E02202AC81F00AAA536 /* da */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = da; path = Resources/da.lproj/Localizable.stringsdict; sourceTree = ""; }; - DADAD826203504C6002E25CA /* MBNavigationSettings.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MBNavigationSettings.h; sourceTree = ""; }; - DADAD827203504C6002E25CA /* MBNavigationSettings.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MBNavigationSettings.m; sourceTree = ""; }; - DADAD82C20350849002E25CA /* MBRouteVoiceController.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = MBRouteVoiceController.h; sourceTree = ""; }; - DADAD82D20350849002E25CA /* MBRouteVoiceController.m */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.objc; path = MBRouteVoiceController.m; sourceTree = ""; }; - DAE26B1A20644047001D6E1F /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Main.strings; sourceTree = ""; }; - DAE26B1B20644047001D6E1F /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Main.strings; sourceTree = ""; }; - DAE26B1C20644047001D6E1F /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Navigation.strings; sourceTree = ""; }; - DAE26B1F2064407D001D6E1F /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Localizable.strings; sourceTree = ""; }; - DAE26B20206441D8001D6E1F /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Main.strings"; sourceTree = ""; }; - DAE26B21206441D9001D6E1F /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Main.strings"; sourceTree = ""; }; - DAE26B22206441D9001D6E1F /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Navigation.strings"; sourceTree = ""; }; - DAE26B23206441F7001D6E1F /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Localizable.strings"; sourceTree = ""; }; - DAE26B2420644215001D6E1F /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = "pt-PT"; path = "pt-PT.lproj/Localizable.strings"; sourceTree = ""; }; - DAE26B2520644225001D6E1F /* pt-PT */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = "pt-PT"; path = "Resources/pt-PT.lproj/Localizable.stringsdict"; sourceTree = ""; }; - DAE26B272064742F001D6E1F /* ar */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ar; path = ar.lproj/Localizable.strings; sourceTree = ""; }; - DAE26B2820647A82001D6E1F /* he */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = he; path = Resources/he.lproj/Localizable.stringsdict; sourceTree = ""; }; - DAE7114C1F22E94E009AED76 /* it */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Main.strings; sourceTree = ""; }; - DAE7114D1F22E966009AED76 /* it */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Main.strings; sourceTree = ""; }; - DAE7114E1F22E977009AED76 /* it */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.plist.strings; name = it; path = it.lproj/Navigation.strings; sourceTree = ""; }; - DAF257122017C1E800367EF5 /* sv */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = sv; path = Resources/sv.lproj/Localizable.stringsdict; sourceTree = ""; }; - DAFEB36A2093A0D800A86A83 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/Navigation.strings; sourceTree = ""; }; - DAFEB36D2093A11F00A86A83 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/Localizable.strings; sourceTree = ""; }; - DAFEB36E2093A3E000A86A83 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.strings; name = ko; path = ko.lproj/Localizable.strings; sourceTree = ""; }; - DAFEB36F2093A3EF00A86A83 /* ko */ = {isa = PBXFileReference; lastKnownFileType = text.plist.stringsdict; name = ko; path = Resources/ko.lproj/Localizable.stringsdict; sourceTree = ""; }; - F1D8FD2E28DB0A67006626A1 /* _TestPath.gpx */ = {isa = PBXFileReference; fileEncoding = 4; lastKnownFileType = text.xml; path = _TestPath.gpx; sourceTree = ""; }; -/* End PBXFileReference section */ - -/* Begin PBXFrameworksBuildPhase section */ - 351BEBD31E5BCC28006FE110 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - C538E4F0278DC97600200823 /* MapboxGeocoder.xcframework in Frameworks */, - 7170CCBA2B6D2AE00054DF8E /* MapLibre in Frameworks */, - C538E4F1278DC97600200823 /* Turf.xcframework in Frameworks */, - 2CEB743228D078E6007ED4A9 /* Solar.xcframework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352BBC441E5E78D700703DF1 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352BBC521E5E78EA00703DF1 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 3546BF71207BA4A8007FF453 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 3546BF8A207BA920007FF453 /* MapboxCoreNavigation.framework in Frameworks */, - 3546BF8E207BA920007FF453 /* MapboxNavigation.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 358D14601E5E3B7700ADE590 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7170CCBC2B6D2AF10054DF8E /* MapLibre in Frameworks */, - C538E501278DCD0900200823 /* Solar.xcframework in Frameworks */, - 35E9B0AD1F9E0F8F00BF84AB /* MapboxNavigation.framework in Frameworks */, - C538E4FF278DCD0800200823 /* Polyline.xcframework in Frameworks */, - C538E503278DCD0A00200823 /* Turf.xcframework in Frameworks */, - C538E4F7278DCD0200200823 /* MapboxDirections.xcframework in Frameworks */, - C538E4F9278DCD0400200823 /* MapboxGeocoder.xcframework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 358D14A31E5E3FDC00ADE590 /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 354A01DB1E6626E900D765C2 /* MapboxCoreNavigation.framework in Frameworks */, - 354A01DD1E6626EA00D765C2 /* MapboxNavigation.framework in Frameworks */, - C538E505278DCD0E00200823 /* MapboxDirections.xcframework in Frameworks */, - C538E50D278DCD1C00200823 /* Polyline.xcframework in Frameworks */, - 7152FF182B71214100BF70D4 /* MapLibre in Frameworks */, - C538E507278DCD0F00200823 /* MapboxGeocoder.xcframework in Frameworks */, - C538E511278DCD1F00200823 /* Turf.xcframework in Frameworks */, - C538E50F278DCD1E00200823 /* Solar.xcframework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 35A7DBEB1E3A1C59000BAB5C /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - C538E4ED278DC96700200823 /* MapboxDirections.xcframework in Frameworks */, - C538E4F2278DCA6E00200823 /* Polyline.xcframework in Frameworks */, - C538E4EF278DC96700200823 /* Turf.xcframework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 35B711CC1E5E7AD2001EDA8D /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - C54658B3290001B500C068EA /* Nimble.xcframework in Frameworks */, - C546587028FED7F200C068EA /* FBSnapshotTestCase.xcframework in Frameworks */, - 3525449D1E663D32004C8F1C /* MapboxCoreNavigation.framework in Frameworks */, - 35B711D41E5E7AD2001EDA8D /* MapboxNavigation.framework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C53F2EE920EBC95600D9798F /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - 7170CCBE2B6D2B570054DF8E /* MapLibre in Frameworks */, - C538E51D278DCD2A00200823 /* Solar.xcframework in Frameworks */, - C53F2EEA20EBC95600D9798F /* MapboxNavigation.framework in Frameworks */, - C538E51B278DCD2900200823 /* Polyline.xcframework in Frameworks */, - C538E51F278DCD2B00200823 /* Turf.xcframework in Frameworks */, - C538E513278DCD2400200823 /* MapboxDirections.xcframework in Frameworks */, - C538E515278DCD2500200823 /* MapboxGeocoder.xcframework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5ADFBCF1DDCC7840011824B /* Frameworks */ = { - isa = PBXFrameworksBuildPhase; - buildActionMask = 2147483647; - files = ( - C54658B2290001B500C068EA /* Nimble.xcframework in Frameworks */, - 352BBC3B1E5E6A0C00703DF1 /* MapboxCoreNavigation.framework in Frameworks */, - C546586628FECEFA00C068EA /* Quick.xcframework in Frameworks */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXFrameworksBuildPhase section */ - -/* Begin PBXGroup section */ - 160A4A6521278F2D0028B070 /* Templates */ = { - isa = PBXGroup; - children = ( - ); - name = Templates; - sourceTree = ""; - }; - 16120A4B20645D2C007EA21D /* Support */ = { - isa = PBXGroup; - children = ( - 16435E02206EE32F00AF48B6 /* DirectionsSpy.swift */, - 16435E04206EE37800AF48B6 /* DummyURLSessionDataTask.swift */, - 3EA93EBD6E6BEC966BBE51D6 /* RouteControllerDelegateSpy.swift */, - ); - path = Support; - sourceTree = ""; - }; - 16E11B53212B3D4700027CD3 /* Extensions and Categories */ = { - isa = PBXGroup; - children = ( - 160A4A68212791010028B070 /* CPBarButton+MBTestable.h */, - 160A4A69212791010028B070 /* CPBarButton+MBTestable.m */, - DAD17201214DB12B009C8161 /* CPMapTemplateTests.swift */, - ); - name = "Extensions and Categories"; - sourceTree = ""; - }; - 16E3625A2012656C00DF0592 /* Support */ = { - isa = PBXGroup; - children = ( - 16E3625B201265D600DF0592 /* ImageDownloadOperationSpy.swift */, - 1662244620256C0700EA4824 /* ImageLoadingURLProtocolSpy.swift */, - 8D5CF3AF215054AF005592D6 /* FBSnapshotTestCase.swift */, - ); - path = Support; - sourceTree = ""; - }; - 35002D721E5F6C830090E733 /* Supporting files */ = { - isa = PBXGroup; - children = ( - DACCD9CD1F1FE05C00BB09A1 /* Example-Swift-BridgingHeader.h */, - 355D20DB1EF30A6D0012B1E0 /* tunnel.route */, - 35002D661E5F6B1B0090E733 /* Main.storyboard */, - 354D9F871EF2FE900006FAA8 /* tunnel.json */, - 35002D5F1E5F6ADB0090E733 /* Assets.xcassets */, - 35002D601E5F6ADB0090E733 /* Base.lproj */, - 35002D5D1E5F6ABB0090E733 /* Info.plist */, - C57AD98920EAA39A0087B24B /* Entitlements.plist */, - ); - name = "Supporting files"; - sourceTree = ""; - }; - 35002D731E5F6C8F0090E733 /* Supporting files */ = { - isa = PBXGroup; - children = ( - 35002D6A1E5F6C7F0090E733 /* Assets.xcassets */, - 35002D6B1E5F6C7F0090E733 /* Base.lproj */, - 35002D6C1E5F6C7F0090E733 /* Info.plist */, - 35002D6D1E5F6C7F0090E733 /* main.m */, - 35002D741E5F6CD30090E733 /* Main.storyboard */, - ); - name = "Supporting files"; - sourceTree = ""; - }; - 3507F9FD213430CB0086B39E /* CarPlay */ = { - isa = PBXGroup; - children = ( - 16C2A420211526EE00FE6E68 /* CarPlayManager.swift */, - 16EF6C21211BA4B300AA580B /* CarPlayMapViewController.swift */, - C5FFAC1420D96F5B009E7F98 /* CarPlayNavigationViewController.swift */, - 35379D0121480E1300FD402E /* CarPlayManager+Search.swift */, - 352C35BF2134958F00D77796 /* RecentItem.swift */, - ); - name = CarPlay; - sourceTree = ""; - }; - 351BEBD81E5BCC28006FE110 /* MapboxNavigation */ = { - isa = PBXGroup; - children = ( - 3507F9FD213430CB0086B39E /* CarPlay */, - C51923B41EA55C5E002AF9E1 /* Extensions */, - 356B7D8A1EE166E100FE5B89 /* scripts */, - 351BEC201E5BD4DC006FE110 /* Supporting files */, - 160A4A6521278F2D0028B070 /* Templates */, - C51923B51EA55CD4002AF9E1 /* Views */, - 3EA93A10227A7DAF1861D9F5 /* Cache.swift */, - C54C655120336F2600D338E0 /* Constants.swift */, - 160D8278205996DA00D278D6 /* DataCache.swift */, - 35726EE71F0856E900AFA1B6 /* DayStyle.swift */, - 35025F3E1F051DD2002BA3EA /* DialogViewController.swift */, - 8DE879651FBB9980002F06C0 /* EndOfRouteViewController.swift */, - C58821FF1FB0F0D7008B0A2D /* Error.swift */, - C5D1C9931FB236900067C619 /* ErrorCode.swift */, - 8D8EA9BB20575CD80077F478 /* FeedbackCollectionViewCell.swift */, - 35CB1E121F97DD740011CC44 /* FeedbackItem.swift */, - AEC3AC992106703100A26F34 /* HighwayShield.swift */, - 3EA938479CF48D7AD1B6369B /* ImageCache.swift */, - 16A509D6202BC0CA0011D788 /* ImageDownload.swift */, - 3EA934C5D8DBAA19DB0F5271 /* ImageDownloader.swift */, - 3EA938BE5468824787100228 /* ImageRepository.swift */, - 3EA93230997B8D59E3B76C8C /* InstructionPresenter.swift */, - 35D825FD1E6A2EC60088F83B /* MapboxNavigation.h */, - DADAD82C20350849002E25CA /* MBRouteVoiceController.h */, - DADAD82D20350849002E25CA /* MBRouteVoiceController.m */, - C53208AA1E81FFB900910266 /* NavigationMapView.swift */, - 359D1B271FFE70D30052FA42 /* NavigationView.swift */, - 351BEBEA1E5BCC63006FE110 /* NavigationViewController.swift */, - 351BEBE41E5BCC63006FE110 /* RouteMapViewController.swift */, - 35C9973E1E732C1B00544D1C /* RouteVoiceController.swift */, - 353EC9D61FB09708002EB0AB /* StepsViewController.swift */, - 351BEBE01E5BCC63006FE110 /* Style.swift */, - 353AA55F1FCEF583009F0384 /* StyleManager.swift */, - C5A6B2DC1F4CE8E8004260EA /* StyleType.swift */, - 35B1E2941F1FF8EC00A13D32 /* UserCourseView.swift */, - D72CC42B2451A2F800238549 /* ConfigManager.swift */, - ); - path = MapboxNavigation; - sourceTree = ""; - }; - 351BEC201E5BD4DC006FE110 /* Supporting files */ = { - isa = PBXGroup; - children = ( - 351BEC211E5BD506006FE110 /* Resources */, - 351BEBDA1E5BCC28006FE110 /* Info.plist */, - ); - name = "Supporting files"; - sourceTree = ""; - }; - 351BEC211E5BD506006FE110 /* Resources */ = { - isa = PBXGroup; - children = ( - 351BEC281E5BD530006FE110 /* Assets.xcassets */, - C520EE921EBB84F9008805BC /* Navigation.storyboard */, - DAAE5F321EAE4C4700832871 /* Localizable.strings */, - DA35256E2010A5200048DDFC /* Localizable.stringsdict */, - ); - name = Resources; - sourceTree = ""; - }; - 352BBC481E5E78D700703DF1 /* SwiftTests */ = { - isa = PBXGroup; - children = ( - 352BBC491E5E78D700703DF1 /* Example_SwiftTests.swift */, - 352BBC4B1E5E78D700703DF1 /* Info.plist */, - ); - name = SwiftTests; - path = Examples/SwiftTests; - sourceTree = ""; - }; - 352BBC561E5E78EA00703DF1 /* Objective-CTests */ = { - isa = PBXGroup; - children = ( - 352BBC571E5E78EA00703DF1 /* Example_Objective_CTests.m */, - 352BBC591E5E78EA00703DF1 /* Info.plist */, - ); - name = "Objective-CTests"; - path = "Examples/Objective-CTests"; - sourceTree = ""; - }; - 352C35BE2134958100D77796 /* Search */ = { - isa = PBXGroup; - children = ( - ); - name = Search; - sourceTree = ""; - }; - 3546BF75207BA4A8007FF453 /* RouteTest */ = { - isa = PBXGroup; - children = ( - 3546BF86207BA722007FF453 /* Routes */, - 3546BF76207BA4A8007FF453 /* AppDelegate.swift */, - 3546BFA4207BAB7A007FF453 /* Fixture.swift */, - 3546BF7D207BA4AA007FF453 /* Assets.xcassets */, - 3546BF82207BA4AA007FF453 /* Info.plist */, - 3546BFA2207BAB14007FF453 /* LaunchScreen.storyboard */, - ); - path = RouteTest; - sourceTree = ""; - }; - 3546BF86207BA722007FF453 /* Routes */ = { - isa = PBXGroup; - children = ( - 3546BF87207BA73C007FF453 /* downtown-sf.json */, - 359416FD20A9CB0400372638 /* multiwaypoints.json */, - ); - path = Routes; - sourceTree = ""; - }; - 354A9BC920EA9BC100F03325 /* Events */ = { - isa = PBXGroup; - children = ( - 354A9BCC20EA9C8100F03325 /* CoreFeedbackEvent.swift */, - C5CFE4871EF2FD4C006F48E8 /* MMEEventsManager.swift */, - 354A9BC520EA991900F03325 /* SessionState.swift */, - ); - name = Events; - sourceTree = ""; - }; - 355DB5731EFA73410091BFB7 /* Fixtures */ = { - isa = PBXGroup; - children = ( - 35EB9A6920A1A89500CB1225 /* turn_left.data */, - 352690481ECC843700E387BD /* Fixture.swift */, - 8D07C5A720B612310093D779 /* EmptyStyle.json */, - 355DB5741EFA78070091BFB7 /* GGPark-to-BernalHeights.route */, - 355DB5761EFA780E0091BFB7 /* UnionSquare-to-GGPark.route */, - 351030101F54B72000E3B7E7 /* route-for-lane-testing.json */, - 16B63DCC205C8EEF002D56D4 /* route-with-instructions.json */, - 35DC9D8E1F4321CC001ECD64 /* route-with-lanes.json */, - 3540514C1F73F3BB00ED572D /* route-with-straight-roundabout.json */, - AE5F8770209A082500F58FDB /* route-with-banner-instructions.json */, - ); - path = Fixtures; - sourceTree = ""; - }; - 358D14641E5E3B7700ADE590 /* Swift */ = { - isa = PBXGroup; - children = ( - 352C35BE2134958100D77796 /* Search */, - 35002D721E5F6C830090E733 /* Supporting files */, - 358D14651E5E3B7700ADE590 /* AppDelegate.swift */, - 35379CFB21480BFB00FD402E /* AppDelegate+CarPlay.swift */, - 358D14671E5E3B7700ADE590 /* ViewController.swift */, - C5D9800C1EFA8BA9006DBF2E /* CustomViewController.swift */, - 6441B1691EFC64E50076499F /* WaypointConfirmationViewController.swift */, - C51FC31620F689F800400CE7 /* CustomStyles.swift */, - 3577B877214FF35800094294 /* FavoritesList.swift */, - F1D8FD2E28DB0A67006626A1 /* _TestPath.gpx */, - ); - name = Swift; - path = Examples/Swift; - sourceTree = ""; - }; - 358D14A71E5E3FDC00ADE590 /* Objective-C */ = { - isa = PBXGroup; - children = ( - 35002D731E5F6C8F0090E733 /* Supporting files */, - 35C6A3461E5E418D0004CA57 /* AppDelegate.h */, - 35C6A3471E5E418D0004CA57 /* AppDelegate.m */, - 35C6A34C1E5E418D0004CA57 /* ViewController.h */, - 35C6A34D1E5E418D0004CA57 /* ViewController.m */, - ); - name = "Objective-C"; - path = "Examples/Objective-C"; - sourceTree = ""; - }; - 35B711D01E5E7AD2001EDA8D /* MapboxNavigationTests */ = { - isa = PBXGroup; - children = ( - 16E11B53212B3D4700027CD3 /* Extensions and Categories */, - 355DB5731EFA73410091BFB7 /* Fixtures */, - 3527D2B61EC45FBD00C07FC9 /* Fixtures.xcassets */, - 16E3625A2012656C00DF0592 /* Support */, - 35022319205BC94E00E1449A /* Constants.swift */, - 160D827A2059973C00D278D6 /* DataCacheTests.swift */, - 1662244A2029059C00EA4824 /* ImageCacheTests.swift */, - 16A509D4202A87B20011D788 /* ImageDownloaderTests.swift */, - 166224442025699600EA4824 /* ImageRepositoryTests.swift */, - 35B711D31E5E7AD2001EDA8D /* Info.plist */, - 8D54F149206ECF720038736D /* InstructionPresenterTests.swift */, - 35DC585C1FABC61100B5A956 /* InstructionsBannerViewIntegrationTests.swift */, - 35B711D11E5E7AD2001EDA8D /* MapboxNavigationTests.swift */, - 16E11B54212B40A900027CD3 /* MapboxNavigationTests-Bridging.h */, - C55C299820D2E2F600B0406C /* NavigationMapViewTests.swift */, - AED2156E208F7FEA009AA673 /* NavigationViewControllerTests.swift */, - AE00A739209A2C38006A3DC7 /* StepsViewControllerTests.swift */, - 35F1F5921FD57EFD00F8E502 /* StyleManagerTests.swift */, - 8D9CD7FD20880581004DC4B3 /* XCTestCase.swift */, - ); - path = MapboxNavigationTests; - sourceTree = ""; - }; - 35B711DB1E5E7B70001EDA8D /* Examples */ = { - isa = PBXGroup; - children = ( - 358D14641E5E3B7700ADE590 /* Swift */, - 358D14A71E5E3FDC00ADE590 /* Objective-C */, - 352BBC481E5E78D700703DF1 /* SwiftTests */, - 352BBC561E5E78EA00703DF1 /* Objective-CTests */, - ); - name = Examples; - sourceTree = ""; - }; - A9E2B43473B53369153F54C6 /* Frameworks */ = { - isa = PBXGroup; - children = ( - C54658B1290001B500C068EA /* Nimble.xcframework */, - C546586528FECEFA00C068EA /* Quick.xcframework */, - C546586E28FED7F200C068EA /* FBSnapshotTestCase.xcframework */, - C538E4D9278DC92F00200823 /* MapboxDirections.xcframework */, - C538E4D7278DC92F00200823 /* MapboxGeocoder.xcframework */, - C538E4D5278DC92F00200823 /* Polyline.xcframework */, - C538E4D8278DC92F00200823 /* Solar.xcframework */, - C538E4DA278DC92F00200823 /* Turf.xcframework */, - ); - name = Frameworks; - sourceTree = ""; - }; - C51923B41EA55C5E002AF9E1 /* Extensions */ = { - isa = PBXGroup; - children = ( - 352AFFA22139986E00EB3567 /* UIViewController.swift */, - 351BEC081E5BCC72006FE110 /* Bundle.swift */, - 8D24A2F720409A890098CBF8 /* CGSize.swift */, - C5F4D21820DC468B0059FABF /* CongestionLevel.swift */, - C51511D020EAC89D00372A91 /* CPMapTemplate.swift */, - 8D24A2F920449B430098CBF8 /* Dictionary.swift */, - 351BEC041E5BCC6C006FE110 /* ManeuverDirection.swift */, - 351BEBDF1E5BCC63006FE110 /* MLNMapView.swift */, - 35D825F91E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.h */, - 35D825FA1E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.m */, - 353E3C8E20A3501C00FD1789 /* MLNStyle.swift */, - C58159001EA6D02700FC6C3D /* MLNVectorTileSource.swift */, - 8D5DFFF0207C04840093765A /* NSAttributedString.swift */, - AE997D2121137B8B00EB0AAB /* String+LocalizedConstants.swift */, - 35B7837D1F9547B300291F9A /* Transitioning.swift */, - 359D283B1F9DC14F00FDE9C9 /* UICollectionView.swift */, - 8D24A2F52040960C0098CBF8 /* UIEdgeInsets.swift */, - 35CF34B01F0A733200C2692E /* UIFont.swift */, - 8DF399B11FB257B30034904C /* UIGestureRecognizer.swift */, - 35ECAF2C2092275100DC3BC3 /* UIImage.swift */, - 8DB45E8F201698EB001EA6A3 /* UIStackView.swift */, - 351BEBF01E5BCC63006FE110 /* UIView.swift */, - 3512C7C71FB0A0C100CDD2A3 /* UIViewController.swift */, - AE46F95420EA735B00537AC2 /* VisualInstruction.swift */, - C5A7EC5B1FD610A80008B9BA /* VisualInstructionComponent.swift */, - 8D391CE11FD71E78006BB91F /* Waypoint.swift */, - 35BA8238214BDBBD00468349 /* Locale.swift */, - ); - name = Extensions; - sourceTree = ""; - }; - C51923B51EA55CD4002AF9E1 /* Views */ = { - isa = PBXGroup; - children = ( - 351BEC091E5BCC72006FE110 /* DashedLineView.swift */, - 8D53136A20653FA20044891E /* ExitView.swift */, - 8D9ADEA620A0C61A0067E845 /* GenericRouteShield.swift */, - 351BEC031E5BCC6C006FE110 /* LaneView.swift */, - 359A8AEE1FA7B25800BDB486 /* LanesStyleKit.swift */, - 351BEBED1E5BCC63006FE110 /* ManeuversStyleKit.swift */, - 351BEBEF1E5BCC63006FE110 /* ManeuverView.swift */, - 35DC9D901F4323AA001ECD64 /* LanesView.swift */, - 35E407671F5625FF00EFC814 /* StyleKitMarker.swift */, - 3531C26F1F9E095400D92F9A /* InstructionsBannerView.swift */, - 35D428281FA0B61F00176028 /* InstructionsBannerViewLayout.swift */, - 353280A01FA72871005175F3 /* InstructionLabel.swift */, - 353610CD1FAB6A8F00FB1746 /* BottomBannerView.swift */, - 355ED36F1FAB724F00BCE1B8 /* BottomBannerViewLayout.swift */, - 35F520BF1FB482A200FC9C37 /* NextBannerView.swift */, - 35DA85781FC45787004092EC /* StatusView.swift */, - 8DB63A391FBBCA2200928389 /* RatingControl.swift */, - 35B5A47D1FFFDCE5000A3C8D /* NavigationViewLayout.swift */, - ); - name = Views; - sourceTree = ""; - }; - C52D09CF1DEF5E5F00BE3C5C /* Fixtures */ = { - isa = PBXGroup; - children = ( - 35718BE41EF316BA00AFA3D1 /* tunnel.json */, - 35718BE31EF316BA00AFA3D1 /* tunnel.route */, - C52D09CD1DEF5E5100BE3C5C /* route.json */, - DAB2CCE61DF7AFDE001B2FE1 /* dc-line.geojson */, - C5387A9C1F8FDB13000D2E93 /* routeWithInstructions.json */, - C5EF397420599120009A2C50 /* straight-line.json */, - AEF2C8F12072B603007B061F /* routeWithTunnels_9thStreetDC.json */, - C5A60ECA20A241B600C21178 /* md5_crazy_strings.txt */, - C56967AB28FD9146008304BF /* Nijmegen-Bemmel-Veenendaal.json */, - C54658B529000D5D00C068EA /* Nijmegen-Arnhem-Veenendaal.json */, - C5E8FA2D29027D0700A1D10A /* Nijmegen-Bemmel-Veenendaal2.json */, - C5E8FA2F29028AA700A1D10A /* Wolfheze-Veenendaal-Normal.json */, - C5E8FA3129028B0E00A1D10A /* Wolfheze-Veenendaal-Small-Detour-At-End.json */, - C5E8FA3329028F6600A1D10A /* A12-To-Veenendaal-Normal.json */, - C5E8FA3529028FA400A1D10A /* A12-To-Veenendaal-Slight-Difference.json */, - C5E8FA372902952100A1D10A /* A12-To-Veenendaal-Bigger-Detour.json */, - C5E8FA392902E35800A1D10A /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json */, - ); - name = Fixtures; - sourceTree = ""; - }; - C53C196A1F38E9C1008DB406 /* Resources */ = { - isa = PBXGroup; - children = ( - C53C196F1F38EA25008DB406 /* Localizable.strings */, - ); - name = Resources; - sourceTree = ""; - }; - C56173591F182103005954F6 /* Extensions */ = { - isa = PBXGroup; - children = ( - 35BF8CA11F28EB60003F6125 /* Array.swift */, - 353E68FD1EF0B985007B2AE5 /* BundleAdditions.swift */, - 359574A71F28CC3800838209 /* CLLocation.swift */, - C5D9800E1EFBCDAD006DBF2E /* Date.swift */, - C51DF8651F38C31C006C6A15 /* Locale.swift */, - C578DA071EFD0FFF0052079F /* ProcessInfo.swift */, - C561735A1F182113005954F6 /* RouteStep.swift */, - 351927351F0FA072003A702D /* ScreenCapture.swift */, - 35BF8CA31F28EBD8003F6125 /* String.swift */, - 35A5413A1EFC052700E49846 /* RouteOptions.swift */, - C57491DE1FACC42F006F97BC /* CGPoint.swift */, - C582FD5E203626E900A9086E /* CLLocationDirection.swift */, - C5381F01204E03B600A5493E /* UIDevice.swift */, - C5F2DC9F206DBF5E002F99F6 /* Sequence.swift */, - C5BBFDC5290BB6250088F288 /* Route.swift */, - ); - name = Extensions; - sourceTree = ""; - }; - C5ADFBBF1DDCC7840011824B = { - isa = PBXGroup; - children = ( - 35B711DB1E5E7B70001EDA8D /* Examples */, - C5ADFBCB1DDCC7840011824B /* MapboxCoreNavigation */, - 351BEBD81E5BCC28006FE110 /* MapboxNavigation */, - C5ADFBD61DDCC7840011824B /* MapboxCoreNavigationTests */, - 35B711D01E5E7AD2001EDA8D /* MapboxNavigationTests */, - 3546BF75207BA4A8007FF453 /* RouteTest */, - C5ADFBCA1DDCC7840011824B /* Products */, - A9E2B43473B53369153F54C6 /* Frameworks */, - ); - sourceTree = ""; - }; - C5ADFBCA1DDCC7840011824B /* Products */ = { - isa = PBXGroup; - children = ( - C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */, - C5ADFBD21DDCC7840011824B /* MapboxCoreNavigationTests.xctest */, - 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */, - 358D14631E5E3B7700ADE590 /* Example-Swift.app */, - 358D14A61E5E3FDC00ADE590 /* Example-Objective-C.app */, - 352BBC471E5E78D700703DF1 /* Example-SwiftTests.xctest */, - 352BBC551E5E78EA00703DF1 /* Example-Objective-CTests.xctest */, - 35B711CF1E5E7AD2001EDA8D /* MapboxNavigationTests.xctest */, - 3546BF74207BA4A8007FF453 /* RouteTest.app */, - C53F2F0720EBC95600D9798F /* Example-CarPlay.app */, - ); - name = Products; - sourceTree = ""; - }; - C5ADFBCB1DDCC7840011824B /* MapboxCoreNavigation */ = { - isa = PBXGroup; - children = ( - 354A9BC920EA9BC100F03325 /* Events */, - C56173591F182103005954F6 /* Extensions */, - C53C196A1F38E9C1008DB406 /* Resources */, - C58D6BAC1DDCF2AE00387F53 /* Constants.swift */, - 351BEC0B1E5BCC72006FE110 /* DistanceFormatter.swift */, - 8DCE104F210FC5880048B0FB /* EndOfRouteFeedback.swift */, - 64847A031F04629D003F3A69 /* Feedback.swift */, - C5ADFBCD1DDCC7840011824B /* Info.plist */, - C5ADFBCC1DDCC7840011824B /* MapboxCoreNavigation.h */, - DADAD826203504C6002E25CA /* MBNavigationSettings.h */, - DADAD827203504C6002E25CA /* MBNavigationSettings.m */, - 35D457A61E2D253100A89946 /* MBRouteController.h */, - 35B839481E2E3D5D0045A868 /* MBRouteController.m */, - 353E68FB1EF0B7F8007B2AE5 /* NavigationLocationManager.swift */, - C5E7A31B1F4F6828001CB015 /* NavigationRouteOptions.swift */, - 35375EC01F31FA86004CE727 /* NavigationSettings.swift */, - 351174F31EF1C0530065E248 /* ReplayLocationManager.swift */, - C5ADFBF91DDCC9580011824B /* RouteController.swift */, - 3582A25120EFA9680029C5DE /* RouteControllerDelegate.swift */, - C5ADFBFB1DDCC9AD0011824B /* RouteProgress.swift */, - 3582A24F20EEC46B0029C5DE /* Router.swift */, - 353E69031EF0C4E5007B2AE5 /* SimulatedLocationManager.swift */, - AE09EC13207BD88200782A33 /* TunnelIntersectionManager.swift */, - ); - path = MapboxCoreNavigation; - sourceTree = ""; - }; - C5ADFBD61DDCC7840011824B /* MapboxCoreNavigationTests */ = { - isa = PBXGroup; - children = ( - C52D09CF1DEF5E5F00BE3C5C /* Fixtures */, - 16120A4B20645D2C007EA21D /* Support */, - 35C57D69208DD4A200BDD2A6 /* BridgingTests.m */, - C5BF7371206AB0DF00CDBB6D /* CLHeadingPrivate.h */, - 359A8AEC1FA78D3000BDB486 /* DistanceFormatterTests.swift */, - C52D09D21DEF636C00BE3C5C /* Fixture.swift */, - C5ADFBD91DDCC7840011824B /* Info.plist */, - 359574A91F28CCBB00838209 /* LocationTests.swift */, - C5BF7370206AB0DE00CDBB6D /* MapboxCoreNavigationTests-Bridging-Header.h */, - C5ADFBD71DDCC7840011824B /* MapboxCoreNavigationTests.swift */, - C5A60EC820A2417200C21178 /* MD5Tests.swift */, - C551B0E520D42222009A986F /* NavigationLocationManagerTests.swift */, - C5ABB50D20408D2C00AFA92C /* RouteControllerTests.swift */, - C52AC1251DF0E48600396B9F /* RouteProgressTests.swift */, - C582BA2B2073E77E00647DAA /* StringTests.swift */, - AE8B1B96207D2B2B003050F6 /* TunnelIntersectionManagerTests.swift */, - ); - path = MapboxCoreNavigationTests; - sourceTree = ""; - }; -/* End PBXGroup section */ - -/* Begin PBXHeadersBuildPhase section */ - 351BEBD41E5BCC28006FE110 /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - DA23C9611F4FC05C00BA9522 /* MLNMapView+MLNNavigationAdditions.h in Headers */, - 35D825FE1E6A2EC60088F83B /* MapboxNavigation.h in Headers */, - DADAD82E20350849002E25CA /* MBRouteVoiceController.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5ADFBC61DDCC7840011824B /* Headers */ = { - isa = PBXHeadersBuildPhase; - buildActionMask = 2147483647; - files = ( - DADAD828203504C6002E25CA /* MBNavigationSettings.h in Headers */, - 35D457A71E2D253100A89946 /* MBRouteController.h in Headers */, - C5C94C1B1DDCD22B0097296A /* MapboxCoreNavigation.h in Headers */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXHeadersBuildPhase section */ - -/* Begin PBXNativeTarget section */ - 351BEBD61E5BCC28006FE110 /* MapboxNavigation */ = { - isa = PBXNativeTarget; - buildConfigurationList = 351BEBDE1E5BCC28006FE110 /* Build configuration list for PBXNativeTarget "MapboxNavigation" */; - buildPhases = ( - 351BEBD21E5BCC28006FE110 /* Sources */, - 351BEBD41E5BCC28006FE110 /* Headers */, - 351BEBD51E5BCC28006FE110 /* Resources */, - 351BEBD31E5BCC28006FE110 /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - 35CEA3581E5CEBBC009F2255 /* PBXTargetDependency */, - ); - name = MapboxNavigation; - packageProductDependencies = ( - 7170CCB92B6D2AE00054DF8E /* MapLibre */, - ); - productName = MapboxNavigation; - productReference = 351BEBD71E5BCC28006FE110 /* MapboxNavigation.framework */; - productType = "com.apple.product-type.framework"; - }; - 352BBC461E5E78D700703DF1 /* Example-SwiftTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 352BBC4E1E5E78D700703DF1 /* Build configuration list for PBXNativeTarget "Example-SwiftTests" */; - buildPhases = ( - 352BBC431E5E78D700703DF1 /* Sources */, - 352BBC441E5E78D700703DF1 /* Frameworks */, - 352BBC451E5E78D700703DF1 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 352BBC4D1E5E78D700703DF1 /* PBXTargetDependency */, - ); - name = "Example-SwiftTests"; - productName = "Example-SwiftTests"; - productReference = 352BBC471E5E78D700703DF1 /* Example-SwiftTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 352BBC541E5E78EA00703DF1 /* Example-Objective-CTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 352BBC5C1E5E78EA00703DF1 /* Build configuration list for PBXNativeTarget "Example-Objective-CTests" */; - buildPhases = ( - 352BBC511E5E78EA00703DF1 /* Sources */, - 352BBC521E5E78EA00703DF1 /* Frameworks */, - 352BBC531E5E78EA00703DF1 /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 352BBC5B1E5E78EA00703DF1 /* PBXTargetDependency */, - ); - name = "Example-Objective-CTests"; - productName = "Example-Objective-CTests"; - productReference = 352BBC551E5E78EA00703DF1 /* Example-Objective-CTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - 3546BF73207BA4A8007FF453 /* RouteTest */ = { - isa = PBXNativeTarget; - buildConfigurationList = 3546BF85207BA4AA007FF453 /* Build configuration list for PBXNativeTarget "RouteTest" */; - buildPhases = ( - 3546BF70207BA4A8007FF453 /* Sources */, - 3546BF71207BA4A8007FF453 /* Frameworks */, - 3546BF72207BA4A8007FF453 /* Resources */, - 3546BF92207BA920007FF453 /* Embed Frameworks */, - 3546BFA1207BA9DA007FF453 /* Apply Mapbox Access Token */, - ); - buildRules = ( - ); - dependencies = ( - 3546BF8D207BA920007FF453 /* PBXTargetDependency */, - 3546BF91207BA920007FF453 /* PBXTargetDependency */, - ); - name = RouteTest; - productName = RouteTest; - productReference = 3546BF74207BA4A8007FF453 /* RouteTest.app */; - productType = "com.apple.product-type.application"; - }; - 358D14621E5E3B7700ADE590 /* Example-Swift */ = { - isa = PBXNativeTarget; - buildConfigurationList = 358D14741E5E3B7700ADE590 /* Build configuration list for PBXNativeTarget "Example-Swift" */; - buildPhases = ( - 358D14601E5E3B7700ADE590 /* Frameworks */, - 358D145F1E5E3B7700ADE590 /* Sources */, - 358D14611E5E3B7700ADE590 /* Resources */, - 354A01C41E66265100D765C2 /* Embed Frameworks */, - DA408F661FB3CA3C004D9661 /* Apply Mapbox Access Token */, - ); - buildRules = ( - ); - dependencies = ( - 354A01D41E66268800D765C2 /* PBXTargetDependency */, - 354A01D21E66268400D765C2 /* PBXTargetDependency */, - ); - name = "Example-Swift"; - packageProductDependencies = ( - 7170CCBB2B6D2AF10054DF8E /* MapLibre */, - ); - productName = "Example-Swift"; - productReference = 358D14631E5E3B7700ADE590 /* Example-Swift.app */; - productType = "com.apple.product-type.application"; - }; - 358D14A51E5E3FDC00ADE590 /* Example-Objective-C */ = { - isa = PBXNativeTarget; - buildConfigurationList = 358D14BA1E5E3FDC00ADE590 /* Build configuration list for PBXNativeTarget "Example-Objective-C" */; - buildPhases = ( - 358D14A21E5E3FDC00ADE590 /* Sources */, - 358D14A31E5E3FDC00ADE590 /* Frameworks */, - 358D14A41E5E3FDC00ADE590 /* Resources */, - 354A01DF1E6626EA00D765C2 /* Embed Frameworks */, - DA408F671FB3CA5C004D9661 /* Apply Mapbox Access Token */, - ); - buildRules = ( - ); - dependencies = ( - 354A01D81E6626D400D765C2 /* PBXTargetDependency */, - 354A01DA1E6626D400D765C2 /* PBXTargetDependency */, - ); - name = "Example-Objective-C"; - packageProductDependencies = ( - 7152FF172B71214100BF70D4 /* MapLibre */, - ); - productName = "Example-Objective-C"; - productReference = 358D14A61E5E3FDC00ADE590 /* Example-Objective-C.app */; - productType = "com.apple.product-type.application"; - }; - 35B711CE1E5E7AD2001EDA8D /* MapboxNavigationTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = 35B711D71E5E7AD2001EDA8D /* Build configuration list for PBXNativeTarget "MapboxNavigationTests" */; - buildPhases = ( - 35B711CB1E5E7AD2001EDA8D /* Sources */, - 35B711CC1E5E7AD2001EDA8D /* Frameworks */, - 35B711CD1E5E7AD2001EDA8D /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - 3525449C1E663D2C004C8F1C /* PBXTargetDependency */, - 35B711D61E5E7AD2001EDA8D /* PBXTargetDependency */, - 8DBCA7782080174600981EB2 /* PBXTargetDependency */, - ); - name = MapboxNavigationTests; - productName = MapboxNavigationTests; - productReference = 35B711CF1E5E7AD2001EDA8D /* MapboxNavigationTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; - C53F2EDE20EBC95600D9798F /* Example-CarPlay */ = { - isa = PBXNativeTarget; - buildConfigurationList = C53F2F0420EBC95600D9798F /* Build configuration list for PBXNativeTarget "Example-CarPlay" */; - buildPhases = ( - C53F2EE320EBC95600D9798F /* Sources */, - C53F2EE920EBC95600D9798F /* Frameworks */, - C53F2EF220EBC95600D9798F /* Resources */, - C53F2EF920EBC95600D9798F /* Embed Frameworks */, - C53F2F0320EBC95600D9798F /* Apply Mapbox Access Token */, - ); - buildRules = ( - ); - dependencies = ( - C53F2EDF20EBC95600D9798F /* PBXTargetDependency */, - C53F2EE120EBC95600D9798F /* PBXTargetDependency */, - ); - name = "Example-CarPlay"; - packageProductDependencies = ( - 7170CCBD2B6D2B570054DF8E /* MapLibre */, - ); - productName = "Example-Swift"; - productReference = C53F2F0720EBC95600D9798F /* Example-CarPlay.app */; - productType = "com.apple.product-type.application"; - }; - C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */ = { - isa = PBXNativeTarget; - buildConfigurationList = C5ADFBDD1DDCC7840011824B /* Build configuration list for PBXNativeTarget "MapboxCoreNavigation" */; - buildPhases = ( - C5ADFBC41DDCC7840011824B /* Sources */, - C5ADFBC61DDCC7840011824B /* Headers */, - C5ADFBC71DDCC7840011824B /* Resources */, - 35A7DBEB1E3A1C59000BAB5C /* Frameworks */, - ); - buildRules = ( - ); - dependencies = ( - ); - name = MapboxCoreNavigation; - productName = MapboxNavigation; - productReference = C5ADFBC91DDCC7840011824B /* MapboxCoreNavigation.framework */; - productType = "com.apple.product-type.framework"; - }; - C5ADFBD11DDCC7840011824B /* MapboxCoreNavigationTests */ = { - isa = PBXNativeTarget; - buildConfigurationList = C5ADFBE01DDCC7840011824B /* Build configuration list for PBXNativeTarget "MapboxCoreNavigationTests" */; - buildPhases = ( - C5ADFBCE1DDCC7840011824B /* Sources */, - C5ADFBCF1DDCC7840011824B /* Frameworks */, - C5ADFBD01DDCC7840011824B /* Resources */, - ); - buildRules = ( - ); - dependencies = ( - C5ADFBD51DDCC7840011824B /* PBXTargetDependency */, - ); - name = MapboxCoreNavigationTests; - productName = MapboxNavigationTests; - productReference = C5ADFBD21DDCC7840011824B /* MapboxCoreNavigationTests.xctest */; - productType = "com.apple.product-type.bundle.unit-test"; - }; -/* End PBXNativeTarget section */ - -/* Begin PBXProject section */ - C5ADFBC01DDCC7840011824B /* Project object */ = { - isa = PBXProject; - attributes = { - KnownAssetTags = ( - New, - ); - LastSwiftUpdateCheck = 0930; - LastUpgradeCheck = 1400; - ORGANIZATIONNAME = Mapbox; - TargetAttributes = { - 351BEBD61E5BCC28006FE110 = { - CreatedOnToolsVersion = 8.2.1; - LastSwiftMigration = ""; - ProvisioningStyle = Automatic; - }; - 352BBC461E5E78D700703DF1 = { - CreatedOnToolsVersion = 8.2.1; - LastSwiftMigration = 0910; - ProvisioningStyle = Automatic; - TestTargetID = 358D14621E5E3B7700ADE590; - }; - 352BBC541E5E78EA00703DF1 = { - CreatedOnToolsVersion = 8.2.1; - ProvisioningStyle = Automatic; - TestTargetID = 358D14A51E5E3FDC00ADE590; - }; - 3546BF73207BA4A8007FF453 = { - CreatedOnToolsVersion = 9.3; - ProvisioningStyle = Automatic; - SystemCapabilities = { - com.apple.BackgroundModes = { - enabled = 1; - }; - }; - }; - 358D14621E5E3B7700ADE590 = { - CreatedOnToolsVersion = 8.2.1; - LastSwiftMigration = ""; - ProvisioningStyle = Automatic; - }; - 358D14A51E5E3FDC00ADE590 = { - CreatedOnToolsVersion = 8.2.1; - ProvisioningStyle = Automatic; - }; - 35B711CE1E5E7AD2001EDA8D = { - CreatedOnToolsVersion = 8.2.1; - LastSwiftMigration = ""; - ProvisioningStyle = Automatic; - TestTargetID = 358D14621E5E3B7700ADE590; - }; - C53F2EDE20EBC95600D9798F = { - DevelopmentTeam = GJZR2MEM28; - LastSwiftMigration = ""; - ProvisioningStyle = Manual; - }; - C5ADFBC81DDCC7840011824B = { - CreatedOnToolsVersion = 8.1; - LastSwiftMigration = ""; - ProvisioningStyle = Automatic; - }; - C5ADFBD11DDCC7840011824B = { - CreatedOnToolsVersion = 8.1; - LastSwiftMigration = 0920; - ProvisioningStyle = Automatic; - }; - }; - }; - buildConfigurationList = C5ADFBC31DDCC7840011824B /* Build configuration list for PBXProject "MapboxNavigation" */; - compatibilityVersion = "Xcode 13.0"; - developmentRegion = English; - hasScannedForEncodings = 0; - knownRegions = ( - English, - en, - Base, - "zh-Hans", - sv, - vi, - ca, - fa, - fr, - hu, - lt, - es, - it, - "zh-Hant", - ru, - sl, - uk, - "pt-BR", - de, - nl, - bg, - da, - he, - ar, - "pt-PT", - ko, - ); - mainGroup = C5ADFBBF1DDCC7840011824B; - packageReferences = ( - C5335299278DD8ED003DEC63 /* XCRemoteSwiftPackageReference "maplibre-gl-native-distribution" */, - ); - productRefGroup = C5ADFBCA1DDCC7840011824B /* Products */; - projectDirPath = ""; - projectRoot = ""; - targets = ( - 358D14621E5E3B7700ADE590 /* Example-Swift */, - 358D14A51E5E3FDC00ADE590 /* Example-Objective-C */, - C53F2EDE20EBC95600D9798F /* Example-CarPlay */, - C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */, - 351BEBD61E5BCC28006FE110 /* MapboxNavigation */, - C5ADFBD11DDCC7840011824B /* MapboxCoreNavigationTests */, - 352BBC461E5E78D700703DF1 /* Example-SwiftTests */, - 352BBC541E5E78EA00703DF1 /* Example-Objective-CTests */, - 35B711CE1E5E7AD2001EDA8D /* MapboxNavigationTests */, - 3546BF73207BA4A8007FF453 /* RouteTest */, - ); - }; -/* End PBXProject section */ - -/* Begin PBXResourcesBuildPhase section */ - 351BEBD51E5BCC28006FE110 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - DAAE5F301EAE4C4700832871 /* Localizable.strings in Resources */, - 351BEC291E5BD530006FE110 /* Assets.xcassets in Resources */, - C520EE901EBB84F9008805BC /* Navigation.storyboard in Resources */, - DA3525702010A5210048DDFC /* Localizable.stringsdict in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352BBC451E5E78D700703DF1 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352BBC531E5E78EA00703DF1 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C5E8FA2C2901493F00A1D10A /* routeWithInstructions.json in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 3546BF72207BA4A8007FF453 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 359416FE20A9CB0400372638 /* multiwaypoints.json in Resources */, - 3546BFA3207BAB14007FF453 /* LaunchScreen.storyboard in Resources */, - 3546BF88207BA73C007FF453 /* downtown-sf.json in Resources */, - 3546BF7E207BA4AA007FF453 /* Assets.xcassets in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 358D14611E5E3B7700ADE590 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C57AD98A20EAA39A0087B24B /* Entitlements.plist in Resources */, - 35002D691E5F6B2F0090E733 /* Main.storyboard in Resources */, - F1D8FD2F28DB0A67006626A1 /* _TestPath.gpx in Resources */, - 354D9F891EF2FE900006FAA8 /* tunnel.json in Resources */, - 35002D611E5F6ADB0090E733 /* Assets.xcassets in Resources */, - 35002D621E5F6ADB0090E733 /* Base.lproj in Resources */, - 355D20DC1EF30A6D0012B1E0 /* tunnel.route in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 358D14A41E5E3FDC00ADE590 /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 35002D6F1E5F6C7F0090E733 /* Base.lproj in Resources */, - 35002D6E1E5F6C7F0090E733 /* Assets.xcassets in Resources */, - 35002D761E5F6CD30090E733 /* Main.storyboard in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 35B711CD1E5E7AD2001EDA8D /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 351030111F54B72000E3B7E7 /* route-for-lane-testing.json in Resources */, - 3527D2B91EC4619400C07FC9 /* Fixtures.xcassets in Resources */, - 35DC9D8D1F431E59001ECD64 /* route.json in Resources */, - 355DB5771EFA780E0091BFB7 /* UnionSquare-to-GGPark.route in Resources */, - 355DB5751EFA78070091BFB7 /* GGPark-to-BernalHeights.route in Resources */, - 35EB9A6A20A1AB7C00CB1225 /* turn_left.data in Resources */, - 3540514D1F73F3BB00ED572D /* route-with-straight-roundabout.json in Resources */, - 8D07C5A820B612310093D779 /* EmptyStyle.json in Resources */, - 16B63DCD205C8EEF002D56D4 /* route-with-instructions.json in Resources */, - AE5F8771209A082500F58FDB /* route-with-banner-instructions.json in Resources */, - 35DC9D8F1F4321CC001ECD64 /* route-with-lanes.json in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C53F2EF220EBC95600D9798F /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C53F2EF320EBC95600D9798F /* Entitlements.plist in Resources */, - C53F2EF420EBC95600D9798F /* Main.storyboard in Resources */, - C53F2EF520EBC95600D9798F /* tunnel.json in Resources */, - C53F2EF620EBC95600D9798F /* Assets.xcassets in Resources */, - C53F2EF720EBC95600D9798F /* Base.lproj in Resources */, - C53F2EF820EBC95600D9798F /* tunnel.route in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5ADFBC71DDCC7840011824B /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C53C196D1F38EA25008DB406 /* Localizable.strings in Resources */, - C56D563F29067D4800E9813B /* A12-To-Veenendaal-Normal.json in Resources */, - C56D564029067D4B00E9813B /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5ADFBD01DDCC7840011824B /* Resources */ = { - isa = PBXResourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C54658B629000EFA00C068EA /* Nijmegen-Arnhem-Veenendaal.json in Resources */, - C5387A9D1F8FDB13000D2E93 /* routeWithInstructions.json in Resources */, - C5E8FA3A2902E35800A1D10A /* A12-To-Veenendaal-Normal-With-Big-Trafficjam.json in Resources */, - C54658B429000A8300C068EA /* Nijmegen-Bemmel-Veenendaal.json in Resources */, - C5EF397520599120009A2C50 /* straight-line.json in Resources */, - C5E8FA3629028FA400A1D10A /* A12-To-Veenendaal-Slight-Difference.json in Resources */, - C5E8FA2E29027D0A00A1D10A /* Nijmegen-Bemmel-Veenendaal2.json in Resources */, - C5E8FA3429028F6600A1D10A /* A12-To-Veenendaal-Normal.json in Resources */, - C5A60ECD20A25DA100C21178 /* md5_crazy_strings.txt in Resources */, - DAB2CCE71DF7AFDF001B2FE1 /* dc-line.geojson in Resources */, - C5E8FA3229028B0E00A1D10A /* Wolfheze-Veenendaal-Small-Detour-At-End.json in Resources */, - AEF2C8F22072B603007B061F /* routeWithTunnels_9thStreetDC.json in Resources */, - 35718BE71EF3194200AFA3D1 /* tunnel.json in Resources */, - C5E8FA3029028AB100A1D10A /* Wolfheze-Veenendaal-Normal.json in Resources */, - C5E8FA382902952100A1D10A /* A12-To-Veenendaal-Bigger-Detour.json in Resources */, - C52D09CE1DEF5E5100BE3C5C /* route.json in Resources */, - 35718BE81EF3194500AFA3D1 /* tunnel.route in Resources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXResourcesBuildPhase section */ - -/* Begin PBXShellScriptBuildPhase section */ - 3546BFA1207BA9DA007FF453 /* Apply Mapbox Access Token */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - ); - name = "Apply Mapbox Access Token"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# This Run Script build phase helps to keep the navigation SDK’s developers from exposing their own access tokens during development. See for more information. If you are developing an application privately, you may add the MGLMapboxAccessToken key directly to your Info.plist file and delete this build phase.\n\ntoken_file=~/.mapbox\ntoken_file2=~/mapbox\ntoken=\"$(cat $token_file 2>/dev/null || cat $token_file2 2>/dev/null)\"\nif [ \"$token\" ]; then\nplutil -replace MGLMapboxAccessToken -string $token \"$TARGET_BUILD_DIR/$INFOPLIST_PATH\"\nelse\necho 'warning: Missing Mapbox access token'\nopen 'https://www.mapbox.com/studio/account/tokens/'\necho \"warning: Get an access token from , then create a new file at $token_file or $token_file2 that contains the access token.\"\nfi\n"; - }; - C53F2F0320EBC95600D9798F /* Apply Mapbox Access Token */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "$(TARGET_BUILD_DIR)/$(INFOPLIST_PATH)", - ); - name = "Apply Mapbox Access Token"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# This Run Script build phase helps to keep the navigation SDK’s developers from exposing their own access tokens during development. See for more information. If you are developing an application privately, you may add the MGLMapboxAccessToken key directly to your Info.plist file and delete this build phase.\n\ntoken_file=~/.mapbox\ntoken_file2=~/mapbox\ntoken=\"$(cat $token_file 2>/dev/null || cat $token_file2 2>/dev/null)\"\nif [ \"$token\" ]; then\n plutil -replace MGLMapboxAccessToken -string $token \"$TARGET_BUILD_DIR/$INFOPLIST_PATH\"\nelse\n echo 'warning: Missing Mapbox access token'\n open 'https://www.mapbox.com/account/access-tokens/'\n echo \"warning: Get an access token from , then create a new file at $token_file or $token_file2 that contains the access token.\"\nfi\n"; - }; - DA408F661FB3CA3C004D9661 /* Apply Mapbox Access Token */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "$(TARGET_BUILD_DIR)/$(INFOPLIST_PATH)", - ); - name = "Apply Mapbox Access Token"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# This Run Script build phase helps to keep the navigation SDK’s developers from exposing their own access tokens during development. See for more information. If you are developing an application privately, you may add the MGLMapboxAccessToken key directly to your Info.plist file and delete this build phase.\n\ntoken_file=~/.mapbox\ntoken_file2=~/mapbox\ntoken=\"$(cat $token_file 2>/dev/null || cat $token_file2 2>/dev/null)\"\nif [ \"$token\" ]; then\n plutil -replace MGLMapboxAccessToken -string $token \"$TARGET_BUILD_DIR/$INFOPLIST_PATH\"\nelse\n echo 'warning: Missing Mapbox access token'\n open 'https://www.mapbox.com/account/access-tokens/'\n echo \"warning: Get an access token from , then create a new file at $token_file or $token_file2 that contains the access token.\"\nfi\n"; - }; - DA408F671FB3CA5C004D9661 /* Apply Mapbox Access Token */ = { - isa = PBXShellScriptBuildPhase; - buildActionMask = 2147483647; - files = ( - ); - inputPaths = ( - "$(TARGET_BUILD_DIR)/$(INFOPLIST_PATH)", - ); - name = "Apply Mapbox Access Token"; - outputPaths = ( - ); - runOnlyForDeploymentPostprocessing = 0; - shellPath = /bin/sh; - shellScript = "# This Run Script build phase helps to keep the navigation SDK’s developers from exposing their own access tokens during development. See for more information. If you are developing an application privately, you may add the MGLMapboxAccessToken key directly to your Info.plist file and delete this build phase.\n\ntoken_file=~/.mapbox\ntoken_file2=~/mapbox\ntoken=\"$(cat $token_file 2>/dev/null || cat $token_file2 2>/dev/null)\"\nif [ \"$token\" ]; then\n plutil -replace MGLMapboxAccessToken -string $token \"$TARGET_BUILD_DIR/$INFOPLIST_PATH\"\nelse\n echo 'warning: Missing Mapbox access token'\n open 'https://www.mapbox.com/account/access-tokens/'\n echo \"warning: Get an access token from , then create a new file at $token_file or $token_file2 that contains the access token.\"\nfi\n"; - }; -/* End PBXShellScriptBuildPhase section */ - -/* Begin PBXSourcesBuildPhase section */ - 351BEBD21E5BCC28006FE110 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 351BEBF11E5BCC63006FE110 /* MLNMapView.swift in Sources */, - 351BEC061E5BCC6C006FE110 /* ManeuverDirection.swift in Sources */, - 35D825FC1E6A2DBE0088F83B /* MLNMapView+MLNNavigationAdditions.m in Sources */, - C51511D120EAC89D00372A91 /* CPMapTemplate.swift in Sources */, - 353280A11FA72871005175F3 /* InstructionLabel.swift in Sources */, - 351BEBFF1E5BCC63006FE110 /* ManeuversStyleKit.swift in Sources */, - 35D428291FA0B61F00176028 /* InstructionsBannerViewLayout.swift in Sources */, - C54C655220336F2600D338E0 /* Constants.swift in Sources */, - 353610CE1FAB6A8F00FB1746 /* BottomBannerView.swift in Sources */, - AEC3AC9A2106703100A26F34 /* HighwayShield.swift in Sources */, - C58822001FB0F0D7008B0A2D /* Error.swift in Sources */, - 35C9973F1E732C1B00544D1C /* RouteVoiceController.swift in Sources */, - C5F4D21920DC468B0059FABF /* CongestionLevel.swift in Sources */, - 3597B9A42149B2C20021B0D9 /* UIViewController.swift in Sources */, - 8D24A2FA20449B430098CBF8 /* Dictionary.swift in Sources */, - 8DB45E90201698EB001EA6A3 /* UIStackView.swift in Sources */, - 351BEBFC1E5BCC63006FE110 /* NavigationViewController.swift in Sources */, - 8D8EA9BC20575CD80077F478 /* FeedbackCollectionViewCell.swift in Sources */, - 35E407681F5625FF00EFC814 /* StyleKitMarker.swift in Sources */, - C588C3C21F33882100520EF2 /* String.swift in Sources */, - C53208AB1E81FFB900910266 /* NavigationMapView.swift in Sources */, - 16EF6C22211BA4B300AA580B /* CarPlayMapViewController.swift in Sources */, - 351BEBF61E5BCC63006FE110 /* RouteMapViewController.swift in Sources */, - 16A509D7202BC0CA0011D788 /* ImageDownload.swift in Sources */, - 8DB63A3A1FBBCA2200928389 /* RatingControl.swift in Sources */, - 8D391CE21FD71E78006BB91F /* Waypoint.swift in Sources */, - 353EC9D71FB09708002EB0AB /* StepsViewController.swift in Sources */, - D72CC42C2451A2F800238549 /* ConfigManager.swift in Sources */, - 35726EE81F0856E900AFA1B6 /* DayStyle.swift in Sources */, - 8D9ADEA720A0C61A0067E845 /* GenericRouteShield.swift in Sources */, - 35DC9D911F4323AA001ECD64 /* LanesView.swift in Sources */, - 359D1B281FFE70D30052FA42 /* NavigationView.swift in Sources */, - C5FFAC1520D96F5C009E7F98 /* CarPlayNavigationViewController.swift in Sources */, - 8DE879661FBB9980002F06C0 /* EndOfRouteViewController.swift in Sources */, - 8D24A2F62040960C0098CBF8 /* UIEdgeInsets.swift in Sources */, - 353E3C8F20A3501C00FD1789 /* MLNStyle.swift in Sources */, - 35379D0221480E1300FD402E /* CarPlayManager+Search.swift in Sources */, - DADAD82F20350849002E25CA /* MBRouteVoiceController.m in Sources */, - AE997D2221137B8B00EB0AAB /* String+LocalizedConstants.swift in Sources */, - C57491DF1FACC42F006F97BC /* CGPoint.swift in Sources */, - 16C2A421211526EE00FE6E68 /* CarPlayManager.swift in Sources */, - 8D53136B20653FA20044891E /* ExitView.swift in Sources */, - C58159011EA6D02700FC6C3D /* MLNVectorTileSource.swift in Sources */, - 351BEC011E5BCC63006FE110 /* ManeuverView.swift in Sources */, - 35B1E2951F1FF8EC00A13D32 /* UserCourseView.swift in Sources */, - 35B5A47E1FFFDCE5000A3C8D /* NavigationViewLayout.swift in Sources */, - 3531C2701F9E095400D92F9A /* InstructionsBannerView.swift in Sources */, - C5F2DCA1206DBF5E002F99F6 /* Sequence.swift in Sources */, - 35DA85791FC45787004092EC /* StatusView.swift in Sources */, - AE46F95520EA735B00537AC2 /* VisualInstruction.swift in Sources */, - 35025F3F1F051DD2002BA3EA /* DialogViewController.swift in Sources */, - 359A8AEF1FA7B25B00BDB486 /* LanesStyleKit.swift in Sources */, - 355ED3701FAB724F00BCE1B8 /* BottomBannerViewLayout.swift in Sources */, - 351BEC0E1E5BCC72006FE110 /* DashedLineView.swift in Sources */, - 35ECAF2D2092275100DC3BC3 /* UIImage.swift in Sources */, - 351BEC051E5BCC6C006FE110 /* LaneView.swift in Sources */, - C5A7EC5C1FD610A80008B9BA /* VisualInstructionComponent.swift in Sources */, - 351BEC0D1E5BCC72006FE110 /* Bundle.swift in Sources */, - 8DF399B21FB257B30034904C /* UIGestureRecognizer.swift in Sources */, - 35B7837E1F9547B300291F9A /* Transitioning.swift in Sources */, - 8D5DFFF1207C04840093765A /* NSAttributedString.swift in Sources */, - 35CF34B11F0A733200C2692E /* UIFont.swift in Sources */, - C51DF8671F38C337006C6A15 /* Date.swift in Sources */, - 359D283C1F9DC14F00FDE9C9 /* UICollectionView.swift in Sources */, - 8D24A2F820409A890098CBF8 /* CGSize.swift in Sources */, - 35CB1E131F97DD740011CC44 /* FeedbackItem.swift in Sources */, - 353AA5601FCEF583009F0384 /* StyleManager.swift in Sources */, - 35F520C01FB482A200FC9C37 /* NextBannerView.swift in Sources */, - 35BA8239214BDBBD00468349 /* Locale.swift in Sources */, - C5A6B2DD1F4CE8E8004260EA /* StyleType.swift in Sources */, - C5381F03204E052A00A5493E /* UIDevice.swift in Sources */, - 351BEC021E5BCC63006FE110 /* UIView.swift in Sources */, - 160D8279205996DA00D278D6 /* DataCache.swift in Sources */, - 351BEBF21E5BCC63006FE110 /* Style.swift in Sources */, - C5D1C9941FB236900067C619 /* ErrorCode.swift in Sources */, - 3EA937B1F4DF73EB004BA6BE /* InstructionPresenter.swift in Sources */, - 3EA93A1FEFDDB709DE84BED9 /* ImageRepository.swift in Sources */, - 3EA9371104016CD402547F1A /* ImageCache.swift in Sources */, - 3EA9369C33A8F10DAE9043AA /* ImageDownloader.swift in Sources */, - 3EA9301B03F8679BEDD4795F /* Cache.swift in Sources */, - 35379D0321480E5700FD402E /* RecentItem.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352BBC431E5E78D700703DF1 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 352BBC4A1E5E78D700703DF1 /* Example_SwiftTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 352BBC511E5E78EA00703DF1 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 352BBC581E5E78EA00703DF1 /* Example_Objective_CTests.m in Sources */, - C546586D28FED61000C068EA /* DummyURLSessionDataTask.swift in Sources */, - C546586C28FED5FC00C068EA /* RouteControllerDelegateSpy.swift in Sources */, - C546586A28FED5E600C068EA /* DirectionsSpy.swift in Sources */, - C546586928FED58800C068EA /* Fixture.swift in Sources */, - C546586B28FED5F300C068EA /* MapboxCoreNavigationTests.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 3546BF70207BA4A8007FF453 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 3546BF77207BA4A8007FF453 /* AppDelegate.swift in Sources */, - 3546BFA5207BAB7A007FF453 /* Fixture.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 358D145F1E5E3B7700ADE590 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 358D14681E5E3B7700ADE590 /* ViewController.swift in Sources */, - C5D9800D1EFA8BA9006DBF2E /* CustomViewController.swift in Sources */, - C51FC31720F689F800400CE7 /* CustomStyles.swift in Sources */, - 6441B16A1EFC64E50076499F /* WaypointConfirmationViewController.swift in Sources */, - 358D14661E5E3B7700ADE590 /* AppDelegate.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 358D14A21E5E3FDC00ADE590 /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 352BBC401E5E6C9F00703DF1 /* AppDelegate.m in Sources */, - 35002D711E5F6C7F0090E733 /* main.m in Sources */, - 35C6A35B1E5E418D0004CA57 /* ViewController.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - 35B711CB1E5E7AD2001EDA8D /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 8D9CD7FF20880581004DC4B3 /* XCTestCase.swift in Sources */, - 35DC585D1FABC61100B5A956 /* InstructionsBannerViewIntegrationTests.swift in Sources */, - 3502231A205BC94E00E1449A /* Constants.swift in Sources */, - C55C299920D2E2F600B0406C /* NavigationMapViewTests.swift in Sources */, - 1662244720256C0700EA4824 /* ImageLoadingURLProtocolSpy.swift in Sources */, - AE291FFF20975A7E00F23DFC /* NavigationViewControllerTests.swift in Sources */, - DAD17202214DB12B009C8161 /* CPMapTemplateTests.swift in Sources */, - 8D5CF3B0215054AF005592D6 /* FBSnapshotTestCase.swift in Sources */, - 35F1F5931FD57EFD00F8E502 /* StyleManagerTests.swift in Sources */, - AE00A73A209A2C38006A3DC7 /* StepsViewControllerTests.swift in Sources */, - 16435E06206EE37800AF48B6 /* DummyURLSessionDataTask.swift in Sources */, - 16A509D5202A87B20011D788 /* ImageDownloaderTests.swift in Sources */, - 8D54F14A206ECF720038736D /* InstructionPresenterTests.swift in Sources */, - 166224452025699600EA4824 /* ImageRepositoryTests.swift in Sources */, - 160D827B2059973C00D278D6 /* DataCacheTests.swift in Sources */, - 16E3625C201265D600DF0592 /* ImageDownloadOperationSpy.swift in Sources */, - 1662244B2029059C00EA4824 /* ImageCacheTests.swift in Sources */, - 352690491ECC843700E387BD /* Fixture.swift in Sources */, - 160A4A712127A46C0028B070 /* CPBarButton+MBTestable.m in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C53F2EE320EBC95600D9798F /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C53F2EE420EBC95600D9798F /* ViewController.swift in Sources */, - C53F2EE520EBC95600D9798F /* CustomViewController.swift in Sources */, - C53F2EE720EBC95600D9798F /* WaypointConfirmationViewController.swift in Sources */, - C5DE4B6220F6B6B3007AFBE6 /* CustomStyles.swift in Sources */, - 35379CFD21480C0500FD402E /* AppDelegate+CarPlay.swift in Sources */, - C53F2EE820EBC95600D9798F /* AppDelegate.swift in Sources */, - 3577B878214FF35800094294 /* FavoritesList.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5ADFBC41DDCC7840011824B /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - C5381F02204E03B600A5493E /* UIDevice.swift in Sources */, - C561735B1F182113005954F6 /* RouteStep.swift in Sources */, - 354A9BC620EA991900F03325 /* SessionState.swift in Sources */, - C582FD5F203626E900A9086E /* CLLocationDirection.swift in Sources */, - 35BF8CA21F28EB60003F6125 /* Array.swift in Sources */, - 3582A25220EFA9680029C5DE /* RouteControllerDelegate.swift in Sources */, - 353E68FC1EF0B7F8007B2AE5 /* NavigationLocationManager.swift in Sources */, - 353E68FE1EF0B985007B2AE5 /* BundleAdditions.swift in Sources */, - 354A9BCD20EA9C8100F03325 /* CoreFeedbackEvent.swift in Sources */, - C5BBFDC6290BB6250088F288 /* Route.swift in Sources */, - 3582A25020EEC46B0029C5DE /* Router.swift in Sources */, - C5E7A31C1F4F6828001CB015 /* NavigationRouteOptions.swift in Sources */, - C5BBFDC4290ACF900088F288 /* Fixture.swift in Sources */, - 351174F41EF1C0530065E248 /* ReplayLocationManager.swift in Sources */, - C5C94C1C1DDCD2340097296A /* RouteController.swift in Sources */, - 359574A81F28CC5A00838209 /* CLLocation.swift in Sources */, - 8DCE1050210FC5880048B0FB /* EndOfRouteFeedback.swift in Sources */, - 351927361F0FA072003A702D /* ScreenCapture.swift in Sources */, - C5D9800F1EFBCDAD006DBF2E /* Date.swift in Sources */, - 35B839491E2E3D5D0045A868 /* MBRouteController.m in Sources */, - DADAD829203504C6002E25CA /* MBNavigationSettings.m in Sources */, - 35A5413B1EFC052700E49846 /* RouteOptions.swift in Sources */, - 353E69041EF0C4E5007B2AE5 /* SimulatedLocationManager.swift in Sources */, - AE8B1B95207BFAEF003050F6 /* TunnelIntersectionManager.swift in Sources */, - DAFA92071F01735000A7FB09 /* DistanceFormatter.swift in Sources */, - C5C94C1D1DDCD2370097296A /* RouteProgress.swift in Sources */, - C5CFE4881EF2FD4C006F48E8 /* MMEEventsManager.swift in Sources */, - C578DA081EFD0FFF0052079F /* ProcessInfo.swift in Sources */, - C5F2DCA0206DBF5E002F99F6 /* Sequence.swift in Sources */, - 35BF8CA41F28EBD8003F6125 /* String.swift in Sources */, - 64847A041F04629D003F3A69 /* Feedback.swift in Sources */, - C58D6BAD1DDCF2AE00387F53 /* Constants.swift in Sources */, - 35C77F621FE8219900338416 /* NavigationSettings.swift in Sources */, - C51DF8661F38C31C006C6A15 /* Locale.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; - C5ADFBCE1DDCC7840011824B /* Sources */ = { - isa = PBXSourcesBuildPhase; - buildActionMask = 2147483647; - files = ( - 16435E05206EE37800AF48B6 /* DummyURLSessionDataTask.swift in Sources */, - C5ADFBD81DDCC7840011824B /* MapboxCoreNavigationTests.swift in Sources */, - C551B0E620D42222009A986F /* NavigationLocationManagerTests.swift in Sources */, - 359A8AED1FA78D3000BDB486 /* DistanceFormatterTests.swift in Sources */, - AE8B1B97207D2B2B003050F6 /* TunnelIntersectionManagerTests.swift in Sources */, - C52AC1261DF0E48600396B9F /* RouteProgressTests.swift in Sources */, - 359574AA1F28CCBB00838209 /* LocationTests.swift in Sources */, - C582BA2C2073E77E00647DAA /* StringTests.swift in Sources */, - 35C57D6A208DD4A200BDD2A6 /* BridgingTests.m in Sources */, - C52D09D31DEF636C00BE3C5C /* Fixture.swift in Sources */, - C5A60ECC20A25BC900C21178 /* MD5Tests.swift in Sources */, - 16435E03206EE32F00AF48B6 /* DirectionsSpy.swift in Sources */, - C5ABB50E20408D2C00AFA92C /* RouteControllerTests.swift in Sources */, - 3EA93DC5BA00B5DFCBE7BAC3 /* RouteControllerDelegateSpy.swift in Sources */, - ); - runOnlyForDeploymentPostprocessing = 0; - }; -/* End PBXSourcesBuildPhase section */ - -/* Begin PBXTargetDependency section */ - 3525449C1E663D2C004C8F1C /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = 3525449B1E663D2C004C8F1C /* PBXContainerItemProxy */; - }; - 352BBC4D1E5E78D700703DF1 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 358D14621E5E3B7700ADE590 /* Example-Swift */; - targetProxy = 352BBC4C1E5E78D700703DF1 /* PBXContainerItemProxy */; - }; - 352BBC5B1E5E78EA00703DF1 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 358D14A51E5E3FDC00ADE590 /* Example-Objective-C */; - targetProxy = 352BBC5A1E5E78EA00703DF1 /* PBXContainerItemProxy */; - }; - 3546BF8D207BA920007FF453 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = 3546BF8C207BA920007FF453 /* PBXContainerItemProxy */; - }; - 3546BF91207BA920007FF453 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 351BEBD61E5BCC28006FE110 /* MapboxNavigation */; - targetProxy = 3546BF90207BA920007FF453 /* PBXContainerItemProxy */; - }; - 354A01D21E66268400D765C2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 351BEBD61E5BCC28006FE110 /* MapboxNavigation */; - targetProxy = 354A01D11E66268400D765C2 /* PBXContainerItemProxy */; - }; - 354A01D41E66268800D765C2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = 354A01D31E66268800D765C2 /* PBXContainerItemProxy */; - }; - 354A01D81E6626D400D765C2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = 354A01D71E6626D400D765C2 /* PBXContainerItemProxy */; - }; - 354A01DA1E6626D400D765C2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 351BEBD61E5BCC28006FE110 /* MapboxNavigation */; - targetProxy = 354A01D91E6626D400D765C2 /* PBXContainerItemProxy */; - }; - 35B711D61E5E7AD2001EDA8D /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 351BEBD61E5BCC28006FE110 /* MapboxNavigation */; - targetProxy = 35B711D51E5E7AD2001EDA8D /* PBXContainerItemProxy */; - }; - 35CEA3581E5CEBBC009F2255 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = 35CEA3571E5CEBBC009F2255 /* PBXContainerItemProxy */; - }; - 8DBCA7782080174600981EB2 /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 358D14621E5E3B7700ADE590 /* Example-Swift */; - targetProxy = 8DBCA7772080174600981EB2 /* PBXContainerItemProxy */; - }; - C53F2EDF20EBC95600D9798F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = C53F2EE020EBC95600D9798F /* PBXContainerItemProxy */; - }; - C53F2EE120EBC95600D9798F /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = 351BEBD61E5BCC28006FE110 /* MapboxNavigation */; - targetProxy = C53F2EE220EBC95600D9798F /* PBXContainerItemProxy */; - }; - C5ADFBD51DDCC7840011824B /* PBXTargetDependency */ = { - isa = PBXTargetDependency; - target = C5ADFBC81DDCC7840011824B /* MapboxCoreNavigation */; - targetProxy = C5ADFBD41DDCC7840011824B /* PBXContainerItemProxy */; - }; -/* End PBXTargetDependency section */ - -/* Begin PBXVariantGroup section */ - 35002D661E5F6B1B0090E733 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 35002D671E5F6B1B0090E733 /* Base */, - 35C6ED9C1EBB224A00A27EF8 /* zh-Hans */, - 35C6ED9E1EBB224D00A27EF8 /* sv */, - 35C6EDA01EBB224E00A27EF8 /* vi */, - 35C6EDA21EBB224F00A27EF8 /* ca */, - 35C6EDAD1EBB266300A27EF8 /* en */, - DA625E901F10557300FBE176 /* fa */, - DA625E931F105B1900FBE176 /* fr */, - DA625E981F105C1200FBE176 /* hu */, - DA625E9D1F105D1A00FBE176 /* lt */, - DAA293011F16DA0C00D94613 /* es */, - DAE7114C1F22E94E009AED76 /* it */, - DA8264851F2AAD8400454B24 /* zh-Hant */, - 35190E911F461A32007C1393 /* ru */, - DA3327391F50C6DA00C5EE88 /* sl */, - DA33273D1F50C7CA00C5EE88 /* uk */, - 3531C2671F9DDC6E00D92F9A /* pt-BR */, - DA545ABA1FA993DF0090908E /* de */, - DA545ABE1FA9A1370090908E /* nl */, - DA5AD03C1FEBA03700FC7D7B /* bg */, - DA3525712011435E0048DDFC /* da */, - DAC049C020171886004C2217 /* he */, - DAE26B1A20644047001D6E1F /* ar */, - DAE26B20206441D8001D6E1F /* pt-PT */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - 35002D741E5F6CD30090E733 /* Main.storyboard */ = { - isa = PBXVariantGroup; - children = ( - 35002D751E5F6CD30090E733 /* Base */, - 35C6EDA41EBB227100A27EF8 /* zh-Hans */, - 35C6EDA61EBB227600A27EF8 /* sv */, - 35C6EDA81EBB227900A27EF8 /* vi */, - 35C6EDAA1EBB228000A27EF8 /* ca */, - 35C6EDB21EBB286500A27EF8 /* en */, - DA625E911F10559600FBE176 /* fa */, - DA625E941F105B1A00FBE176 /* fr */, - DA625E991F105C1300FBE176 /* hu */, - DA625E9E1F105D1A00FBE176 /* lt */, - DAA293021F16DA1300D94613 /* es */, - DAE7114D1F22E966009AED76 /* it */, - DA8264861F2AAD9F00454B24 /* zh-Hant */, - 35190E921F461A32007C1393 /* ru */, - DA33273A1F50C6FC00C5EE88 /* sl */, - DA33273E1F50C7D800C5EE88 /* uk */, - 3531C2681F9DDC6E00D92F9A /* pt-BR */, - DA545ABB1FA993FB0090908E /* de */, - DA545ABF1FA9A1530090908E /* nl */, - DA5AD03D1FEBA03700FC7D7B /* bg */, - DA352568201096F20048DDFC /* da */, - DA1811FD20128B0900C91918 /* he */, - DAE26B1B20644047001D6E1F /* ar */, - DAE26B21206441D9001D6E1F /* pt-PT */, - ); - name = Main.storyboard; - sourceTree = ""; - }; - C520EE921EBB84F9008805BC /* Navigation.storyboard */ = { - isa = PBXVariantGroup; - children = ( - C520EE911EBB84F9008805BC /* Base */, - C520EE941EBBBD55008805BC /* en */, - DA625E921F1055DE00FBE176 /* fa */, - DA625E951F105B1A00FBE176 /* fr */, - DA625E9A1F105C1300FBE176 /* hu */, - DA625EA41F1060E300FBE176 /* ca */, - DA625EA51F10614500FBE176 /* es */, - DA625EA91F1061DA00FBE176 /* sv */, - DA625EAA1F10621A00FBE176 /* vi */, - DAA292FF1F16CC2200D94613 /* lt */, - DAE7114E1F22E977009AED76 /* it */, - DA8264871F2AADC200454B24 /* zh-Hant */, - 35190E931F461A32007C1393 /* ru */, - DA33273B1F50C70E00C5EE88 /* sl */, - DA33273F1F50C7E400C5EE88 /* uk */, - 3531C2691F9DDC6F00D92F9A /* pt-BR */, - DA545AC31FAA86350090908E /* de */, - DA352572201143BA0048DDFC /* da */, - DA1811FE20128B0900C91918 /* he */, - DAE26B1C20644047001D6E1F /* ar */, - DAE26B22206441D9001D6E1F /* pt-PT */, - DAFEB36A2093A0D800A86A83 /* ko */, - ); - name = Navigation.storyboard; - path = Resources; - sourceTree = ""; - }; - C53C196F1F38EA25008DB406 /* Localizable.strings */ = { - isa = PBXVariantGroup; - children = ( - C53C19701F38EACD008DB406 /* zh-Hans */, - C53C19711F38EADB008DB406 /* it */, - C53C19721F38EADB008DB406 /* es */, - C53C19731F38EADC008DB406 /* lt */, - C53C19751F38EADE008DB406 /* fr */, - C53C19771F38EAE4008DB406 /* ca */, - C53C197A1F38EAEA008DB406 /* Base */, - DA678B7B1F6CF46600F05913 /* hu */, - DA678B7C1F6CF47200F05913 /* sv */, - DA678B7D1F6CF47A00F05913 /* vi */, - 3531C26A1F9DDC6F00D92F9A /* pt-BR */, - DA545ABC1FA9941F0090908E /* de */, - DA545AC01FA9A15A0090908E /* nl */, - DA18120120128B7B00C91918 /* he */, - DAC049BE201715D5004C2217 /* ru */, - DAE26B1F2064407D001D6E1F /* ar */, - DAE26B23206441F7001D6E1F /* pt-PT */, - DAFEB36D2093A11F00A86A83 /* ko */, - ); - name = Localizable.strings; - path = Resources; - sourceTree = ""; - }; - DA35256E2010A5200048DDFC /* Localizable.stringsdict */ = { - isa = PBXVariantGroup; - children = ( - DA35256F2010A5200048DDFC /* en */, - DA181204201290FC00C91918 /* es */, - DA1812052012910000C91918 /* vi */, - DA181207201292E700C91918 /* fr */, - DAC049BF201715EA004C2217 /* ru */, - DAF257122017C1E800367EF5 /* sv */, - DAD88E00202AC7AA00AAA536 /* uk */, - DAD88E02202AC81F00AAA536 /* da */, - DAE26B2520644225001D6E1F /* pt-PT */, - DAE26B2820647A82001D6E1F /* he */, - DAFEB36F2093A3EF00A86A83 /* ko */, - DA73F87820BF851B0067649B /* de */, - ); - name = Localizable.stringsdict; - sourceTree = ""; - }; - DAAE5F321EAE4C4700832871 /* Localizable.strings */ = { - isa = PBXVariantGroup; - children = ( - DAAE5F311EAE4C4700832871 /* Base */, - DAAE5F331EAE4C5A00832871 /* zh-Hans */, - 357F0DF01EB9D99F00A0B53C /* sv */, - 357F0DF11EB9DAB400A0B53C /* vi */, - 35C6ED9A1EBB1DE400A27EF8 /* ca */, - DA625E9C1F105CB100FBE176 /* hu */, - DA625EA71F10616600FBE176 /* es */, - DA678B7A1F6CEE6200F05913 /* ru */, - 3531C26B1F9DDC6F00D92F9A /* pt-BR */, - DA545AC21FA9A16D0090908E /* nl */, - DA545AC41FAA86450090908E /* de */, - DA5AD0401FEBA23200FC7D7B /* bg */, - DA352573201143D30048DDFC /* da */, - DA18120320128E9400C91918 /* fr */, - DAC049C1201718AC004C2217 /* he */, - DAD88E01202AC80100AAA536 /* uk */, - DAE26B2420644215001D6E1F /* pt-PT */, - DAE26B272064742F001D6E1F /* ar */, - DAFEB36E2093A3E000A86A83 /* ko */, - ); - name = Localizable.strings; - path = Resources; - sourceTree = ""; - }; -/* End PBXVariantGroup section */ - -/* Begin XCBuildConfiguration section */ - 351BEBDC1E5BCC28006FE110 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - DEBUG_INFORMATION_FORMAT = dwarf; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 37; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxNavigation/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxNavigation; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - 351BEBDD1E5BCC28006FE110 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CODE_SIGN_IDENTITY = ""; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 37; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxNavigation/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxNavigation; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; - 352BBC4F1E5E78D700703DF1 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Examples/SwiftTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-SwiftTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example-Swift.app/Example-Swift"; - }; - name = Debug; - }; - 352BBC501E5E78D700703DF1 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = Examples/SwiftTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-SwiftTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example-Swift.app/Example-Swift"; - }; - name = Release; - }; - 352BBC5D1E5E78EA00703DF1 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = ""; - INFOPLIST_FILE = "Examples/Objective-CTests/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-Objective-CTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example-Objective-C.app/Example-Objective-C"; - }; - name = Debug; - }; - 352BBC5E1E5E78EA00703DF1 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - BUNDLE_LOADER = "$(TEST_HOST)"; - DEVELOPMENT_TEAM = ""; - INFOPLIST_FILE = "Examples/Objective-CTests/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-Objective-CTests"; - PRODUCT_NAME = "$(TARGET_NAME)"; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example-Objective-C.app/Example-Objective-C"; - }; - name = Release; - }; - 3546BF83207BA4AA007FF453 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - GCC_C_LANGUAGE_STANDARD = gnu11; - INFOPLIST_FILE = RouteTest/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.RouteTest; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Debug; - }; - 3546BF84207BA4AA007FF453 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ANALYZER_NUMBER_OBJECT_CONVERSION = YES_AGGRESSIVE; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++14"; - CLANG_ENABLE_OBJC_WEAK = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_UNGUARDED_AVAILABILITY = YES_AGGRESSIVE; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Automatic; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - GCC_C_LANGUAGE_STANDARD = gnu11; - INFOPLIST_FILE = RouteTest/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.RouteTest; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - }; - name = Release; - }; - 358D14721E5E3B7700ADE590 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = "iPhone Developer"; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = 49N5VVHQNN; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = "$(SRCROOT)/Examples/Swift/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-Swift"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Examples/Swift/Example-Swift-BridgingHeader.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - VALIDATE_WORKSPACE = YES; - }; - name = Debug; - }; - 358D14731E5E3B7700ADE590 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = 49N5VVHQNN; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = "$(SRCROOT)/Examples/Swift/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-Swift"; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "Examples/Swift/Example-Swift-BridgingHeader.h"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - VALIDATE_WORKSPACE = YES; - }; - name = Release; - }; - 358D14BB1E5E3FDC00ADE590 /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CODE_SIGN_IDENTITY = "iPhone Developer"; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = "$(SRCROOT)/Examples/Objective-C/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-Objective-C"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Debug; - }; - 358D14BC1E5E3FDC00ADE590 /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = "$(SRCROOT)/Examples/Objective-C/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-Objective-C"; - PRODUCT_NAME = "$(TARGET_NAME)"; - }; - name = Release; - }; - 35B711D81E5E7AD2001EDA8D /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxNavigationTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxNavigationTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "MapboxNavigationTests/MapboxNavigationTests-Bridging.h"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example-Swift.app/Example-Swift"; - }; - name = Debug; - }; - 35B711D91E5E7AD2001EDA8D /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxNavigationTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxNavigationTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "MapboxNavigationTests/MapboxNavigationTests-Bridging.h"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - TEST_HOST = "$(BUILT_PRODUCTS_DIR)/Example-Swift.app/Example-Swift"; - }; - name = Release; - }; - C53F2F0520EBC95600D9798F /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "${SRCROOT}/Examples/Swift/Entitlements.plist"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEBUG_INFORMATION_FORMAT = dwarf; - DEVELOPMENT_TEAM = GJZR2MEM28; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = "$(SRCROOT)/Examples/Swift/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-CarPlay"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE = "69c90fd8-c53b-41a4-ac73-5bc11068a49a"; - PROVISIONING_PROFILE_SPECIFIER = "Navigation Example"; - SWIFT_OBJC_BRIDGING_HEADER = "Examples/Swift/Example-Swift-BridgingHeader.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - C53F2F0620EBC95600D9798F /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - ASSETCATALOG_COMPILER_APPICON_NAME = AppIcon; - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_ENTITLEMENTS = "${SRCROOT}/Examples/Swift/Entitlements.plist"; - CODE_SIGN_IDENTITY = "iPhone Developer"; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - CODE_SIGN_STYLE = Manual; - DEVELOPMENT_TEAM = GJZR2MEM28; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = "$(SRCROOT)/Examples/Swift/Info.plist"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = "com.mapbox.Example-CarPlay"; - PRODUCT_NAME = "$(TARGET_NAME)"; - PROVISIONING_PROFILE = "69c90fd8-c53b-41a4-ac73-5bc11068a49a"; - PROVISIONING_PROFILE_SPECIFIER = "Navigation Example"; - SWIFT_OBJC_BRIDGING_HEADER = "Examples/Swift/Example-Swift-BridgingHeader.h"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; - C5ADFBDB1DDCC7840011824B /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_SUSPICIOUS_MOVES = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 34; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_STRICT_OBJC_MSGSEND = YES; - ENABLE_TESTABILITY = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_DYNAMIC_NO_PIC = NO; - GCC_NO_COMMON_BLOCKS = YES; - GCC_OPTIMIZATION_LEVEL = 0; - GCC_PREPROCESSOR_DEFINITIONS = ( - "DEBUG=1", - "$(inherited)", - ); - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = YES; - ONLY_ACTIVE_ARCH = YES; - SDKROOT = iphoneos; - SWIFT_ACTIVE_COMPILATION_CONDITIONS = DEBUG; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Debug; - }; - C5ADFBDC1DDCC7840011824B /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_SEARCH_USER_PATHS = NO; - CLANG_ANALYZER_LOCALIZABILITY_NONLOCALIZED = YES; - CLANG_ANALYZER_NONNULL = YES; - CLANG_CXX_LANGUAGE_STANDARD = "gnu++0x"; - CLANG_CXX_LIBRARY = "libc++"; - CLANG_ENABLE_MODULES = YES; - CLANG_ENABLE_OBJC_ARC = YES; - CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES; - CLANG_WARN_BOOL_CONVERSION = YES; - CLANG_WARN_COMMA = YES; - CLANG_WARN_CONSTANT_CONVERSION = YES; - CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES; - CLANG_WARN_DIRECT_OBJC_ISA_USAGE = YES_ERROR; - CLANG_WARN_DOCUMENTATION_COMMENTS = YES; - CLANG_WARN_EMPTY_BODY = YES; - CLANG_WARN_ENUM_CONVERSION = YES; - CLANG_WARN_INFINITE_RECURSION = YES; - CLANG_WARN_INT_CONVERSION = YES; - CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES; - CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES; - CLANG_WARN_OBJC_LITERAL_CONVERSION = YES; - CLANG_WARN_OBJC_ROOT_CLASS = YES_ERROR; - CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = NO; - CLANG_WARN_RANGE_LOOP_ANALYSIS = YES; - CLANG_WARN_STRICT_PROTOTYPES = YES; - CLANG_WARN_SUSPICIOUS_MOVE = YES; - CLANG_WARN_SUSPICIOUS_MOVES = YES; - CLANG_WARN_UNREACHABLE_CODE = YES; - CLANG_WARN__DUPLICATE_METHOD_MATCH = YES; - "CODE_SIGN_IDENTITY[sdk=iphoneos*]" = "iPhone Developer"; - COPY_PHASE_STRIP = NO; - CURRENT_PROJECT_VERSION = 34; - DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym"; - ENABLE_NS_ASSERTIONS = NO; - ENABLE_STRICT_OBJC_MSGSEND = YES; - GCC_C_LANGUAGE_STANDARD = gnu99; - GCC_NO_COMMON_BLOCKS = YES; - GCC_WARN_64_TO_32_BIT_CONVERSION = YES; - GCC_WARN_ABOUT_RETURN_TYPE = YES_ERROR; - GCC_WARN_UNDECLARED_SELECTOR = YES; - GCC_WARN_UNINITIALIZED_AUTOS = YES_AGGRESSIVE; - GCC_WARN_UNUSED_FUNCTION = YES; - GCC_WARN_UNUSED_VARIABLE = YES; - IPHONEOS_DEPLOYMENT_TARGET = 9.0; - MTL_ENABLE_DEBUG_INFO = NO; - SDKROOT = iphoneos; - SWIFT_COMPILATION_MODE = wholemodule; - SWIFT_OPTIMIZATION_LEVEL = "-O"; - SWIFT_VERSION = 5.0; - TARGETED_DEVICE_FAMILY = "1,2"; - VALIDATE_PRODUCT = YES; - VERSIONING_SYSTEM = "apple-generic"; - VERSION_INFO_PREFIX = ""; - }; - name = Release; - }; - C5ADFBDE1DDCC7840011824B /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = ""; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 35; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxCoreNavigation/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxCoreNavigation; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - VALIDATE_WORKSPACE = YES; - }; - name = Debug; - }; - C5ADFBDF1DDCC7840011824B /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - CLANG_ENABLE_MODULES = YES; - CODE_SIGN_IDENTITY = ""; - DEFINES_MODULE = YES; - DEVELOPMENT_TEAM = ""; - DYLIB_COMPATIBILITY_VERSION = 1; - DYLIB_CURRENT_VERSION = 35; - DYLIB_INSTALL_NAME_BASE = "@rpath"; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxCoreNavigation/Info.plist; - INSTALL_PATH = "$(LOCAL_LIBRARY_DIR)/Frameworks"; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxCoreNavigation; - PRODUCT_NAME = "$(TARGET_NAME)"; - SKIP_INSTALL = YES; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - VALIDATE_WORKSPACE = YES; - }; - name = Release; - }; - C5ADFBE11DDCC7840011824B /* Debug */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxCoreNavigationTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxCoreNavigationTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "MapboxCoreNavigationTests/MapboxCoreNavigationTests-Bridging-Header.h"; - SWIFT_OPTIMIZATION_LEVEL = "-Onone"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - }; - name = Debug; - }; - C5ADFBE21DDCC7840011824B /* Release */ = { - isa = XCBuildConfiguration; - buildSettings = { - ALWAYS_EMBED_SWIFT_STANDARD_LIBRARIES = YES; - CLANG_ENABLE_MODULES = YES; - DEVELOPMENT_TEAM = ""; - FRAMEWORK_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - ); - INFOPLIST_FILE = MapboxCoreNavigationTests/Info.plist; - IPHONEOS_DEPLOYMENT_TARGET = 12.0; - LD_RUNPATH_SEARCH_PATHS = ( - "$(inherited)", - "$(PROJECT_DIR)/Carthage/Build/iOS", - "@executable_path/Frameworks", - "@loader_path/Frameworks", - ); - PRODUCT_BUNDLE_IDENTIFIER = com.mapbox.MapboxCoreNavigationTests; - PRODUCT_NAME = "$(TARGET_NAME)"; - SWIFT_OBJC_BRIDGING_HEADER = "MapboxCoreNavigationTests/MapboxCoreNavigationTests-Bridging-Header.h"; - SWIFT_SWIFT3_OBJC_INFERENCE = Off; - SWIFT_VERSION = 5.0; - }; - name = Release; - }; -/* End XCBuildConfiguration section */ - -/* Begin XCConfigurationList section */ - 351BEBDE1E5BCC28006FE110 /* Build configuration list for PBXNativeTarget "MapboxNavigation" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 351BEBDC1E5BCC28006FE110 /* Debug */, - 351BEBDD1E5BCC28006FE110 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 352BBC4E1E5E78D700703DF1 /* Build configuration list for PBXNativeTarget "Example-SwiftTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 352BBC4F1E5E78D700703DF1 /* Debug */, - 352BBC501E5E78D700703DF1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 352BBC5C1E5E78EA00703DF1 /* Build configuration list for PBXNativeTarget "Example-Objective-CTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 352BBC5D1E5E78EA00703DF1 /* Debug */, - 352BBC5E1E5E78EA00703DF1 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 3546BF85207BA4AA007FF453 /* Build configuration list for PBXNativeTarget "RouteTest" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 3546BF83207BA4AA007FF453 /* Debug */, - 3546BF84207BA4AA007FF453 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 358D14741E5E3B7700ADE590 /* Build configuration list for PBXNativeTarget "Example-Swift" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 358D14721E5E3B7700ADE590 /* Debug */, - 358D14731E5E3B7700ADE590 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 358D14BA1E5E3FDC00ADE590 /* Build configuration list for PBXNativeTarget "Example-Objective-C" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 358D14BB1E5E3FDC00ADE590 /* Debug */, - 358D14BC1E5E3FDC00ADE590 /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - 35B711D71E5E7AD2001EDA8D /* Build configuration list for PBXNativeTarget "MapboxNavigationTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - 35B711D81E5E7AD2001EDA8D /* Debug */, - 35B711D91E5E7AD2001EDA8D /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - C53F2F0420EBC95600D9798F /* Build configuration list for PBXNativeTarget "Example-CarPlay" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C53F2F0520EBC95600D9798F /* Debug */, - C53F2F0620EBC95600D9798F /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - C5ADFBC31DDCC7840011824B /* Build configuration list for PBXProject "MapboxNavigation" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C5ADFBDB1DDCC7840011824B /* Debug */, - C5ADFBDC1DDCC7840011824B /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - C5ADFBDD1DDCC7840011824B /* Build configuration list for PBXNativeTarget "MapboxCoreNavigation" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C5ADFBDE1DDCC7840011824B /* Debug */, - C5ADFBDF1DDCC7840011824B /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; - C5ADFBE01DDCC7840011824B /* Build configuration list for PBXNativeTarget "MapboxCoreNavigationTests" */ = { - isa = XCConfigurationList; - buildConfigurations = ( - C5ADFBE11DDCC7840011824B /* Debug */, - C5ADFBE21DDCC7840011824B /* Release */, - ); - defaultConfigurationIsVisible = 0; - defaultConfigurationName = Release; - }; -/* End XCConfigurationList section */ - -/* Begin XCRemoteSwiftPackageReference section */ - C5335299278DD8ED003DEC63 /* XCRemoteSwiftPackageReference "maplibre-gl-native-distribution" */ = { - isa = XCRemoteSwiftPackageReference; - repositoryURL = "https://github.com/maplibre/maplibre-gl-native-distribution"; - requirement = { - kind = exactVersion; - version = 6.0.0; - }; - }; -/* End XCRemoteSwiftPackageReference section */ - -/* Begin XCSwiftPackageProductDependency section */ - 7152FF172B71214100BF70D4 /* MapLibre */ = { - isa = XCSwiftPackageProductDependency; - package = C5335299278DD8ED003DEC63 /* XCRemoteSwiftPackageReference "maplibre-gl-native-distribution" */; - productName = MapLibre; - }; - 7170CCB92B6D2AE00054DF8E /* MapLibre */ = { - isa = XCSwiftPackageProductDependency; - package = C5335299278DD8ED003DEC63 /* XCRemoteSwiftPackageReference "maplibre-gl-native-distribution" */; - productName = MapLibre; - }; - 7170CCBB2B6D2AF10054DF8E /* MapLibre */ = { - isa = XCSwiftPackageProductDependency; - package = C5335299278DD8ED003DEC63 /* XCRemoteSwiftPackageReference "maplibre-gl-native-distribution" */; - productName = MapLibre; - }; - 7170CCBD2B6D2B570054DF8E /* MapLibre */ = { - isa = XCSwiftPackageProductDependency; - package = C5335299278DD8ED003DEC63 /* XCRemoteSwiftPackageReference "maplibre-gl-native-distribution" */; - productName = MapLibre; - }; -/* End XCSwiftPackageProductDependency section */ - }; - rootObject = C5ADFBC01DDCC7840011824B /* Project object */; -} diff --git a/MapboxNavigation.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist b/MapboxNavigation.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist deleted file mode 100644 index 18d981003..000000000 --- a/MapboxNavigation.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist +++ /dev/null @@ -1,8 +0,0 @@ - - - - - IDEDidComputeMac32BitWarning - - - diff --git a/MapboxNavigation.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved b/MapboxNavigation.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved deleted file mode 100644 index 057a4e929..000000000 --- a/MapboxNavigation.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved +++ /dev/null @@ -1,14 +0,0 @@ -{ - "pins" : [ - { - "identity" : "maplibre-gl-native-distribution", - "kind" : "remoteSourceControl", - "location" : "https://github.com/maplibre/maplibre-gl-native-distribution", - "state" : { - "revision" : "3df876f8f2c6c591b0f66a29b3e216020afc885c", - "version" : "6.0.0" - } - } - ], - "version" : 2 -} diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/51BD5556-46A3-4CC6-A414-4933647ED596.plist b/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/51BD5556-46A3-4CC6-A414-4933647ED596.plist deleted file mode 100644 index 16687a5c7..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/51BD5556-46A3-4CC6-A414-4933647ED596.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - classNames - - DataCacheTests - - testCacheKeyPerformance() - - com.apple.XCTPerformanceMetric_WallClockTime - - baselineAverage - 0.0229 - baselineIntegrationDisplayName - Local Baseline - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/DE43C589-1E37-4086-B867-7E50F2C9F487.plist b/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/DE43C589-1E37-4086-B867-7E50F2C9F487.plist deleted file mode 100644 index c4115e6b0..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/DE43C589-1E37-4086-B867-7E50F2C9F487.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - classNames - - InstructionPresenterTests - - testAbbreviationPerformance() - - com.apple.XCTPerformanceMetric_WallClockTime - - baselineAverage - 0.339 - baselineIntegrationDisplayName - Local Baseline - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/F6C31427-6859-412C-B6C0-9E436C247941.plist b/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/F6C31427-6859-412C-B6C0-9E436C247941.plist deleted file mode 100644 index a05cf2d30..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/F6C31427-6859-412C-B6C0-9E436C247941.plist +++ /dev/null @@ -1,22 +0,0 @@ - - - - - classNames - - StepsViewControllerTests - - testUpdateCellPerformance() - - com.apple.XCTPerformanceMetric_WallClockTime - - baselineAverage - 0.0117 - baselineIntegrationDisplayName - Local Baseline - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/Info.plist b/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/Info.plist deleted file mode 100644 index 27da3b7dc..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcbaselines/35B711CE1E5E7AD2001EDA8D.xcbaseline/Info.plist +++ /dev/null @@ -1,102 +0,0 @@ - - - - - runDestinationsByUUID - - 51BD5556-46A3-4CC6-A414-4933647ED596 - - localComputer - - busSpeedInMHz - 100 - cpuCount - 1 - cpuKind - Intel Core i5 - cpuSpeedInMHz - 3100 - logicalCPUCoresPerPackage - 4 - modelCode - MacBookPro13,2 - physicalCPUCoresPerPackage - 2 - platformIdentifier - com.apple.platform.macosx - - targetArchitecture - x86_64 - targetDevice - - modelCode - iPhone10,3 - platformIdentifier - com.apple.platform.iphonesimulator - - - DE43C589-1E37-4086-B867-7E50F2C9F487 - - localComputer - - busSpeedInMHz - 100 - cpuCount - 1 - cpuKind - Intel Core i7 - cpuSpeedInMHz - 3300 - logicalCPUCoresPerPackage - 4 - modelCode - MacBookPro13,2 - physicalCPUCoresPerPackage - 2 - platformIdentifier - com.apple.platform.macosx - - targetArchitecture - x86_64 - targetDevice - - modelCode - iPhone7,1 - platformIdentifier - com.apple.platform.iphonesimulator - - - F6C31427-6859-412C-B6C0-9E436C247941 - - localComputer - - busSpeedInMHz - 100 - cpuCount - 1 - cpuKind - Intel Core i7 - cpuSpeedInMHz - 3500 - logicalCPUCoresPerPackage - 4 - modelCode - MacBookPro14,2 - physicalCPUCoresPerPackage - 2 - platformIdentifier - com.apple.platform.macosx - - targetArchitecture - x86_64 - targetDevice - - modelCode - iPhone10,5 - platformIdentifier - com.apple.platform.iphonesimulator - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/All Tests.xcscheme b/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/All Tests.xcscheme deleted file mode 100644 index 10f2eb51a..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/All Tests.xcscheme +++ /dev/null @@ -1,163 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-CarPlay.xcscheme b/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-CarPlay.xcscheme deleted file mode 100644 index 4ba2ce02e..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-CarPlay.xcscheme +++ /dev/null @@ -1,87 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-Objective-C.xcscheme b/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-Objective-C.xcscheme deleted file mode 100644 index 85b96bb5e..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-Objective-C.xcscheme +++ /dev/null @@ -1,97 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-Swift.xcscheme b/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-Swift.xcscheme deleted file mode 100644 index 52c3da0ff..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/Example-Swift.xcscheme +++ /dev/null @@ -1,109 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/MapboxNavigation.xcscheme b/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/MapboxNavigation.xcscheme deleted file mode 100644 index ac46640c0..000000000 --- a/MapboxNavigation.xcodeproj/xcshareddata/xcschemes/MapboxNavigation.xcscheme +++ /dev/null @@ -1,107 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/MapboxNavigation/Bundle.swift b/MapboxNavigation/Bundle.swift index 0b7f89ef0..a970ae6d8 100644 --- a/MapboxNavigation/Bundle.swift +++ b/MapboxNavigation/Bundle.swift @@ -1,9 +1,9 @@ -import Foundation +import UIKit extension Bundle { class var mapboxNavigation: Bundle { - get { return Bundle(for: NavigationViewController.self) } + get { .module } } func image(named: String) -> UIImage? { diff --git a/MapboxNavigation/Cache.swift b/MapboxNavigation/Cache.swift index 842a3a32c..888126d1b 100644 --- a/MapboxNavigation/Cache.swift +++ b/MapboxNavigation/Cache.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit public typealias CompletionHandler = () -> Void diff --git a/MapboxNavigation/CarPlayNavigationViewController.swift b/MapboxNavigation/CarPlayNavigationViewController.swift index dfccb077d..30b6b1ed4 100644 --- a/MapboxNavigation/CarPlayNavigationViewController.swift +++ b/MapboxNavigation/CarPlayNavigationViewController.swift @@ -197,7 +197,7 @@ public class CarPlayNavigationViewController: UIViewController, MLNMapViewDelega let location = notification.userInfo![RouteControllerNotificationUserInfoKey.locationKey] as! CLLocation // Update the user puck - let camera = MLNMapCamera(lookingAtCenter: location.coordinate, fromDistance: 120, pitch: 60, heading: location.course) + let camera = MLNMapCamera(lookingAtCenter: location.coordinate, acrossDistance: 120, pitch: 60, heading: location.course) mapView?.updateCourseTracking(location: location, camera: camera, animated: true) let congestionLevel = routeProgress.averageCongestionLevelRemainingOnLeg ?? .unknown diff --git a/MapboxNavigation/ConfigManager.swift b/MapboxNavigation/ConfigManager.swift index 3c1092a94..89b8b881a 100644 --- a/MapboxNavigation/ConfigManager.swift +++ b/MapboxNavigation/ConfigManager.swift @@ -6,7 +6,7 @@ // Copyright © 2020 Mapbox. All rights reserved. // -import Foundation +import UIKit class ConfigManager { static let shared = ConfigManager() diff --git a/MapboxNavigation/Constants.swift b/MapboxNavigation/Constants.swift index 4bc8bd1b2..150ae18d3 100644 --- a/MapboxNavigation/Constants.swift +++ b/MapboxNavigation/Constants.swift @@ -1,4 +1,4 @@ -import Foundation +import CoreLocation import MapboxDirections typealias CongestionSegment = ([CLLocationCoordinate2D], CongestionLevel) @@ -16,6 +16,14 @@ public let MBRouteLineWidthByZoomLevel: [Int: NSExpression] = [ 22: NSExpression(forConstantValue: 28) ] +public let MLNRouteLineWidthByZoomLevel: [Int: Double] = [ + 10: 8, + 13: 9, + 16: 11, + 19: 22, + 22: 28 +] + /** The minium distance remaining on a route before overhead zooming is stopped. */ diff --git a/MapboxNavigation/DataCache.swift b/MapboxNavigation/DataCache.swift index 9584fa6a9..efa9843b6 100644 --- a/MapboxNavigation/DataCache.swift +++ b/MapboxNavigation/DataCache.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit @objc(MBDataCache) public class DataCache: NSObject, BimodalDataCache { diff --git a/MapboxNavigation/Dictionary.swift b/MapboxNavigation/Dictionary.swift index cdcbd8d1d..912502c9a 100644 --- a/MapboxNavigation/Dictionary.swift +++ b/MapboxNavigation/Dictionary.swift @@ -14,3 +14,12 @@ extension Dictionary where Key == Int, Value: NSExpression { return newCameraStop as! Dictionary } } + +extension Dictionary where Key == Int, Value == Double { + /** + Returns a copy of the stop dictionary with each value multiplied by the given factor. + */ + func multiplied(by factor: Double) -> Dictionary { + return self.mapValues { $0 * factor } + } +} diff --git a/MapboxNavigation/Error.swift b/MapboxNavigation/Error.swift index 4bd2a1bc4..74c5fab32 100644 --- a/MapboxNavigation/Error.swift +++ b/MapboxNavigation/Error.swift @@ -1,5 +1,7 @@ import Foundation import MapboxCoreNavigation +import MapboxCoreNavigationObjC +import MapboxNavigationObjC extension NSError { /** diff --git a/MapboxNavigation/HighwayShield.swift b/MapboxNavigation/HighwayShield.swift index a2da3aa39..ee162a00d 100644 --- a/MapboxNavigation/HighwayShield.swift +++ b/MapboxNavigation/HighwayShield.swift @@ -1,3 +1,5 @@ +import UIKit + struct HighwayShield { enum RoadClass: String { diff --git a/MapboxNavigation/ImageCache.swift b/MapboxNavigation/ImageCache.swift index 8be1d1c26..7f6cdeee9 100644 --- a/MapboxNavigation/ImageCache.swift +++ b/MapboxNavigation/ImageCache.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit internal class ImageCache: BimodalImageCache { let memoryCache: NSCache diff --git a/MapboxNavigation/ImageDownload.swift b/MapboxNavigation/ImageDownload.swift index 2cf0d3146..1450496ed 100644 --- a/MapboxNavigation/ImageDownload.swift +++ b/MapboxNavigation/ImageDownload.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit enum DownloadError: Error { case serverError diff --git a/MapboxNavigation/ImageDownloader.swift b/MapboxNavigation/ImageDownloader.swift index 3869d4c3e..ef009e9f0 100644 --- a/MapboxNavigation/ImageDownloader.swift +++ b/MapboxNavigation/ImageDownloader.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit typealias ImageDownloadCompletionBlock = (UIImage?, Data?, Error?) -> Void diff --git a/MapboxNavigation/ImageRepository.swift b/MapboxNavigation/ImageRepository.swift index abf3355ee..6ff6e4719 100644 --- a/MapboxNavigation/ImageRepository.swift +++ b/MapboxNavigation/ImageRepository.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit class ImageRepository { diff --git a/MapboxNavigation/Info.plist b/MapboxNavigation/Info.plist deleted file mode 100644 index caf8a88d7..000000000 --- a/MapboxNavigation/Info.plist +++ /dev/null @@ -1,24 +0,0 @@ - - - - - CFBundleDevelopmentRegion - en - CFBundleExecutable - $(EXECUTABLE_NAME) - CFBundleIdentifier - $(PRODUCT_BUNDLE_IDENTIFIER) - CFBundleInfoDictionaryVersion - 6.0 - CFBundleName - $(PRODUCT_NAME) - CFBundlePackageType - FMWK - CFBundleShortVersionString - 1.0.6 - CFBundleVersion - 34 - NSPrincipalClass - - - diff --git a/MapboxNavigation/InstructionPresenter.swift b/MapboxNavigation/InstructionPresenter.swift index 5c1c96396..9c36b43a3 100644 --- a/MapboxNavigation/InstructionPresenter.swift +++ b/MapboxNavigation/InstructionPresenter.swift @@ -244,18 +244,7 @@ class InstructionPresenter { } private func takeSnapshot(on view: UIView) -> UIImage? { - let window: UIWindow - if let hostView = dataSource as? UIView, let hostWindow = hostView.window { - window = hostWindow - } else { - window = UIApplication.shared.delegate!.window!! - } - - // Temporarily add the view to the view hierarchy for UIAppearance to work its magic. - window.addSubview(view) - let image = view.imageRepresentation - view.removeFromSuperview() - return image + return view.imageRepresentation } } diff --git a/MapboxNavigation/InstructionsBannerView.swift b/MapboxNavigation/InstructionsBannerView.swift index 40eeade4f..10f13db85 100644 --- a/MapboxNavigation/InstructionsBannerView.swift +++ b/MapboxNavigation/InstructionsBannerView.swift @@ -1,3 +1,4 @@ +import CoreLocation import UIKit import MapboxCoreNavigation import MapboxDirections diff --git a/MapboxNavigation/NSAttributedString.swift b/MapboxNavigation/NSAttributedString.swift index 9b744df37..cb05f3799 100644 --- a/MapboxNavigation/NSAttributedString.swift +++ b/MapboxNavigation/NSAttributedString.swift @@ -1,4 +1,4 @@ -import Foundation +import UIKit extension NSAttributedString { static func + (left: NSAttributedString, right: NSAttributedString) -> NSAttributedString { diff --git a/MapboxNavigation/NavigationMapView.swift b/MapboxNavigation/NavigationMapView.swift index b26db634a..572b18885 100644 --- a/MapboxNavigation/NavigationMapView.swift +++ b/MapboxNavigation/NavigationMapView.swift @@ -625,7 +625,10 @@ open class NavigationMapView: MLNMapView, UIGestureRecognizerDelegate { arrow.minimumZoomLevel = minimumZoomLevel arrow.lineCap = NSExpression(forConstantValue: "butt") arrow.lineJoin = NSExpression(forConstantValue: "round") - arrow.lineWidth = NSExpression(format: "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)", MBRouteLineWidthByZoomLevel.multiplied(by: 0.70)) + arrow.lineWidth = NSExpression(forMLNInterpolating: .zoomLevelVariable, + curveType: .linear, + parameters: nil, + stops: NSExpression(forConstantValue: MLNRouteLineWidthByZoomLevel.multiplied(by: 0.7))) arrow.lineColor = NSExpression(forConstantValue: maneuverArrowColor) style.addSource(arrowSource) @@ -635,11 +638,13 @@ open class NavigationMapView: MLNMapView, UIGestureRecognizerDelegate { if let source = style.source(withIdentifier: arrowSourceStrokeIdentifier) as? MLNShapeSource { source.shape = arrowStrokeShape } else { - arrowStroke.minimumZoomLevel = arrow.minimumZoomLevel arrowStroke.lineCap = arrow.lineCap arrowStroke.lineJoin = arrow.lineJoin - arrowStroke.lineWidth = NSExpression(format: "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)", MBRouteLineWidthByZoomLevel.multiplied(by: 0.80)) + arrow.lineWidth = NSExpression(forMLNInterpolating: .zoomLevelVariable, + curveType: .linear, + parameters: nil, + stops: NSExpression(forConstantValue: MLNRouteLineWidthByZoomLevel.multiplied(by: 0.8))) arrowStroke.lineColor = NSExpression(forConstantValue: maneuverArrowStrokeColor) style.addSource(arrowSourceStroke) @@ -666,7 +671,10 @@ open class NavigationMapView: MLNMapView, UIGestureRecognizerDelegate { arrowSymbolLayer.iconColor = NSExpression(forConstantValue: maneuverArrowColor) arrowSymbolLayer.iconRotationAlignment = NSExpression(forConstantValue: "map") arrowSymbolLayer.iconRotation = NSExpression(forConstantValue: shaftDirection as NSNumber) - arrowSymbolLayer.iconScale = NSExpression(format: "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)", MBRouteLineWidthByZoomLevel.multiplied(by: 0.12)) + arrowSymbolLayer.iconScale = NSExpression(forMLNInterpolating: .zoomLevelVariable, + curveType: .linear, + parameters: nil, + stops: NSExpression(forConstantValue: MLNRouteLineWidthByZoomLevel.multiplied(by: 0.12))) arrowSymbolLayer.iconAllowsOverlap = NSExpression(forConstantValue: true) let arrowSymbolLayerCasing = MLNSymbolStyleLayer(identifier: arrowCasingSymbolLayerIdentifier, source: arrowSymbolSource) @@ -675,7 +683,10 @@ open class NavigationMapView: MLNMapView, UIGestureRecognizerDelegate { arrowSymbolLayerCasing.iconColor = NSExpression(forConstantValue: maneuverArrowStrokeColor) arrowSymbolLayerCasing.iconRotationAlignment = arrowSymbolLayer.iconRotationAlignment arrowSymbolLayerCasing.iconRotation = arrowSymbolLayer.iconRotation - arrowSymbolLayerCasing.iconScale = NSExpression(format: "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)", MBRouteLineWidthByZoomLevel.multiplied(by: 0.14)) + arrowSymbolLayerCasing.iconScale = NSExpression(forMLNInterpolating: .zoomLevelVariable, + curveType: .linear, + parameters: nil, + stops: NSExpression(forConstantValue: MLNRouteLineWidthByZoomLevel.multiplied(by: 0.14))) arrowSymbolLayerCasing.iconAllowsOverlap = arrowSymbolLayer.iconAllowsOverlap style.addSource(arrowSymbolSource) @@ -927,8 +938,10 @@ open class NavigationMapView: MLNMapView, UIGestureRecognizerDelegate { func routeStyleLayer(identifier: String, source: MLNSource) -> MLNStyleLayer { let line = MLNLineStyleLayer(identifier: identifier, source: source) - line.lineWidth = NSExpression(format: "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)", MBRouteLineWidthByZoomLevel) - + line.lineWidth = NSExpression(forMLNInterpolating: .zoomLevelVariable, + curveType: .linear, + parameters: nil, + stops: NSExpression(forConstantValue: MLNRouteLineWidthByZoomLevel)) line.lineColor = NSExpression( forConditional: NSPredicate(format: "isAlternateRoute == true"), trueExpression: NSExpression(forConstantValue: routeLineAlternativeColor), @@ -949,7 +962,10 @@ open class NavigationMapView: MLNMapView, UIGestureRecognizerDelegate { let lineCasing = MLNLineStyleLayer(identifier: identifier, source: source) // Take the default line width and make it wider for the casing - lineCasing.lineWidth = NSExpression(format: "mgl_interpolate:withCurveType:parameters:stops:($zoomLevel, 'linear', nil, %@)", MBRouteLineWidthByZoomLevel.multiplied(by: 1.5)) + lineCasing.lineWidth = NSExpression(forMLNInterpolating: .zoomLevelVariable, + curveType: .linear, + parameters: nil, + stops: NSExpression(forConstantValue: MLNRouteLineWidthByZoomLevel.multiplied(by: 1.5))) lineCasing.lineColor = NSExpression( forConditional: NSPredicate(format: "isAlternateRoute == true"), diff --git a/MapboxNavigation/NavigationView.swift b/MapboxNavigation/NavigationView.swift index a912c0123..38d3c6561 100644 --- a/MapboxNavigation/NavigationView.swift +++ b/MapboxNavigation/NavigationView.swift @@ -1,4 +1,5 @@ import UIKit +import MapLibre import MapboxDirections /** diff --git a/MapboxNavigation/Resources/Base.lproj/Navigation.storyboard b/MapboxNavigation/Resources/Base.lproj/Navigation.storyboard index d091483a8..893359a1f 100644 --- a/MapboxNavigation/Resources/Base.lproj/Navigation.storyboard +++ b/MapboxNavigation/Resources/Base.lproj/Navigation.storyboard @@ -1,12 +1,9 @@ - - - - + + - - + @@ -20,16 +17,16 @@ - + - + - + - + @@ -128,7 +125,7 @@ -