@complexify/expo-mapbox-navigation 1.1.5 → 1.1.7
This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
- package/build/ExpoMapboxNavigation.types.d.ts +4 -0
- package/build/ExpoMapboxNavigation.types.d.ts.map +1 -1
- package/build/ExpoMapboxNavigation.types.js.map +1 -1
- package/ios/CustomNavigationStyle.swift +23 -0
- package/ios/ExpoMapboxNavigationModule.swift +24 -0
- package/ios/ExpoMapboxNavigationView.swift +20 -0
- package/package.json +1 -1
- package/src/ExpoMapboxNavigation.types.ts +6 -0
@@ -57,6 +57,10 @@ export type ExpoMapboxNavigationViewProps = {
|
|
57
57
|
floatingButtonsTextColor?: string;
|
58
58
|
floatingButtonsBorderColor?: string;
|
59
59
|
wayNameViewBackgroundColor?: string;
|
60
|
+
maneuverViewPrimaryColor?: string;
|
61
|
+
maneuverViewSecondaryColor?: string;
|
62
|
+
maneuverViewTextColor?: string;
|
63
|
+
maneuverViewBackgroundColor?: string;
|
60
64
|
};
|
61
65
|
export {};
|
62
66
|
//# sourceMappingURL=ExpoMapboxNavigation.types.d.ts.map
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExpoMapboxNavigation.types.d.ts","sourceRoot":"","sources":["../src/ExpoMapboxNavigation.types.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,SAAS,EAAE,SAAS,EAAE,MAAM,cAAc,CAAC;AAEpD,KAAK,aAAa,GAAG;IACnB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;IACzB,iBAAiB,EAAE,MAAM,CAAC;IAC1B,gBAAgB,EAAE,MAAM,CAAC;CAC1B,CAAC;AAEF,MAAM,MAAM,6BAA6B,GAAG;IAC1C,WAAW,EAAE,KAAK,CAAC;QAAE,QAAQ,EAAE,MAAM,CAAC;QAAC,SAAS,EAAE,MAAM,CAAA;KAAE,CAAC,CAAC;IAC5D,eAAe,CAAC,EAAE,MAAM,EAAE,CAAC;IAC3B,mBAAmB,CAAC,EAAE,OAAO,CAAC;IAC9B,MAAM,CAAC,EAAE,MAAM,CAAC;IAChB,YAAY,CAAC,EAAE,MAAM,CAAC;IACtB,gBAAgB,CAAC,EAAE,MAAM,EAAE,CAAC;IAC5B,QAAQ,CAAC,EAAE,MAAM,CAAC;IAClB,IAAI,CAAC,EAAE,OAAO,CAAC;IACf,UAAU,CAAC,EAAE,MAAM,CAAC;IACpB,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,gBAAgB,CAAC,EAAE,MAAM,CAAC;IAC1B,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,kBAAkB,CAAC,EAAE,MAAM,CAAC;IAC5B,sBAAsB,CAAC,EAAE,CAAC,KAAK,EAAE;QAAE,WAAW,EAAE,aAAa,CAAA;KAAE,KAAK,IAAI,CAAC;IACzE,kBAAkB,CAAC,EAAE,MAAM,IAAI,CAAC;IAChC,iBAAiB,CAAC,EAAE,CAAC,KAAK,EAAE;QAC1B,WAAW,EAAE,aAAa,GAAG,SAAS,CAAC;KACxC,KAAK,IAAI,CAAC;IACX,yBAAyB,CAAC,EAAE,MAAM,IAAI,CAAC;IACvC,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,cAAc,CAAC,EAAE,MAAM,IAAI,CAAC;IAC5B,KAAK,CAAC,EAAE,SAAS,CAAC,SAAS,CAAC,CAAC;IAG7B,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IACpC,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAGjC,+BAA+B,CAAC,EAAE,MAAM,CAAC;IACzC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IAGnC,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,kCAAkC,CAAC,EAAE,MAAM,CAAC;IAC5C,sCAAsC,CAAC,EAAE,MAAM,CAAC;IAChD,gCAAgC,CAAC,EAAE,MAAM,CAAC;IAG1C,2BAA2B,CAAC,EAAE,MAAM,CAAC;IACrC,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAC/B,uBAAuB,CAAC,EAAE,MAAM,CAAC;IAGjC,yBAAyB,CAAC,EAAE,MAAM,CAAC;IACnC,mBAAmB,CAAC,EAAE,MAAM,CAAC;IAC7B,qBAAqB,CAAC,EAAE,MAAM,CAAC;IAG/B,4BAA4B,CAAC,EAAE,MAAM,CAAC;IACtC,8BAA8B,CAAC,EAAE,MAAM,CAAC;IACxC,wBAAwB,CAAC,EAAE,MAAM,CAAC;IAClC,0BAA0B,CAAC,EAAE,MAAM,CAAC;IAGpC,0BAA0B,CAAC,EAAE,MAAM,CAAC;
|
1
|
+
{"version":3,"file":"ExpoMapboxNavigation.types.d.ts","sourceRoot":"","sources":["../src/ExpoMapboxNavigation.types.ts"],"names":[],"mappings":"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"}
|
@@ -1 +1 @@
|
|
1
|
-
{"version":3,"file":"ExpoMapboxNavigation.types.js","sourceRoot":"","sources":["../src/ExpoMapboxNavigation.types.ts"],"names":[],"mappings":"","sourcesContent":["import { ViewStyle, StyleProp } from \"react-native\";\n\ntype ProgressEvent = {\n distanceRemaining: number;\n distanceTraveled: number;\n durationRemaining: number;\n fractionTraveled: number;\n};\n\nexport type ExpoMapboxNavigationViewProps = {\n coordinates: Array<{ latitude: number; longitude: number }>;\n waypointIndices?: number[];\n useRouteMatchingApi?: boolean;\n locale?: string;\n routeProfile?: string;\n routeExcludeList?: string[];\n mapStyle?: string;\n mute?: boolean;\n routeColor?: string;\n routeAlternateColor?: string;\n routeCasingColor?: string;\n routeAlternateCasingColor?: string;\n traversedRouteColor?: string;\n maneuverArrowColor?: string;\n onRouteProgressChanged?: (event: { nativeEvent: ProgressEvent }) => void;\n onCancelNavigation?: () => void;\n onWaypointArrival?: (event: {\n nativeEvent: ProgressEvent | undefined;\n }) => void;\n onFinalDestinationArrival?: () => void;\n onRouteChanged?: () => void;\n onUserOffRoute?: () => void;\n onRoutesLoaded?: () => void;\n style?: StyleProp<ViewStyle>;\n\n // Top Banner (1)\n topBannerBackgroundColor?: string;\n topBannerPrimaryTextColor?: string;\n topBannerSecondaryTextColor?: string;\n topBannerDistanceTextColor?: string;\n topBannerSeparatorColor?: string;\n\n // Information Stack (2)\n informationStackBackgroundColor?: string;\n informationStackTextColor?: string;\n\n // Bottom Banner (3)\n bottomBannerBackgroundColor?: string;\n bottomBannerTimeRemainingTextColor?: string;\n bottomBannerDistanceRemainingTextColor?: string;\n bottomBannerArrivalTimeTextColor?: string;\n\n // Resume Button (4)\n resumeButtonBackgroundColor?: string;\n resumeButtonTextColor?: string;\n resumeButtonBorderColor?: string;\n\n // Speed Limit View (5)\n speedLimitBackgroundColor?: string;\n speedLimitTextColor?: string;\n speedLimitBorderColor?: string;\n\n // Floating Stack (6)\n floatingStackBackgroundColor?: string;\n floatingButtonsBackgroundColor?: string;\n floatingButtonsTextColor?: string;\n floatingButtonsBorderColor?: string;\n\n // Way Name Label (8)\n wayNameViewBackgroundColor?: string;\n};\n"]}
|
1
|
+
{"version":3,"file":"ExpoMapboxNavigation.types.js","sourceRoot":"","sources":["../src/ExpoMapboxNavigation.types.ts"],"names":[],"mappings":"","sourcesContent":["import { ViewStyle, StyleProp } from \"react-native\";\n\ntype ProgressEvent = {\n distanceRemaining: number;\n distanceTraveled: number;\n durationRemaining: number;\n fractionTraveled: number;\n};\n\nexport type ExpoMapboxNavigationViewProps = {\n coordinates: Array<{ latitude: number; longitude: number }>;\n waypointIndices?: number[];\n useRouteMatchingApi?: boolean;\n locale?: string;\n routeProfile?: string;\n routeExcludeList?: string[];\n mapStyle?: string;\n mute?: boolean;\n routeColor?: string;\n routeAlternateColor?: string;\n routeCasingColor?: string;\n routeAlternateCasingColor?: string;\n traversedRouteColor?: string;\n maneuverArrowColor?: string;\n onRouteProgressChanged?: (event: { nativeEvent: ProgressEvent }) => void;\n onCancelNavigation?: () => void;\n onWaypointArrival?: (event: {\n nativeEvent: ProgressEvent | undefined;\n }) => void;\n onFinalDestinationArrival?: () => void;\n onRouteChanged?: () => void;\n onUserOffRoute?: () => void;\n onRoutesLoaded?: () => void;\n style?: StyleProp<ViewStyle>;\n\n // Top Banner (1)\n topBannerBackgroundColor?: string;\n topBannerPrimaryTextColor?: string;\n topBannerSecondaryTextColor?: string;\n topBannerDistanceTextColor?: string;\n topBannerSeparatorColor?: string;\n\n // Information Stack (2)\n informationStackBackgroundColor?: string;\n informationStackTextColor?: string;\n\n // Bottom Banner (3)\n bottomBannerBackgroundColor?: string;\n bottomBannerTimeRemainingTextColor?: string;\n bottomBannerDistanceRemainingTextColor?: string;\n bottomBannerArrivalTimeTextColor?: string;\n\n // Resume Button (4)\n resumeButtonBackgroundColor?: string;\n resumeButtonTextColor?: string;\n resumeButtonBorderColor?: string;\n\n // Speed Limit View (5)\n speedLimitBackgroundColor?: string;\n speedLimitTextColor?: string;\n speedLimitBorderColor?: string;\n\n // Floating Stack (6)\n floatingStackBackgroundColor?: string;\n floatingButtonsBackgroundColor?: string;\n floatingButtonsTextColor?: string;\n floatingButtonsBorderColor?: string;\n\n // Way Name Label (8)\n wayNameViewBackgroundColor?: string;\n\n // Maneuver View (Direction Arrow and Text)\n maneuverViewPrimaryColor?: string; // Main arrow color\n maneuverViewSecondaryColor?: string; // Secondary arrow color\n maneuverViewTextColor?: string; // Direction text color\n maneuverViewBackgroundColor?: string; // Background of the direction bar\n};\n"]}
|
@@ -23,6 +23,12 @@ class CustomDayStyle: StandardDayStyle {
|
|
23
23
|
var customFloatingButtonsBorderColor: UIColor?
|
24
24
|
var customFloatingButtonsTextColor: UIColor?
|
25
25
|
|
26
|
+
// New properties for maneuver view
|
27
|
+
var customManeuverViewPrimaryColor: UIColor?
|
28
|
+
var customManeuverViewSecondaryColor: UIColor?
|
29
|
+
var customManeuverViewTextColor: UIColor?
|
30
|
+
var customManeuverViewBackgroundColor: UIColor?
|
31
|
+
|
26
32
|
required init() {
|
27
33
|
super.init()
|
28
34
|
styleType = .day
|
@@ -108,5 +114,22 @@ class CustomDayStyle: StandardDayStyle {
|
|
108
114
|
// Set default values for floating buttons
|
109
115
|
FloatingButton.appearance(for: traitCollection).borderWidth = 1.0
|
110
116
|
FloatingButton.appearance(for: traitCollection).cornerRadius = 4.0
|
117
|
+
|
118
|
+
// Top Banner - Current Direction Bar (ManeuverView)
|
119
|
+
if let primaryColor = customManeuverViewPrimaryColor {
|
120
|
+
ManeuverView.appearance(for: traitCollection).primaryColor = primaryColor
|
121
|
+
}
|
122
|
+
if let secondaryColor = customManeuverViewSecondaryColor {
|
123
|
+
ManeuverView.appearance(for: traitCollection).secondaryColor = secondaryColor
|
124
|
+
}
|
125
|
+
|
126
|
+
// Current Direction Background and Text
|
127
|
+
if let bgColor = customManeuverViewBackgroundColor {
|
128
|
+
ManeuverView.appearance(for: traitCollection).backgroundColor = bgColor
|
129
|
+
}
|
130
|
+
if let textColor = customManeuverViewTextColor {
|
131
|
+
StepInstructionsView.appearance(for: traitCollection).primaryLabel.textColor = textColor
|
132
|
+
StepInstructionsView.appearance(for: traitCollection).secondaryLabel.textColor = textColor
|
133
|
+
}
|
111
134
|
}
|
112
135
|
}
|
@@ -209,6 +209,30 @@ public class ExpoMapboxNavigationModule: Module {
|
|
209
209
|
view.controller.setSpeedLimitBorderColor(hexColor: hexColor)
|
210
210
|
}
|
211
211
|
}
|
212
|
+
|
213
|
+
Prop("maneuverViewPrimaryColor") { (view: ExpoMapboxNavigationView, color: String?) in
|
214
|
+
if let hexColor = color {
|
215
|
+
view.controller.setManeuverViewPrimaryColor(hexColor: hexColor)
|
216
|
+
}
|
217
|
+
}
|
218
|
+
|
219
|
+
Prop("maneuverViewSecondaryColor") { (view: ExpoMapboxNavigationView, color: String?) in
|
220
|
+
if let hexColor = color {
|
221
|
+
view.controller.setManeuverViewSecondaryColor(hexColor: hexColor)
|
222
|
+
}
|
223
|
+
}
|
224
|
+
|
225
|
+
Prop("maneuverViewTextColor") { (view: ExpoMapboxNavigationView, color: String?) in
|
226
|
+
if let hexColor = color {
|
227
|
+
view.controller.setManeuverViewTextColor(hexColor: hexColor)
|
228
|
+
}
|
229
|
+
}
|
230
|
+
|
231
|
+
Prop("maneuverViewBackgroundColor") { (view: ExpoMapboxNavigationView, color: String?) in
|
232
|
+
if let hexColor = color {
|
233
|
+
view.controller.setManeuverViewBackgroundColor(hexColor: hexColor)
|
234
|
+
}
|
235
|
+
}
|
212
236
|
}
|
213
237
|
}
|
214
238
|
}
|
@@ -344,6 +344,26 @@ class ExpoMapboxNavigationViewController: UIViewController {
|
|
344
344
|
update()
|
345
345
|
}
|
346
346
|
|
347
|
+
func setManeuverViewPrimaryColor(hexColor: String) {
|
348
|
+
customDayStyle.customManeuverViewPrimaryColor = UIColor(hex: hexColor)
|
349
|
+
update()
|
350
|
+
}
|
351
|
+
|
352
|
+
func setManeuverViewSecondaryColor(hexColor: String) {
|
353
|
+
customDayStyle.customManeuverViewSecondaryColor = UIColor(hex: hexColor)
|
354
|
+
update()
|
355
|
+
}
|
356
|
+
|
357
|
+
func setManeuverViewTextColor(hexColor: String) {
|
358
|
+
customDayStyle.customManeuverViewTextColor = UIColor(hex: hexColor)
|
359
|
+
update()
|
360
|
+
}
|
361
|
+
|
362
|
+
func setManeuverViewBackgroundColor(hexColor: String) {
|
363
|
+
customDayStyle.customManeuverViewBackgroundColor = UIColor(hex: hexColor)
|
364
|
+
update()
|
365
|
+
}
|
366
|
+
|
347
367
|
func update(){
|
348
368
|
calculateRoutesTask?.cancel()
|
349
369
|
|
package/package.json
CHANGED
@@ -68,4 +68,10 @@ export type ExpoMapboxNavigationViewProps = {
|
|
68
68
|
|
69
69
|
// Way Name Label (8)
|
70
70
|
wayNameViewBackgroundColor?: string;
|
71
|
+
|
72
|
+
// Maneuver View (Direction Arrow and Text)
|
73
|
+
maneuverViewPrimaryColor?: string; // Main arrow color
|
74
|
+
maneuverViewSecondaryColor?: string; // Secondary arrow color
|
75
|
+
maneuverViewTextColor?: string; // Direction text color
|
76
|
+
maneuverViewBackgroundColor?: string; // Background of the direction bar
|
71
77
|
};
|