[ios] Add UI for avoiding steps

Signed-off-by: Yannik Bloscheck <git@yannikbloscheck.com>
This commit is contained in:
Yannik Bloscheck
2025-09-20 17:11:49 +02:00
committed by jeanbaptisteC
parent dd3b6faa42
commit 37a518cb9b
15 changed files with 329 additions and 3 deletions

View File

@@ -15,6 +15,7 @@ final class SettingsTemplateBuilder {
return [createUnpavedButton(options: options), return [createUnpavedButton(options: options),
createTollButton(options: options), createTollButton(options: options),
createFerryButton(options: options), createFerryButton(options: options),
createStepsButton(options: options),
createSpeedcamButton()] createSpeedcamButton()]
} }
@@ -73,6 +74,24 @@ final class SettingsTemplateBuilder {
return ferryButton return ferryButton
} }
private class func createStepsButton(options: RoutingOptions) -> CPGridButton {
var stepsIconName = "options.steps"
if options.avoidSteps { stepsIconName += ".slash" }
let configuration = UIImage.SymbolConfiguration(textStyle: .title1)
var image = UIImage(named: stepsIconName, in: nil, with: configuration)!
if #unavailable(iOS 26) {
image = image.withTintColor(.white, renderingMode: .alwaysTemplate)
image = UIImage(data: image.pngData()!)!.withRenderingMode(.alwaysTemplate)
}
let stepsButton = CPGridButton(titleVariants: [L("avoid_steps")], image: image) { _ in
options.avoidSteps = !options.avoidSteps
options.save()
CarPlayService.shared.updateRouteAfterChangingSettings()
CarPlayService.shared.popTemplate(animated: true)
}
return stepsButton
}
private class func createSpeedcamButton() -> CPGridButton { private class func createSpeedcamButton() -> CPGridButton {
var speedcamIconName = "options.speedcamera" var speedcamIconName = "options.speedcamera"
let isSpeedCamActivated = CarPlayService.shared.isSpeedCamActivated let isSpeedCamActivated = CarPlayService.shared.isSpeedCamActivated

View File

@@ -5,7 +5,8 @@ typedef NS_ENUM(NSInteger, MWMRoadType) {
MWMRoadTypeToll, MWMRoadTypeToll,
MWMRoadTypeDirty, MWMRoadTypeDirty,
MWMRoadTypeFerry, MWMRoadTypeFerry,
MWMRoadTypeMotorway MWMRoadTypeMotorway,
MWMRoadTypeSteps
}; };
typedef void (^MWMImageHeightBlock)(UIImage *, NSString *, NSString *); typedef void (^MWMImageHeightBlock)(UIImage *, NSString *, NSString *);

View File

@@ -598,6 +598,9 @@ char const *kRenderAltitudeImagesQueueLabel = "mapsme.mwmrouter.renderAltitudeIm
case MWMRoadTypeMotorway: case MWMRoadTypeMotorway:
options.avoidMotorway = YES; options.avoidMotorway = YES;
break; break;
case MWMRoadTypeSteps:
options.avoidSteps = YES;
break;
} }
[options save]; [options save];
[self rebuildWithBestRouter:YES]; [self rebuildWithBestRouter:YES];

View File

@@ -9,6 +9,7 @@ NS_SWIFT_NAME(RoutingOptions)
@property(nonatomic) BOOL avoidDirty; @property(nonatomic) BOOL avoidDirty;
@property(nonatomic) BOOL avoidFerry; @property(nonatomic) BOOL avoidFerry;
@property(nonatomic) BOOL avoidMotorway; @property(nonatomic) BOOL avoidMotorway;
@property(nonatomic) BOOL avoidSteps;
@property(nonatomic, readonly) BOOL hasOptions; @property(nonatomic, readonly) BOOL hasOptions;
- (void)save; - (void)save;

View File

@@ -51,8 +51,16 @@
[self setOption:(routing::RoutingOptions::Road::Motorway) enabled:avoid]; [self setOption:(routing::RoutingOptions::Road::Motorway) enabled:avoid];
} }
- (BOOL)avoidSteps {
return _options.Has(routing::RoutingOptions::Road::Steps);
}
- (void)setAvoidSteps:(BOOL)avoid {
[self setOption:(routing::RoutingOptions::Road::Steps) enabled:avoid];
}
- (BOOL)hasOptions { - (BOOL)hasOptions {
return self.avoidToll || self.avoidDirty || self.avoidFerry || self.avoidMotorway; return self.avoidToll || self.avoidDirty || self.avoidFerry || self.avoidMotorway || self.avoidSteps;
} }
- (void)save { - (void)save {
@@ -73,7 +81,7 @@
} }
MWMRoutingOptions *another = (MWMRoutingOptions *)object; MWMRoutingOptions *another = (MWMRoutingOptions *)object;
return another.avoidToll == self.avoidToll && another.avoidDirty == self.avoidDirty && return another.avoidToll == self.avoidToll && another.avoidDirty == self.avoidDirty &&
another.avoidFerry == self.avoidFerry && another.avoidMotorway == self.avoidMotorway; another.avoidFerry == self.avoidFerry && another.avoidMotorway == self.avoidMotorway && another.avoidSteps == self.avoidSteps;
} }
@end @end

View File

@@ -0,0 +1,12 @@
{
"info" : {
"author" : "xcode",
"version" : 1
},
"symbols" : [
{
"filename" : "options.steps.slash.svg",
"idiom" : "universal"
}
]
}

View File

@@ -0,0 +1,121 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--Generator: Apple Native CoreSVG 341-->
<!DOCTYPE svg
PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 3300 2200">
<!--glyph: "", point size: 100.0, font version: "21.0d6e2", template writer version: "138.0.0"-->
<style>.defaults {-sfsymbols-variable-value-mode:color;-sfsymbols-draw-reverses-motion-groups:true}
.monochrome-0 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:-551460830a5ddad 2e79d0d08048ae5 _enclosure.stroke circle figure.stairs.circle}
.monochrome-1 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:-551460830a5ddad 2e79d0d08048ae5 figure.stairs.circle}
.monochrome-2 {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:-551460830a5ddad _slash}
.monochrome-3 {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:-551460830a5ddad _slash}
.multicolor-0:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:-551460830a5ddad 2e79d0d08048ae5 _enclosure.stroke circle figure.stairs.circle}
.multicolor-1:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:-551460830a5ddad 2e79d0d08048ae5 figure.stairs.circle}
.multicolor-2:tintColor {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:-551460830a5ddad _slash}
.multicolor-3:tintColor {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:-551460830a5ddad _slash}
.hierarchical-0:secondary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:-551460830a5ddad 2e79d0d08048ae5 _enclosure.stroke circle figure.stairs.circle}
.hierarchical-1:secondary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:-551460830a5ddad 2e79d0d08048ae5 figure.stairs.circle}
.hierarchical-2:primary {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:-551460830a5ddad _slash}
.hierarchical-3:primary {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:-551460830a5ddad _slash}
.SFSymbolsPreviewWireframe {fill:none;opacity:1.0;stroke:black;stroke-width:0.5}
</style>
<g id="Notes">
<rect height="2200" id="artboard" style="fill:white;opacity:1" width="3300" x="0" y="0"/>
<line style="fill:none;stroke:black;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="292" y2="292"/>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 263 322)">Weight/Scale Variations</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 559.711 322)">Ultralight</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 856.422 322)">Thin</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 1153.13 322)">Light</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 1449.84 322)">Regular</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 1746.56 322)">Medium</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2043.27 322)">Semibold</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2339.98 322)">Bold</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2636.69 322)">Heavy</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2933.4 322)">Black</text>
<line style="fill:none;stroke:black;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1903" y2="1903"/>
<g transform="matrix(0.2 0 0 0.2 263 1933)">
<path d="m46.2402 4.15039c21.7773 0 39.4531-17.627 39.4531-39.4043s-17.6758-39.4043-39.4531-39.4043c-21.7285 0-39.4043 17.627-39.4043 39.4043s17.6758 39.4043 39.4043 39.4043Zm0-7.42188c-17.6758 0-31.9336-14.3066-31.9336-31.9824s14.2578-31.9824 31.9336-31.9824 31.9824 14.3066 31.9824 31.9824-14.3066 31.9824-31.9824 31.9824Zm3.61328-17.7734v-28.4668c0-2.24609-1.46484-3.75977-3.71094-3.75977-2.14844 0-3.61328 1.51367-3.61328 3.75977v28.4668c0 2.19727 1.46484 3.71094 3.61328 3.71094 2.24609 0 3.71094-1.51367 3.71094-3.71094Zm-17.8223-10.5957h28.418c2.19727 0 3.71094-1.46484 3.71094-3.61328 0-2.19727-1.51367-3.71094-3.71094-3.71094h-28.418c-2.24609 0-3.75977 1.51367-3.75977 3.71094 0 2.14844 1.51367 3.61328 3.75977 3.61328Z"/>
</g>
<g transform="matrix(0.2 0 0 0.2 281.506 1933)">
<path d="m58.5449 14.5508c27.4902 0 49.8047-22.3145 49.8047-49.8047s-22.3145-49.8047-49.8047-49.8047-49.8047 22.3145-49.8047 49.8047 22.3145 49.8047 49.8047 49.8047Zm0-8.30078c-22.9492 0-41.5039-18.5547-41.5039-41.5039s18.5547-41.5039 41.5039-41.5039 41.5039 18.5547 41.5039 41.5039-18.5547 41.5039-41.5039 41.5039Zm4.05273-23.0957v-36.9141c0-2.49023-1.70898-4.19922-4.15039-4.19922-2.39258 0-4.05273 1.70898-4.05273 4.19922v36.9141c0 2.44141 1.66016 4.15039 4.05273 4.15039 2.44141 0 4.15039-1.66016 4.15039-4.15039Zm-22.5586-14.4043h36.9629c2.44141 0 4.15039-1.61133 4.15039-4.00391 0-2.44141-1.70898-4.15039-4.15039-4.15039h-36.9629c-2.49023 0-4.15039 1.70898-4.15039 4.15039 0 2.39258 1.66016 4.00391 4.15039 4.00391Z"/>
</g>
<g transform="matrix(0.2 0 0 0.2 304.924 1933)">
<path d="m74.8535 28.3203c35.1074 0 63.623-28.4668 63.623-63.5742s-28.5156-63.623-63.623-63.623-63.5742 28.5156-63.5742 63.623 28.4668 63.5742 63.5742 63.5742Zm0-9.08203c-30.127 0-54.4922-24.3652-54.4922-54.4922s24.3652-54.4922 54.4922-54.4922 54.4922 24.3652 54.4922 54.4922-24.3652 54.4922-54.4922 54.4922Zm4.44336-30.3223v-48.4863c0-2.73438-1.85547-4.63867-4.54102-4.63867-2.58789 0-4.44336 1.9043-4.44336 4.63867v48.4863c0 2.68555 1.85547 4.58984 4.44336 4.58984 2.68555 0 4.54102-1.85547 4.54102-4.58984Zm-28.7109-19.7754h48.4863c2.68555 0 4.58984-1.80664 4.58984-4.39453 0-2.73438-1.85547-4.58984-4.58984-4.58984h-48.4863c-2.73438 0-4.58984 1.85547-4.58984 4.58984 0 2.58789 1.85547 4.39453 4.58984 4.39453Z"/>
</g>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 263 1953)">Design Variations</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1971)">Symbols are supported in up to nine weights and three scales.</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1989)">For optimal layout with text and other symbols, vertically align</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 2007)">symbols with the adjacent text.</text>
<line style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="776" x2="776" y1="1919" y2="1933"/>
<g transform="matrix(0.2 0 0 0.2 776 1933)">
<path d="m16.5527 0.78125c2.58789 0 3.85742-0.976562 4.78516-3.71094l20.5566-57.5195h0.244141l20.6055 57.5195c0.927734 2.73438 2.19727 3.71094 4.73633 3.71094 2.58789 0 4.24805-1.5625 4.24805-4.00391 0-0.830078-0.146484-1.61133-0.537109-2.63672l-22.9004-60.9863c-1.12305-2.97852-3.125-4.49219-6.25-4.49219-3.02734 0-5.07812 1.46484-6.15234 4.44336l-22.9004 61.084c-0.390625 1.02539-0.537109 1.80664-0.537109 2.63672 0 2.44141 1.5625 3.95508 4.10156 3.95508Zm10.2051-20.9473h30.6641c2.00195 0 3.66211-1.66016 3.66211-3.66211 0-2.05078-1.66016-3.66211-3.66211-3.66211h-30.6641c-2.00195 0-3.66211 1.61133-3.66211 3.66211 0 2.00195 1.66016 3.66211 3.66211 3.66211Z"/>
</g>
<line style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="792.836" x2="792.836" y1="1919" y2="1933"/>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 776 1953)">Margins</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 1971)">Leading and trailing margins on the left and right side of each symbol</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 1989)">can be adjusted by modifying the x-location of the margin guidelines.</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 2007)">Modifications are automatically applied proportionally to all</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 2025)">scales and weights.</text>
<g transform="matrix(0.2 0 0 0.2 1289 1933)">
<path d="m14.209 13.1348 7.86133 7.86133c4.29688 4.39453 9.32617 4.10156 13.8672-1.02539l60.6934-68.2129-4.88281-4.88281-60.2539 67.6758c-1.80664 1.95312-3.4668 2.44141-5.81055 0.0976562l-5.17578-5.12695c-2.29492-2.29492-1.80664-3.95508 0.195312-5.81055l67.4805-62.1582-4.88281-4.83398-68.0664 62.5977c-4.98047 4.58984-5.32227 9.47266-1.02539 13.8184Zm44.873-97.4609c-2.05078 2.00195-2.24609 4.88281-1.07422 6.78711 1.12305 1.80664 3.4668 3.02734 6.5918 2.24609 5.85938-1.66016 12.5977-2.39258 18.8965 0.927734l-2.68555 7.12891c-1.61133 4.00391-0.732422 6.88477 1.70898 9.42383l10.2539 10.3027c2.34375 2.39258 4.54102 2.44141 7.08008 1.95312l4.44336-0.732422 2.58789 2.53906-0.195312 2.24609c-0.0976562 2.29492 0.537109 4.29688 2.7832 6.49414l3.36914 3.32031c2.29492 2.29492 5.51758 2.49023 7.8125 0.195312l12.9883-13.0371c2.29492-2.34375 2.14844-5.37109-0.195312-7.66602l-3.41797-3.41797c-2.19727-2.19727-4.05273-3.02734-6.34766-2.88086l-2.34375 0.244141-2.44141-2.44141 1.02539-4.6875c0.634766-2.73438-0.244141-4.98047-2.88086-7.61719l-11.2793-11.1816c-12.9395-12.8418-35.5957-11.0352-46.6797-0.146484Zm7.08008 2.05078c8.78906-6.39648 25.9766-5.66406 33.6914 1.95312l12.3047 12.207c1.02539 1.02539 1.2207 1.80664 0.927734 3.32031l-1.46484 6.64062 6.73828 6.68945 4.39453-0.244141c1.12305-0.0488281 1.51367 0.0488281 2.34375 0.878906l2.53906 2.49023-10.8398 10.8398-2.49023-2.49023c-0.830078-0.878906-0.976562-1.2207-0.927734-2.39258l0.292969-4.3457-6.68945-6.73828-6.83594 1.17188c-1.41602 0.292969-2.05078 0.195312-3.17383-0.878906l-8.93555-8.88672c-1.07422-1.02539-1.17188-1.70898-0.488281-3.36914l4.58984-11.4746c-6.10352-6.34766-17.041-7.51953-25.5859-4.58984-0.683594 0.244141-0.927734-0.390625-0.390625-0.78125Z"/>
</g>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 1289 1953)">Exporting</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 1289 1971)">Symbols should be outlined when exporting to ensure the</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 1289 1989)">design is preserved when submitting to Xcode.</text>
<text id="template-version" style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1933)">Template v.7.0</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1951)">Requires Xcode 17 or greater</text>
<text id="descriptive-name" style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1969)">Generated from </text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1987)">Typeset at 100.0 points</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 726)">Small</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1156)">Medium</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1586)">Large</text>
</g>
<g id="Guides">
<g id="H-reference" style="fill:#27AAE1;stroke:none;" transform="matrix(1 0 0 1 339 696)">
<path d="M0.993654 0L3.63775 0L29.3281-67.1323L30.0303-67.1323L30.0303-70.459L28.1226-70.459ZM11.6885-24.4799L46.9815-24.4799L46.2315-26.7285L12.4385-26.7285ZM55.1196 0L57.7637 0L30.6382-70.459L29.4326-70.459L29.4326-67.1323Z"/>
</g>
<line id="Baseline-S" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="696" y2="696"/>
<line id="Capline-S" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="625.541" y2="625.541"/>
<g id="H-reference" style="fill:#27AAE1;stroke:none;" transform="matrix(1 0 0 1 339 1126)">
<path d="M0.993654 0L3.63775 0L29.3281-67.1323L30.0303-67.1323L30.0303-70.459L28.1226-70.459ZM11.6885-24.4799L46.9815-24.4799L46.2315-26.7285L12.4385-26.7285ZM55.1196 0L57.7637 0L30.6382-70.459L29.4326-70.459L29.4326-67.1323Z"/>
</g>
<line id="Baseline-M" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1126" y2="1126"/>
<line id="Capline-M" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1055.54" y2="1055.54"/>
<g id="H-reference" style="fill:#27AAE1;stroke:none;" transform="matrix(1 0 0 1 339 1556)">
<path d="M0.993654 0L3.63775 0L29.3281-67.1323L30.0303-67.1323L30.0303-70.459L28.1226-70.459ZM11.6885-24.4799L46.9815-24.4799L46.2315-26.7285L12.4385-26.7285ZM55.1196 0L57.7637 0L30.6382-70.459L29.4326-70.459L29.4326-67.1323Z"/>
</g>
<line id="Baseline-L" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1556" y2="1556"/>
<line id="Capline-L" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1485.54" y2="1485.54"/>
<line id="right-margin-Black-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="2982.23" x2="2982.23" y1="600.785" y2="720.121"/>
<line id="left-margin-Black-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="2884.57" x2="2884.57" y1="600.785" y2="720.121"/>
<line id="right-margin-Regular-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1496.11" x2="1496.11" y1="600.785" y2="720.121"/>
<line id="left-margin-Regular-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1403.58" x2="1403.58" y1="600.785" y2="720.121"/>
<line id="right-margin-Ultralight-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="603.773" x2="603.773" y1="600.785" y2="720.121"/>
<line id="left-margin-Ultralight-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="515.649" x2="515.649" y1="600.785" y2="720.121"/>
</g>
<g id="Symbols">
<g id="Black-S" transform="matrix(1 0 0 1 2884.57 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M48.8281 6.73828C72.0215 6.73828 90.8203-12.0605 90.8203-35.2539C90.8203-58.4473 72.0215-77.2461 48.8281-77.2461C25.6348-77.2461 6.83594-58.4473 6.83594-35.2539C6.83594-12.0605 25.6348 6.73828 48.8281 6.73828ZM48.8281-7.42188C33.4473-7.42188 20.9961-19.873 20.9961-35.2539C20.9961-50.6348 33.4473-63.0859 48.8281-63.0859C64.209-63.0859 76.6602-50.6348 76.6602-35.2539C76.6602-19.873 64.209-7.42188 48.8281-7.42188Z" data-clipstroke-keyframes="0 4 0 0.49909952 1.5010293 0 0.24858466 0.25051486 1.7494847 0 0.49588814 0.0032113728 1.9966589 0 0.75064266 0.74845684 1.2515438 0 1 0.49909952 1.5010293"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:secondary SFSymbolsPreviewWireframe" d="M48.8281-50.8789C51.2207-50.8789 53.125-52.832 53.125-55.1758C53.125-57.5195 51.2207-59.4727 48.8281-59.4727C46.4844-59.4727 44.5312-57.5195 44.5312-55.1758C44.5312-52.832 46.4844-50.8789 48.8281-50.8789ZM51.0742-20.9961C51.9043-20.8008 53.3691-21.0449 53.7598-22.5098L56.3965-31.1035C56.6895-32.2266 56.2012-33.4473 55.0293-33.8867L48.291-36.1816L49.0234-41.1133C49.0234-41.2598 49.2188-41.3086 49.3164-41.1133L50.4883-38.8672C50.8789-38.0859 51.6113-37.6465 52.4902-37.6465L59.668-37.6465C60.8398-37.6465 61.9141-38.623 61.9141-39.8926C61.9141-41.1133 60.8887-42.0898 59.668-42.0898L53.8574-42.0898L51.6113-46.5332C50.8301-48.0957 49.3652-49.2676 47.5586-49.6094L46.5332-49.8047C44.5801-50.1953 42.9688-49.7559 41.748-49.0234L35.9375-45.3613C35.3027-44.9707 34.9121-44.2383 34.9121-43.5059L34.9121-36.2793C34.9121-35.0586 35.8887-34.0332 37.1094-34.0332C38.3301-34.0332 39.3555-35.0586 39.3555-36.2793L39.3555-42.2363L41.0645-43.3105C41.2109-43.4082 41.4062-43.3105 41.4062-43.1152L40.625-37.1582C40.2832-34.4727 41.2109-32.5195 44.3848-31.7383L51.4648-30.0781L49.5117-23.7305C49.1699-22.6562 49.6582-21.3867 51.0742-20.9961ZM37.7441-14.5996C38.5254-14.0625 39.9414-14.0625 40.7715-15.2344L46.0938-23.1445C46.3867-23.5352 46.5332-23.9258 46.582-24.4141L47.2168-28.9062L43.8965-29.6875C43.3594-29.7852 42.9199-29.9316 42.4805-30.127L42.1387-25.2441L37.1094-17.6758C36.377-16.6504 36.6699-15.2832 37.7441-14.5996ZM46.2891-11.1816L51.8555-11.1816C52.7832-11.1816 53.6133-11.9629 53.6133-12.9395L53.6133-15.6738L57.4219-15.6738C58.3496-15.6738 59.1309-16.4062 59.1309-17.3828L59.1309-20.1172L62.9883-20.1172C63.9648-20.1172 64.7461-20.8984 64.7461-21.8262L64.7461-24.6094L68.6035-24.6094C69.5312-24.6094 70.3125-25.3906 70.3125-26.3184C70.3125-27.2461 69.5312-28.0273 68.6035-28.0273L62.9883-28.0273C62.0117-28.0273 61.3281-27.1973 61.3281-26.3184L61.3281-23.584L57.4219-23.584C56.4453-23.584 55.7129-22.7539 55.7129-21.8262L55.7129-19.0918L51.8555-19.0918C50.9277-19.0918 50.1465-18.3105 50.1465-17.3828L50.1465-14.5996L46.2891-14.5996C45.3125-14.5996 44.5801-13.8672 44.5801-12.9395C44.5801-12.0117 45.3125-11.1816 46.2891-11.1816Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M92.8018-4.48836C96.4529-0.837264 96.4529 5.09118 92.8018 8.74227C89.1507 12.3934 83.2222 12.3934 79.5711 8.74227L4.85823-65.9706C1.20714-69.6217 1.20714-75.5502 4.85823-79.2013C8.50933-82.8524 14.4378-82.8524 18.0889-79.2013Z" data-clipstroke-keyframes="0 0 0 0.49990463 0.6089134 0 1 0 0.10891342"/>
<path class="monochrome-3 multicolor-3:tintColor hierarchical-3:primary SFSymbolsPreviewWireframe" d="M88.6517-0.338247C90.0122 1.02234 90.0122 3.23158 88.6517 4.59217C87.2911 5.95275 85.0818 5.95275 83.7212 4.59217L9.00834-70.1207C7.64776-71.4813 7.64776-73.6906 9.00834-75.0511C10.3689-76.4117 12.5782-76.4117 13.9388-75.0511Z" data-clipstroke-keyframes="0 0 0 0.49988937 0.54707384 0 1 0 0.04707384"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1403.58 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M46.2402 4.15039C68.0176 4.15039 85.6934-13.4766 85.6934-35.2539C85.6934-57.0312 68.0176-74.6582 46.2402-74.6582C24.5117-74.6582 6.83594-57.0312 6.83594-35.2539C6.83594-13.4766 24.5117 4.15039 46.2402 4.15039ZM46.2402-3.27148C28.5645-3.27148 14.3066-17.5781 14.3066-35.2539C14.3066-52.9297 28.5645-67.2363 46.2402-67.2363C63.916-67.2363 78.2227-52.9297 78.2227-35.2539C78.2227-17.5781 63.916-3.27148 46.2402-3.27148Z" data-clipstroke-keyframes="0 4 0 0.49914482 1.5008681 0 0.24828531 0.2508595 1.7491462 0 0.4958041 0.0033407207 1.9966576 0 0.7506014 0.74854344 1.2514637 0 1 0.49914482 1.5008681"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:secondary SFSymbolsPreviewWireframe" d="M46.1914-53.6133C48.7305-53.6133 50.7812-55.6641 50.7812-58.2031C50.7812-60.7422 48.7305-62.8418 46.1914-62.8418C43.6523-62.8418 41.5527-60.7422 41.5527-58.2031C41.5527-55.6641 43.6523-53.6133 46.1914-53.6133ZM48.9258-18.9453C49.7559-18.7012 51.123-18.9941 51.5625-20.3613L54.5898-30.5176C54.9316-31.6406 54.4434-32.7637 53.2715-33.1543L44.9707-36.0352L45.9961-43.1152C46.0449-43.5059 46.6309-43.6035 46.7773-43.2129L48.584-39.7949C48.9746-39.0137 49.6582-38.623 50.4395-38.623L58.9355-38.623C60.1074-38.623 61.084-39.5508 61.084-40.7227C61.084-41.8945 60.1074-42.8223 58.9355-42.8223L51.7578-42.8223L49.0234-48.3398C48.0957-50.0977 46.5332-51.3184 44.5312-51.709L43.3594-51.9531C41.2109-52.3926 39.4531-51.9043 38.0859-51.0742L31.2012-46.7773C30.6152-46.3867 30.2246-45.7031 30.2246-44.9707L30.2246-36.4746C30.2246-35.3027 31.2012-34.3262 32.373-34.3262C33.5449-34.3262 34.4727-35.3027 34.4727-36.4746L34.4727-43.7988L37.4512-45.6543C37.6953-45.8008 38.0371-45.6543 37.9883-45.3125L37.0117-37.5C36.6211-34.4727 37.5977-32.4219 41.0645-31.6406L49.9023-29.541L47.4609-21.5332C47.168-20.459 47.6074-19.2871 48.9258-18.9453ZM33.3496-11.2793C34.082-10.791 35.4492-10.791 36.2305-11.9141L42.4805-21.2402C42.7734-21.6797 42.9688-22.0215 43.0176-22.5586L43.8965-28.7598L40.5762-29.541C40.0879-29.6875 39.6484-29.834 39.209-29.9805L38.7695-23.291L32.7148-14.209C32.0801-13.2324 32.3242-11.9141 33.3496-11.2793ZM42.041-7.71484L48.6816-7.71484C49.5117-7.71484 50.1465-8.44727 50.1465-9.17969L50.1465-12.9883L55.3711-12.9883C56.0547-12.9883 56.7383-13.6719 56.7383-14.4043L56.7383-18.2617L61.9629-18.2617C62.8418-18.2617 63.3789-18.9453 63.3789-19.6777L63.3789-23.5352L68.5547-23.5352C69.3359-23.5352 70.0195-24.2188 70.0195-24.9512C70.0195-25.7324 69.3848-26.3672 68.5547-26.3672L61.9629-26.3672C61.1328-26.3672 60.5957-25.7324 60.5957-24.9512L60.5957-21.0938L55.3711-21.0938C54.4922-21.0938 53.9062-20.459 53.9062-19.6777L53.9062-15.8203L48.6816-15.8203C47.9492-15.8203 47.2656-15.1855 47.2656-14.4043L47.2656-10.5469L42.041-10.5469C41.3086-10.5469 40.625-9.91211 40.625-9.17969C40.625-8.44727 41.2598-7.71484 42.041-7.71484Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M87.3183-6.06714C90.5998-2.78573 90.5998 2.54245 87.3183 5.82386C84.0369 9.10527 78.7088 9.10527 75.4274 5.82386L5.21165-64.3918C1.93024-67.6733 1.93024-73.0014 5.21165-76.2828C8.49306-79.5643 13.8212-79.5643 17.1026-76.2828Z" data-clipstroke-keyframes="0 0 0 0.50010824 0.6049547 0 1 0 0.10495472"/>
<path class="monochrome-3 multicolor-3:tintColor hierarchical-3:primary SFSymbolsPreviewWireframe" d="M83.8519-2.60066C85.2201-1.23245 85.2201 0.98917 83.8519 2.35738C82.4837 3.72558 80.262 3.72558 78.8938 2.35738L8.67813-67.8583C7.30992-69.2265 7.30992-71.4482 8.67813-72.8164C10.0463-74.1846 12.268-74.1846 13.6362-72.8164Z" data-clipstroke-keyframes="0 0 0 0.50020504 0.5497174 0 1 0 0.049717426"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 515.649 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M44.0606 1.97072C64.6118 1.97072 81.2886-14.7026 81.2886-35.2539C81.2886-55.8052 64.6118-72.4785 44.0606-72.4785C23.5127-72.4785 6.83594-55.8052 6.83594-35.2539C6.83594-14.7026 23.5127 1.97072 44.0606 1.97072ZM44.0606-0.274438C24.7046-0.274438 9.0391-15.898 9.0391-35.2539C9.0391-54.6099 24.7046-70.2334 44.0606-70.2334C63.4165-70.2334 79.04-54.6099 79.04-35.2539C79.04-15.898 63.4165-0.274438 44.0606-0.274438Z" data-clipstroke-keyframes="0 4 0 0.49911225 1.5011581 0 0.24859133 0.2505209 1.7495484 0 0.49577397 0.0033382904 1.9966562 0 0.7506487 0.7484636 1.251609 0 1 0.49911225 1.5011581"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:secondary SFSymbolsPreviewWireframe" d="M44.0571-53.7041C46.5962-53.7041 48.647-55.7549 48.647-58.2939C48.647-60.833 46.5962-62.8872 44.0571-62.8872C41.5181-62.8872 39.4639-60.833 39.4639-58.2939C39.4639-55.7549 41.5181-53.7041 44.0571-53.7041ZM46.7915-19.127C47.6216-18.8828 48.9888-19.1758 49.3828-20.543L52.4556-30.6992C52.7974-31.7769 52.2637-32.8999 51.1372-33.2905L42.8364-36.1714L43.8618-43.2061C43.9107-43.6421 44.4512-43.7397 44.6431-43.3491L46.4497-39.8857C46.8403-39.1499 47.5239-38.7593 48.3052-38.7593L56.8013-38.7593C57.9732-38.7593 58.9043-39.6416 58.9043-40.8589C58.9043-41.9854 57.9732-42.9585 56.8013-42.9585L49.6236-42.9585L46.8892-48.4307C46.0069-50.1885 44.3989-51.5454 42.4424-51.8452L41.2251-52.0439C39.0767-52.3926 37.3189-51.9951 35.9517-51.165L29.1123-46.9136C28.5264-46.5229 28.1358-45.8394 28.1358-45.0615L28.1358-36.6108C28.1358-35.439 29.1123-34.4624 30.2842-34.4624C31.4561-34.4624 32.3838-35.439 32.3838-36.6108L32.3838-43.9351L35.3623-45.7905C35.6065-45.937 35.9483-45.7451 35.8994-45.4033L34.8775-37.6362C34.4868-34.6089 35.5088-32.5581 38.9302-31.7769L47.7681-29.7227L45.3721-21.7148C45.0337-20.6406 45.4278-19.4687 46.7915-19.127ZM31.2153-11.4609C31.9932-10.9727 33.3604-10.9727 34.1416-12.0957L40.3916-21.3765C40.6846-21.8159 40.8799-22.1577 40.9287-22.6948L41.7622-28.9414L38.4873-29.7227C37.999-29.8237 37.5142-29.9702 37.1201-30.1167L36.6807-23.4727L30.626-14.436C29.9912-13.4595 30.19-12.1411 31.2153-11.4609ZM38.0904-8.57763L45.7754-8.57763C46.1514-8.57763 46.5137-8.94677 46.5137-9.36133L46.5137-13.8057L53.4185-13.8057C53.7842-13.8057 54.1953-14.2168 54.1953-14.5859L54.1953-19.0791L61.1455-19.0791C61.5703-19.0791 61.8804-19.4902 61.8804-19.8594L61.8804-24.3525L67.6919-24.3525C68.0645-24.3525 68.4302-24.7183 68.4302-25.1328C68.4302-25.5054 68.1133-25.9131 67.6919-25.9131L61.1455-25.9131C60.6787-25.9131 60.3687-25.5054 60.3687-25.1328L60.3687-20.6397L53.4185-20.6397C52.9937-20.6397 52.6348-20.2773 52.6348-19.8594L52.6348-15.3662L45.7754-15.3662C45.4063-15.3662 44.9951-15.0493 44.9951-14.5859L44.9951-10.1382L38.0904-10.1382C37.6304-10.1382 37.3101-9.73047 37.3101-9.36133C37.3101-8.94677 37.6724-8.57763 38.0904-8.57763Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M81.7482-3.06064C83.2708-1.53808 83.2708 0.934172 81.7482 2.45673C80.2257 3.97929 77.7534 3.97929 76.2309 2.45673L6.37578-67.3983C4.85322-68.9209 4.85322-71.3932 6.37578-72.9157C7.89834-74.4383 10.3706-74.4383 11.8931-72.9157Z" data-clipstroke-keyframes="0 0 0 0.5001135 0.5550747 0 1 0 0.05507469"/>
<path class="monochrome-3 multicolor-3:tintColor hierarchical-3:primary SFSymbolsPreviewWireframe" d="M79.6973-1.00975C80.088-0.619106 80.088 0.0152006 79.6973 0.405845C79.3067 0.796489 78.6724 0.796489 78.2817 0.405845L8.42666-69.4492C8.03602-69.8399 8.03602-70.4742 8.42666-70.8648C8.81731-71.2555 9.45161-71.2555 9.84226-70.8648Z" data-clipstroke-keyframes="0 0 0 0.50012684 0.51529884 0 1 0 0.015298843"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 26 KiB

View File

@@ -0,0 +1,12 @@
{
"info" : {
"author" : "xcode",
"version" : 1
},
"symbols" : [
{
"filename" : "options.steps.svg",
"idiom" : "universal"
}
]
}

View File

@@ -0,0 +1,109 @@
<?xml version="1.0" encoding="UTF-8"?>
<!--Generator: Apple Native CoreSVG 341-->
<!DOCTYPE svg
PUBLIC "-//W3C//DTD SVG 1.1//EN"
"http://www.w3.org/Graphics/SVG/1.1/DTD/svg11.dtd">
<svg version="1.1" xmlns="http://www.w3.org/2000/svg" xmlns:xlink="http://www.w3.org/1999/xlink" viewBox="0 0 3300 2200">
<!--glyph: "", point size: 100.0, font version: "21.0d6e2", template writer version: "138.0.0"-->
<style>.defaults {-sfsymbols-variable-value-mode:draw;-sfsymbols-draw-reverses-motion-groups:true}
.monochrome-0 {-sfsymbols-variable-draw:0 1;-sfsymbols-motion-group:1;-sfsymbols-layer-tags:2e79d0d08048ae5 _enclosure.stroke circle figure.stairs.circle}
.monochrome-1 {-sfsymbols-motion-group:0;-sfsymbols-always-pulses:true;-sfsymbols-layer-tags:2e79d0d08048ae5 figure.stairs.circle}
.multicolor-0:tintColor {-sfsymbols-variable-draw:0 1;-sfsymbols-motion-group:1;-sfsymbols-layer-tags:2e79d0d08048ae5 _enclosure.stroke circle figure.stairs.circle}
.multicolor-1:tintColor {-sfsymbols-motion-group:0;-sfsymbols-always-pulses:true;-sfsymbols-layer-tags:2e79d0d08048ae5 figure.stairs.circle}
.hierarchical-0:secondary {-sfsymbols-variable-draw:0 1;-sfsymbols-motion-group:1;-sfsymbols-layer-tags:2e79d0d08048ae5 _enclosure.stroke circle figure.stairs.circle}
.hierarchical-1:primary {-sfsymbols-motion-group:0;-sfsymbols-always-pulses:true;-sfsymbols-layer-tags:2e79d0d08048ae5 figure.stairs.circle}
.SFSymbolsPreviewWireframe {fill:none;opacity:1.0;stroke:black;stroke-width:0.5}
</style>
<g id="Notes">
<rect height="2200" id="artboard" style="fill:white;opacity:1" width="3300" x="0" y="0"/>
<line style="fill:none;stroke:black;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="292" y2="292"/>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 263 322)">Weight/Scale Variations</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 559.711 322)">Ultralight</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 856.422 322)">Thin</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 1153.13 322)">Light</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 1449.84 322)">Regular</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 1746.56 322)">Medium</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2043.27 322)">Semibold</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2339.98 322)">Bold</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2636.69 322)">Heavy</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:middle;" transform="matrix(1 0 0 1 2933.4 322)">Black</text>
<line style="fill:none;stroke:black;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1903" y2="1903"/>
<g transform="matrix(0.2 0 0 0.2 263 1933)">
<path d="m46.2402 4.15039c21.7773 0 39.4531-17.627 39.4531-39.4043s-17.6758-39.4043-39.4531-39.4043c-21.7285 0-39.4043 17.627-39.4043 39.4043s17.6758 39.4043 39.4043 39.4043Zm0-7.42188c-17.6758 0-31.9336-14.3066-31.9336-31.9824s14.2578-31.9824 31.9336-31.9824 31.9824 14.3066 31.9824 31.9824-14.3066 31.9824-31.9824 31.9824Zm3.61328-17.7734v-28.4668c0-2.24609-1.46484-3.75977-3.71094-3.75977-2.14844 0-3.61328 1.51367-3.61328 3.75977v28.4668c0 2.19727 1.46484 3.71094 3.61328 3.71094 2.24609 0 3.71094-1.51367 3.71094-3.71094Zm-17.8223-10.5957h28.418c2.19727 0 3.71094-1.46484 3.71094-3.61328 0-2.19727-1.51367-3.71094-3.71094-3.71094h-28.418c-2.24609 0-3.75977 1.51367-3.75977 3.71094 0 2.14844 1.51367 3.61328 3.75977 3.61328Z"/>
</g>
<g transform="matrix(0.2 0 0 0.2 281.506 1933)">
<path d="m58.5449 14.5508c27.4902 0 49.8047-22.3145 49.8047-49.8047s-22.3145-49.8047-49.8047-49.8047-49.8047 22.3145-49.8047 49.8047 22.3145 49.8047 49.8047 49.8047Zm0-8.30078c-22.9492 0-41.5039-18.5547-41.5039-41.5039s18.5547-41.5039 41.5039-41.5039 41.5039 18.5547 41.5039 41.5039-18.5547 41.5039-41.5039 41.5039Zm4.05273-23.0957v-36.9141c0-2.49023-1.70898-4.19922-4.15039-4.19922-2.39258 0-4.05273 1.70898-4.05273 4.19922v36.9141c0 2.44141 1.66016 4.15039 4.05273 4.15039 2.44141 0 4.15039-1.66016 4.15039-4.15039Zm-22.5586-14.4043h36.9629c2.44141 0 4.15039-1.61133 4.15039-4.00391 0-2.44141-1.70898-4.15039-4.15039-4.15039h-36.9629c-2.49023 0-4.15039 1.70898-4.15039 4.15039 0 2.39258 1.66016 4.00391 4.15039 4.00391Z"/>
</g>
<g transform="matrix(0.2 0 0 0.2 304.924 1933)">
<path d="m74.8535 28.3203c35.1074 0 63.623-28.4668 63.623-63.5742s-28.5156-63.623-63.623-63.623-63.5742 28.5156-63.5742 63.623 28.4668 63.5742 63.5742 63.5742Zm0-9.08203c-30.127 0-54.4922-24.3652-54.4922-54.4922s24.3652-54.4922 54.4922-54.4922 54.4922 24.3652 54.4922 54.4922-24.3652 54.4922-54.4922 54.4922Zm4.44336-30.3223v-48.4863c0-2.73438-1.85547-4.63867-4.54102-4.63867-2.58789 0-4.44336 1.9043-4.44336 4.63867v48.4863c0 2.68555 1.85547 4.58984 4.44336 4.58984 2.68555 0 4.54102-1.85547 4.54102-4.58984Zm-28.7109-19.7754h48.4863c2.68555 0 4.58984-1.80664 4.58984-4.39453 0-2.73438-1.85547-4.58984-4.58984-4.58984h-48.4863c-2.73438 0-4.58984 1.85547-4.58984 4.58984 0 2.58789 1.85547 4.39453 4.58984 4.39453Z"/>
</g>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 263 1953)">Design Variations</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1971)">Symbols are supported in up to nine weights and three scales.</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1989)">For optimal layout with text and other symbols, vertically align</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 2007)">symbols with the adjacent text.</text>
<line style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="776" x2="776" y1="1919" y2="1933"/>
<g transform="matrix(0.2 0 0 0.2 776 1933)">
<path d="m16.5527 0.78125c2.58789 0 3.85742-0.976562 4.78516-3.71094l20.5566-57.5195h0.244141l20.6055 57.5195c0.927734 2.73438 2.19727 3.71094 4.73633 3.71094 2.58789 0 4.24805-1.5625 4.24805-4.00391 0-0.830078-0.146484-1.61133-0.537109-2.63672l-22.9004-60.9863c-1.12305-2.97852-3.125-4.49219-6.25-4.49219-3.02734 0-5.07812 1.46484-6.15234 4.44336l-22.9004 61.084c-0.390625 1.02539-0.537109 1.80664-0.537109 2.63672 0 2.44141 1.5625 3.95508 4.10156 3.95508Zm10.2051-20.9473h30.6641c2.00195 0 3.66211-1.66016 3.66211-3.66211 0-2.05078-1.66016-3.66211-3.66211-3.66211h-30.6641c-2.00195 0-3.66211 1.61133-3.66211 3.66211 0 2.00195 1.66016 3.66211 3.66211 3.66211Z"/>
</g>
<line style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="792.836" x2="792.836" y1="1919" y2="1933"/>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 776 1953)">Margins</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 1971)">Leading and trailing margins on the left and right side of each symbol</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 1989)">can be adjusted by modifying the x-location of the margin guidelines.</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 2007)">Modifications are automatically applied proportionally to all</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 776 2025)">scales and weights.</text>
<g transform="matrix(0.2 0 0 0.2 1289 1933)">
<path d="m14.209 13.1348 7.86133 7.86133c4.29688 4.39453 9.32617 4.10156 13.8672-1.02539l60.6934-68.2129-4.88281-4.88281-60.2539 67.6758c-1.80664 1.95312-3.4668 2.44141-5.81055 0.0976562l-5.17578-5.12695c-2.29492-2.29492-1.80664-3.95508 0.195312-5.81055l67.4805-62.1582-4.88281-4.83398-68.0664 62.5977c-4.98047 4.58984-5.32227 9.47266-1.02539 13.8184Zm44.873-97.4609c-2.05078 2.00195-2.24609 4.88281-1.07422 6.78711 1.12305 1.80664 3.4668 3.02734 6.5918 2.24609 5.85938-1.66016 12.5977-2.39258 18.8965 0.927734l-2.68555 7.12891c-1.61133 4.00391-0.732422 6.88477 1.70898 9.42383l10.2539 10.3027c2.34375 2.39258 4.54102 2.44141 7.08008 1.95312l4.44336-0.732422 2.58789 2.53906-0.195312 2.24609c-0.0976562 2.29492 0.537109 4.29688 2.7832 6.49414l3.36914 3.32031c2.29492 2.29492 5.51758 2.49023 7.8125 0.195312l12.9883-13.0371c2.29492-2.34375 2.14844-5.37109-0.195312-7.66602l-3.41797-3.41797c-2.19727-2.19727-4.05273-3.02734-6.34766-2.88086l-2.34375 0.244141-2.44141-2.44141 1.02539-4.6875c0.634766-2.73438-0.244141-4.98047-2.88086-7.61719l-11.2793-11.1816c-12.9395-12.8418-35.5957-11.0352-46.6797-0.146484Zm7.08008 2.05078c8.78906-6.39648 25.9766-5.66406 33.6914 1.95312l12.3047 12.207c1.02539 1.02539 1.2207 1.80664 0.927734 3.32031l-1.46484 6.64062 6.73828 6.68945 4.39453-0.244141c1.12305-0.0488281 1.51367 0.0488281 2.34375 0.878906l2.53906 2.49023-10.8398 10.8398-2.49023-2.49023c-0.830078-0.878906-0.976562-1.2207-0.927734-2.39258l0.292969-4.3457-6.68945-6.73828-6.83594 1.17188c-1.41602 0.292969-2.05078 0.195312-3.17383-0.878906l-8.93555-8.88672c-1.07422-1.02539-1.17188-1.70898-0.488281-3.36914l4.58984-11.4746c-6.10352-6.34766-17.041-7.51953-25.5859-4.58984-0.683594 0.244141-0.927734-0.390625-0.390625-0.78125Z"/>
</g>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;font-weight:bold;" transform="matrix(1 0 0 1 1289 1953)">Exporting</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 1289 1971)">Symbols should be outlined when exporting to ensure the</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 1289 1989)">design is preserved when submitting to Xcode.</text>
<text id="template-version" style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1933)">Template v.7.0</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1951)">Requires Xcode 17 or greater</text>
<text id="descriptive-name" style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1969)">Generated from options.steps</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;text-anchor:end;" transform="matrix(1 0 0 1 3036 1987)">Typeset at 100.0 points</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 726)">Small</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1156)">Medium</text>
<text style="stroke:none;fill:black;font-family:sans-serif;font-size:13;" transform="matrix(1 0 0 1 263 1586)">Large</text>
</g>
<g id="Guides">
<g id="H-reference" style="fill:#27AAE1;stroke:none;" transform="matrix(1 0 0 1 339 696)">
<path d="M0.993654 0L3.63775 0L29.3281-67.1323L30.0303-67.1323L30.0303-70.459L28.1226-70.459ZM11.6885-24.4799L46.9815-24.4799L46.2315-26.7285L12.4385-26.7285ZM55.1196 0L57.7637 0L30.6382-70.459L29.4326-70.459L29.4326-67.1323Z"/>
</g>
<line id="Baseline-S" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="696" y2="696"/>
<line id="Capline-S" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="625.541" y2="625.541"/>
<g id="H-reference" style="fill:#27AAE1;stroke:none;" transform="matrix(1 0 0 1 339 1126)">
<path d="M0.993654 0L3.63775 0L29.3281-67.1323L30.0303-67.1323L30.0303-70.459L28.1226-70.459ZM11.6885-24.4799L46.9815-24.4799L46.2315-26.7285L12.4385-26.7285ZM55.1196 0L57.7637 0L30.6382-70.459L29.4326-70.459L29.4326-67.1323Z"/>
</g>
<line id="Baseline-M" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1126" y2="1126"/>
<line id="Capline-M" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1055.54" y2="1055.54"/>
<g id="H-reference" style="fill:#27AAE1;stroke:none;" transform="matrix(1 0 0 1 339 1556)">
<path d="M0.993654 0L3.63775 0L29.3281-67.1323L30.0303-67.1323L30.0303-70.459L28.1226-70.459ZM11.6885-24.4799L46.9815-24.4799L46.2315-26.7285L12.4385-26.7285ZM55.1196 0L57.7637 0L30.6382-70.459L29.4326-70.459L29.4326-67.1323Z"/>
</g>
<line id="Baseline-L" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1556" y2="1556"/>
<line id="Capline-L" style="fill:none;stroke:#27AAE1;opacity:1;stroke-width:0.5;" x1="263" x2="3036" y1="1485.54" y2="1485.54"/>
<line id="right-margin-Black-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="2982.23" x2="2982.23" y1="600.785" y2="720.121"/>
<line id="left-margin-Black-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="2884.57" x2="2884.57" y1="600.785" y2="720.121"/>
<line id="right-margin-Regular-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1496.11" x2="1496.11" y1="600.785" y2="720.121"/>
<line id="left-margin-Regular-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1403.58" x2="1403.58" y1="600.785" y2="720.121"/>
<line id="right-margin-Ultralight-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="603.773" x2="603.773" y1="600.785" y2="720.121"/>
<line id="left-margin-Ultralight-S" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="515.649" x2="515.649" y1="600.785" y2="720.121"/>
</g>
<g id="Symbols">
<g id="Black-S" transform="matrix(1 0 0 1 2884.57 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M48.8281 6.73828C72.0215 6.73828 90.8203-12.0605 90.8203-35.2539C90.8203-58.4473 72.0215-77.2461 48.8281-77.2461C25.6348-77.2461 6.83594-58.4473 6.83594-35.2539C6.83594-12.0605 25.6348 6.73828 48.8281 6.73828ZM48.8281-7.42188C33.4473-7.42188 20.9961-19.873 20.9961-35.2539C20.9961-50.6348 33.4473-63.0859 48.8281-63.0859C64.209-63.0859 76.6602-50.6348 76.6602-35.2539C76.6602-19.873 64.209-7.42188 48.8281-7.42188Z" data-clipstroke-keyframes="0 4 0 0.49909952 1.5010293 0 0.24858466 0.25051486 1.7494847 0 0.49588814 0.0032113728 1.9966589 0 0.75064266 0.74845684 1.2515438 0 1 0.49909952 1.5010293"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M48.8281-50.8789C51.2207-50.8789 53.125-52.832 53.125-55.1758C53.125-57.5195 51.2207-59.4727 48.8281-59.4727C46.4844-59.4727 44.5312-57.5195 44.5312-55.1758C44.5312-52.832 46.4844-50.8789 48.8281-50.8789ZM51.0742-20.9961C51.9043-20.8008 53.3691-21.0449 53.7598-22.5098L56.3965-31.1035C56.6895-32.2266 56.2012-33.4473 55.0293-33.8867L48.291-36.1816L49.0234-41.1133C49.0234-41.2598 49.2188-41.3086 49.3164-41.1133L50.4883-38.8672C50.8789-38.0859 51.6113-37.6465 52.4902-37.6465L59.668-37.6465C60.8398-37.6465 61.9141-38.623 61.9141-39.8926C61.9141-41.1133 60.8887-42.0898 59.668-42.0898L53.8574-42.0898L51.6113-46.5332C50.8301-48.0957 49.3652-49.2676 47.5586-49.6094L46.5332-49.8047C44.5801-50.1953 42.9688-49.7559 41.748-49.0234L35.9375-45.3613C35.3027-44.9707 34.9121-44.2383 34.9121-43.5059L34.9121-36.2793C34.9121-35.0586 35.8887-34.0332 37.1094-34.0332C38.3301-34.0332 39.3555-35.0586 39.3555-36.2793L39.3555-42.2363L41.0645-43.3105C41.2109-43.4082 41.4062-43.3105 41.4062-43.1152L40.625-37.1582C40.2832-34.4727 41.2109-32.5195 44.3848-31.7383L51.4648-30.0781L49.5117-23.7305C49.1699-22.6562 49.6582-21.3867 51.0742-20.9961ZM37.7441-14.5996C38.5254-14.0625 39.9414-14.0625 40.7715-15.2344L46.0938-23.1445C46.3867-23.5352 46.5332-23.9258 46.582-24.4141L47.2168-28.9062L43.8965-29.6875C43.3594-29.7852 42.9199-29.9316 42.4805-30.127L42.1387-25.2441L37.1094-17.6758C36.377-16.6504 36.6699-15.2832 37.7441-14.5996ZM46.2891-11.1816L51.8555-11.1816C52.7832-11.1816 53.6133-11.9629 53.6133-12.9395L53.6133-15.6738L57.4219-15.6738C58.3496-15.6738 59.1309-16.4062 59.1309-17.3828L59.1309-20.1172L62.9883-20.1172C63.9648-20.1172 64.7461-20.8984 64.7461-21.8262L64.7461-24.6094L68.6035-24.6094C69.5312-24.6094 70.3125-25.3906 70.3125-26.3184C70.3125-27.2461 69.5312-28.0273 68.6035-28.0273L62.9883-28.0273C62.0117-28.0273 61.3281-27.1973 61.3281-26.3184L61.3281-23.584L57.4219-23.584C56.4453-23.584 55.7129-22.7539 55.7129-21.8262L55.7129-19.0918L51.8555-19.0918C50.9277-19.0918 50.1465-18.3105 50.1465-17.3828L50.1465-14.5996L46.2891-14.5996C45.3125-14.5996 44.5801-13.8672 44.5801-12.9395C44.5801-12.0117 45.3125-11.1816 46.2891-11.1816Z"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1403.58 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M46.2402 4.15039C68.0176 4.15039 85.6934-13.4766 85.6934-35.2539C85.6934-57.0312 68.0176-74.6582 46.2402-74.6582C24.5117-74.6582 6.83594-57.0312 6.83594-35.2539C6.83594-13.4766 24.5117 4.15039 46.2402 4.15039ZM46.2402-3.27148C28.5645-3.27148 14.3066-17.5781 14.3066-35.2539C14.3066-52.9297 28.5645-67.2363 46.2402-67.2363C63.916-67.2363 78.2227-52.9297 78.2227-35.2539C78.2227-17.5781 63.916-3.27148 46.2402-3.27148Z" data-clipstroke-keyframes="0 4 0 0.49914482 1.5008681 0 0.24828531 0.2508595 1.7491462 0 0.4958041 0.0033407207 1.9966576 0 0.7506014 0.74854344 1.2514637 0 1 0.49914482 1.5008681"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M46.1914-53.6133C48.7305-53.6133 50.7812-55.6641 50.7812-58.2031C50.7812-60.7422 48.7305-62.8418 46.1914-62.8418C43.6523-62.8418 41.5527-60.7422 41.5527-58.2031C41.5527-55.6641 43.6523-53.6133 46.1914-53.6133ZM48.9258-18.9453C49.7559-18.7012 51.123-18.9941 51.5625-20.3613L54.5898-30.5176C54.9316-31.6406 54.4434-32.7637 53.2715-33.1543L44.9707-36.0352L45.9961-43.1152C46.0449-43.5059 46.6309-43.6035 46.7773-43.2129L48.584-39.7949C48.9746-39.0137 49.6582-38.623 50.4395-38.623L58.9355-38.623C60.1074-38.623 61.084-39.5508 61.084-40.7227C61.084-41.8945 60.1074-42.8223 58.9355-42.8223L51.7578-42.8223L49.0234-48.3398C48.0957-50.0977 46.5332-51.3184 44.5312-51.709L43.3594-51.9531C41.2109-52.3926 39.4531-51.9043 38.0859-51.0742L31.2012-46.7773C30.6152-46.3867 30.2246-45.7031 30.2246-44.9707L30.2246-36.4746C30.2246-35.3027 31.2012-34.3262 32.373-34.3262C33.5449-34.3262 34.4727-35.3027 34.4727-36.4746L34.4727-43.7988L37.4512-45.6543C37.6953-45.8008 38.0371-45.6543 37.9883-45.3125L37.0117-37.5C36.6211-34.4727 37.5977-32.4219 41.0645-31.6406L49.9023-29.541L47.4609-21.5332C47.168-20.459 47.6074-19.2871 48.9258-18.9453ZM33.3496-11.2793C34.082-10.791 35.4492-10.791 36.2305-11.9141L42.4805-21.2402C42.7734-21.6797 42.9688-22.0215 43.0176-22.5586L43.8965-28.7598L40.5762-29.541C40.0879-29.6875 39.6484-29.834 39.209-29.9805L38.7695-23.291L32.7148-14.209C32.0801-13.2324 32.3242-11.9141 33.3496-11.2793ZM42.041-7.71484L48.6816-7.71484C49.5117-7.71484 50.1465-8.44727 50.1465-9.17969L50.1465-12.9883L55.3711-12.9883C56.0547-12.9883 56.7383-13.6719 56.7383-14.4043L56.7383-18.2617L61.9629-18.2617C62.8418-18.2617 63.3789-18.9453 63.3789-19.6777L63.3789-23.5352L68.5547-23.5352C69.3359-23.5352 70.0195-24.2188 70.0195-24.9512C70.0195-25.7324 69.3848-26.3672 68.5547-26.3672L61.9629-26.3672C61.1328-26.3672 60.5957-25.7324 60.5957-24.9512L60.5957-21.0938L55.3711-21.0938C54.4922-21.0938 53.9062-20.459 53.9062-19.6777L53.9062-15.8203L48.6816-15.8203C47.9492-15.8203 47.2656-15.1855 47.2656-14.4043L47.2656-10.5469L42.041-10.5469C41.3086-10.5469 40.625-9.91211 40.625-9.17969C40.625-8.44727 41.2598-7.71484 42.041-7.71484Z"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 515.649 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M44.0606 1.97072C64.6118 1.97072 81.2886-14.7026 81.2886-35.2539C81.2886-55.8052 64.6118-72.4785 44.0606-72.4785C23.5127-72.4785 6.83594-55.8052 6.83594-35.2539C6.83594-14.7026 23.5127 1.97072 44.0606 1.97072ZM44.0606-0.274438C24.7046-0.274438 9.0391-15.898 9.0391-35.2539C9.0391-54.6099 24.7046-70.2334 44.0606-70.2334C63.4165-70.2334 79.04-54.6099 79.04-35.2539C79.04-15.898 63.4165-0.274438 44.0606-0.274438Z" data-clipstroke-keyframes="0 4 0 0.49911225 1.5011581 0 0.24859133 0.2505209 1.7495484 0 0.49577397 0.0033382904 1.9966562 0 0.7506487 0.7484636 1.251609 0 1 0.49911225 1.5011581"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M44.0571-53.7041C46.5962-53.7041 48.647-55.7549 48.647-58.2939C48.647-60.833 46.5962-62.8872 44.0571-62.8872C41.5181-62.8872 39.4639-60.833 39.4639-58.2939C39.4639-55.7549 41.5181-53.7041 44.0571-53.7041ZM46.7915-19.127C47.6216-18.8828 48.9888-19.1758 49.3828-20.543L52.4556-30.6992C52.7974-31.7769 52.2637-32.8999 51.1372-33.2905L42.8364-36.1714L43.8618-43.2061C43.9107-43.6421 44.4512-43.7397 44.6431-43.3491L46.4497-39.8857C46.8403-39.1499 47.5239-38.7593 48.3052-38.7593L56.8013-38.7593C57.9732-38.7593 58.9043-39.6416 58.9043-40.8589C58.9043-41.9854 57.9732-42.9585 56.8013-42.9585L49.6236-42.9585L46.8892-48.4307C46.0069-50.1885 44.3989-51.5454 42.4424-51.8452L41.2251-52.0439C39.0767-52.3926 37.3189-51.9951 35.9517-51.165L29.1123-46.9136C28.5264-46.5229 28.1358-45.8394 28.1358-45.0615L28.1358-36.6108C28.1358-35.439 29.1123-34.4624 30.2842-34.4624C31.4561-34.4624 32.3838-35.439 32.3838-36.6108L32.3838-43.9351L35.3623-45.7905C35.6065-45.937 35.9483-45.7451 35.8994-45.4033L34.8775-37.6362C34.4868-34.6089 35.5088-32.5581 38.9302-31.7769L47.7681-29.7227L45.3721-21.7148C45.0337-20.6406 45.4278-19.4687 46.7915-19.127ZM31.2153-11.4609C31.9932-10.9727 33.3604-10.9727 34.1416-12.0957L40.3916-21.3765C40.6846-21.8159 40.8799-22.1577 40.9287-22.6948L41.7622-28.9414L38.4873-29.7227C37.999-29.8237 37.5142-29.9702 37.1201-30.1167L36.6807-23.4727L30.626-14.436C29.9912-13.4595 30.19-12.1411 31.2153-11.4609ZM38.0904-8.57763L45.7754-8.57763C46.1514-8.57763 46.5137-8.94677 46.5137-9.36133L46.5137-13.8057L53.4185-13.8057C53.7842-13.8057 54.1953-14.2168 54.1953-14.5859L54.1953-19.0791L61.1455-19.0791C61.5703-19.0791 61.8804-19.4902 61.8804-19.8594L61.8804-24.3525L67.6919-24.3525C68.0645-24.3525 68.4302-24.7183 68.4302-25.1328C68.4302-25.5054 68.1133-25.9131 67.6919-25.9131L61.1455-25.9131C60.6787-25.9131 60.3687-25.5054 60.3687-25.1328L60.3687-20.6397L53.4185-20.6397C52.9937-20.6397 52.6348-20.2773 52.6348-19.8594L52.6348-15.3662L45.7754-15.3662C45.4063-15.3662 44.9951-15.0493 44.9951-14.5859L44.9951-10.1382L38.0904-10.1382C37.6304-10.1382 37.3101-9.73047 37.3101-9.36133C37.3101-8.94677 37.6724-8.57763 38.0904-8.57763Z"/>
</g>
</g>
</svg>

After

Width:  |  Height:  |  Size: 23 KiB

View File

@@ -825,6 +825,7 @@
"avoid_unpaved" = "Unbefest. Straßen vermeiden"; "avoid_unpaved" = "Unbefest. Straßen vermeiden";
/* Recommended length for CarPlay and Android Auto is around 25-27 characters */ /* Recommended length for CarPlay and Android Auto is around 25-27 characters */
"avoid_steps" = "Stufen vermeiden";
"avoid_ferry" = "Fähren vermeiden"; "avoid_ferry" = "Fähren vermeiden";
"avoid_motorways" = "Autobahnen vermeiden"; "avoid_motorways" = "Autobahnen vermeiden";
"unable_to_calc_alert_title" = "Route kann nicht berechnet werden"; "unable_to_calc_alert_title" = "Route kann nicht berechnet werden";

View File

@@ -846,6 +846,7 @@
"avoid_unpaved" = "Avoid unpaved roads"; "avoid_unpaved" = "Avoid unpaved roads";
/* Recommended length for CarPlay and Android Auto is around 25-27 characters */ /* Recommended length for CarPlay and Android Auto is around 25-27 characters */
"avoid_steps" = "Avoid steps";
"avoid_ferry" = "Avoid ferries"; "avoid_ferry" = "Avoid ferries";
"avoid_motorways" = "Avoid motorways"; "avoid_motorways" = "Avoid motorways";
"unable_to_calc_alert_title" = "Unable to calculate route"; "unable_to_calc_alert_title" = "Unable to calculate route";

View File

@@ -868,6 +868,7 @@
"avoid_unpaved" = "Avoid unpaved roads"; "avoid_unpaved" = "Avoid unpaved roads";
/* Recommended length for CarPlay and Android Auto is around 25-27 characters */ /* Recommended length for CarPlay and Android Auto is around 25-27 characters */
"avoid_steps" = "Avoid steps";
"avoid_ferry" = "Avoid ferries"; "avoid_ferry" = "Avoid ferries";
"avoid_motorways" = "Avoid freeways"; "avoid_motorways" = "Avoid freeways";
"unable_to_calc_alert_title" = "Unable to calculate route"; "unable_to_calc_alert_title" = "Unable to calculate route";

View File

@@ -407,6 +407,21 @@ import Combine
} }
/// If steps should be avoided during routing
@objc static var shouldAvoidStepsWhileRouting: Bool {
get {
return RoutingOptions().avoidSteps
}
set {
let routingOptions = RoutingOptions()
routingOptions.avoidSteps = newValue
routingOptions.save()
NotificationCenter.default.post(name: routingOptionsChangedNotificationName, object: nil)
}
}
// MARK: Methods // MARK: Methods

View File

@@ -24,6 +24,10 @@ struct RoutingOptionsView: View {
@State var shouldAvoidMotorwaysWhileRouting: Bool = false @State var shouldAvoidMotorwaysWhileRouting: Bool = false
/// If steps should be avoided during routing
@State var shouldAvoidStepsWhileRouting: Bool = false
/// The actual view /// The actual view
var body: some View { var body: some View {
NavigationView { NavigationView {
@@ -40,6 +44,9 @@ struct RoutingOptionsView: View {
Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting) Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting)
.tint(.accent) .tint(.accent)
Toggle("avoid_steps", isOn: $shouldAvoidStepsWhileRouting)
.tint(.accent)
} }
} }
.navigationTitle(String(localized: "driving_options_title")) .navigationTitle(String(localized: "driving_options_title"))
@@ -60,6 +67,7 @@ struct RoutingOptionsView: View {
shouldAvoidUnpavedRoadsWhileRouting = Settings.shouldAvoidUnpavedRoadsWhileRouting shouldAvoidUnpavedRoadsWhileRouting = Settings.shouldAvoidUnpavedRoadsWhileRouting
shouldAvoidFerriesWhileRouting = Settings.shouldAvoidFerriesWhileRouting shouldAvoidFerriesWhileRouting = Settings.shouldAvoidFerriesWhileRouting
shouldAvoidMotorwaysWhileRouting = Settings.shouldAvoidMotorwaysWhileRouting shouldAvoidMotorwaysWhileRouting = Settings.shouldAvoidMotorwaysWhileRouting
shouldAvoidStepsWhileRouting = Settings.shouldAvoidStepsWhileRouting
} }
.onChange(of: shouldAvoidTollRoadsWhileRouting) { changedShouldAvoidTollRoadsWhileRouting in .onChange(of: shouldAvoidTollRoadsWhileRouting) { changedShouldAvoidTollRoadsWhileRouting in
Settings.shouldAvoidTollRoadsWhileRouting = changedShouldAvoidTollRoadsWhileRouting Settings.shouldAvoidTollRoadsWhileRouting = changedShouldAvoidTollRoadsWhileRouting
@@ -76,6 +84,9 @@ struct RoutingOptionsView: View {
.onChange(of: shouldAvoidMotorwaysWhileRouting) { changedShouldAvoidMotorwaysWhileRouting in .onChange(of: shouldAvoidMotorwaysWhileRouting) { changedShouldAvoidMotorwaysWhileRouting in
Settings.shouldAvoidMotorwaysWhileRouting = changedShouldAvoidMotorwaysWhileRouting Settings.shouldAvoidMotorwaysWhileRouting = changedShouldAvoidMotorwaysWhileRouting
} }
.onChange(of: shouldAvoidStepsWhileRouting) { changedShouldAvoidStepsWhileRouting in
Settings.shouldAvoidStepsWhileRouting = changedShouldAvoidStepsWhileRouting
}
.accentColor(.toolbarAccent) .accentColor(.toolbarAccent)
} }
} }

View File

@@ -44,6 +44,10 @@ struct SettingsNavigationView: View {
@State var shouldAvoidMotorwaysWhileRouting: Bool = false @State var shouldAvoidMotorwaysWhileRouting: Bool = false
/// If steps should be avoided during routing
@State var shouldAvoidStepsWhileRouting: Bool = false
/// The actual view /// The actual view
var body: some View { var body: some View {
List { List {
@@ -120,6 +124,9 @@ struct SettingsNavigationView: View {
Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting) Toggle("avoid_motorways", isOn: $shouldAvoidMotorwaysWhileRouting)
.tint(.accent) .tint(.accent)
Toggle("avoid_steps", isOn: $shouldAvoidStepsWhileRouting)
.tint(.accent)
} header: { } header: {
Text("driving_options_title") Text("driving_options_title")
} }
@@ -138,6 +145,7 @@ struct SettingsNavigationView: View {
shouldAvoidUnpavedRoadsWhileRouting = Settings.shouldAvoidUnpavedRoadsWhileRouting shouldAvoidUnpavedRoadsWhileRouting = Settings.shouldAvoidUnpavedRoadsWhileRouting
shouldAvoidFerriesWhileRouting = Settings.shouldAvoidFerriesWhileRouting shouldAvoidFerriesWhileRouting = Settings.shouldAvoidFerriesWhileRouting
shouldAvoidMotorwaysWhileRouting = Settings.shouldAvoidMotorwaysWhileRouting shouldAvoidMotorwaysWhileRouting = Settings.shouldAvoidMotorwaysWhileRouting
shouldAvoidStepsWhileRouting = Settings.shouldAvoidStepsWhileRouting
} }
.onChange(of: hasPerspectiveViewWhileRouting) { changedHasPerspectiveViewWhileRouting in .onChange(of: hasPerspectiveViewWhileRouting) { changedHasPerspectiveViewWhileRouting in
Settings.hasPerspectiveViewWhileRouting = changedHasPerspectiveViewWhileRouting Settings.hasPerspectiveViewWhileRouting = changedHasPerspectiveViewWhileRouting
@@ -174,5 +182,8 @@ struct SettingsNavigationView: View {
.onChange(of: shouldAvoidMotorwaysWhileRouting) { changedShouldAvoidMotorwaysWhileRouting in .onChange(of: shouldAvoidMotorwaysWhileRouting) { changedShouldAvoidMotorwaysWhileRouting in
Settings.shouldAvoidMotorwaysWhileRouting = changedShouldAvoidMotorwaysWhileRouting Settings.shouldAvoidMotorwaysWhileRouting = changedShouldAvoidMotorwaysWhileRouting
} }
.onChange(of: shouldAvoidStepsWhileRouting) { changedShouldAvoidStepsWhileRouting in
Settings.shouldAvoidStepsWhileRouting = changedShouldAvoidStepsWhileRouting
}
} }
} }