45 Commits
1.0.1 ... main

Author SHA1 Message Date
neon443
3ab19ac5ae update redem 2025-07-17 09:09:02 +01:00
neon443
5aed5894c1 Merge remote-tracking branch 'refs/remotes/origin/main'
#Conflicts:
#	Config.xcconfig
2025-06-10 12:31:02 +01:00
neon443
e1d5d7208e version bump 2025-06-10 12:30:08 +01:00
neon443
2fe5ae73b0 version bump 2025-06-10 12:03:09 +01:00
neon443
64d6a71a9f updated app icon so macos 16 (26) tahoe doesnt add that shitty border 2025-06-10 11:58:05 +01:00
neon443
8f2fdcc364 version bump
need to test this
2025-06-02 20:54:44 +01:00
neon443
23ea497884 updated arrow svgs to hopefully fix macos 10.13 support 2025-06-02 20:53:55 +01:00
neon443
ef89ef3c07 update svgs to work on older xcodes 2025-06-02 20:51:21 +01:00
Nihaal Sharma
8ca9c4bbd3 Update xcode.yml 2025-06-02 20:46:43 +01:00
Nihaal Sharma
6755a99bab Update README.md 2025-06-02 20:36:07 +01:00
neon443
c61e213000 rm icon from some folder 2025-06-02 20:36:00 +01:00
neon443
83b439f927 update icon in some folder 2025-06-02 20:35:19 +01:00
neon443
3408f27260 new icon 2025-06-02 20:34:15 +01:00
neon443
8925a57b7e icon changes 2025-06-02 20:29:39 +01:00
neon443
4419218cfe version bump 2025-06-02 19:06:12 +01:00
neon443
04dff0860c updated icon, remove build incrememnter 2025-06-02 19:05:48 +01:00
Nihaal Sharma
f0d3d586cd Create xcode.yml 2025-05-31 12:29:21 +01:00
neon443
2917e389bc s 2025-05-30 19:07:36 +01:00
neon443
8a4b0f0f65 we now have preferences
use it to:
 - move the dock/mouse
 - smaller deathzone
 - check for updates (sparkle yayyy)
 - quit
this took way too long
2025-05-30 18:42:50 +01:00
neon443
6c9d65f026 formatting, debug stuff 2025-05-30 16:07:07 +01:00
neon443
4b0e0db186 FINALLY
created settings window that actually shows up
2025-05-30 16:05:35 +01:00
neon443
c0b8d2f3ed Sparkle: Auto Updates work YAYYYYYYY 2025-05-30 15:00:53 +01:00
neon443
a6f06c4e12 Merge remote-tracking branch 'refs/remotes/origin/main' 2025-05-30 13:05:30 +01:00
neon443
9ff4f67e33 add pubkey 2025-05-30 10:44:23 +01:00
neon443
5bfeef66ab sparke menu item 2025-05-30 10:42:54 +01:00
Nihaal Sharma
58c834f1ed Update README.md 2025-05-29 17:29:27 +01:00
Nihaal Sharma
84326f7e15 Update README.md 2025-05-29 17:28:33 +01:00
Nihaal Sharma
27e410ae76 Update README.md 2025-05-29 17:25:54 +01:00
neon443
d943415b98 add mouse moves count
tweak the aligment of the pinch
added mouse move count to menu bar,
grammar fix
2025-05-29 16:11:41 +01:00
neon443
83efb14bd5 fix 2x pinchs 2025-05-29 16:03:28 +01:00
neon443
d60d90bc60 got a pinch lollll 2025-05-29 16:00:21 +01:00
neon443
4e55cc4516 we have a square following the mouse 2025-05-29 15:38:54 +01:00
neon443
1a0d3c2e38 YESSS 2025-05-29 15:33:19 +01:00
neon443
e46edecec7 xcode 12.0 compat 2025-05-29 14:00:18 +01:00
neon443
22c825dbb2 gitignore 2025-05-29 13:54:10 +01:00
neon443
5357ce8443 large rewrite of dpsettings to use an init and handle failed decodes
make moveMouse() use dpsettings' values
skyhigh moves faster
skyhigh uses dpsettings' values
extended NSScreen for safe access to main?.frame
customising the width height of the mouse move rect should be possible? now just neeed a prefs windo
2025-05-29 13:47:20 +01:00
neon443
853fc2a2db skyhigh: shows a window above everythign else
now just shows wherre the mouse can be warped
2025-05-29 11:21:08 +01:00
neon443
6a68713ad5 refactoring 2025-05-28 17:56:59 +01:00
neon443
b15116b292 refactoring 2025-05-28 17:54:01 +01:00
neon443
e4c41c4a58 get started on move mouse instead 2025-05-28 17:40:35 +01:00
neon443
c099d4bec3 Merge remote-tracking branch 'refs/remotes/origin/main' 2025-05-28 15:53:28 +01:00
neon443
5718e42f41 added settings: saves dock moves, smaller deathzone in fullscreeen etc 2025-05-28 15:52:40 +01:00
neon443
936f18d714 add fullscreen support, fix dock moving to the right when hovering over menu bar icon 2025-05-27 16:34:01 +01:00
Nihaal Sharma
3e7a7c2ac2 README.md 2025-05-27 15:05:28 +01:00
neon443
43863d3827 _ 2025-05-26 19:22:05 +01:00
36 changed files with 1150 additions and 262 deletions

40
.github/workflows/xcode.yml vendored Normal file
View File

@@ -0,0 +1,40 @@
name: Xcode - Build and Analyze
on:
push:
branches: [ "main" ]
pull_request:
branches: [ "main" ]
jobs:
build:
name: Build and archive .app without signing
runs-on: macos-latest
steps:
- name: Checkout repository
uses: actions/checkout@v4
- name: Build app
run: |
xcodebuild archive \
-project DockPhobia.xcodeproj \
-scheme DockPhobia \
-configuration Release \
-archivePath DockPhobia.xcarchive \
CODE_SIGN_IDENTITY="" \
CODE_SIGNING_REQUIRED=NO \
CODE_SIGNING_ALLOWED=NO
cp -R DockPhobia.xcarchive/Products/Applications/DockPhobia.app ./
zip -r DockPhobia.zip DockPhobia.app
- name: Upload artifact
uses: actions/upload-artifact@v4
with:
name: DockPhobia.app
path: DockPhobia.zip
if-no-files-found: error
retention-days: 90
compression-level: 9
overwrite: true

3
.gitignore vendored
View File

@@ -1 +1,2 @@
.DS_Store
**.DS_Store
**DockPhobia.dmg

View File

@@ -5,8 +5,8 @@
// Created by neon443 on 26/05/2025.
//
VERSION = 1.0.1
BUILD_ID = 1
VERSION = 1.5
BUILD_ID = 9
TEAM_ID = 8JGND254B7
BUNDLE_ID = com.neon443.DockPhobia

View File

@@ -3,7 +3,7 @@
archiveVersion = 1;
classes = {
};
objectVersion = 77;
objectVersion = 63;
objects = {
/* Begin PBXBuildFile section */
@@ -11,6 +11,12 @@
A966B4F42DE0842500C721A5 /* AppDelegate.swift in Sources */ = {isa = PBXBuildFile; fileRef = A966B4EE2DE0842400C721A5 /* AppDelegate.swift */; };
A966B4F52DE0842500C721A5 /* Assets.xcassets in Resources */ = {isa = PBXBuildFile; fileRef = A966B4EF2DE0842400C721A5 /* Assets.xcassets */; };
A966B4F82DE0852900C721A5 /* MouseTracker.swift in Sources */ = {isa = PBXBuildFile; fileRef = A966B4F72DE0852900C721A5 /* MouseTracker.swift */; };
A98C20C62DE614180008D61C /* DPSettings.swift in Sources */ = {isa = PBXBuildFile; fileRef = A98C20C52DE614180008D61C /* DPSettings.swift */; };
A9C9AF812DE7776A0039D7A5 /* DockSide.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9C9AF802DE777530039D7A5 /* DockSide.swift */; };
A9C9AF832DE77CB70039D7A5 /* SkyHigh.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9C9AF822DE77CB70039D7A5 /* SkyHigh.swift */; };
A9C9B06D2DE99E5F0039D7A5 /* Sparkle in Frameworks */ = {isa = PBXBuildFile; productRef = A9C9B06C2DE99E5F0039D7A5 /* Sparkle */; };
A9C9B0712DE9F6E60039D7A5 /* Preferences.xib in Resources */ = {isa = PBXBuildFile; fileRef = A9C9B0702DE9F6E60039D7A5 /* Preferences.xib */; };
A9C9B0732DE9F7020039D7A5 /* SettingsController.swift in Sources */ = {isa = PBXBuildFile; fileRef = A9C9B0722DE9F7020039D7A5 /* SettingsController.swift */; };
/* End PBXBuildFile section */
/* Begin PBXFileReference section */
@@ -21,6 +27,12 @@
A966B4F02DE0842400C721A5 /* DockPhobia.entitlements */ = {isa = PBXFileReference; lastKnownFileType = text.plist.entitlements; path = DockPhobia.entitlements; sourceTree = "<group>"; };
A966B4F72DE0852900C721A5 /* MouseTracker.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = MouseTracker.swift; sourceTree = "<group>"; };
A97798072DE485F200B6CB13 /* Config.xcconfig */ = {isa = PBXFileReference; lastKnownFileType = text.xcconfig; path = Config.xcconfig; sourceTree = "<group>"; };
A98C20C52DE614180008D61C /* DPSettings.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DPSettings.swift; sourceTree = "<group>"; };
A9C9AF802DE777530039D7A5 /* DockSide.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = DockSide.swift; sourceTree = "<group>"; };
A9C9AF822DE77CB70039D7A5 /* SkyHigh.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SkyHigh.swift; sourceTree = "<group>"; };
A9C9B06E2DE9B55F0039D7A5 /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist; path = Info.plist; sourceTree = "<group>"; };
A9C9B0702DE9F6E60039D7A5 /* Preferences.xib */ = {isa = PBXFileReference; lastKnownFileType = file.xib; path = Preferences.xib; sourceTree = "<group>"; };
A9C9B0722DE9F7020039D7A5 /* SettingsController.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SettingsController.swift; sourceTree = "<group>"; };
/* End PBXFileReference section */
/* Begin PBXFrameworksBuildPhase section */
@@ -28,6 +40,7 @@
isa = PBXFrameworksBuildPhase;
buildActionMask = 2147483647;
files = (
A9C9B06D2DE99E5F0039D7A5 /* Sparkle in Frameworks */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -45,6 +58,7 @@
A94BEC102DE23ECE00D4811D /* Views */ = {
isa = PBXGroup;
children = (
A9C9B0702DE9F6E60039D7A5 /* Preferences.xib */,
A94BEC0E2DE23E8500D4811D /* MainMenu.xib */,
);
path = Views;
@@ -70,8 +84,13 @@
A966B4F32DE0842400C721A5 /* DockPhobia */ = {
isa = PBXGroup;
children = (
A9C9B06E2DE9B55F0039D7A5 /* Info.plist */,
A966B4EE2DE0842400C721A5 /* AppDelegate.swift */,
A966B4F72DE0852900C721A5 /* MouseTracker.swift */,
A9C9AF822DE77CB70039D7A5 /* SkyHigh.swift */,
A98C20C52DE614180008D61C /* DPSettings.swift */,
A9C9AF802DE777530039D7A5 /* DockSide.swift */,
A9C9B0722DE9F7020039D7A5 /* SettingsController.swift */,
A94BEC102DE23ECE00D4811D /* Views */,
A94BEC0A2DE21F8100D4811D /* Resources */,
A966B4F02DE0842400C721A5 /* DockPhobia.entitlements */,
@@ -96,6 +115,7 @@
);
name = DockPhobia;
packageProductDependencies = (
A9C9B06C2DE99E5F0039D7A5 /* Sparkle */,
);
productName = DockPhobia;
productReference = A966B4D62DE0841000C721A5 /* DockPhobia.app */;
@@ -117,6 +137,7 @@
};
};
buildConfigurationList = A966B4D12DE0841000C721A5 /* Build configuration list for PBXProject "DockPhobia" */;
compatibilityVersion = "Xcode 12.0";
developmentRegion = en;
hasScannedForEncodings = 0;
knownRegions = (
@@ -125,7 +146,9 @@
);
mainGroup = A966B4CD2DE0841000C721A5;
minimizedProjectReferenceProxies = 1;
preferredProjectObjectVersion = 77;
packageReferences = (
A9C9B06B2DE99E5F0039D7A5 /* XCRemoteSwiftPackageReference "Sparkle" */,
);
productRefGroup = A966B4D72DE0841000C721A5 /* Products */;
projectDirPath = "";
projectRoot = "";
@@ -140,6 +163,7 @@
isa = PBXResourcesBuildPhase;
buildActionMask = 2147483647;
files = (
A9C9B0712DE9F6E60039D7A5 /* Preferences.xib in Resources */,
A94BEC0F2DE23E8500D4811D /* MainMenu.xib in Resources */,
A966B4F52DE0842500C721A5 /* Assets.xcassets in Resources */,
);
@@ -152,8 +176,12 @@
isa = PBXSourcesBuildPhase;
buildActionMask = 2147483647;
files = (
A98C20C62DE614180008D61C /* DPSettings.swift in Sources */,
A9C9AF832DE77CB70039D7A5 /* SkyHigh.swift in Sources */,
A9C9B0732DE9F7020039D7A5 /* SettingsController.swift in Sources */,
A966B4F82DE0852900C721A5 /* MouseTracker.swift in Sources */,
A966B4F42DE0842500C721A5 /* AppDelegate.swift in Sources */,
A9C9AF812DE7776A0039D7A5 /* DockSide.swift in Sources */,
);
runOnlyForDeploymentPostprocessing = 0;
};
@@ -294,6 +322,8 @@
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = DockPhobia/Info.plist;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.entertainment";
INFOPLIST_KEY_LSUIElement = YES;
INFOPLIST_KEY_NSAppleEventsUsageDescription = _;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
@@ -328,6 +358,8 @@
ENABLE_HARDENED_RUNTIME = YES;
ENABLE_USER_SCRIPT_SANDBOXING = NO;
GENERATE_INFOPLIST_FILE = YES;
INFOPLIST_FILE = DockPhobia/Info.plist;
INFOPLIST_KEY_LSApplicationCategoryType = "public.app-category.entertainment";
INFOPLIST_KEY_LSUIElement = YES;
INFOPLIST_KEY_NSAppleEventsUsageDescription = _;
INFOPLIST_KEY_NSHumanReadableCopyright = "";
@@ -370,6 +402,25 @@
defaultConfigurationName = Release;
};
/* End XCConfigurationList section */
/* Begin XCRemoteSwiftPackageReference section */
A9C9B06B2DE99E5F0039D7A5 /* XCRemoteSwiftPackageReference "Sparkle" */ = {
isa = XCRemoteSwiftPackageReference;
repositoryURL = "https://github.com/sparkle-project/Sparkle";
requirement = {
kind = upToNextMajorVersion;
minimumVersion = 2.7.0;
};
};
/* End XCRemoteSwiftPackageReference section */
/* Begin XCSwiftPackageProductDependency section */
A9C9B06C2DE99E5F0039D7A5 /* Sparkle */ = {
isa = XCSwiftPackageProductDependency;
package = A9C9B06B2DE99E5F0039D7A5 /* XCRemoteSwiftPackageReference "Sparkle" */;
productName = Sparkle;
};
/* End XCSwiftPackageProductDependency section */
};
rootObject = A966B4CE2DE0841000C721A5 /* Project object */;
}

View File

@@ -0,0 +1,15 @@
{
"originHash" : "e721da7f9826abdffcb6185e886155efa2514bd6234475f1afa893e29eb258d6",
"pins" : [
{
"identity" : "sparkle",
"kind" : "remoteSourceControl",
"location" : "https://github.com/sparkle-project/Sparkle",
"state" : {
"revision" : "0ca3004e98712ea2b39dd881d28448630cce1c99",
"version" : "2.7.0"
}
}
],
"version" : 3
}

View File

@@ -0,0 +1,78 @@
<?xml version="1.0" encoding="UTF-8"?>
<Scheme
LastUpgradeVersion = "1640"
version = "1.7">
<BuildAction
parallelizeBuildables = "YES"
buildImplicitDependencies = "YES"
buildArchitectures = "Automatic">
<BuildActionEntries>
<BuildActionEntry
buildForTesting = "YES"
buildForRunning = "YES"
buildForProfiling = "YES"
buildForArchiving = "YES"
buildForAnalyzing = "YES">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "A966B4D52DE0841000C721A5"
BuildableName = "DockPhobia.app"
BlueprintName = "DockPhobia"
ReferencedContainer = "container:DockPhobia.xcodeproj">
</BuildableReference>
</BuildActionEntry>
</BuildActionEntries>
</BuildAction>
<TestAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
shouldUseLaunchSchemeArgsEnv = "YES"
shouldAutocreateTestPlan = "YES">
</TestAction>
<LaunchAction
buildConfiguration = "Debug"
selectedDebuggerIdentifier = "Xcode.DebuggerFoundation.Debugger.LLDB"
selectedLauncherIdentifier = "Xcode.DebuggerFoundation.Launcher.LLDB"
launchStyle = "0"
useCustomWorkingDirectory = "NO"
ignoresPersistentStateOnLaunch = "NO"
debugDocumentVersioning = "YES"
debugServiceExtension = "internal"
allowLocationSimulation = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "A966B4D52DE0841000C721A5"
BuildableName = "DockPhobia.app"
BlueprintName = "DockPhobia"
ReferencedContainer = "container:DockPhobia.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</LaunchAction>
<ProfileAction
buildConfiguration = "Release"
shouldUseLaunchSchemeArgsEnv = "YES"
savedToolIdentifier = ""
useCustomWorkingDirectory = "NO"
debugDocumentVersioning = "YES">
<BuildableProductRunnable
runnableDebuggingMode = "0">
<BuildableReference
BuildableIdentifier = "primary"
BlueprintIdentifier = "A966B4D52DE0841000C721A5"
BuildableName = "DockPhobia.app"
BlueprintName = "DockPhobia"
ReferencedContainer = "container:DockPhobia.xcodeproj">
</BuildableReference>
</BuildableProductRunnable>
</ProfileAction>
<AnalyzeAction
buildConfiguration = "Debug">
</AnalyzeAction>
<ArchiveAction
buildConfiguration = "Release"
revealArchiveInOrganizer = "YES">
</ArchiveAction>
</Scheme>

BIN
DockPhobia/.DS_Store vendored
View File

Binary file not shown.

View File

@@ -6,74 +6,109 @@
//
import AppKit
import Sparkle
@main
@NSApplicationMain
class AppDelegate: NSObject, NSApplicationDelegate {
public var statusItem: NSStatusItem!
public var prefsWindow: NSWindowController?
var mouseTracker = MouseTracker()
var settings = DPSettingsModel()
var mouseTracker: MouseTracker
let updateController: SPUStandardUpdaterController
override init() {
self.mouseTracker = MouseTracker(settings: settings)
//call .startUpdater() later
updateController = SPUStandardUpdaterController(
startingUpdater: true,
updaterDelegate: nil,
userDriverDelegate: nil
)
super.init()
}
func applicationDidFinishLaunching(_ aNotification: Notification) {
statusItem = NSStatusBar.system.statusItem(withLength: NSStatusItem.variableLength)
if let button = statusItem.button {
button.image = NSImage(named: "cursor.slash")
}
setupMenus()
refreshMenus()
}
func applicationWillTerminate(_ aNotification: Notification) {
// Insert code here to tear down your application
settings.saveSettings()
}
func applicationSupportsSecureRestorableState(_ app: NSApplication) -> Bool {
return true
}
//MARK: menu bar stuff
func setupMenus() {
let menu = NSMenu()
let start = NSMenuItem(title: describeStartButton(), action: #selector(didTapStart), keyEquivalent: "")
menu.addItem(start)
let screen = NSMenuItem(
title: "\(mouseTracker.screen.width)x\(mouseTracker.screen.height)",
let dockMoves = NSMenuItem(
title: "Moved the Dock \(settings.settings.dockMoves) time\(settings.settings.dockMoves.plural)",
action: nil,
keyEquivalent: ""
)
menu.addItem(screen)
menu.addItem(dockMoves)
let mouseMoves = NSMenuItem(
title: "Moved the cursor \(settings.settings.mouseMoves) time\(settings.settings.mouseMoves.plural)",
action: nil,
keyEquivalent: ""
)
menu.addItem(mouseMoves)
menu.addItem(NSMenuItem.separator())
let moveMouseButton = NSMenuItem(
title: "Move cursor instead",
action: #selector(moveMouseToggle),
keyEquivalent: ""
)
moveMouseButton.state = NSControl.StateValue(rawValue: settings.settings.moveMouseInstead ? 1 : 0)
menu.addItem(moveMouseButton)
menu.addItem(NSMenuItem.separator())
menu.addItem(
NSMenuItem(
title: "Move Dock to left",
action: #selector(moveDockObjcLeft),
keyEquivalent: ""
)
)
menu.addItem(
NSMenuItem(
title: "Move Dock to bottom",
action: #selector(moveDockObjcBottom),
keyEquivalent: ""
)
)
menu.addItem(
NSMenuItem(
title: "Move Dock to right",
action: #selector(moveDockObjcRight),
keyEquivalent: ""
)
)
menu.addItem(NSMenuItem(
title: "Move Dock to the left",
action: #selector(moveDockObjcLeft),
keyEquivalent: "1"))
menu.addItem(NSMenuItem(
title: "Move Dock to the bottom",
action: #selector(moveDockObjcBottom),
keyEquivalent: "2"))
menu.addItem(NSMenuItem(
title: "Move Dock to the right",
action: #selector(moveDockObjcRight),
keyEquivalent: "3"))
menu.addItem(NSMenuItem.separator())
let checkforUpdatesMenuItem = NSMenuItem(
title: "Check for Updates...",
action: #selector(SPUStandardUpdaterController.checkForUpdates(_:)),
keyEquivalent: ""
)
checkforUpdatesMenuItem.target = updateController
menu.addItem(checkforUpdatesMenuItem)
let prefs = NSMenuItem(
title: "Preferences",
action: #selector(tappedPrefs),
keyEquivalent: ","
)
menu.addItem(prefs)
let quit = NSMenuItem(title: "Quit", action: #selector(quit), keyEquivalent: "q")
menu.addItem(quit)
statusItem.menu = menu
}
func changeMenuIcon(running: Bool) {
guard let button = statusItem.button else { return }
switch running {
@@ -83,7 +118,17 @@ class AppDelegate: NSObject, NSApplicationDelegate {
button.image = NSImage(named: "cursor.slash")
}
}
@objc func tappedPrefs() {
if prefsWindow == nil {
prefsWindow = DPPreferencesWindowController(
mouseTracker: mouseTracker,
settings: settings,
updater: updateController
)
}
prefsWindow!.window?.orderFront(nil)
}
@objc func didTapStart() {
if mouseTracker.running {
mouseTracker.stop()
@@ -92,17 +137,22 @@ class AppDelegate: NSObject, NSApplicationDelegate {
mouseTracker.start()
changeMenuIcon(running: true)
}
setupMenus()
refreshMenus()
}
@objc func quit() {
NSApplication.shared.terminate(self)
}
@objc func moveDockObjcLeft() { mouseTracker.moveDock(.left) }
@objc func moveDockObjcRight() { mouseTracker.moveDock(.right) }
@objc func moveDockObjcBottom() { mouseTracker.moveDock(.bottom) }
@objc func checkFullscreenToggle() {
settings.settings.checkFullscreen.toggle()
refreshMenus()
}
@objc func moveMouseToggle() {
settings.settings.moveMouseInstead.toggle()
refreshMenus()
}
func describeStartButton() -> String {
if mouseTracker.running {
return "Stop tracking"
@@ -111,3 +161,14 @@ class AppDelegate: NSObject, NSApplicationDelegate {
}
}
}
func refreshMenus() {
guard let delegate = NSApp.delegate as? AppDelegate else { return }
delegate.setupMenus()
}
extension Numeric {
var plural: String {
return self == 1 ? "" : "s"
}
}

114
DockPhobia/DPSettings.swift Normal file
View File

@@ -0,0 +1,114 @@
//
// Persistence.swift
// DockPhobia
//
// Created by neon443 on 27/05/2025.
//
import Foundation
import AppKit
extension NSScreen {
static var mainFrame: CGRect {
main?.frame ?? CGRect(x: 0, y: 0, width: 1920, height: 1080)
}
static var mainFrameWidth: CGFloat {
main?.frame.width ?? 1920
}
static var mainFrameHeight: CGFloat {
main?.frame.height ?? 1080
}
}
struct DPSettings: Codable {
var dockMoves: Int
var mouseMoves: Int
var checkFullscreen: Bool
var moveMouseInstead: Bool
var mouseInsetLeading: CGFloat {
NSScreen.mainFrameWidth*insetHorizontal
}
var mouseInsetBottom: CGFloat {
NSScreen.mainFrameHeight*insetVertical
}
var mouseInsetTop: CGFloat {
NSScreen.mainFrameHeight*(1-(insetVertical))
}
var mouseInsetTrailing: CGFloat {
NSScreen.mainFrameWidth*(1-(insetHorizontal))
}
var insetHorizontal: CGFloat
var insetVertical: CGFloat
var mouseMoveRect: CGRect {
return CGRect(
x: mouseInsetLeading,
y: mouseInsetBottom,
width: mouseInsetTrailing - mouseInsetLeading,
height: mouseInsetTop - mouseInsetBottom
)
}
init(
dockMoves: Int = 0,
mouseMoves: Int = 0,
checkFullscreen: Bool = false,
moveMouseInstead: Bool = false,
insetHorizontal: CGFloat = 0.05,
insetVertical: CGFloat = 0.1
) {
self.dockMoves = dockMoves
self.mouseMoves = mouseMoves
self.checkFullscreen = checkFullscreen
self.moveMouseInstead = moveMouseInstead
self.insetHorizontal = insetHorizontal
self.insetVertical = insetVertical
}
init(from decoder: any Decoder) throws {
let defaults = DPSettings()
let container = try decoder.container(keyedBy: CodingKeys.self)
dockMoves = try container.decodeIfPresent(Int.self, forKey: .dockMoves)
?? defaults.dockMoves
mouseMoves = try container.decodeIfPresent(Int.self, forKey: .mouseMoves)
?? defaults.mouseMoves
checkFullscreen = try container.decodeIfPresent(Bool.self, forKey: .checkFullscreen)
?? defaults.checkFullscreen
moveMouseInstead = try container.decodeIfPresent(Bool.self, forKey: .moveMouseInstead)
?? defaults.moveMouseInstead
insetHorizontal = try container.decodeIfPresent(CGFloat.self, forKey: .insetHorizontal)
?? defaults.insetHorizontal
insetVertical = try container.decodeIfPresent(CGFloat.self, forKey: .insetVertical)
?? defaults.insetVertical
}
}
class DPSettingsModel {
var settings = DPSettings()
let userDefaults = UserDefaults.standard
init() {
guard let data = userDefaults.data(forKey: "settings") else { return }
let decoder = JSONDecoder()
guard let decoded = try? decoder.decode(DPSettings.self, from: data) else {
return
}
self.settings = decoded
refreshMenus()
}
func saveSettings() {
let encoder = JSONEncoder()
guard let encoded = try? encoder.encode(settings) else {
return
}
userDefaults.set(encoded, forKey: "settings")
}
}

59
DockPhobia/DockSide.swift Normal file
View File

@@ -0,0 +1,59 @@
//
// DockSide.swift
// DockPhobia
//
// Created by neon443 on 28/05/2025.
//
import Foundation
enum DockSide: Int, RawRepresentable {
case left
case bottom
case right
public typealias RawValue = String
public var rawValue: RawValue {
switch self {
case .left:
return "left"
case .right:
return "right"
case .bottom:
return "bottom"
}
}
/// Random Dock Side
/// - will return a random Dock Side when calling DockSide()
public init() {
self = DockSide(rawValue: Int.random(in: 1...3))!
}
public init?(rawValue: String) {
switch rawValue {
case "left":
self = .left
case "right":
self = .right
case "bottom":
self = .bottom
default:
return nil
}
}
public init?(rawValue: Int) {
switch rawValue {
case 1:
self = .left
case 2:
self = .bottom
case 3:
self = .right
default:
return nil
}
}
}

12
DockPhobia/Info.plist Normal file
View File

@@ -0,0 +1,12 @@
<?xml version="1.0" encoding="UTF-8"?>
<!DOCTYPE plist PUBLIC "-//Apple//DTD PLIST 1.0//EN" "http://www.apple.com/DTDs/PropertyList-1.0.dtd">
<plist version="1.0">
<dict>
<key>SUFeedURL</key>
<string>https://neon443.github.io/appcasts/DockPhobia/appcast.xml</string>
<key>SUpublicEDKey</key>
<string>ahgIyJGs4MCQ6UXwQ11aknk3a6GwOodHKSmVv4bw6KY=</string>
<key>SUEnableAutomaticChecks</key>
<true/>
</dict>
</plist>

View File

@@ -7,135 +7,138 @@
import Foundation
import AppKit
import Cocoa
import ApplicationServices
extension NSEvent {
var mouseLocationCG: CGPoint {
var loc = NSEvent.mouseLocation
loc.y = NSScreen.mainFrameHeight - loc.y
return loc
}
}
extension CGPoint {
var invertedForScreen: CGPoint {
return CGPoint(
x: self.x,
y: NSScreen.mainFrameHeight - self.y
)
}
}
struct Screen {
var width: CGFloat
var height: CGFloat
}
enum DockSide: Int, RawRepresentable {
case left
case bottom
case right
public typealias RawValue = String
public var rawValue: RawValue {
switch self {
case .left:
return "left"
case .right:
return "right"
case .bottom:
return "bottom"
}
}
/// Random Dock Side
/// - will return a random Dock Side when calling DockSide()
public init() {
self = DockSide(rawValue: Int.random(in: 1...3))!
}
public init?(rawValue: String) {
switch rawValue {
case "left":
self = .left
case "right":
self = .right
case "bottom":
self = .bottom
default:
return nil
}
}
public init?(rawValue: Int) {
switch rawValue {
case 1:
self = .left
case 2:
self = .bottom
case 3:
self = .right
default:
return nil
}
}
}
class MouseTracker {
var screen: Screen
var monitor: Any?
var running: Bool = false
var currentDockSide: DockSide
var dockHeight: CGFloat = 0
init() {
var settings: DPSettingsModel
var skyHigh: SkyHigh
private var timer: Timer?
private var loopIteration: Double = 0
init(settings: DPSettingsModel) {
print(DockSide())
if let screen = NSScreen.main {
let rect = screen.frame
self.screen = Screen(
width: rect.width,
height: rect.height
)
print(self.screen)
} else {
fatalError("no screen wtf???")
}
self.screen = Screen(
width: NSScreen.mainFrameWidth,
height: NSScreen.mainFrameHeight
)
print(self.screen)
self.settings = settings
self.skyHigh = SkyHigh(settings: settings)
self.currentDockSide = .left
moveDock(.bottom)
getDockSize()
}
func checkMouse(_ event: NSEvent) {
var location = event.locationInWindow
location.y = screen.height - location.y
let location = event.mouseLocationCG
#if DEBUG
print(location)
var cgpointForSkyHigh = NSEvent.mouseLocation
cgpointForSkyHigh.x -= 20
cgpointForSkyHigh.y -= 5
skyHigh.move(to: cgpointForSkyHigh)
#endif
switch currentDockSide {
guard settings.settings.checkFullscreen else {
handleDockValue(dockIsAt: currentDockSide, location: location)
return
}
guard isFrontmostFullscreen() else {
if location.x < 1 ||
location.x < screen.width-1 ||
location.y > screen.height-1 {
handleDockValue(dockIsAt: currentDockSide, location: location)
}
return
}
}
func handleDockValue(dockIsAt: DockSide, location: NSPoint) {
switch dockIsAt {
case .left:
guard location.x < dockHeight else { return }
if location.y < screen.height/2 {
moveDock(.bottom)
moveDockOrMouse(.bottom)
return
} else {
moveDock(.right)
moveDockOrMouse(.right)
return
}
case .bottom:
guard location.y > screen.height - dockHeight else { return }
if location.x < screen.width/2 {
moveDock(.right)
moveDockOrMouse(.right)
return
} else {
moveDock(.left)
moveDockOrMouse(.left)
return
}
case .right:
guard location.x > screen.width - dockHeight else { return }
if location.y < screen.height/2 {
moveDock(.bottom)
moveDockOrMouse(.bottom)
return
} else {
moveDock(.left)
moveDockOrMouse(.left)
return
}
}
}
func moveDockOrMouse(_ dockTo: DockSide) {
if settings.settings.moveMouseInstead {
moveMouse()
} else {
moveDock(dockTo)
}
}
func start() {
#if DEBUG
skyHigh.show()
#endif
self.monitor = NSEvent.addGlobalMonitorForEvents(matching: .mouseMoved, handler: checkMouse)
self.running = true
print("started tracking")
}
func stop() {
#if DEBUG
skyHigh.hide()
#endif
if let monitor = monitor {
NSEvent.removeMonitor(monitor)
self.running = false
@@ -144,17 +147,51 @@ class MouseTracker {
print("stop tracking")
}
func moveMouse() {
let prevPoint = NSEvent().mouseLocationCG
let rangeW = settings.settings.mouseInsetLeading...settings.settings.mouseInsetTrailing
let posX = CGFloat.random(in: rangeW)
let rangeH = settings.settings.mouseInsetBottom...settings.settings.mouseInsetTop
let posY = CGFloat.random(in: rangeH)
timer?.invalidate()
loopIteration = 0
skyHigh.move(to: prevPoint.invertedForScreen)
skyHigh.show()
timer = Timer(timeInterval: 0.005, repeats: true) { [weak self] _ in
guard let self = self else { return }
guard loopIteration < 500 else {
skyHigh.hide()
settings.settings.mouseMoves += 1
refreshMenus()
timer?.invalidate()
return
}
let newPosX = (prevPoint.x > posX ? prevPoint.x-loopIteration : prevPoint.x+loopIteration)
let newPosY = (prevPoint.y > posY ? prevPoint.y-loopIteration : prevPoint.y+loopIteration)
let cgpoint = CGPoint(x: newPosX, y: newPosY)
CGWarpMouseCursorPosition(cgpoint)
var cgpointForSkyHigh = cgpoint
cgpointForSkyHigh.x -= 20
cgpointForSkyHigh.y += 5
skyHigh.move(to: cgpointForSkyHigh.invertedForScreen)
self.loopIteration += 1
}
RunLoop.main.add(timer!, forMode: .common)
}
func moveDock(_ toSide: DockSide) {
guard currentDockSide != toSide else { return }
// let scriptHide = """
// tell application "System Events"
// tell dock preferences
// set autohide to true
// end tell
// end tell
// """
//
// let scriptShow = scriptHide.replacingOccurrences(of: "true", with: "false")
// let scriptHide = """
// tell application "System Events"
// tell dock preferences
// set autohide to true
// end tell
// end tell
// """
//
// let scriptShow = scriptHide.replacingOccurrences(of: "true", with: "false")
let scriptMove = """
tell application "System Events"
@@ -163,14 +200,15 @@ class MouseTracker {
end tell
end tell
"""
// applescript(scriptHide)
// applescript(scriptHide)
applescript(scriptMove)
// applescript(scriptShow)
// applescript(scriptShow)
currentDockSide = toSide
settings.settings.dockMoves += 1
refreshMenus()
}
func getDockSize() {
guard let screen = NSScreen.main?.frame else { fatalError() }
guard let screenVisible = NSScreen.main?.visibleFrame else { fatalError() }
self.dockHeight = screen.height - screenVisible.height
}
@@ -187,3 +225,27 @@ class MouseTracker {
return nil
}
}
func isFrontmostFullscreen() -> Bool {
guard let frontmostApp = NSWorkspace.shared.frontmostApplication,
let appPID = frontmostApp.processIdentifier as pid_t? else {
return false
}
let appElement = AXUIElementCreateApplication(appPID)
var frontWindo: AnyObject?
let result = AXUIElementCopyAttributeValue(appElement, kAXFocusedWindowAttribute as CFString, &frontWindo)
guard result == .success, let windowElement = frontWindo else {
return false
}
var fullscreenValue: AnyObject?
let fullscreenAttr = AXUIElementCopyAttributeValue(windowElement as! AXUIElement, "AXFullScreen" as CFString, &fullscreenValue)
if fullscreenAttr == .success,
let isFullscreen = fullscreenValue as? Bool {
return isFullscreen
}
return false
}

View File

@@ -13,7 +13,7 @@
"size" : "16x16"
},
{
"filename" : "DockPhobiaAppIcon32 1.png",
"filename" : "DockPhobiaAppIcon32.png",
"idiom" : "mac",
"scale" : "1x",
"size" : "32x32"
@@ -31,7 +31,7 @@
"size" : "128x128"
},
{
"filename" : "DockPhobiaAppIcon256 1.png",
"filename" : "DockPhobiaAppIcon256.png",
"idiom" : "mac",
"scale" : "2x",
"size" : "128x128"
@@ -49,7 +49,7 @@
"size" : "256x256"
},
{
"filename" : "DockPhobiaAppIcon512 1.png",
"filename" : "DockPhobiaAppIcon512.png",
"idiom" : "mac",
"scale" : "1x",
"size" : "512x512"

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 560 KiB

After

Width:  |  Height:  |  Size: 1.1 MiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 13 KiB

After

Width:  |  Height:  |  Size: 26 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 1.9 KiB

After

Width:  |  Height:  |  Size: 2.0 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 37 KiB

After

Width:  |  Height:  |  Size: 84 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 2.8 KiB

After

Width:  |  Height:  |  Size: 3.4 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 131 KiB

After

Width:  |  Height:  |  Size: 304 KiB

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 5.5 KiB

After

Width:  |  Height:  |  Size: 8.4 KiB

View File

@@ -4,32 +4,6 @@
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: "101BE1", point size: 100.0, font version: "20.0d10e1", template writer version: "138.0.0"-->
<style>.defaults {-sfsymbols-wiggle-style:linear;-sfsymbols-wiggle-angle:180}
.monochrome-0 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.monochrome-1 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.monochrome-2 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.monochrome-3 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.monochrome-4 {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow.motionlines}
.monochrome-5 {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow.motionlines}
.multicolor-0:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.multicolor-1:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.multicolor-2:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.multicolor-3:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.multicolor-4:tintColor {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow.motionlines}
.multicolor-5:tintColor {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow.motionlines}
.hierarchical-0:primary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.hierarchical-1:primary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.hierarchical-2:primary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.hierarchical-3:primary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow.motionlines}
.hierarchical-4:primary {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow.motionlines}
.hierarchical-5:primary {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow.motionlines}
.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"/>
@@ -73,8 +47,8 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN"
<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.6.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 16 or greater</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.2.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 12 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 cursorarrow.motionlines</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>
@@ -97,37 +71,90 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN"
</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="2986.18" x2="2986.18" 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="2880.62" x2="2880.62" 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="1498.97" x2="1498.97" 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="1400.72" x2="1400.72" 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="601.589" x2="601.589" 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="517.833" x2="517.833" y1="600.785" y2="720.121"/>
<line id="right-margin" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1509.63" x2="1509.63" y1="1030.79" y2="1150.12"/>
<line id="left-margin" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1390.06" x2="1390.06" y1="1030.79" y2="1150.12"/>
</g>
<g id="Symbols">
<g id="Black-L" transform="matrix(1 0 0 1 2848.74 1556)">
<path d="M89.8415-87.914C93.5701-87.914 96.6208-90.9272 96.6208-94.713C96.6208-98.4792 93.5701-101.47 89.8415-101.47L44.4247-101.47L57.9166-87.914ZM109.169-68.4449C112.956-68.4449 115.969-71.4372 115.969-75.2438C115.969-78.9504 112.956-82.0012 109.169-82.0012L63.8103-82.0012L77.2826-68.4449ZM128.51-48.9549C132.297-48.9549 135.289-52.0253 135.289-55.7538C135.289-59.5396 132.297-62.51 128.51-62.51L83.1543-62.51L96.7058-48.9549ZM148.029-43.0408L102.519-43.0408C106.598-38.7275 108.355-34.3066 108.294-29.4845L148.029-29.4845C151.758-29.4845 154.829-32.4977 154.829-36.2835C154.829-40.0484 151.758-43.0408 148.029-43.0408ZM85.9593 19.0735L59.7284-41.259L51.7426-24.5409L89.0726-22.236C96.3842-21.7427 99.8833-29.7836 94.7458-34.9467L28.5159-101.47C23.6732-106.315 16.3341-103.466 16.1977-96.5874L14.5215-3.20037C14.3851 4.36685 22.8061 7.53112 27.7852 1.89791L51.4979-24.9192L33.8157-32.0264L58.7979 30.2073C60.7487 35.0926 64.994 36.2089 69.2328 34.6085L81.7037 29.8616C86.1969 28.1653 87.9684 23.7032 85.9593 19.0735Z"/>
</g>
<g id="Heavy-L" transform="matrix(1 0 0 1 2554.03 1556)">
<path d="M87.8372-87.612C91.323-87.612 94.1387-90.4133 94.1387-93.9382C94.1387-97.4384 91.323-100.204 87.8372-100.204L42.2123-100.204L54.7316-87.612ZM106.695-68.5466C110.226-68.5466 113.027-71.3177 113.027-74.8727C113.027-78.3227 110.226-81.1385 106.695-81.1385L61.1153-81.1385L73.6099-68.5466ZM125.498-49.451C129.028-49.451 131.799-52.2913 131.799-55.7771C131.799-59.3019 129.028-62.0373 125.498-62.0373L79.9578-62.0373L92.5273-49.451ZM144.474-42.9719L98.8306-42.9719C102.784-38.8348 104.497-34.9344 104.535-30.38L144.474-30.38C147.96-30.38 150.806-33.1813 150.806-36.7061C150.806-40.2007 147.96-42.9719 144.474-42.9719ZM83.4822 19.1456L58.1033-39.3904L51.3228-25.4581L87.1577-23.3075C93.6895-22.8688 96.8142-30.029 92.2238-34.6721L27.0985-100.445C22.7715-104.783 16.205-102.241 16.0912-96.0925L14.6236-4.05006C14.5098 2.696 22.0363 5.53159 26.4771 0.491229L49.3395-25.2091L34.5004-30.9443L58.7305 29.3054C60.4204 33.5224 64.1578 34.6034 67.838 33.1811L79.8178 28.5612C83.7067 27.08 85.2168 23.1483 83.4822 19.1456Z"/>
</g>
<g id="Bold-L" transform="matrix(1 0 0 1 2259.99 1556)">
<path d="M85.2658-87.325C88.3997-87.325 90.8937-89.8278 90.8937-92.9777C90.8937-96.1028 88.3997-98.5544 85.2658-98.5544L39.3575-98.5544L50.4915-87.325ZM103.466-68.7889C106.629-68.7889 109.132-71.2536 109.132-74.4415C109.132-77.5243 106.629-80.0183 103.466-80.0183L57.5866-80.0183L68.6959-68.7889ZM121.547-50.2147C124.71-50.2147 127.175-52.7335 127.175-55.8674C127.175-59.0173 124.71-61.4309 121.547-61.4309L75.7397-61.4309L86.9162-50.2147ZM139.788-42.8948L93.9308-42.8948C97.6258-39.0698 99.2627-35.8 99.439-31.6654L139.788-31.6654C142.922-31.6654 145.454-34.1682 145.454-37.3181C145.454-40.43 142.922-42.8948 139.788-42.8948ZM80.3045 19.1781L55.9187-37.2787L50.5321-26.5803L84.5152-24.6294C90.0863-24.2598 92.7573-30.3437 88.8431-34.3488L25.339-99.0953C21.6424-102.818 15.9989-100.638 15.9158-95.3809L14.7914-5.28161C14.7082 0.457536 21.1431 2.89334 24.9229-1.41692L46.7699-25.7341L35.1966-29.8382L58.564 28.1091C59.9461 31.541 63.0833 32.5611 66.1092 31.3542L77.3254 26.97C80.5061 25.7427 81.7158 22.442 80.3045 19.1781Z"/>
</g>
<g id="Semibold-L" transform="matrix(1 0 0 1 1965.13 1556)">
<path d="M83.4931-87.1271C86.3845-87.1271 88.6566-89.4241 88.6566-92.3155C88.6566-95.1821 86.3845-97.4172 83.4931-97.4172L37.3894-97.4172L47.5685-87.1271ZM101.239-68.9559C104.149-68.9559 106.446-71.2095 106.446-74.1443C106.446-76.9738 104.149-79.246 101.239-79.246L55.1539-79.246L65.3081-68.9559ZM118.824-50.7413C121.734-50.7413 123.987-53.0383 123.987-55.9297C123.987-58.8211 121.734-61.0129 118.824-61.0129L72.8318-61.0129L83.0479-50.7413ZM136.557-42.8416L90.553-42.8416C94.07-39.2318 95.6544-36.3967 95.9258-32.5515L136.557-32.5515C139.449-32.5515 141.764-34.8485 141.764-37.7399C141.764-40.588 139.449-42.8416 136.557-42.8416ZM78.1138 19.2006L54.4126-35.8229L49.987-27.354L82.6934-25.5406C87.6023-25.2186 89.9606-30.5607 86.5125-34.126L24.126-98.1647C20.8639-101.464 15.8569-99.5328 15.7949-94.8904L14.9071-6.13063C14.845-1.08565 20.5273 1.07454 23.8515-2.73239L44.9984-26.0961L35.6767-29.0757L58.4493 27.2845C59.6192 30.1751 62.3425 31.1532 64.9173 30.0947L75.6071 25.8731C78.2996 24.8208 79.3022 21.9551 78.1138 19.2006Z"/>
</g>
<g id="Medium-L" transform="matrix(1 0 0 1 1669.81 1556)">
<path d="M82.149-86.9771C84.8564-86.9771 86.9604-89.118 86.9604-91.8135C86.9604-94.484 84.8564-96.555 82.149-96.555L35.897-96.555L45.3521-86.9771ZM99.5508-69.0825C102.269-69.0825 104.41-71.176 104.41-73.9189C104.41-76.5564 102.269-78.6604 99.5508-78.6604L53.3094-78.6604L62.7394-69.0825ZM116.759-51.1405C119.477-51.1405 121.57-53.2694 121.57-55.9769C121.57-58.6724 119.477-60.6959 116.759-60.6959L70.6268-60.6959L80.1148-51.1405ZM134.108-42.8013L87.9917-42.8013C91.3739-39.3547 92.9185-36.8491 93.2619-33.2235L134.108-33.2235C136.815-33.2235 138.967-35.3644 138.967-38.0598C138.967-40.7079 136.815-42.8013 134.108-42.8013ZM76.4527 19.2175L53.2707-34.719L49.5737-27.9407L81.3121-26.2315C85.7188-25.9457 87.8399-30.7252 84.7454-33.957L23.2063-97.4591C20.2737-100.437 15.7492-98.6948 15.7032-94.5185L14.9948-6.77439C14.9487-2.25575 20.0604-0.304548 23.039-3.72983L43.6551-26.3705L36.0406-28.4975L58.3622 26.6592C59.3712 29.1394 61.7808 30.0856 64.0136 29.1397L74.3042 25.0413C76.6265 24.1218 77.4722 21.5859 76.4527 19.2175Z"/>
</g>
<g id="Regular-L" transform="matrix(1 0 0 1 1374.92 1556)">
<path d="M80.3958-86.7814C82.8633-86.7814 84.7479-88.7187 84.7479-91.1586C84.7479-93.5734 82.8633-95.4303 80.3958-95.4303L33.9505-95.4303L42.4611-86.7814ZM97.3487-69.2477C99.8162-69.2477 101.754-71.1323 101.754-73.6249C101.754-76.012 99.8162-77.8966 97.3487-77.8966L50.9034-77.8966L59.3889-69.2477ZM114.065-51.6612C116.533-51.6612 118.418-53.5709 118.418-56.0384C118.418-58.4783 116.533-60.2825 114.065-60.2825L67.7508-60.2825L76.2891-51.6612ZM130.913-42.7488L84.651-42.7488C87.8572-39.5149 89.3498-37.4393 89.7873-34.0999L130.913-34.0999C133.38-34.0999 135.318-36.0372 135.318-38.4771C135.318-40.8642 133.38-42.7488 130.913-42.7488ZM74.286 19.2397L51.7812-33.2792L49.0346-28.7059L79.5104-27.1328C83.2621-26.8941 85.0739-30.9398 82.4404-33.7366L22.0066-96.5387C19.5038-99.0968 15.6087-97.6016 15.5836-94.0333L15.1091-7.61408C15.084-3.78198 19.4514-2.10336 21.9794-5.03084L41.9031-26.7285L36.5154-27.7434L58.2487 25.8435C59.0478 27.7885 61.0481 28.6932 62.8348 27.8941L72.6049 23.9564C74.4443 23.2101 75.0851 21.1043 74.286 19.2397Z"/>
</g>
<g id="Light-L" transform="matrix(1 0 0 1 1081.25 1556)">
<path d="M78.0483-87.144C79.9433-87.144 81.408-88.6424 81.408-90.4906C81.408-92.3519 79.9433-93.7699 78.0483-93.7699L31.2404-93.7699L37.6325-87.144ZM94.0469-70.1638C95.9419-70.1638 97.4403-71.6285 97.4403-73.5104C97.4403-75.3249 95.9419-76.7896 94.0469-76.7896L47.2391-76.7896L53.6442-70.1638ZM109.924-53.1499C111.819-53.1499 113.284-54.6015 113.284-56.4965C113.284-58.3447 111.819-59.729 109.924-59.729L63.1704-59.729L69.6092-53.1499ZM125.855-42.7488L79.1353-42.7488C81.5018-40.3356 82.8036-38.6035 83.4319-36.1229L125.855-36.1229C127.75-36.1229 129.249-37.6213 129.249-39.4695C129.249-41.2841 127.75-42.7488 125.855-42.7488ZM71.3851 18.8962L49.1665-33.1265L46.7443-29.3929L75.9414-28.0107C79.0633-27.8292 80.627-31.2261 78.4516-33.6221L20.7661-95.0882C18.645-97.3028 15.1698-95.9412 15.1828-92.9073L15.4908-9.61804C15.5039-6.41575 19.2224-4.96615 21.3305-7.4165L40.7961-28.1599L36.0191-28.4877L57.5998 24.5076C58.2844 26.1854 60.0557 26.9373 61.6325 26.2527L69.8757 22.9831C71.4861 22.3322 72.0697 20.4935 71.3851 18.8962Z"/>
</g>
<g id="Thin-L" transform="matrix(1 0 0 1 788.569 1556)">
<path d="M74.9436-87.6236C76.0813-87.6236 76.9906-88.5414 76.9906-89.6072C76.9906-90.7364 76.0813-91.5738 74.9436-91.5738L27.6561-91.5738L31.2464-87.6236ZM89.6801-71.3754C90.8178-71.3754 91.7356-72.2848 91.7356-73.3589C91.7356-74.4162 90.8178-75.3256 89.6801-75.3256L42.3926-75.3256L46.0465-71.3754ZM104.446-55.1188C105.584-55.1188 106.494-55.9646 106.494-57.1023C106.494-58.168 105.584-58.997 104.446-58.997L57.1123-58.997L60.7746-55.1188ZM119.166-42.7488L71.8404-42.7488C73.0963-41.421 74.1457-40.1432 75.0263-38.7986L119.166-38.7986C120.304-38.7986 121.222-39.7164 121.222-40.7821C121.222-41.8394 120.304-42.7488 119.166-42.7488ZM67.5483 18.4418L45.7084-32.9246L43.7153-30.3016L71.2212-29.1718C73.5101-29.0661 74.7457-31.6047 73.176-33.4707L19.1254-93.1698C17.5091-94.9301 14.5892-93.7452 14.6527-91.418L15.9957-12.2684C16.0592-9.89912 18.9195-8.75242 20.4722-10.5717L39.3321-30.0531L35.3628-29.4721L56.7416 22.7407C57.2748 24.0651 58.7431 24.6151 60.0422 24.0819L66.2661 21.6957C67.5736 21.171 68.0814 19.6858 67.5483 18.4418Z"/>
</g>
<g id="Ultralight-L" transform="matrix(1 0 0 1 493.92 1556)">
<path d="M73.3533-87.8693C74.1032-87.8693 74.7281-88.4897 74.7281-89.1546C74.7281-89.909 74.1032-90.449 73.3533-90.449L25.8202-90.449L27.9754-87.8693ZM87.4434-71.996C88.1933-71.996 88.8137-72.6209 88.8137-73.2814C88.8137-73.9508 88.1933-74.5757 87.4434-74.5757L39.9103-74.5757L42.1549-71.996ZM101.641-56.1272C102.391-56.1272 103.016-56.6627 103.016-57.4126C103.016-58.0775 102.391-58.622 101.641-58.622L54.0094-58.622L56.2495-56.1272ZM115.74-42.7488L68.104-42.7488C68.791-41.9769 69.7111-40.9319 70.7211-40.169L115.74-40.169C116.49-40.169 117.11-40.7895 117.11-41.4544C117.11-42.1238 116.49-42.7488 115.74-42.7488ZM65.5831 18.2091L43.9372-32.8212L42.1639-30.7671L68.8035-29.7665C70.6658-29.6996 71.7333-31.7986 70.4739-33.3931L18.285-92.1873C16.9273-93.7148 14.2918-92.6204 14.3812-90.6552L16.2543-13.6259C16.3437-11.6833 18.7644-10.6917 20.0327-12.1878L38.5823-31.0227L35.0267-29.9764L56.302 21.8356C56.7576 22.979 58.0708 23.4256 59.2277 22.9701L64.4173 21.0364C65.5697 20.5763 66.0387 19.2721 65.5831 18.2091Z"/>
</g>
<g id="Black-M" transform="matrix(1 0 0 1 2866.5 1126)">
<path d="M71.0085-76.3551C74.0283-76.3551 76.5369-78.8122 76.5369-81.8893C76.5369-84.9607 74.0283-87.4125 71.0085-87.4125L35.9518-87.4125L46.9534-76.3551ZM86.2559-60.9995C89.3327-60.9995 91.7898-63.4511 91.7898-66.5337C91.7898-69.5482 89.3327-72.0569 86.2559-72.0569L51.2562-72.0569L62.2521-60.9995ZM101.59-45.6384C104.667-45.6384 107.118-48.1528 107.118-51.1726C107.118-54.2497 104.667-56.6961 101.59-56.6961L66.5497-56.6961L77.6082-45.6384ZM117.054-41.3405L81.8487-41.3405C85.0024-37.9586 86.3759-34.1327 86.2693-30.2831L117.054-30.2831C120.074-30.2831 122.588-32.7401 122.588-35.8173C122.588-38.8889 120.074-41.3405 117.054-41.3405ZM68.332 6.7328L47.3164-41.486L40.1375-26.2535L70.1704-24.3609C76.4198-23.9395 79.4189-30.8382 75.0306-35.2309L23.1425-87.2331C18.9993-91.3757 12.7062-88.9234 12.5863-83.0388L11.2144-9.95644C11.0944-3.47341 18.2994-0.770464 22.5626-5.57962L41.6026-27.1865L25.5428-33.7788L45.5233 16.0612C47.2433 20.3842 50.9377 21.2588 54.6733 19.8813L64.5503 16.185C68.5198 14.6989 70.1091 10.8222 68.332 6.7328Z"/>
</g>
<g id="Heavy-M" transform="matrix(1 0 0 1 2571.47 1126)">
<path d="M69.2657-76.0264C72.101-76.0264 74.4186-78.3168 74.4186-81.1934C74.4186-84.0559 72.101-86.3277 69.2657-86.3277L34.0391-86.3277L44.2854-76.0264ZM84.1427-61.0145C87.0215-61.0145 89.312-63.2885 89.312-66.1815C89.312-68.9981 87.0215-71.3157 84.1427-71.3157L48.9597-71.3157L59.1918-61.0145ZM99.0271-45.9861C101.906-45.9861 104.18-48.3179 104.18-51.1531C104.18-54.0297 101.906-56.285 99.0271-56.285L63.8475-56.285L74.1396-45.9861ZM114.046-41.2731L78.7517-41.2731C81.8603-37.9877 83.2082-34.639 83.1811-30.9719L114.046-30.9719C116.881-30.9719 119.215-33.2623 119.215-36.1389C119.215-38.9991 116.881-41.2731 114.046-41.2731ZM66.1782 6.835L45.969-39.6734L39.9385-27.0867L68.6277-25.3274C74.173-24.9542 76.8289-31.0517 72.9331-34.973L21.8714-86.365C18.197-90.0439 12.6205-87.879 12.5191-82.6589L11.279-10.6022C11.1776-4.86381 17.568-2.46104 21.3437-6.73466L39.5947-27.3378L26.2579-32.6523L45.5172 15.3028C46.9928 18.9971 50.2119 19.8512 53.4208 18.6374L62.9585 15.0036C66.3583 13.7189 67.6974 10.3362 66.1782 6.835Z"/>
</g>
<g id="Bold-M" transform="matrix(1 0 0 1 2276.64 1126)">
<path d="M67.3161-75.6587C69.945-75.6587 72.0489-77.7628 72.0489-80.415C72.0489-83.0438 69.945-85.1141 67.3161-85.1141L31.8995-85.1141L41.3007-75.6587ZM81.7787-61.0312C84.4362-61.0312 86.5402-63.1066 86.5402-65.7875C86.5402-68.3826 84.4362-70.4866 81.7787-70.4866L46.3907-70.4866L55.7684-61.0312ZM96.1605-46.375C98.8179-46.375 100.893-48.5025 100.893-51.1313C100.893-53.7836 98.8179-55.8253 96.1605-55.8253L60.8246-55.8253L70.2595-46.375ZM110.68-41.1977L75.2872-41.1977C78.3453-38.0203 79.6647-35.2054 79.7264-31.7423L110.68-31.7423C113.309-31.7423 115.442-33.8464 115.442-36.4986C115.442-39.1223 113.309-41.1977 110.68-41.1977ZM63.7688 6.94932L44.4617-37.6458L39.7159-28.0187L66.9021-26.4086C71.6596-26.0892 73.9316-31.2906 70.5868-34.6845L20.4494-85.394C17.2995-88.5541 12.5246-86.7107 12.444-82.2339L11.3513-11.3246C11.2707-6.41917 16.7499-4.35219 19.9803-8.02674L37.3487-27.5071L27.0578-31.3922L45.5104 14.4544C46.7126 17.4455 49.3999 18.2767 52.0196 17.2458L61.1778 13.682C63.9403 12.6227 64.9995 9.79245 63.7688 6.94932Z"/>
</g>
<g id="Semibold-M" transform="matrix(1 0 0 1 1981.22 1126)">
<path d="M65.9721-75.4052C68.4586-75.4052 70.4153-77.3808 70.4153-79.8784C70.4153-82.3461 68.4586-84.2775 65.9721-84.2775L30.4245-84.2775L39.2431-75.4052ZM80.1491-61.0427C82.6538-61.0427 84.6294-62.9812 84.6294-65.5159C84.6294-67.9583 82.6538-69.915 80.1491-69.915L44.6197-69.915L53.4083-61.0427ZM94.1843-46.6431C96.689-46.6431 98.6275-48.6297 98.6275-51.1163C98.6275-53.6139 96.689-55.5083 94.1843-55.5083L58.7407-55.5083L67.5846-46.6431ZM108.36-41.1458L72.8988-41.1458C75.9222-38.0427 77.2218-35.5959 77.3448-32.2735L108.36-32.2735C110.846-32.2735 112.84-34.249 112.84-36.7467C112.84-39.2072 110.846-41.1458 108.36-41.1458ZM62.1078 7.02813L43.4226-36.2479L39.5624-28.6612L65.7124-27.154C69.9268-26.8716 71.9343-31.4552 68.9693-34.4856L19.4692-84.7245C16.6808-87.5271 12.4584-85.9053 12.3922-81.9409L11.4011-11.8226C11.3349-7.49143 16.1858-5.65594 19.0404-8.91749L35.8003-27.6238L27.6092-30.5234L45.5057 13.8696C46.5194 16.3758 48.8401 17.1912 51.0537 16.2865L59.9502 12.7709C62.2734 11.8669 63.1397 9.41761 62.1078 7.02813Z"/>
</g>
<g id="Medium-M" transform="matrix(1 0 0 1 1685.49 1126)">
<path d="M64.953-75.213C67.3317-75.213 69.1767-77.0911 69.1767-79.4715C69.1767-81.817 67.3317-83.6432 64.953-83.6432L29.3061-83.6432L37.683-75.213ZM78.9134-61.0514C81.3023-61.0514 83.1805-62.8861 83.1805-65.3099C83.1805-67.6366 81.3023-69.4816 78.9134-69.4816L43.2768-69.4816L51.6188-61.0514ZM92.6858-46.8464C95.0748-46.8464 96.9095-48.7262 96.9095-51.1049C96.9095-53.4853 95.0748-55.268 92.6858-55.268L57.1606-55.268L65.5564-46.8464ZM106.6-41.1064L71.0879-41.1064C74.0848-38.0597 75.3695-35.8919 75.539-32.6762L106.6-32.6762C108.979-32.6762 110.868-34.5544 110.868-36.9347C110.868-39.2716 108.979-41.1064 106.6-41.1064ZM60.8484 7.08789L42.6347-35.188L39.446-29.1484L64.8104-27.7192C68.613-27.4649 70.4198-31.5801 67.7428-34.3349L18.7259-84.2169C16.2117-86.7483 12.4083-85.2946 12.3529-81.7187L11.4389-12.2002C11.3835-8.30446 15.7582-6.6445 18.3277-9.5929L34.6263-27.7123L28.0274-29.8647L45.5022 13.4261C46.3729 15.5647 48.4157 16.3682 50.3213 15.5591L59.0194 12.0801C61.0095 11.2938 61.7294 9.13338 60.8484 7.08789Z"/>
</g>
<g id="Regular-M" transform="matrix(1 0 0 1 1390.06 1126)">
<path d="M63.6237-74.9623C65.8617-74.9623 67.561-76.7134 67.561-78.9408C67.561-81.127 65.8617-82.8158 63.6237-82.8158L27.8473-82.8158L35.648-74.9623ZM77.3016-61.0628C79.5396-61.0628 81.2907-62.7621 81.2907-65.0413C81.2907-67.2169 79.5396-68.9163 77.3016-68.9163L41.5252-68.9163L49.2847-61.0628ZM90.7313-47.1116C92.9693-47.1116 94.6686-48.8521 94.6686-51.09C94.6686-53.3175 92.9693-54.9545 90.7313-54.9545L55.0996-54.9545L62.9108-47.1116ZM104.306-41.055L68.7258-41.055C71.6883-38.0819 72.9535-36.2781 73.1836-33.2015L104.306-33.2015C106.544-33.2015 108.295-34.9526 108.295-37.18C108.295-39.3557 106.544-41.055 104.306-41.055ZM59.2056 7.16584L41.607-33.8055L39.2942-29.7838L63.6338-28.4563C66.8993-28.2388 68.4443-31.7429 66.1431-34.1382L17.7564-83.5549C15.5998-85.7325 12.3429-84.498 12.3017-81.429L11.4882-12.6927C11.447-9.36493 15.2003-7.93393 17.3981-10.4739L33.0949-27.8278L28.5727-29.0055L45.4975 12.8477C46.1819 14.5068 47.8621 15.2946 49.3659 14.6103L57.8053 11.179C59.3609 10.5464 59.89 8.76266 59.2056 7.16584Z"/>
</g>
<g id="Light-M" transform="matrix(1 0 0 1 1096.08 1126)">
<path d="M61.5191-75.2874C63.2437-75.2874 64.5666-76.6449 64.5666-78.3419C64.5666-80.0319 63.2437-81.3271 61.5191-81.3271L25.4175-81.3271L31.3189-75.2874ZM74.3414-61.8841C76.0661-61.8841 77.4236-63.207 77.4236-64.9386C77.4236-66.6009 76.0661-67.9238 74.3414-67.9238L38.2399-67.9238L44.1343-61.8841ZM87.0182-48.4462C88.7429-48.4462 90.0658-49.7761 90.0658-51.5007C90.0658-53.1977 88.7429-54.4583 87.0182-54.4583L50.993-54.4583L56.922-48.4462ZM99.7713-41.055L63.7807-41.055C65.9903-38.8177 67.0844-37.3219 67.4856-35.0153L99.7713-35.0153C101.496-35.0153 102.853-36.3728 102.853-38.0698C102.853-39.7321 101.496-41.055 99.7713-41.055ZM56.6048 6.85785L39.2628-33.6686L37.2409-30.3998L60.434-29.2434C63.1349-29.0772 64.4575-31.9996 62.5669-34.0355L16.6442-82.2544C14.8298-84.1241 11.9493-83.0093 11.9423-80.4194L11.8304-14.4894C11.8234-11.7262 14.995-10.5006 16.8163-12.6127L32.1024-29.1111L28.1279-29.6729L44.9157 11.6499C45.4974 13.0695 46.9723 13.7204 48.288 13.1387L55.3584 10.3063C56.7087 9.75929 57.1864 8.21511 56.6048 6.85785Z"/>
</g>
<g id="Thin-M" transform="matrix(1 0 0 1 802.98 1126)">
<path d="M58.7355-75.7174C59.7812-75.7174 60.6062-76.5544 60.6062-77.5498C60.6062-78.5835 59.7812-79.3582 58.7355-79.3582L22.204-79.3582L25.5934-75.7174ZM70.4263-62.9704C71.4721-62.9704 72.3091-63.7954 72.3091-64.8028C72.3091-65.7862 71.4721-66.6113 70.4263-66.6113L33.8948-66.6113L37.3225-62.9704ZM82.1074-50.2114C83.1531-50.2114 83.9781-50.9981 83.9781-52.0438C83.9781-53.0393 83.1531-53.802 82.1074-53.802L45.5616-53.802L49.0013-50.2114ZM93.7742-41.055L57.2404-41.055C58.4543-39.7908 59.3221-38.7023 59.9496-37.4141L93.7742-37.4141C94.8199-37.4141 95.657-38.2511 95.657-39.2466C95.657-40.23 94.8199-41.055 93.7742-41.055ZM53.1649 6.4505L36.1625-33.4876L34.5252-31.2145L56.2021-30.2845C58.1561-30.1861 59.1846-32.3391 57.8371-33.8997L15.1732-80.5345C13.8114-81.9968 11.4288-81.0405 11.4671-79.0842L12.283-16.8656C12.3213-14.8493 14.7234-13.8952 16.0469-15.4416L30.7899-30.8084L27.5395-30.5555L44.1463 10.0658C44.5922 11.1685 45.7955 11.6384 46.8622 11.1925L52.1222 9.15217C53.2009 8.71828 53.6108 7.49093 53.1649 6.4505Z"/>
</g>
<g id="Ultralight-M" transform="matrix(1 0 0 1 508.118 1126)">
<path d="M57.3098-75.9376C58.0077-75.9376 58.5777-76.508 58.5777-77.1441C58.5777-77.8417 58.0077-78.3498 57.3098-78.3498L20.558-78.3498L22.6608-75.9376ZM68.421-63.5268C69.119-63.5268 69.6894-64.0968 69.6894-64.7333C69.6894-65.369 69.119-65.939 68.421-65.939L31.6693-65.939L33.8335-63.5268ZM79.5921-51.1155C80.2901-51.1155 80.8601-51.6241 80.8601-52.322C80.8601-52.9581 80.2901-53.4658 79.5921-53.4658L42.7797-53.4658L44.9444-51.1155ZM90.7025-41.055L53.8906-41.055C54.5944-40.2892 55.3463-39.4094 56.0897-38.6428L90.7025-38.6428C91.4005-38.6428 91.9709-39.2132 91.9709-39.8493C91.9709-40.485 91.4005-41.055 90.7025-41.055ZM51.403 6.24185L34.5745-33.3949L33.1343-31.6318L54.0346-30.8177C55.6061-30.7541 56.4838-32.5129 55.4145-33.8302L14.4197-79.6536C13.2898-80.9072 11.1622-80.032 11.2237-78.4003L12.5148-18.0827C12.5763-16.4489 14.5843-15.6338 15.6528-16.8905L30.1176-31.6777L27.2381-31.0075L43.7522 9.25436C44.1286 10.1948 45.1928 10.572 46.132 10.1957L50.4647 8.56101C51.4043 8.18508 51.7794 7.12001 51.403 6.24185Z"/>
</g>
<g id="Black-S" transform="matrix(1 0 0 1 2880.62 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:primary SFSymbolsPreviewWireframe" d="M54.1992-31.25L92.3828-31.25C94.7754-31.25 96.7773-33.2031 96.7773-35.6445C96.7773-38.0859 94.7754-40.0391 92.3828-40.0391L54.1992-40.0391C51.8066-40.0391 49.8047-38.0859 49.8047-35.6445C49.8047-33.2031 51.8066-31.25 54.1992-31.25Z"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M42.1875-43.3594L80.1758-43.3594C82.6172-43.3594 84.5703-45.3613 84.5703-47.7539C84.5703-50.1953 82.6172-52.1484 80.1758-52.1484L42.1875-52.1484C39.7461-52.1484 37.793-50.1953 37.793-47.7539C37.793-45.3613 39.7461-43.3594 42.1875-43.3594Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M30.0781-55.4688L68.0664-55.4688C70.5078-55.4688 72.4609-57.4219 72.4609-59.8633C72.4609-62.2559 70.5078-64.2578 68.0664-64.2578L30.0781-64.2578C27.6367-64.2578 25.6836-62.2559 25.6836-59.8633C25.6836-57.4219 27.6367-55.4688 30.0781-55.4688Z"/>
<path class="monochrome-3 multicolor-3:tintColor hierarchical-3:primary SFSymbolsPreviewWireframe" d="M17.8711-67.5781L56.0547-67.5781C58.4473-67.5781 60.4492-69.5312 60.4492-71.9727C60.4492-74.4141 58.4473-76.3672 56.0547-76.3672L17.8711-76.3672C15.4785-76.3672 13.4766-74.4141 13.4766-71.9727C13.4766-69.5312 15.4785-67.5781 17.8711-67.5781Z"/>
<path class="monochrome-4 multicolor-4:tintColor hierarchical-4:primary SFSymbolsPreviewWireframe" d="M45.7031 15.1367L53.4668 12.2559C60.6934 9.52148 63.916 1.9043 60.791-5.32227L54.7363-19.1406L54.7852-19.1406C66.5527-18.3594 72.7539-32.1777 64.4043-40.4785L23.6328-81.3477C15.7227-89.2578 2.7832-84.1309 2.53906-72.9004L1.46484-15.4785C1.2207-3.66211 14.9902 1.80664 22.998-6.39648L23.0957-6.49414L28.8574 7.86133C31.6406 14.9414 38.7207 17.6758 45.7031 15.1367Z"/>
<path class="monochrome-5 multicolor-5:tintColor hierarchical-5:primary SFSymbolsPreviewWireframe" d="M54.0527-2.39258L37.3535-40.6738L31.3965-27.9785L55.2734-26.4648C60.3516-26.123 62.793-31.7383 59.2285-35.3027L18.457-76.1719C15.0879-79.541 9.96094-77.5391 9.86328-72.7539L8.78906-15.332C8.69141-10.0586 14.5508-7.86133 18.0176-11.7676L33.1543-28.9551L19.7754-34.4727L35.6445 5.12695C37.0605 8.69141 40.0879 9.375 43.1641 8.25195L50.9277 5.37109C54.1992 4.15039 55.5176 0.976562 54.0527-2.39258Z"/>
<path d="M56.0547-67.5781C58.4473-67.5781 60.4492-69.5312 60.4492-71.9727C60.4492-74.4141 58.4473-76.3672 56.0547-76.3672L28.6133-76.3672L37.3535-67.5781ZM68.0664-55.4688C70.5078-55.4688 72.4609-57.4219 72.4609-59.8633C72.4609-62.2559 70.5078-64.2578 68.0664-64.2578L40.6738-64.2578L49.4141-55.4688ZM80.1758-43.3594C82.6172-43.3594 84.5703-45.3613 84.5703-47.7539C84.5703-50.1953 82.6172-52.1484 80.1758-52.1484L52.7344-52.1484L61.5234-43.3594ZM92.3828-40.0391L64.7949-40.0391C67.2363-37.4023 68.3105-34.2773 68.2129-31.25L92.3828-31.25C94.7754-31.25 96.7773-33.2031 96.7773-35.6445C96.7773-38.0859 94.7754-40.0391 92.3828-40.0391ZM54.0527-2.39258L37.3535-40.6738L31.3965-27.9785L55.2734-26.4648C60.3516-26.123 62.793-31.7383 59.2285-35.3027L18.457-76.1719C15.0879-79.541 9.96094-77.5391 9.86328-72.7539L8.78906-15.332C8.69141-10.0586 14.5508-7.86133 18.0176-11.7676L33.1543-28.9551L19.7754-34.4727L35.6445 5.12695C37.0605 8.69141 40.0879 9.375 43.1641 8.25195L50.9277 5.37109C54.1992 4.15039 55.5176 0.976562 54.0527-2.39258Z"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1400.72 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:primary SFSymbolsPreviewWireframe" d="M48.6816-32.7637L84.9609-32.7637C86.9141-32.7637 88.4766-34.3262 88.4766-36.3281C88.4766-38.2812 86.9141-39.7949 84.9609-39.7949L48.6816-39.7949C46.7285-39.7949 45.166-38.2324 45.166-36.2305C45.166-34.2773 46.7285-32.7637 48.6816-32.7637Z"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M37.5488-43.8965L73.877-43.8965C75.8789-43.8965 77.3926-45.459 77.3926-47.4609C77.3926-49.4629 75.8789-50.9277 73.877-50.9277L37.5488-50.9277C35.5469-50.9277 34.0332-49.4141 34.0332-47.3633C34.0332-45.4102 35.5469-43.8965 37.5488-43.8965Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M26.6602-55.0781L63.0371-55.0781C64.9902-55.0781 66.5527-56.5918 66.5527-58.6426C66.5527-60.5957 64.9902-62.1094 63.0371-62.1094L26.6602-62.1094C24.707-62.1094 23.1445-60.5469 23.1445-58.5449C23.1445-56.543 24.707-55.0781 26.6602-55.0781Z"/>
<path class="monochrome-3 multicolor-3:tintColor hierarchical-3:primary SFSymbolsPreviewWireframe" d="M15.625-66.2109L51.8555-66.2109C53.8574-66.2109 55.3711-67.7734 55.3711-69.7754C55.3711-71.7285 53.8574-73.2422 51.8555-73.2422L15.625-73.2422C13.623-73.2422 12.1094-71.7285 12.1094-69.6777C12.1094-67.7246 13.623-66.2109 15.625-66.2109Z"/>
<path class="monochrome-4 multicolor-4:tintColor hierarchical-4:primary SFSymbolsPreviewWireframe" d="M42.627 10.2539L49.8047 7.27539C54.3457 5.37109 56.2012 0.195312 54.248-4.29688L45.9961-23.6816L52.002-23.3398C60.4492-22.9004 64.8926-32.7148 58.8867-38.7695L19.8242-78.0762C14.1113-83.7891 4.73633-80.127 4.63867-72.0215L3.66211-16.7969C3.51562-8.20312 13.8672-4.24805 19.5312-10.6934L23.1445-14.6973L31.2012 5.32227C33.0078 9.96094 38.1836 12.1094 42.627 10.2539Z"/>
<path class="monochrome-5 multicolor-5:tintColor hierarchical-5:primary SFSymbolsPreviewWireframe" d="M48.6328-1.85547L34.7656-34.1797L32.7637-30.6641L52.3926-29.541C55.2246-29.3457 56.543-32.373 54.541-34.4238L15.4297-73.7305C13.623-75.5859 10.8398-74.5605 10.791-71.9238L9.81445-16.6992C9.76562-13.8184 12.9883-12.5977 14.8926-14.7949L27.3926-28.8086L23.584-30.0293L36.9141 3.02734C37.5 4.44336 38.916 5.12695 40.2344 4.54102L47.4609 1.5625C48.8281 1.02539 49.2188-0.488281 48.6328-1.85547Z"/>
<g id="Heavy-S" transform="matrix(1 0 0 1 2584.99 696)">
<path d="M54.8331-67.2554C57.1335-67.2554 59.0202-69.1164 59.0202-71.4541C59.0202-73.7802 57.1335-75.6296 54.8331-75.6296L27.288-75.6296L35.6248-67.2554ZM66.6374-55.3766C68.9751-55.3766 70.836-57.226 70.836-59.5752C70.836-61.864 68.9751-63.7507 66.6374-63.7507L39.1295-63.7507L47.4549-55.3766ZM78.4586-43.4861C80.7963-43.4861 82.6457-45.3844 82.6457-47.6848C82.6457-50.0224 80.7963-51.8603 78.4586-51.8603L50.9481-51.8603L59.3223-43.4861ZM90.3891-39.9814L62.7781-39.9814C65.2772-37.3332 66.3514-34.577 66.2998-31.6073L90.3891-31.6073C92.6895-31.6073 94.5877-33.4682 94.5877-35.8059C94.5877-38.132 92.6895-39.9814 90.3891-39.9814ZM52.543-2.26581L36.5007-39.1411L31.4887-28.6124L54.363-27.1909C58.911-26.8837 61.0873-31.8881 57.8917-35.0953L17.512-75.5957C14.5001-78.6075 9.93789-76.8361 9.85176-72.558L8.80059-15.6547C8.71446-10.946 13.9515-8.9792 17.0495-12.4821L31.5639-28.9205L20.4438-33.4239L35.7137 4.6314C36.9338 7.68878 39.5808 8.37237 42.2306 7.37609L49.879 4.47219C52.6895 3.41282 53.8004 0.630829 52.543-2.26581Z"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 517.833 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:primary SFSymbolsPreviewWireframe" d="M38.6461-37.5771L72.8365-37.5771C73.5182-37.5771 73.9908-38.0952 73.9908-38.6894C73.9908-39.2803 73.5182-39.7949 72.8365-39.7949L38.6461-39.7949C38.0098-39.7949 37.4918-39.3223 37.4918-38.6826C37.4918-38.0918 38.0098-37.5771 38.6461-37.5771Z"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M29.7838-47.4384L63.9776-47.4384C64.6627-47.4384 65.1319-47.9111 65.1319-48.5508C65.1319-49.145 64.6627-49.6109 63.9776-49.6109L29.7838-49.6109C29.1441-49.6109 28.6294-49.1416 28.6294-48.5439C28.6294-47.9077 29.1441-47.4384 29.7838-47.4384Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M20.8931-57.2578L55.0904-57.2578C55.772-57.2578 56.2447-57.7725 56.2447-58.3701C56.2447-58.961 55.772-59.4756 55.0904-59.4756L20.8931-59.4756C20.2569-59.4756 19.7388-58.9575 19.7388-58.3633C19.7388-57.769 20.2569-57.2578 20.8931-57.2578Z"/>
<path class="monochrome-3 multicolor-3:tintColor hierarchical-3:primary SFSymbolsPreviewWireframe" d="M12.0376-67.0737L46.2247-67.0737C46.9097-67.0737 47.379-67.5918 47.379-68.186C47.379-68.8223 46.9097-69.2915 46.2247-69.2915L12.0376-69.2915C11.398-69.2915 10.8833-68.8223 10.8833-68.1792C10.8833-67.5884 11.398-67.0737 12.0376-67.0737Z"/>
<path class="monochrome-4 multicolor-4:tintColor hierarchical-4:primary SFSymbolsPreviewWireframe" d="M38.4493 3.53326L42.085 2.14408C44.4464 1.19339 45.5299-1.53026 44.5303-3.88819L33.9171-28.9492L43.7828-28.5166C47.7799-28.395 50.1344-33.1235 47.3072-36.2266L14.7837-72.3545C11.8862-75.5245 6.64354-73.4063 6.72752-69.1607L7.61276-21.3833C7.69333-17.1943 12.7319-15.3734 15.5806-18.3676L21.8731-24.8237L32.4726 1.05374C33.3711 3.37652 36.0947 4.43512 38.4493 3.53326Z"/>
<path class="monochrome-5 multicolor-5:tintColor hierarchical-5:primary SFSymbolsPreviewWireframe" d="M41.7305-2.67285L28.4991-33.8164L27.2691-32.2988L43.9009-31.6299C45.189-31.5708 45.9625-33.0542 45.005-34.1514L12.4781-70.2793C11.5342-71.3174 9.79542-70.6099 9.83741-69.2447L10.6772-21.4672C10.7192-20.0849 12.4434-19.4091 13.3032-20.4711L24.7588-32.2143L22.3579-31.8003L35.3247-0.151342C35.6382 0.628936 36.5547 0.949252 37.3281 0.635773L40.9673-0.7534C41.7442-1.06346 42.044-1.94139 41.7305-2.67285Z"/>
<g id="Bold-S" transform="matrix(1 0 0 1 2289.5 696)">
<path d="M53.4668-66.8945C55.6641-66.8945 57.4219-68.6523 57.4219-70.874C57.4219-73.0713 55.6641-74.8047 53.4668-74.8047L25.8057-74.8047L33.6914-66.8945ZM65.0391-55.2734C67.2607-55.2734 69.0186-57.0068 69.0186-59.2529C69.0186-61.4258 67.2607-63.1836 65.0391-63.1836L37.4023-63.1836L45.2637-55.2734ZM76.5381-43.6279C78.7598-43.6279 80.4932-45.4102 80.4932-47.6074C80.4932-49.8291 78.7598-51.5381 76.5381-51.5381L48.9502-51.5381L56.8604-43.6279ZM88.1592-39.917L60.5225-39.917C63.0859-37.2559 64.1602-34.9121 64.1602-32.0068L88.1592-32.0068C90.3564-32.0068 92.1387-33.7646 92.1387-35.9863C92.1387-38.1836 90.3564-39.917 88.1592-39.917ZM50.8545-2.12402L35.5469-37.4268L31.5918-29.3213L53.3447-28.0029C57.2998-27.7344 59.1797-32.0557 56.3965-34.8633L16.4551-74.9512C13.8428-77.5635 9.91211-76.0498 9.83887-72.3389L8.81348-16.0156C8.74023-11.9385 13.2812-10.2295 15.9668-13.2812L29.7852-28.8818L21.1914-32.251L35.791 4.07715C36.792 6.56738 39.0137 7.25098 41.1865 6.39648L48.7061 3.4668C51.001 2.58789 51.8799 0.244141 50.8545-2.12402Z"/>
</g>
<g id="Semibold-S" transform="matrix(1 0 0 1 1993.63 696)">
<path d="M52.5248-66.6457C54.651-66.6457 56.3199-68.3324 56.3199-70.4741C56.3199-72.5825 54.651-74.2359 52.5248-74.2359L24.7837-74.2359L32.3584-66.6457ZM63.9371-55.2023C66.0788-55.2023 67.7655-56.8558 67.7655-59.0308C67.7655-61.1236 66.0788-62.7926 63.9371-62.7926L36.2115-62.7926L43.7529-55.2023ZM75.214-43.7257C77.3557-43.7257 79.0091-45.4279 79.0091-47.5541C79.0091-49.6958 77.3557-51.3159 75.214-51.3159L47.5728-51.3159L55.163-43.7257ZM86.6218-39.8726L58.9673-39.8726C61.5752-37.2025 62.6494-35.1432 62.685-32.2823L86.6218-32.2823C88.7479-32.2823 90.4502-33.969 90.4502-36.1107C90.4502-38.2191 88.7479-39.8726 86.6218-39.8726ZM49.6903-2.02627L34.8893-36.2448L31.6629-29.8101L52.6427-28.5628C56.189-28.3209 57.8645-32.1712 55.3656-34.7033L15.7264-74.5068C13.3896-76.8437 9.89434-75.5077 9.82998-72.1878L8.82236-16.2645C8.75801-12.6228 12.8191-11.0915 15.2203-13.8322L28.5588-28.8552L21.7068-31.4423L35.8443 3.69502C36.6942 5.79424 38.6227 6.47783 40.4667 5.72109L47.8974 2.77363C49.8368 2.01914 50.5558-0.0224609 49.6903-2.02627Z"/>
</g>
<g id="Medium-S" transform="matrix(1 0 0 1 1697.56 696)">
<path d="M51.8105-66.457C53.8828-66.457 55.4844-68.0898 55.4844-70.1709C55.4844-72.2119 53.8828-73.8047 51.8105-73.8047L24.0088-73.8047L31.3477-66.457ZM63.1016-55.1484C65.1826-55.1484 66.8154-56.7412 66.8154-58.8623C66.8154-60.8945 65.1826-62.4961 63.1016-62.4961L35.3086-62.4961L42.6074-55.1484ZM74.21-43.7998C76.291-43.7998 77.8838-45.4414 77.8838-47.5137C77.8838-49.5947 76.291-51.1475 74.21-51.1475L46.5283-51.1475L53.876-43.7998ZM85.4561-39.8389L57.7881-39.8389C60.4297-37.1621 61.5039-35.3184 61.5664-32.4912L85.4561-32.4912C87.5283-32.4912 89.1699-34.124 89.1699-36.2051C89.1699-38.2461 87.5283-39.8389 85.4561-39.8389ZM48.8076-1.95215L34.3906-35.3486L31.7168-30.1807L52.1104-28.9873C55.3467-28.7656 56.8672-32.2588 54.584-34.582L15.1738-74.1699C13.0459-76.2979 9.88086-75.0967 9.82324-72.0732L8.8291-16.4531C8.77148-13.1416 12.4688-11.7451 14.6543-14.25L27.6289-28.835L22.0977-30.8291L35.8848 3.40527C36.6201 5.20801 38.3262 5.8916 39.9209 5.20898L47.2842 2.24805C48.9541 1.58789 49.5518-0.224609 48.8076-1.95215Z"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1401.68 696)">
<path d="M50.8789-66.2109C52.8809-66.2109 54.3945-67.7734 54.3945-69.7754C54.3945-71.7285 52.8809-73.2422 50.8789-73.2422L22.998-73.2422L30.0293-66.2109ZM62.0117-55.0781C64.0137-55.0781 65.5762-56.5918 65.5762-58.6426C65.5762-60.5957 64.0137-62.1094 62.0117-62.1094L34.1309-62.1094L41.1133-55.0781ZM72.9004-43.8965C74.9023-43.8965 76.416-45.459 76.416-47.4609C76.416-49.4629 74.9023-50.9277 72.9004-50.9277L45.166-50.9277L52.1973-43.8965ZM83.9355-39.7949L56.25-39.7949C58.9355-37.1094 60.0098-35.5469 60.1074-32.7637L83.9355-32.7637C85.9375-32.7637 87.5-34.3262 87.5-36.3281C87.5-38.2812 85.9375-39.7949 83.9355-39.7949ZM47.6562-1.85547L33.7402-34.1797L31.7871-30.6641L51.416-29.541C54.248-29.3457 55.5664-32.373 53.5645-34.4238L14.4531-73.7305C12.5977-75.5859 9.86328-74.5605 9.81445-71.9238L8.83789-16.6992C8.78906-13.8184 12.0117-12.5977 13.916-14.7949L26.416-28.8086L22.6074-30.0293L35.9375 3.02734C36.5234 4.44336 37.9395 5.12695 39.209 4.54102L46.4844 1.5625C47.8027 1.02539 48.2422-0.488281 47.6562-1.85547Z"/>
</g>
<g id="Light-S" transform="matrix(1 0 0 1 1107.38 696)">
<path d="M49.0171-66.4985C50.565-66.4985 51.7456-67.7129 51.7456-69.2456C51.7456-70.7598 50.565-71.9253 49.0171-71.9253L20.8486-71.9253L26.1997-66.4985ZM59.3931-55.8047C60.9409-55.8047 62.1553-56.9853 62.1553-58.5518C62.1553-60.0508 60.9409-61.2315 59.3931-61.2315L31.2246-61.2315L36.5572-55.8047ZM69.6157-45.0771C71.1636-45.0771 72.3443-46.2764 72.3443-47.8242C72.3443-49.3569 71.1636-50.4888 69.6157-50.4888L41.5332-50.4888L46.8995-45.0771ZM79.9243-39.7949L51.8755-39.7949C53.8951-37.7602 54.8179-36.4702 55.0669-34.3682L79.9243-34.3682C81.4722-34.3682 82.6866-35.5825 82.6866-37.1152C82.6866-38.6143 81.4722-39.7949 79.9243-39.7949ZM45.3555-2.12793L31.6665-34.0586L29.9707-31.209L48.5855-30.2373C50.918-30.0874 52.0396-32.6001 50.4009-34.333L13.4692-72.5801C11.9165-74.1631 9.51514-73.2437 9.49658-71.0308L9.14062-18.2886C9.12207-15.9072 11.8301-14.8681 13.4014-16.687L25.5381-29.9438L22.2139-30.6196L35.4229 1.96778C35.918 3.17189 37.1523 3.73439 38.2554 3.23927L44.3198 0.790533C45.4566 0.329107 45.8506-0.972652 45.3555-2.12793Z"/>
</g>
<g id="Thin-S" transform="matrix(1 0 0 1 813.861 696)">
<path d="M46.5547-66.8789C47.502-66.8789 48.2422-67.6328 48.2422-68.5449C48.2422-69.4785 47.502-70.1836 46.5547-70.1836L18.0059-70.1836L21.1348-66.8789ZM55.9297-56.7656C56.877-56.7656 57.6309-57.5059 57.6309-58.4316C57.6309-59.3301 56.877-60.0703 55.9297-60.0703L27.3809-60.0703L30.5313-56.7656ZM65.2715-46.6387C66.2188-46.6387 66.9591-47.3574 66.9591-48.3047C66.9591-49.2168 66.2188-49.9082 65.2715-49.9082L36.7286-49.9082L39.8927-46.6387ZM74.6192-39.7949L46.0899-39.7949C47.2286-38.6211 47.9513-37.6914 48.4005-36.4902L74.6192-36.4902C75.5665-36.4902 76.3204-37.2441 76.3204-38.1562C76.3204-39.0547 75.5665-39.7949 74.6192-39.7949ZM42.3125-2.48828L28.9239-33.8984L27.5684-31.9297L44.8418-31.1582C46.5137-31.0683 47.3751-32.9004 46.2169-34.2129L12.168-71.0586C11.0156-72.2813 9.05469-71.502 9.07618-69.8496L9.54101-20.3906C9.56249-18.6699 11.5898-17.8711 12.7207-19.1894L24.377-31.4453L21.6934-31.4004L34.7422 0.566426C35.1172 1.49026 36.1113 1.8926 36.9942 1.5176L41.4571-0.230455C42.3536-0.591784 42.6875-1.61327 42.3125-2.48828Z"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 518.785 696)">
<path d="M45.2935-67.0737C45.9332-67.0737 46.4478-67.5918 46.4478-68.186C46.4478-68.8223 45.9332-69.2915 45.2935-69.2915L16.5499-69.2915L18.5406-67.0737ZM54.1558-57.2578C54.7955-57.2578 55.3136-57.7725 55.3136-58.3701C55.3136-58.961 54.7955-59.4756 54.1558-59.4756L25.4122-59.4756L27.4449-57.2578ZM63.0465-47.4384C63.6861-47.4384 64.2008-47.9111 64.2008-48.5508C64.2008-49.145 63.6861-49.6109 63.0465-49.6109L34.2677-49.6109L36.3038-47.4384ZM71.902-39.7949L43.1266-39.7949C43.8141-39.062 44.4342-38.3169 44.986-37.5771L71.902-37.5771C72.5416-37.5771 73.0597-38.0952 73.0597-38.6894C73.0597-39.2803 72.5416-39.7949 71.902-39.7949ZM40.754-2.67285L27.5191-33.8164L26.3379-32.2988L42.9244-31.6299C44.2579-31.5708 44.9859-33.0542 44.0738-34.1514L11.5015-70.2793C10.5542-71.3174 8.81886-70.6099 8.86085-69.2447L9.74609-21.4672C9.78808-20.0849 11.4668-19.4091 12.3721-20.4711L23.7822-32.2143L21.4268-31.8003L34.3936-0.151342C34.707 0.628936 35.5781 0.949252 36.3482 0.635773L39.9908-0.7534C40.7642-1.06346 41.0674-1.94139 40.754-2.67285Z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 22 KiB

After

Width:  |  Height:  |  Size: 41 KiB

View File

@@ -4,21 +4,6 @@
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: "101DC4", point size: 100.0, font version: "20.0d10e1", template writer version: "138.0.0"-->
<style>.monochrome-0 {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow cursorarrow.slash}
.monochrome-1 {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:_slash cursorarrow.slash}
.monochrome-2 {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:_slash cursorarrow.slash}
.multicolor-0:tintColor {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow cursorarrow.slash}
.multicolor-1:tintColor {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:_slash cursorarrow.slash}
.multicolor-2:tintColor {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:_slash cursorarrow.slash}
.hierarchical-0:secondary {-sfsymbols-motion-group:1;-sfsymbols-layer-tags:cursorarrow cursorarrow.slash}
.hierarchical-1:primary {opacity:0.0;-sfsymbols-clear-behind:true;-sfsymbols-motion-group:0;-sfsymbols-layer-tags:_slash cursorarrow.slash}
.hierarchical-2:primary {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:_slash cursorarrow.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"/>
@@ -62,8 +47,8 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN"
<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.6.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 16 or greater</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.2.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 12 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 cursorarrow.slash</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>
@@ -86,28 +71,90 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN"
</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:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="2969.24" x2="2969.24" y1="600.785" y2="720.121"/>
<line id="left-margin-Black-S" style="fill:none;stroke:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="2897.56" x2="2897.56" y1="600.785" y2="720.121"/>
<line id="right-margin-Regular-S" style="fill:none;stroke:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="1479.04" x2="1479.04" y1="600.785" y2="720.121"/>
<line id="left-margin-Regular-S" style="fill:none;stroke:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="1420.65" x2="1420.65" y1="600.785" y2="720.121"/>
<line id="right-margin-Ultralight-S" style="fill:none;stroke:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="587.139" x2="587.139" y1="600.785" y2="720.121"/>
<line id="left-margin-Ultralight-S" style="fill:none;stroke:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="532.283" x2="532.283" y1="600.785" y2="720.121"/>
<line id="right-margin" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1490.32" x2="1490.32" y1="1030.79" y2="1150.12"/>
<line id="left-margin" style="fill:none;stroke:#FF3B30;stroke-width:0.5;opacity:1.0;" x1="1409.36" x2="1409.36" y1="1030.79" y2="1150.12"/>
</g>
<g id="Symbols">
<g id="Black-L" transform="matrix(1 0 0 1 2875.95 1556)">
<path d="M82.9699-22.6897L90.681-22.236C97.9914-21.7427 101.492-29.7836 96.353-34.9467L30.1243-101.47C25.3025-106.315 17.8829-103.466 17.8061-96.5874L17.6728-87.8672ZM29.3924 1.89791L46.4252-17.41L16.9282-46.8654L16.1287-3.20037C15.9923 4.36685 24.3925 7.52993 29.3924 1.89791ZM70.862 34.6085L83.3121 29.8616C85.9282 28.8494 87.6037 26.915 88.1182 24.5908L87.8449 23.9305L37.8806-25.9754L60.4051 30.2073C62.3559 35.0926 66.6024 36.1881 70.862 34.6085ZM-10.1769-86.834L105.293 28.4356C107.499 30.6414 111.116 30.6414 113.243 28.4356C115.372 26.2274 115.45 22.67 113.243 20.463L-2.14702-94.7859C-4.35165-96.9905-7.96865-96.9929-10.1769-94.7859C-12.3047-92.6581-12.3047-88.9618-10.1769-86.834Z"/>
</g>
<g id="Heavy-L" transform="matrix(1 0 0 1 2580.63 1556)">
<path d="M78.9446-23.844L88.7661-23.3075C95.2923-22.8688 98.4226-30.029 93.8266-34.6721L28.7069-100.445C24.4101-104.783 17.7631-102.241 17.6996-96.0925L17.5735-85.0856ZM28.0799 0.491229L44.7566-18.2899L16.9138-46.0723L16.2264-4.05006C16.1126 2.696 23.6089 5.52598 28.0799 0.491229ZM69.4766 33.1811L81.4262 28.5612C83.7953 27.6312 85.2464 25.8021 85.5684 23.6561L84.6912 21.5699L38.8215-24.2552L60.3333 29.3054C62.0232 33.5224 65.7662 34.5732 69.4766 33.1811ZM-9.74553-84.9344L101.872 26.4727C103.975 28.5764 107.423 28.5764 109.458 26.4727C111.498 24.3578 111.567 20.9599 109.458 18.8506L-2.08441-92.5263C-4.1825-94.6244-7.63061-94.6356-9.74553-92.5263C-11.78-90.4918-11.78-86.9689-9.74553-84.9344Z"/>
</g>
<g id="Bold-L" transform="matrix(1 0 0 1 2285.77 1556)">
<path d="M73.7566-25.2583L86.1236-24.6294C91.6815-24.2598 94.3657-30.3437 90.4383-34.3488L26.9474-99.0953C23.2887-102.818 17.5649-100.638 17.5242-95.3809L17.4356-81.4493ZM26.5181-1.41692L42.7641-19.5152L16.9059-45.2974L16.3866-5.28161C16.3034 0.457536 22.7003 2.88011 26.5181-1.41692ZM67.7555 31.3542L78.9338 26.97C81.0104 26.1399 82.1998 24.434 82.2985 22.5033L80.43 18.0835L39.7509-22.5663L60.1592 28.1091C61.5413 31.541 64.6917 32.5231 67.7555 31.3542ZM-9.18541-82.7023L97.7419 24.0147C99.6779 25.9507 102.851 25.9507 104.733 24.0147C106.629 22.0523 106.683 18.9212 104.733 16.9721L-2.12678-89.7069C-4.04949-91.6297-7.22301-91.6561-9.18541-89.7069C-11.0674-87.825-11.0674-84.5843-9.18541-82.7023Z"/>
</g>
<g id="Semibold-L" transform="matrix(1 0 0 1 1990.34 1556)">
<path d="M70.1799-26.2334L84.3018-25.5406C89.1922-25.2186 91.5689-30.5607 88.1025-34.126L25.7344-98.1647C22.5157-101.464 17.4282-99.5328 17.4033-94.8904L17.3406-78.9425ZM25.4414-2.73239L41.3905-20.3598L16.9004-44.7633L16.497-6.13063C16.4349-1.08565 22.0739 1.05606 25.4414-2.73239ZM66.5691 30.0947L77.2155 25.8731C79.0906 25.1119 80.0995 23.4909 80.0442 21.7086L77.4923 15.6801L40.3917-21.402L60.0392 27.2845C61.2091 30.1751 63.9509 31.1098 66.5691 30.0947ZM-8.79926-81.1635L94.895 22.3202C96.7153 24.1404 99.6995 24.1404 101.476 22.3202C103.272 20.4629 103.315 17.5158 101.476 15.677L-2.156-87.7633C-3.9578-89.5651-6.94202-89.6021-8.79926-87.7633C-10.5761-85.9865-10.5761-82.9403-8.79926-81.1635Z"/>
</g>
<g id="Medium-L" transform="matrix(1 0 0 1 1694.6 1556)">
<path d="M67.468-26.9727L82.9205-26.2315C87.3047-25.9457 89.4483-30.7252 86.3313-33.957L24.8147-97.4591C21.9295-100.437 17.3246-98.6948 17.3116-94.5185L17.2685-77.0417ZM24.625-3.72983L40.349-21.0003L16.8962-44.3582L16.5807-6.77439C16.5347-2.25575 21.5989-0.327011 24.625-3.72983ZM65.6694 29.1397L75.9126 25.0413C77.6349 24.3324 78.5069 22.7757 78.335 21.106L75.2649 13.8576L40.8775-20.5192L59.9482 26.6592C60.9572 29.1394 63.3892 30.0382 65.6694 29.1397ZM-8.50647-79.9967L92.7363 21.0353C94.4689 22.7679 97.3096 22.7679 99.0067 21.0353C100.726 19.2578 100.762 16.4501 99.0067 14.695L-2.17815-86.2895C-3.88827-87.9997-6.72896-88.0446-8.50647-86.2895C-10.2036-84.5924-10.2036-81.6938-8.50647-79.9967Z"/>
</g>
<g id="Regular-L" transform="matrix(1 0 0 1 1399.15 1556)">
<path d="M63.9307-27.937L81.1188-27.1328C84.8428-26.8941 86.6823-30.9398 84.0212-33.7366L23.615-96.5387C21.165-99.0968 17.1895-97.6016 17.192-94.0333L17.1746-74.5625ZM23.5601-5.03084L38.9905-21.8357L16.8907-43.8299L16.6899-7.61408C16.6648-3.78198 20.9794-2.13102 23.5601-5.03084ZM64.496 27.8941L74.2133 23.9564C75.7361 23.3156 76.4297 21.843 76.1055 20.3201L72.3595 11.4805L41.5112-19.3677L59.8295 25.8435C60.6286 27.7885 62.6565 28.6404 64.496 27.8941ZM-8.12457-78.4748L89.9206 19.3593C91.5389 20.9776 94.1923 20.9776 95.7854 19.3593C97.4062 17.6858 97.4313 15.06 95.7854 13.4142L-2.20704-84.3672C-3.79759-85.9578-6.45105-86.0131-8.12457-84.3672C-9.71767-82.7741-9.71767-80.0679-8.12457-78.4748Z"/>
</g>
<g id="Light-L" transform="matrix(1 0 0 1 1104.56 1556)">
<path d="M59.0449-28.8149L77.5498-28.0107C80.625-27.8292 82.2354-31.2261 80.0132-33.6221L22.3745-95.0882C20.287-97.3028 16.7314-95.9412 16.7912-92.9073L16.9837-70.8218ZM22.8921-7.4165L38.0935-23.5533L16.948-44.6315L17.0525-9.61804C17.0656-6.41575 20.7504-5.01289 22.8921-7.4165ZM63.2745 26.2527L71.4841 22.9831C72.8924 22.3995 73.5097 20.965 73.1282 19.5567L67.1301 5.44959L40.6333-21.0473L59.1615 24.5076C59.8461 26.1854 61.6641 26.9036 63.2745 26.2527ZM-7.57109-77.7114L87.764 17.489C89.0005 18.7255 91.0432 18.7255 92.2928 17.489C93.5891 16.159 93.576 14.163 92.2928 12.8798L-3.00862-82.2869C-4.19838-83.4767-6.24111-83.5702-7.57109-82.2869C-8.82066-81.0374-8.82066-78.961-7.57109-77.7114Z"/>
</g>
<g id="Thin-L" transform="matrix(1 0 0 1 810.652 1556)">
<path d="M52.5829-29.976L72.8296-29.1718C75.0465-29.0661 76.3541-31.6047 74.7125-33.4707L20.7338-93.1698C19.1259-94.9301 16.1256-93.7452 16.2611-91.418L16.7313-65.8744ZM22.0086-10.5717L36.9071-25.8251L17.0237-45.6917L17.5321-12.2684C17.5956-9.89912 20.4475-8.82441 22.0086-10.5717ZM61.6591 24.0819L67.8745 21.6957C69.1314 21.1879 69.6477 19.8039 69.1905 18.547L60.2139-2.52683L39.4721-23.2685L58.278 22.7407C58.8112 24.0651 60.3515 24.6066 61.6591 24.0819ZM-6.83908-76.7017L84.9117 15.0153C85.6433 15.747 86.8783 15.747 87.6736 15.0153C88.5407 14.1397 88.4772 12.9767 87.6736 12.173L-4.06878-79.5356C-4.72846-80.1953-5.96345-80.3392-6.83908-79.5356C-7.63429-78.7404-7.63429-77.4969-6.83908-76.7017Z"/>
</g>
<g id="Ultralight-L" transform="matrix(1 0 0 1 515.376 1556)">
<path d="M49.2732-30.5707L70.4119-29.7665C72.1893-29.6996 73.3417-31.7986 71.9974-33.3931L19.8934-92.1873C18.5312-93.7148 15.8153-92.6204 15.9896-90.6552L16.602-63.3403ZM21.5561-12.1878L36.2995-26.9887L17.0625-46.2347L17.7777-13.6259C17.8671-11.6833 20.2923-10.7766 21.5561-12.1878ZM60.8316 22.9701L66.0257 21.0364C67.205 20.5673 67.6696 19.2092 67.1736 18.0298L56.6714-6.61231L38.8774-24.4063L57.8255 21.8356C58.2811 22.979 59.6792 23.4301 60.8316 22.9701ZM-6.46415-76.1846L83.4507 13.7483C83.9238 14.2214 84.7451 14.2214 85.3076 13.7483C85.955 13.1054 85.8656 12.369 85.3076 11.811L-4.61178-78.1263C-4.99996-78.5145-5.82124-78.6843-6.46415-78.1263C-7.02664-77.5639-7.02664-76.7471-6.46415-76.1846Z"/>
</g>
<g id="Black-M" transform="matrix(1 0 0 1 2887.98 1126)">
<path d="M67.0777-24.6414L71.4165-24.3609C77.6662-23.9395 80.665-30.8382 76.277-35.2309L24.3886-87.2331C20.2508-91.3757 13.8955-88.9234 13.8324-83.0388L13.7513-77.8939ZM23.8089-5.57962L37.2802-20.9005L13.135-45.0346L12.4608-9.95644C12.3408-3.47341 19.5402-0.770181 23.8089-5.57962ZM55.9249 19.8813L65.7964 16.185C68.02 15.338 69.5007 13.7539 70.0569 11.8158L70.059 11.8158L28.4201-29.766L46.7697 16.0612C48.4897 20.3842 52.1838 21.2533 55.9249 19.8813ZM-8.18015-76.7389L84.2229 15.528C85.9679 17.273 88.8326 17.273 90.5147 15.528C92.1965 13.7836 92.2594 10.9758 90.5147 9.23107L-1.82581-83.0304C-3.57107-84.7756-6.43573-84.7751-8.18015-83.0304C-9.86226-81.3483-9.86226-78.421-8.18015-76.7389Z"/>
</g>
<g id="Heavy-M" transform="matrix(1 0 0 1 2592.43 1126)">
<path d="M63.5935-25.6887L69.8738-25.3274C75.4168-24.9542 78.075-31.0517 74.1769-34.973L23.1175-86.365C19.4595-90.0439 13.8207-87.879 13.7652-82.6589L13.6719-75.5198ZM22.5876-6.73466L35.7317-21.6022L13.1157-44.1853L12.5228-10.6022C12.4214-4.86381 18.7954-2.46331 22.5876-6.73466ZM54.6833 18.6374L64.2046 15.0036C66.1973 14.2316 67.4655 12.747 67.8389 10.9724L67.4585 10.0646L29.4209-27.9294L46.761 15.3028C48.2366 18.9971 51.458 19.8348 54.6833 18.6374ZM-7.80956-74.9523L81.0774 13.7818C82.7577 15.4621 85.5136 15.4621 87.1362 13.7818C88.7611 12.0968 88.8189 9.38685 87.1362 7.70421L-1.69065-81.0134C-3.36875-82.6915-6.12464-82.6961-7.80956-81.0134C-9.43217-79.3908-9.43217-76.5749-7.80956-74.9523Z"/>
</g>
<g id="Bold-M" transform="matrix(1 0 0 1 2297.03 1126)">
<path d="M59.6959-26.8604L68.1482-26.4086C72.9005-26.0892 75.1777-31.2906 71.8278-34.6845L21.6955-85.394C18.5743-88.5541 13.737-86.7107 13.6901-82.2339L13.583-72.864ZM21.2213-8.02674L33.9995-22.3872L13.0942-43.2352L12.5922-11.3246C12.5117-6.41917 17.9622-4.35733 21.2213-8.02674ZM53.2943 17.2458L62.4239 13.682C64.1582 12.9939 65.189 11.6206 65.3578 10.029L64.5494 8.10562L30.5404-25.8748L46.7514 14.4544C47.9535 17.4455 50.646 18.2481 53.2943 17.2458ZM-7.39499-72.9537L77.5586 11.8283C79.1667 13.4364 81.8009 13.4364 83.357 11.8283C84.9182 10.21 84.9702 7.60942 83.357 5.99619L-1.53946-78.7572C-3.14242-80.3602-5.77663-80.3704-7.39499-78.7572C-8.95105-77.2011-8.95105-74.5097-7.39499-72.9537Z"/>
</g>
<g id="Semibold-M" transform="matrix(1 0 0 1 2001.22 1126)">
<path d="M57.0089-27.6681L66.9585-27.154C71.1658-26.8716 73.1804-31.4552 70.2083-34.4856L20.7152-84.7245C17.964-87.5271 13.6793-85.9053 13.6383-81.9409L13.5217-71.0331ZM20.2794-8.91749L32.8053-22.9284L13.0793-42.5802L12.6401-11.8226C12.5738-7.49143 17.3878-5.66305 20.2794-8.91749ZM52.3368 16.2865L61.1963 12.7709C62.7526 12.1407 63.6195 10.844 63.6473 9.37854L62.544 6.75512L31.3122-24.4585L46.7447 13.8696C47.7584 16.3758 50.0862 17.1542 52.3368 16.2865ZM-7.1092-71.5759L75.1328 10.4816C76.691 12.0399 79.2414 12.0399 80.7516 10.4816C82.2688 8.90914 82.3169 6.38407 80.7516 4.81869L-1.43522-77.2018C-2.98639-78.7529-5.53672-78.7671-7.1092-77.2018C-8.61937-75.6916-8.61937-73.086-7.1092-71.5759Z"/>
</g>
<g id="Medium-M" transform="matrix(1 0 0 1 1705.19 1126)">
<path d="M54.9715-28.2805L66.0565-27.7192C69.8505-27.4649 71.6659-31.5801 68.9803-34.3349L19.972-84.2169C17.5012-86.7483 13.6355-85.2946 13.599-81.7187L13.4752-69.6448ZM19.5652-9.5929L31.8998-23.3387L13.068-42.0836L12.6764-12.2002C12.621-8.30446 16.9522-6.6531 19.5652-9.5929ZM51.6108 15.5591L60.2655 12.0801C61.6867 11.4938 62.4295 10.2552 62.3504 8.88538L61.0233 5.73112L31.8974-23.3845L46.7396 13.4261C47.6104 15.5647 49.6618 16.3248 51.6108 15.5591ZM-6.8925-70.5312L73.2934 9.46049C74.8139 10.981 77.3006 10.981 78.776 9.46049C80.26 7.92281 80.3051 5.45495 78.776 3.92587L-1.35619-76.0224C-2.86808-77.5342-5.35481-77.5514-6.8925-76.0224C-8.36788-74.547-8.36788-72.0065-6.8925-70.5312Z"/>
</g>
<g id="Regular-M" transform="matrix(1 0 0 1 1409.36 1126)">
<path d="M52.314-29.0794L64.8799-28.4563C68.1348-28.2388 69.6904-31.7429 67.3786-34.1382L19.0025-83.5549C16.8977-85.7325 13.5784-84.498 13.5478-81.429L13.4146-67.834ZM18.6336-10.4739L30.7187-23.8739L13.0533-41.4358L12.7237-12.6927C12.6825-9.36493 16.3841-7.94448 18.6336-10.4739ZM50.6638 14.6103L59.0514 11.179C60.2965 10.6499 60.8773 9.48721 60.6587 8.24212L59.0399 4.39546L32.6607-21.9837L46.7331 12.8477C47.4174 14.5068 49.1082 15.2429 50.6638 14.6103ZM-6.60984-69.1685L70.8943 8.1286C72.3655 9.5998 74.7692 9.5998 76.1992 8.1286C77.6398 6.63629 77.681 4.24307 76.1992 2.76131L-1.2531-74.484C-2.71376-75.9447-5.11753-75.9658-6.60984-74.484C-8.03984-73.054-8.03984-70.5985-6.60984-69.1685Z"/>
</g>
<g id="Light-M" transform="matrix(1 0 0 1 1114.55 1126)">
<path d="M47.9336-29.8665L61.6801-29.2434C64.3533-29.0772 65.7036-31.9996 63.7853-34.0355L17.8903-82.2544C16.1106-84.1241 13.1678-83.0093 13.1884-80.4194L13.2435-64.4803ZM18.0348-12.6127L29.9145-25.4139L13.1047-42.1545L13.0488-14.4894C13.0418-11.7262 16.1788-10.5282 18.0348-12.6127ZM49.5687 13.1387L56.6045 10.3063C57.7469 9.82857 58.2593 8.70011 57.9894 7.55768L54.3515-1.01159L31.8736-23.4894L46.1342 11.6499C46.7159 13.0695 48.2184 13.6858 49.5687 13.1387ZM-6.11362-68.484L68.9607 6.45172C70.0897 7.58071 71.9459 7.58071 73.0679 6.45172C74.2176 5.26741 74.2246 3.43885 73.0679 2.2822L-1.97176-72.6189C-3.07309-73.7203-4.92931-73.7756-6.11362-72.6189C-7.23563-71.4969-7.23563-69.6061-6.11362-68.484Z"/>
</g>
<g id="Thin-M" transform="matrix(1 0 0 1 820.354 1126)">
<path d="M42.1401-30.9075L57.4482-30.2845C59.3519-30.1861 60.4307-32.3391 59.0329-33.8997L16.4193-80.5345C15.0695-81.9968 12.6246-81.0405 12.7132-79.0842L13.0172-60.0447ZM17.2427-15.4416L28.8509-27.4506L13.1726-43.105L13.4788-16.8656C13.5171-14.8493 15.9072-13.9454 17.2427-15.4416ZM48.1203 11.1925L53.3683 9.15217C54.375 8.7423 54.7968 7.6591 54.459 6.65246L48.1507-8.16286L30.8326-25.4809L45.3421 10.0658C45.788 11.1685 47.0416 11.6264 48.1203 11.1925ZM-5.45734-67.5788L66.4035 4.23393C67.0798 4.9103 68.2119 4.9103 68.9265 4.23393C69.6915 3.45697 69.6532 2.37521 68.9265 1.64855L-2.92225-70.1522C-3.54833-70.7783-4.68038-70.8789-5.45734-70.1522C-6.17199-69.4375-6.17199-68.2935-5.45734-67.5788Z"/>
</g>
<g id="Ultralight-M" transform="matrix(1 0 0 1 524.93 1126)">
<path d="M39.1728-31.4407L55.2806-30.8177C56.7903-30.7541 57.7299-32.5129 56.5987-33.8302L15.6658-79.6536C14.5364-80.9072 12.3464-80.032 12.4698-78.4003L12.9013-57.7728ZM16.837-16.8905L28.3061-28.4939L13.2073-43.5918L13.699-18.0827C13.7605-16.4489 15.7681-15.6957 16.837-16.8905ZM47.3785 10.1957L51.7108 8.56101C52.6479 8.18592 53.0234 7.1259 52.6508 6.18881L44.9747-11.8257L30.2994-26.501L44.9364 9.25436C45.3128 10.1948 46.4389 10.5716 47.3785 10.1957ZM-5.12119-67.1152L65.0936 3.09798C65.5382 3.54253 66.2993 3.54253 66.8053 3.09798C67.3732 2.52966 67.3118 1.83042 66.8053 1.32399L-3.40908-68.8887C-3.79175-69.2714-4.55287-69.3952-5.12119-68.8887C-5.6272-68.3827-5.6272-67.6212-5.12119-67.1152Z"/>
</g>
<g id="Black-S" transform="matrix(1 0 0 1 2897.56 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M55.0293-2.39258L38.3301-40.6738L32.373-27.9785L56.25-26.4648C61.3281-26.123 63.7695-31.7383 60.2051-35.3027L19.4336-76.1719C16.0645-79.541 10.9375-77.5391 10.8398-72.7539L9.76562-15.332C9.66797-10.0586 15.5273-7.86133 18.9941-11.7676L34.1309-28.9551L20.752-34.4727L36.6211 5.12695C38.0371 8.69141 41.0645 9.375 44.1406 8.25195L51.9043 5.37109C55.1758 4.15039 56.4941 0.976562 55.0293-2.39258Z"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M-10.6445-64.1113L62.6953 9.13086C66.4062 12.793 72.4121 12.793 75.9766 9.0332C79.4434 5.46875 79.6387-0.390625 75.9277-4.10156L2.63672-77.3438C-1.02539-81.0059-6.98242-81.0059-10.6445-77.3438C-14.2578-73.7305-14.2578-67.7246-10.6445-64.1113Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M-6.49414-68.2617L66.8457 4.98047C68.2129 6.34766 70.459 6.34766 71.7773 4.98047C73.0957 3.61328 73.1445 1.41602 71.7773 0.0488281L-1.51367-73.1934C-2.88086-74.5605-5.12695-74.5605-6.49414-73.1934C-7.8125-71.875-7.8125-69.5801-6.49414-68.2617Z"/>
<path d="M53.3691-26.6602L56.25-26.4648C61.3281-26.123 63.7695-31.7383 60.2051-35.3027L19.4336-76.1719C16.0645-79.541 10.8887-77.5391 10.8398-72.7539L10.791-69.1895ZM18.9941-11.7676L29.6387-23.877L10.3027-43.2129L9.76562-15.332C9.66797-10.0586 15.5273-7.86133 18.9941-11.7676ZM44.1406 8.25195L51.9043 5.37109C53.7109 4.6875 54.9316 3.41797 55.4199 1.85547L55.4199 1.85547L21.9238-31.5918L36.6211 5.12695C38.0371 8.69141 41.0645 9.375 44.1406 8.25195ZM-6.49414-68.2617L66.8457 4.98047C68.2129 6.34766 70.459 6.34766 71.7773 4.98047C73.0957 3.61328 73.1445 1.41602 71.7773 0.0488281L-1.51367-73.1934C-2.88086-74.5605-5.12695-74.5605-6.49414-73.1934C-7.8125-71.875-7.8125-69.5801-6.49414-68.2617Z"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1420.65 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M48.6328-1.85547L34.7656-34.1797L32.7637-30.6641L52.3926-29.541C55.2246-29.3457 56.543-32.373 54.541-34.4238L15.4297-73.7305C13.623-75.5859 10.8398-74.5605 10.791-71.9238L9.81445-16.6992C9.76562-13.8184 12.9883-12.5977 14.8926-14.7949L27.3926-28.8086L23.584-30.0293L36.9141 3.02734C37.5 4.44336 38.916 5.12695 40.2344 4.54102L47.4609 1.5625C48.8281 1.02539 49.2188-0.488281 48.6328-1.85547Z"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M-8.83789-58.7402L53.0762 2.92969C56.2988 6.10352 61.5234 6.10352 64.6484 2.83203C67.7734-0.341797 67.7734-5.41992 64.6484-8.59375L2.73438-70.3125C-0.439453-73.4863-5.66406-73.4863-8.83789-70.3125C-11.9629-67.1387-11.9629-61.9141-8.83789-58.7402Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M-5.41992-62.1582L56.4941-0.439453C57.8125 0.878906 59.9609 0.878906 61.2305-0.439453C62.5-1.75781 62.5488-3.90625 61.2305-5.22461L-0.634766-66.8945C-1.95312-68.2129-4.10156-68.2129-5.41992-66.8945C-6.68945-65.625-6.68945-63.4277-5.41992-62.1582Z"/>
<g id="Heavy-S" transform="matrix(1 0 0 1 2601.6 696)">
<path d="M50.949-27.4553L55.3396-27.1909C59.8876-26.8837 62.0639-31.8881 58.8682-35.0953L18.4886-75.5957C15.4882-78.6075 10.8771-76.8361 10.8283-72.558L10.7449-67.5876ZM18.0261-12.4821L28.4171-24.2803L10.2797-42.3947L9.77715-15.6547C9.69102-10.946 14.9165-8.9792 18.0261-12.4821ZM43.2187 7.37609L50.8556 4.47219C52.4778 3.84621 53.5257 2.65735 53.8641 1.22162L53.795 1.04876L22.8804-29.8286L36.6902 4.6314C37.9103 7.68878 40.5574 8.36085 43.2187 7.37609ZM-6.2406-66.8212L64.4025 3.70125C65.7582 5.05692 67.9812 5.05692 69.2881 3.70125C70.5949 2.34559 70.6437 0.159849 69.2881-1.19581L-1.30623-71.7067C-2.66189-73.0624-4.88494-73.0624-6.2406-71.7067C-7.54744-70.3999-7.54744-68.128-6.2406-66.8212Z"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 532.283 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:secondary SFSymbolsPreviewWireframe" d="M41.7305-2.67285L28.4991-33.8164L27.2691-32.2988L43.9009-31.6299C45.189-31.5708 45.9625-33.0542 45.005-34.1514L12.4781-70.2793C11.5342-71.3174 9.79542-70.6099 9.83741-69.2447L10.6772-21.4672C10.7192-20.0849 12.4434-19.4091 13.3032-20.4711L24.7588-32.2143L22.3579-31.8003L35.3247-0.151342C35.6382 0.628936 36.5547 0.949252 37.3281 0.635773L40.9673-0.7534C41.7442-1.06346 42.044-1.94139 41.7305-2.67285Z"/>
<path class="monochrome-1 multicolor-1:tintColor hierarchical-1:primary SFSymbolsPreviewWireframe" d="M-6.24953-58.2407L49.2163-2.79195C50.8042-1.11664 53.4405-1.11664 55.0216-2.79878C56.7389-4.42868 56.6934-7.00926 55.0216-8.59375L-0.444311-64.0459C-1.98339-65.585-4.438-65.7213-6.20412-64.1368C-7.87601-62.5069-7.87601-59.8252-6.24953-58.2407Z"/>
<path class="monochrome-2 multicolor-2:tintColor hierarchical-2:primary SFSymbolsPreviewWireframe" d="M-4.10304-60.3418L51.3628-4.88961C51.773-4.47945 52.4683-4.47945 52.9205-4.88961C53.418-5.3906 53.376-6.04051 52.9205-6.49608L-2.54198-61.9449C-2.90673-62.3096-3.60205-62.4004-4.10304-61.9449C-4.55519-61.4927-4.55519-60.794-4.10304-60.3418Z"/>
<g id="Bold-S" transform="matrix(1 0 0 1 2305.74 696)">
<path d="M48.2422-28.3447L54.3213-28.0029C58.2764-27.7344 60.1562-32.0557 57.373-34.8633L17.4316-74.9512C14.8438-77.5635 10.8643-76.0498 10.8154-72.3389L10.6934-65.7959ZM16.9434-13.2812L27.0508-24.7314L10.2539-41.4795L9.79004-16.0156C9.7168-11.9385 14.2334-10.2295 16.9434-13.2812ZM42.1875 6.39648L49.6826 3.4668C51.0986 2.90527 51.9531 1.80664 52.124 0.512695L51.9775 0.146484L23.9502-27.8564L36.7676 4.07715C37.7686 6.56738 39.9902 7.22656 42.1875 6.39648ZM-5.95703-65.21L61.6699 2.27051C63.0127 3.61328 65.21 3.61328 66.5039 2.27051C67.7979 0.927734 67.8467-1.24512 66.5039-2.58789L-1.07422-70.0439C-2.41699-71.3867-4.61426-71.3867-5.95703-70.0439C-7.25098-68.75-7.25098-66.5039-5.95703-65.21Z"/>
</g>
<g id="Semibold-S" transform="matrix(1 0 0 1 2009.61 696)">
<path d="M46.376-28.9579L53.6192-28.5628C57.1655-28.3209 58.841-32.1712 56.3422-34.7033L16.7029-74.5068C14.3994-76.8437 10.8554-75.5077 10.8065-72.1878L10.6578-64.5606ZM16.1969-13.8322L26.1088-25.0425L10.2361-40.8485L9.79893-16.2645C9.73457-12.6228 13.7624-11.0915 16.1969-13.8322ZM41.4766 5.72109L48.8739 2.77363C50.1478 2.25654 50.8689 1.22012 50.9243 0.0239258L50.7245-0.475586L24.6878-26.4968L36.8209 3.69502C37.6708 5.79424 39.5992 6.44453 41.4766 5.72109ZM-5.76152-64.0991L59.7859 1.28408C61.1198 2.61797 63.2993 2.61797 64.5844 1.28408C65.8694-0.0498047 65.9183-2.21377 64.5844-3.54766L-0.914258-68.8976C-2.24814-70.2314-4.42764-70.2314-5.76152-68.8976C-7.04658-67.6125-7.04658-65.3842-5.76152-64.0991Z"/>
</g>
<g id="Medium-S" transform="matrix(1 0 0 1 1713.34 696)">
<path d="M44.9609-29.4229L53.0869-28.9873C56.3232-28.7656 57.8438-32.2588 55.5605-34.582L16.1504-74.1699C14.0625-76.2979 10.8486-75.0967 10.7998-72.0732L10.6309-63.624ZM15.6309-14.25L25.3945-25.2783L10.2227-40.3701L9.80566-16.4531C9.74805-13.1416 13.4053-11.7451 15.6309-14.25ZM40.9375 5.20898L48.2607 2.24805C49.4268 1.76465 50.0469 0.775391 50.0146-0.34668L49.7744-0.947266L25.2471-25.4658L36.8613 3.40527C37.5967 5.20801 39.3027 5.85156 40.9375 5.20898ZM-5.61328-63.2568L58.3574 0.536133C59.6846 1.86328 61.8506 1.86328 63.1289 0.536133C64.4072-0.791016 64.4561-2.94824 63.1289-4.27539L-0.792969-68.0283C-2.12012-69.3555-4.28613-69.3555-5.61328-68.0283C-6.8916-66.75-6.8916-64.5352-5.61328-63.2568Z"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1417.2 696)">
<path d="M43.1152-30.0293L52.3926-29.541C55.2246-29.3457 56.543-32.373 54.541-34.4238L15.4297-73.7305C13.623-75.5859 10.8398-74.5605 10.791-71.9238L10.5957-62.4023ZM14.8926-14.7949L24.4629-25.5859L10.2051-39.7461L9.81445-16.6992C9.76562-13.8184 12.9395-12.5977 14.8926-14.7949ZM40.2344 4.54102L47.4609 1.5625C48.4863 1.12305 48.9746 0.195312 48.8281-0.830078L48.5352-1.5625L25.9766-24.1211L36.9141 3.02734C37.5 4.44336 38.916 5.07812 40.2344 4.54102ZM-5.41992-62.1582L56.4941-0.439453C57.8125 0.878906 59.9609 0.878906 61.2305-0.439453C62.5-1.75781 62.5488-3.90625 61.2305-5.22461L-0.634766-66.8945C-1.95312-68.2129-4.10156-68.2129-5.41992-66.8945C-6.68945-65.625-6.68945-63.4277-5.41992-62.1582Z"/>
</g>
<g id="Light-S" transform="matrix(1 0 0 1 1122.17 696)">
<path d="M39.2403-30.7256L49.562-30.2373C51.8794-30.0874 53.0161-32.6001 51.3623-34.333L14.4458-72.5801C12.9268-74.1631 10.4766-73.2437 10.4731-71.0308L10.4443-59.4356ZM14.3628-16.687L23.7515-26.9482L10.2505-40.3818L10.102-18.2886C10.0835-15.9072 12.7578-14.8833 14.3628-16.687ZM39.2656 3.23927L45.2964 0.790533C46.231 0.39649 46.6587-0.500971 46.4668-1.43554L44.3877-6.34567L25.2803-25.4531L36.3843 1.96778C36.8794 3.17189 38.1289 3.70069 39.2656 3.23927ZM-4.98096-61.5527L54.7837-1.92284C55.7993-0.907212 57.4634-0.907212 58.4605-1.92284C59.4727-2.96874 59.4912-4.61767 58.4605-5.64843L-1.2705-65.2446C-2.27099-66.2451-3.93506-66.2754-4.98096-65.2446C-5.97803-64.2476-5.97803-62.5498-4.98096-61.5527Z"/>
</g>
<g id="Thin-S" transform="matrix(1 0 0 1 827.683 696)">
<path d="M34.1153-31.6465L45.8184-31.1582C47.4551-31.0683 48.3516-32.9004 47.1583-34.2129L13.1445-71.0586C12.0059-72.2813 9.9961-71.502 10.0527-69.8496L10.2441-55.5118ZM13.6621-19.1894L22.8106-28.75L10.3105-41.2226L10.4824-20.3906C10.5039-18.6699 12.5176-17.9062 13.6621-19.1894ZM37.9844 1.5176L42.4336-0.230455C43.2481-0.56444 43.5957-1.42186 43.3438-2.23632L38.9024-12.6718L24.3594-27.2148L35.6836 0.566426C36.0586 1.49026 37.0879 1.87893 37.9844 1.5176ZM-4.4004-60.752L52.5215-3.88474C53.1368-3.2695 54.1602-3.2695 54.7969-3.88474C55.4688-4.57029 55.4473-5.55858 54.7969-6.20898L-2.11132-63.0625C-2.6914-63.6426-3.71485-63.7129-4.4004-63.0625C-5.03712-62.4258-5.03712-61.3887-4.4004-60.752Z"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 532.11 696)">
<path d="M31.4903-32.1181L43.9009-31.6299C45.189-31.5708 45.9625-33.0542 45.005-34.1514L12.4781-70.2793C11.5342-71.3174 9.75001-70.6099 9.83741-69.2447L10.1416-53.502ZM13.3032-20.4711L22.3286-29.6728L10.3413-41.6533L10.6772-21.4672C10.7192-20.0849 12.3945-19.4545 13.3032-20.4711ZM37.3281 0.635773L40.9673-0.7534C41.7203-1.05662 42.0269-1.89354 41.7442-2.64647L36.0929-15.912L23.8877-28.1172L35.3247-0.151342C35.6382 0.628936 36.5547 0.945833 37.3281 0.635773ZM-4.10304-60.3418L51.3628-4.88961C51.773-4.47945 52.4683-4.47945 52.9205-4.88961C53.418-5.3906 53.376-6.04051 52.9205-6.49608L-2.54198-61.9449C-2.90673-62.3096-3.60205-62.4004-4.10304-61.9449C-4.55519-61.4927-4.55519-60.794-4.10304-60.3418Z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 18 KiB

After

Width:  |  Height:  |  Size: 32 KiB

View File

@@ -4,17 +4,6 @@
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: "100ACC", point size: 100.0, font version: "20.0d10e1", template writer version: "138.0.0"-->
<style>.defaults {-sfsymbols-wiggle-style:counterClockwise}
.monochrome-0 {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow}
.multicolor-0:tintColor {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow}
.hierarchical-0:primary {-sfsymbols-motion-group:0;-sfsymbols-layer-tags:cursorarrow}
.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"/>
@@ -58,8 +47,8 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN"
<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.6.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 16 or greater</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.2.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 12 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 cursorarrow</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>
@@ -82,22 +71,90 @@ PUBLIC "-//W3C//DTD SVG 1.1//EN"
</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="2969.24" x2="2969.24" 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="2897.56" x2="2897.56" 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="1482.51" x2="1482.51" 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="1417.18" x2="1417.18" 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="587.337" x2="587.337" 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="532.086" x2="532.086" y1="600.785" y2="720.121"/>
<line id="right-margin" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1490.36" x2="1490.36" y1="1030.79" y2="1150.12"/>
<line id="left-margin" style="fill:none;stroke:#00AEEF;stroke-width:0.5;opacity:1.0;" x1="1409.33" x2="1409.33" y1="1030.79" y2="1150.12"/>
</g>
<g id="Symbols">
<g id="Black-L" transform="matrix(1 0 0 1 2875.94 1556)">
<path d="M87.5677 19.0735L61.3367-41.259L53.351-24.5409L90.681-22.236C97.9926-21.7427 101.492-29.7836 96.3542-34.9467L30.1243-101.47C25.2816-106.315 17.9425-103.466 17.8061-96.5874L16.1299-3.20037C15.9935 4.36685 24.4145 7.53112 29.3936 1.89791L53.1063-24.9192L35.4241-32.0264L60.4063 30.2073C62.3571 35.0926 66.6024 36.2089 70.8412 34.6085L83.3121 29.8616C87.8053 28.1653 89.5768 23.7032 87.5677 19.0735Z"/>
</g>
<g id="Heavy-L" transform="matrix(1 0 0 1 2580.61 1556)">
<path d="M85.0906 19.1456L59.7117-39.3904L52.9312-25.4581L88.7661-23.3075C95.2979-22.8688 98.4226-30.029 93.8322-34.6721L28.7069-100.445C24.3799-104.783 17.8134-102.241 17.6996-96.0925L16.232-4.05006C16.1182 2.696 23.6447 5.53159 28.0855 0.491229L50.9479-25.2091L36.1088-30.9443L60.3389 29.3054C62.0288 33.5224 65.7662 34.6034 69.4464 33.1811L81.4262 28.5612C85.3151 27.08 86.8252 23.1483 85.0906 19.1456Z"/>
</g>
<g id="Bold-L" transform="matrix(1 0 0 1 2285.75 1556)">
<path d="M81.9129 19.1781L57.5271-37.2787L52.1405-26.5803L86.1236-24.6294C91.6947-24.2598 94.3657-30.3437 90.4515-34.3488L26.9474-99.0953C23.2507-102.818 17.6073-100.638 17.5242-95.3809L16.3998-5.28161C16.3166 0.457536 22.7515 2.89334 26.5313-1.41692L48.3783-25.7341L36.805-29.8382L60.1724 28.1091C61.5545 31.541 64.6917 32.5611 67.7176 31.3542L78.9338 26.97C82.1145 25.7427 83.3242 22.442 81.9129 19.1781Z"/>
</g>
<g id="Semibold-L" transform="matrix(1 0 0 1 1990.31 1556)">
<path d="M79.7222 19.2006L56.021-35.8229L51.5954-27.354L84.3018-25.5406C89.2107-25.2186 91.5689-30.5607 88.1209-34.126L25.7344-98.1647C22.4723-101.464 17.4653-99.5328 17.4033-94.8904L16.5155-6.13063C16.4534-1.08565 22.1357 1.07454 25.4599-2.73239L46.6068-26.0961L37.2851-29.0757L60.0577 27.2845C61.2276 30.1751 63.9509 31.1532 66.5257 30.0947L77.2155 25.8731C79.908 24.8208 80.9106 21.9551 79.7222 19.2006Z"/>
</g>
<g id="Medium-L" transform="matrix(1 0 0 1 1694.56 1556)">
<path d="M78.0611 19.2175L54.8791-34.719L51.1821-27.9407L82.9205-26.2315C87.3272-25.9457 89.4483-30.7252 86.3538-33.957L24.8147-97.4591C21.8821-100.437 17.3576-98.6948 17.3116-94.5185L16.6032-6.77439C16.5571-2.25575 21.6688-0.304548 24.6474-3.72983L45.2635-26.3705L37.649-28.4975L59.9706 26.6592C60.9796 29.1394 63.3892 30.0856 65.622 29.1397L75.9126 25.0413C78.2349 24.1218 79.0806 21.5859 78.0611 19.2175Z"/>
</g>
<g id="Regular-L" transform="matrix(1 0 0 1 1399.11 1556)">
<path d="M75.8944 19.2397L53.3896-33.2792L50.643-28.7059L81.1188-27.1328C84.8705-26.8941 86.6823-30.9398 84.0488-33.7366L23.615-96.5387C21.1122-99.0968 17.2171-97.6016 17.192-94.0333L16.7175-7.61408C16.6924-3.78198 21.0598-2.10336 23.5877-5.03084L43.5115-26.7285L38.1237-27.7434L59.8571 25.8435C60.6562 27.7885 62.6565 28.6932 64.4432 27.8941L74.2133 23.9564C76.0527 23.2101 76.6935 21.1043 75.8944 19.2397Z"/>
</g>
<g id="Light-L" transform="matrix(1 0 0 1 1104.52 1556)">
<path d="M72.9935 18.8962L50.7749-33.1265L48.3527-29.3929L77.5498-28.0107C80.6717-27.8292 82.2354-31.2261 80.06-33.6221L22.3745-95.0882C20.2534-97.3028 16.7782-95.9412 16.7912-92.9073L17.0992-9.61804C17.1123-6.41575 20.8308-4.96615 22.9388-7.4165L42.4045-28.1599L37.6275-28.4877L59.2082 24.5076C59.8928 26.1854 61.6641 26.9373 63.2409 26.2527L71.4841 22.9831C73.0945 22.3322 73.6781 20.4935 72.9935 18.8962Z"/>
</g>
<g id="Thin-L" transform="matrix(1 0 0 1 810.611 1556)">
<path d="M69.1567 18.4418L47.3168-32.9246L45.3237-30.3016L72.8296-29.1718C75.1185-29.0661 76.3541-31.6047 74.7844-33.4707L20.7338-93.1698C19.1175-94.9301 16.1976-93.7452 16.2611-91.418L17.6041-12.2684C17.6676-9.89912 20.5279-8.75242 22.0806-10.5717L40.9405-30.0531L36.9712-29.4721L58.35 22.7407C58.8831 24.0651 60.3515 24.6151 61.6506 24.0819L67.8745 21.6957C69.182 21.171 69.6898 19.6858 69.1567 18.4418Z"/>
</g>
<g id="Ultralight-L" transform="matrix(1 0 0 1 515.335 1556)">
<path d="M67.1915 18.2091L45.5456-32.8212L43.7723-30.7671L70.4119-29.7665C72.2742-29.6996 73.3417-31.7986 72.0823-33.3931L19.8934-92.1873C18.5357-93.7148 15.9002-92.6204 15.9896-90.6552L17.8627-13.6259C17.9521-11.6833 20.3727-10.6917 21.6411-12.1878L40.1907-31.0227L36.6351-29.9764L57.9104 21.8356C58.366 22.979 59.6792 23.4256 60.8361 22.9701L66.0257 21.0364C67.1781 20.5763 67.6471 19.2721 67.1915 18.2091Z"/>
</g>
<g id="Black-M" transform="matrix(1 0 0 1 2887.98 1126)">
<path d="M69.5781 6.7328L48.5625-41.486L41.3836-26.2535L71.4165-24.3609C77.6659-23.9395 80.665-30.8382 76.2767-35.2309L24.3886-87.2331C20.2454-91.3757 13.9523-88.9234 13.8324-83.0388L12.4605-9.95644C12.3405-3.47341 19.5455-0.770464 23.8086-5.57962L42.8486-27.1865L26.7889-33.7788L46.7694 16.0612C48.4894 20.3842 52.1838 21.2588 55.9194 19.8813L65.7964 16.185C69.7659 14.6989 71.3552 10.8222 69.5781 6.7328Z"/>
</g>
<g id="Heavy-M" transform="matrix(1 0 0 1 2592.42 1126)">
<path d="M67.4243 6.835L47.2151-39.6734L41.1846-27.0867L69.8738-25.3274C75.4191-24.9542 78.075-31.0517 74.1792-34.973L23.1175-86.365C19.4431-90.0439 13.8666-87.879 13.7652-82.6589L12.5251-10.6022C12.4237-4.86381 18.8141-2.46104 22.5898-6.73466L40.8408-27.3378L27.504-32.6523L46.7633 15.3028C48.2389 18.9971 51.458 19.8512 54.6669 18.6374L64.2046 15.0036C67.6044 13.7189 68.9435 10.3362 67.4243 6.835Z"/>
</g>
<g id="Bold-M" transform="matrix(1 0 0 1 2297.01 1126)">
<path d="M65.0149 6.94932L45.7078-37.6458L40.962-28.0187L68.1482-26.4086C72.9056-26.0892 75.1777-31.2906 71.8329-34.6845L21.6955-85.394C18.5456-88.5541 13.7707-86.7107 13.6901-82.2339L12.5974-11.3246C12.5168-6.41917 17.9959-4.35219 21.2264-8.02674L38.5948-27.5071L28.3039-31.3922L46.7565 14.4544C47.9587 17.4455 50.646 18.2767 53.2657 17.2458L62.4239 13.682C65.1864 12.6227 66.2456 9.79245 65.0149 6.94932Z"/>
</g>
<g id="Semibold-M" transform="matrix(1 0 0 1 2001.19 1126)">
<path d="M63.3539 7.02813L44.6687-36.2479L40.8085-28.6612L66.9585-27.154C71.1729-26.8716 73.1804-31.4552 70.2154-34.4856L20.7152-84.7245C17.9269-87.5271 13.7045-85.9053 13.6383-81.9409L12.6472-11.8226C12.581-7.49143 17.4319-5.65594 20.2865-8.91749L37.0464-27.6238L28.8553-30.5234L46.7518 13.8696C47.7655 16.3758 50.0862 17.1912 52.2998 16.2865L61.1963 12.7709C63.5195 11.8669 64.3857 9.41761 63.3539 7.02813Z"/>
</g>
<g id="Medium-M" transform="matrix(1 0 0 1 1705.16 1126)">
<path d="M62.0945 7.08789L43.8808-35.188L40.6921-29.1484L66.0565-27.7192C69.8591-27.4649 71.6659-31.5801 68.9889-34.3349L19.972-84.2169C17.4578-86.7483 13.6544-85.2946 13.599-81.7187L12.685-12.2002C12.6296-8.30446 17.0043-6.6445 19.5738-9.5929L35.8724-27.7123L29.2735-29.8647L46.7482 13.4261C47.619 15.5647 49.6618 16.3682 51.5674 15.5591L60.2655 12.0801C62.2556 11.2938 62.9755 9.13338 62.0945 7.08789Z"/>
</g>
<g id="Regular-M" transform="matrix(1 0 0 1 1409.33 1126)">
<path d="M60.4517 7.16584L42.8531-33.8055L40.5403-29.7838L64.8799-28.4563C68.1454-28.2388 69.6904-31.7429 67.3892-34.1382L19.0025-83.5549C16.8459-85.7325 13.589-84.498 13.5478-81.429L12.7343-12.6927C12.6931-9.36493 16.4464-7.93393 18.6442-10.4739L34.341-27.8278L29.8188-29.0055L46.7436 12.8477C47.428 14.5068 49.1082 15.2946 50.612 14.6103L59.0514 11.179C60.607 10.5464 61.1361 8.76266 60.4517 7.16584Z"/>
</g>
<g id="Light-M" transform="matrix(1 0 0 1 1114.52 1126)">
<path d="M57.8508 6.85785L40.5089-33.6686L38.487-30.3998L61.6801-29.2434C64.381-29.0772 65.7036-31.9996 63.813-34.0355L17.8903-82.2544C16.0759-84.1241 13.1954-83.0093 13.1884-80.4194L13.0765-14.4894C13.0695-11.7262 16.2411-10.5006 18.0624-12.6127L33.3485-29.1111L29.374-29.6729L46.1618 11.6499C46.7435 13.0695 48.2184 13.7204 49.5341 13.1387L56.6045 10.3063C57.9548 9.75929 58.4325 8.21511 57.8508 6.85785Z"/>
</g>
<g id="Thin-M" transform="matrix(1 0 0 1 820.323 1126)">
<path d="M54.411 6.4505L37.4086-33.4876L35.7713-31.2145L57.4482-30.2845C59.4022-30.1861 60.4307-32.3391 59.0832-33.8997L16.4193-80.5345C15.0575-81.9968 12.6749-81.0405 12.7132-79.0842L13.5291-16.8656C13.5674-14.8493 15.9695-13.8952 17.293-15.4416L32.036-30.8084L28.7856-30.5555L45.3924 10.0658C45.8383 11.1685 47.0416 11.6384 48.1083 11.1925L53.3683 9.15217C54.447 8.71828 54.8569 7.49093 54.411 6.4505Z"/>
</g>
<g id="Ultralight-M" transform="matrix(1 0 0 1 524.898 1126)">
<path d="M52.6491 6.24185L35.8205-33.3949L34.3804-31.6318L55.2806-30.8177C56.8522-30.7541 57.7299-32.5129 56.6606-33.8302L15.6658-79.6536C14.5359-80.9072 12.4083-80.032 12.4698-78.4003L13.7609-18.0827C13.8224-16.4489 15.8304-15.6338 16.8989-16.8905L31.3637-31.6777L28.4842-31.0075L44.9983 9.25436C45.3746 10.1948 46.4389 10.572 47.3781 10.1957L51.7108 8.56101C52.6504 8.18508 53.0255 7.12001 52.6491 6.24185Z"/>
</g>
<g id="Black-S" transform="matrix(1 0 0 1 2897.56 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:primary SFSymbolsPreviewWireframe" d="M55.0293-2.39258L38.3301-40.6738L32.373-27.9785L56.25-26.4648C61.3281-26.123 63.7695-31.7383 60.2051-35.3027L19.4336-76.1719C16.0645-79.541 10.9375-77.5391 10.8398-72.7539L9.76562-15.332C9.66797-10.0586 15.5273-7.86133 18.9941-11.7676L34.1309-28.9551L20.752-34.4727L36.6211 5.12695C38.0371 8.69141 41.0645 9.375 44.1406 8.25195L51.9043 5.37109C55.1758 4.15039 56.4941 0.976562 55.0293-2.39258Z"/>
<path d="M55.0293-2.39258L38.3301-40.6738L32.373-27.9785L56.25-26.4648C61.3281-26.123 63.7695-31.7383 60.2051-35.3027L19.4336-76.1719C16.0645-79.541 10.9375-77.5391 10.8398-72.7539L9.76562-15.332C9.66797-10.0586 15.5273-7.86133 18.9941-11.7676L34.1309-28.9551L20.752-34.4727L36.6211 5.12695C38.0371 8.69141 41.0645 9.375 44.1406 8.25195L51.9043 5.37109C55.1758 4.15039 56.4941 0.976562 55.0293-2.39258Z"/>
</g>
<g id="Heavy-S" transform="matrix(1 0 0 1 2601.6 696)">
<path d="M53.5196-2.26581L37.4773-39.1411L32.4652-28.6124L55.3396-27.1909C59.8876-26.8837 62.0639-31.8881 58.8682-35.0953L18.4886-75.5957C15.4767-78.6075 10.9145-76.8361 10.8283-72.558L9.77715-15.6547C9.69102-10.946 14.9281-8.9792 18.0261-12.4821L32.5405-28.9205L21.4204-33.4239L36.6902 4.6314C37.9103 7.68878 40.5574 8.37237 43.2071 7.37609L50.8556 4.47219C53.6661 3.41282 54.777 0.630829 53.5196-2.26581Z"/>
</g>
<g id="Bold-S" transform="matrix(1 0 0 1 2305.72 696)">
<path d="M51.8311-2.12402L36.5234-37.4268L32.5684-29.3213L54.3213-28.0029C58.2764-27.7344 60.1562-32.0557 57.373-34.8633L17.4316-74.9512C14.8193-77.5635 10.8887-76.0498 10.8154-72.3389L9.79004-16.0156C9.7168-11.9385 14.2578-10.2295 16.9434-13.2812L30.7617-28.8818L22.168-32.251L36.7676 4.07715C37.7686 6.56738 39.9902 7.25098 42.1631 6.39648L49.6826 3.4668C51.9775 2.58789 52.8564 0.244141 51.8311-2.12402Z"/>
</g>
<g id="Semibold-S" transform="matrix(1 0 0 1 2009.59 696)">
<path d="M50.6669-2.02627L35.8658-36.2448L32.6395-29.8101L53.6192-28.5628C57.1655-28.3209 58.841-32.1712 56.3422-34.7033L16.7029-74.5068C14.3661-76.8437 10.8709-75.5077 10.8065-72.1878L9.79893-16.2645C9.73457-12.6228 13.7957-11.0915 16.1969-13.8322L29.5354-28.8552L22.6834-31.4423L36.8209 3.69502C37.6708 5.79424 39.5992 6.47783 41.4433 5.72109L48.8739 2.77363C50.8134 2.01914 51.5323-0.0224609 50.6669-2.02627Z"/>
</g>
<g id="Medium-S" transform="matrix(1 0 0 1 1713.32 696)">
<path d="M49.7842-1.95215L35.3672-35.3486L32.6934-30.1807L53.0869-28.9873C56.3232-28.7656 57.8438-32.2588 55.5605-34.582L16.1504-74.1699C14.0225-76.2979 10.8574-75.0967 10.7998-72.0732L9.80566-16.4531C9.74805-13.1416 13.4453-11.7451 15.6309-14.25L28.6055-28.835L23.0742-30.8291L36.8613 3.40527C37.5967 5.20801 39.3027 5.8916 40.8975 5.20898L48.2607 2.24805C49.9307 1.58789 50.5283-0.224609 49.7842-1.95215Z"/>
</g>
<g id="Regular-S" transform="matrix(1 0 0 1 1417.18 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:primary SFSymbolsPreviewWireframe" d="M48.6328-1.85547L34.7168-34.1797L32.7637-30.6641L52.3926-29.541C55.2246-29.3457 56.543-32.373 54.541-34.4238L15.4297-73.7305C13.5742-75.5859 10.8398-74.5605 10.791-71.9238L9.81445-16.6992C9.76562-13.8184 12.9883-12.5977 14.8926-14.7949L27.3926-28.8086L23.584-30.0293L36.9141 3.02734C37.5 4.44336 38.916 5.12695 40.1855 4.54102L47.4609 1.5625C48.7793 1.02539 49.2188-0.488281 48.6328-1.85547Z"/>
<path d="M48.6328-1.85547L34.7168-34.1797L32.7637-30.6641L52.3926-29.541C55.2246-29.3457 56.543-32.373 54.541-34.4238L15.4297-73.7305C13.5742-75.5859 10.8398-74.5605 10.791-71.9238L9.81445-16.6992C9.76562-13.8184 12.9883-12.5977 14.8926-14.7949L27.3926-28.8086L23.584-30.0293L36.9141 3.02734C37.5 4.44336 38.916 5.12695 40.1855 4.54102L47.4609 1.5625C48.7793 1.02539 49.2188-0.488281 48.6328-1.85547Z"/>
</g>
<g id="Light-S" transform="matrix(1 0 0 1 1122.15 696)">
<path d="M46.332-2.12793L32.6431-34.0586L30.9473-31.209L49.562-30.2373C51.8946-30.0874 53.0161-32.6001 51.3775-34.333L14.4458-72.5801C12.8931-74.1631 10.4917-73.2437 10.4731-71.0308L10.1172-18.2886C10.0986-15.9072 12.8066-14.8681 14.3779-16.687L26.5147-29.9438L23.1904-30.6196L36.3994 1.96778C36.8945 3.17189 38.1289 3.73439 39.2319 3.23927L45.2964 0.790533C46.4331 0.329107 46.8272-0.972652 46.332-2.12793Z"/>
</g>
<g id="Thin-S" transform="matrix(1 0 0 1 827.659 696)">
<path d="M43.2891-2.48828L29.9004-33.8984L28.545-31.9297L45.8184-31.1582C47.4903-31.0683 48.3516-32.9004 47.1934-34.2129L13.1445-71.0586C11.9922-72.2813 10.0313-71.502 10.0527-69.8496L10.5176-20.3906C10.5391-18.6699 12.5664-17.8711 13.6973-19.1894L25.3535-31.4453L22.6699-31.4004L35.7188 0.566426C36.0938 1.49026 37.0879 1.8926 37.9707 1.5176L42.4336-0.230455C43.3301-0.591784 43.6641-1.61327 43.2891-2.48828Z"/>
</g>
<g id="Ultralight-S" transform="matrix(1 0 0 1 532.086 696)">
<path class="monochrome-0 multicolor-0:tintColor hierarchical-0:primary SFSymbolsPreviewWireframe" d="M41.7305-2.67285L28.4957-33.8164L27.3145-32.2988L43.9009-31.6299C45.2345-31.5708 45.9625-33.0542 45.0504-34.1514L12.4781-70.2793C11.5308-71.3174 9.79542-70.6099 9.83741-69.2447L10.7226-21.4672C10.7646-20.0849 12.4434-19.4091 13.3486-20.4711L24.7588-32.2143L22.4033-31.8003L35.3701-0.151342C35.6836 0.628936 36.5547 0.949252 37.3247 0.635773L40.9673-0.7534C41.7408-1.06346 42.044-1.94139 41.7305-2.67285Z"/>
<path d="M41.7305-2.67285L28.4957-33.8164L27.3145-32.2988L43.9009-31.6299C45.2345-31.5708 45.9625-33.0542 45.0504-34.1514L12.4781-70.2793C11.5308-71.3174 9.79542-70.6099 9.83741-69.2447L10.7226-21.4672C10.7646-20.0849 12.4434-19.4091 13.3486-20.4711L24.7588-32.2143L22.4033-31.8003L35.3701-0.151342C35.6836 0.628936 36.5547 0.949252 37.3247 0.635773L40.9673-0.7534C41.7408-1.06346 42.044-1.94139 41.7305-2.67285Z"/>
</g>
</g>
</svg>

Before

Width:  |  Height:  |  Size: 15 KiB

After

Width:  |  Height:  |  Size: 25 KiB

View File

@@ -0,0 +1,23 @@
{
"images" : [
{
"filename" : "pinch.png",
"idiom" : "universal",
"scale" : "1x"
},
{
"filename" : "pinch.png",
"idiom" : "universal",
"scale" : "2x"
},
{
"filename" : "pinch.png",
"idiom" : "universal",
"scale" : "3x"
}
],
"info" : {
"author" : "xcode",
"version" : 1
}
}

View File

Binary file not shown.

After

Width:  |  Height:  |  Size: 9.8 KiB

View File

@@ -0,0 +1,71 @@
//
// Preferences.swift
// DockPhobia
//
// Created by neon443 on 29/05/2025.
//
import Foundation
import AppKit
import Sparkle
class DPPreferencesWindowController: NSWindowController {
var mouseTracker: MouseTracker?
var settings: DPSettingsModel?
var updater: SPUStandardUpdaterController?
@IBOutlet weak var mouseRadio: NSButton!
@IBOutlet weak var dockRadio: NSButton!
@IBOutlet weak var updateCheckButton: NSButton!
@IBOutlet weak var smallDeathzoneToggle: NSButton!
@IBOutlet weak var quitbutton: NSButton!
override init(window: NSWindow?) {
super.init(window: window)
}
required init?(coder: NSCoder) {
super.init(coder: coder)
}
convenience init(mouseTracker: MouseTracker, settings: DPSettingsModel, updater: SPUStandardUpdaterController) {
self.init(windowNibName: "Preferences")
self.mouseTracker = mouseTracker
self.settings = settings
self.updater = updater
}
override func windowDidLoad() {
smallDeathzoneToggle.state = NSControl.StateValue(
settings!.settings.checkFullscreen ? 1 : 0
)
dockRadio.state = NSControl.StateValue(
settings!.settings.moveMouseInstead ? 0 : 1
)
mouseRadio.state = NSControl.StateValue(
settings!.settings.moveMouseInstead ? 1 : 0
)
}
@IBAction func checkUpdates(_ sender: Any) {
updater?.checkForUpdates(nil)
}
@IBAction func MoveTypeSelect(_ sender: Any) {
if dockRadio.state.rawValue == 1 {
settings?.settings.moveMouseInstead = false
} else {
settings?.settings.moveMouseInstead = true
}
refreshMenus()
}
@IBAction func quit(_ sender: Any) {
NSApplication.shared.terminate(nil)
}
@IBAction func smallDeathzoneToggle(_ sender: Any) {
settings?.settings.checkFullscreen.toggle()
}
}

51
DockPhobia/SkyHigh.swift Normal file
View File

@@ -0,0 +1,51 @@
//
// SkyHigh.swift
// DockPhobia
//
// Created by neon443 on 28/05/2025.
//
import Foundation
import Cocoa
class SkyHigh {
private var window: NSWindow
private var x = 1
private var timer: Timer?
var settings: DPSettingsModel
init(settings: DPSettingsModel) {
self.settings = settings
self.window = NSWindow(
contentRect: CGRect(
x: NSScreen.mainFrameWidth/2,
y: NSScreen.mainFrameHeight/2,
width: 100,
height: 100
),
styleMask: .borderless,
backing: .buffered,
defer: false
)
window.backgroundColor = .init(srgbRed: 1, green: 1, blue: 1, alpha: 0)
window.contentView = NSImageView(image: NSImage(named: "pinch")!)
window.isOpaque = false
window.level = NSWindow.Level.statusBar + 1
window.ignoresMouseEvents = true
window.hasShadow = true
window.collectionBehavior = NSWindow.CollectionBehavior.canJoinAllSpaces.union(.stationary)
}
func move(to: CGPoint) {
self.window.setFrameOrigin(to)
}
func show() {
window.orderFront(nil)
}
func hide() {
window.orderOut(nil)
}
}

View File

@@ -414,19 +414,6 @@
</items>
<point key="canvasLocation" x="200" y="121"/>
</menu>
<menu id="ONX-cK-IuT">
<items>
<menuItem title="Item 1" id="6WY-F1-Y6A">
<modifierMask key="keyEquivalentModifierMask"/>
</menuItem>
<menuItem title="Item 2" id="Vew-Im-EWB">
<modifierMask key="keyEquivalentModifierMask"/>
</menuItem>
<menuItem title="Item 3" id="dVu-3p-SKK">
<modifierMask key="keyEquivalentModifierMask"/>
</menuItem>
</items>
<point key="canvasLocation" x="-160" y="321"/>
</menu>
<userDefaultsController representsSharedInstance="YES" id="KLo-tU-Av3"/>
</objects>
</document>

View File

@@ -0,0 +1,122 @@
<?xml version="1.0" encoding="UTF-8"?>
<document type="com.apple.InterfaceBuilder3.Cocoa.XIB" version="3.0" toolsVersion="23727" targetRuntime="MacOSX.Cocoa" propertyAccessControl="none" useAutolayout="YES" customObjectInstantitationMethod="direct">
<dependencies>
<deployment identifier="macosx"/>
<plugIn identifier="com.apple.InterfaceBuilder.CocoaPlugin" version="23727"/>
<capability name="documents saved in the Xcode 8 format" minToolsVersion="8.0"/>
</dependencies>
<objects>
<customObject id="-2" userLabel="File's Owner" customClass="DPPreferencesWindowController" customModule="DockPhobia" customModuleProvider="target">
<connections>
<outlet property="dockRadio" destination="SML-7D-HqD" id="4QO-vf-9ma"/>
<outlet property="mouseRadio" destination="xQV-F8-e5K" id="2cJ-W4-uYY"/>
<outlet property="quitbutton" destination="7DK-yJ-I42" id="fDP-cd-88f"/>
<outlet property="smallDeathzoneToggle" destination="TNA-PK-KGC" id="rTv-BF-hv6"/>
<outlet property="updateCheckButton" destination="bnA-Vz-L4F" id="16N-mV-Agw"/>
<outlet property="window" destination="85c-fa-xeM" id="B5X-4l-mcR"/>
</connections>
</customObject>
<customObject id="-1" userLabel="First Responder" customClass="FirstResponder"/>
<customObject id="-3" userLabel="Application" customClass="NSObject"/>
<window title="DockPhobia Preferences" allowsToolTipsWhenApplicationIsInactive="NO" autorecalculatesKeyViewLoop="NO" restorable="NO" releasedWhenClosed="NO" visibleAtLaunch="NO" frameAutosaveName="" animationBehavior="default" id="85c-fa-xeM">
<windowStyleMask key="styleMask" titled="YES" closable="YES" miniaturizable="YES" texturedBackground="YES"/>
<rect key="contentRect" x="683" y="389" width="423" height="186"/>
<rect key="screenRect" x="0.0" y="0.0" width="1710" height="1069"/>
<view key="contentView" wantsLayer="YES" id="wEz-dE-A27">
<rect key="frame" x="0.0" y="0.0" width="423" height="186"/>
<autoresizingMask key="autoresizingMask" widthSizable="YES" heightSizable="YES"/>
<subviews>
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="bnA-Vz-L4F">
<rect key="frame" x="13" y="8" width="159" height="32"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMaxY="YES"/>
<buttonCell key="cell" type="push" title="Check for Updates..." bezelStyle="rounded" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="XBJ-UK-x73">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
<connections>
<action selector="checkUpdates:" target="-2" id="AX2-PR-jPb"/>
</connections>
</button>
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="SML-7D-HqD">
<rect key="frame" x="87" y="149" width="67" height="18"/>
<autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
<buttonCell key="cell" type="radio" title="Dock" bezelStyle="regularSquare" imagePosition="left" alignment="left" inset="2" id="Lxi-8n-jY3">
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
<connections>
<action selector="MoveTypeSelect:" target="-2" id="PP9-SC-6xN"/>
</connections>
</button>
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="xQV-F8-e5K">
<rect key="frame" x="87" y="121" width="67" height="24"/>
<autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
<buttonCell key="cell" type="radio" title="Mouse" bezelStyle="regularSquare" imagePosition="left" inset="2" id="86E-Km-LZ7">
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
<connections>
<action selector="MoveTypeSelect:" target="-2" id="dfh-6B-58k"/>
</connections>
</button>
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="U5P-YK-hTs">
<rect key="frame" x="18" y="150" width="60" height="16"/>
<autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
<textFieldCell key="cell" lineBreakMode="clipping" title="Move the" id="4wN-vE-QCE">
<font key="font" metaFont="system"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="vyh-vP-oAh">
<rect key="frame" x="160" y="150" width="245" height="16"/>
<autoresizingMask key="autoresizingMask" flexibleMinY="YES"/>
<textFieldCell key="cell" lineBreakMode="clipping" title="when the cursor gets close to the Dock." id="y3x-vy-qbu">
<font key="font" metaFont="system"/>
<color key="textColor" name="labelColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="TNA-PK-KGC">
<rect key="frame" x="18" y="81" width="216" height="18"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<buttonCell key="cell" type="check" title="Smaller deathzone in fullscreen" bezelStyle="regularSquare" imagePosition="left" state="on" inset="2" id="28Y-O4-oAQ">
<behavior key="behavior" changeContents="YES" doesNotDimImage="YES" lightByContents="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
<connections>
<action selector="smallDeathzoneToggle:" target="-2" id="zlu-Ca-p04"/>
</connections>
</button>
<textField focusRingType="none" horizontalHuggingPriority="251" verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="3Pd-Xt-fTA">
<rect key="frame" x="18" y="60" width="136" height="14"/>
<autoresizingMask key="autoresizingMask" flexibleMaxX="YES" flexibleMinY="YES"/>
<textFieldCell key="cell" lineBreakMode="clipping" title="May reduce performance" id="Orh-5m-Me2">
<font key="font" metaFont="smallSystem"/>
<color key="textColor" name="secondaryLabelColor" catalog="System" colorSpace="catalog"/>
<color key="backgroundColor" name="textBackgroundColor" catalog="System" colorSpace="catalog"/>
</textFieldCell>
</textField>
<button verticalHuggingPriority="750" fixedFrame="YES" translatesAutoresizingMaskIntoConstraints="NO" id="7DK-yJ-I42">
<rect key="frame" x="343" y="14" width="60" height="19"/>
<autoresizingMask key="autoresizingMask" flexibleMinX="YES" flexibleMaxY="YES"/>
<buttonCell key="cell" type="roundRect" title="Quit" bezelStyle="roundedRect" alignment="center" borderStyle="border" imageScaling="proportionallyDown" inset="2" id="jbc-01-FBx">
<behavior key="behavior" pushIn="YES" lightByBackground="YES" lightByGray="YES"/>
<font key="font" metaFont="system"/>
</buttonCell>
<connections>
<action selector="quit:" target="-2" id="483-Pc-QoS"/>
</connections>
</button>
</subviews>
</view>
<toolbar key="toolbar" implicitIdentifier="3DBA283D-9272-4F9B-8799-AA8355F2BE79" autosavesConfiguration="NO" showsBaselineSeparator="NO" displayMode="iconAndLabel" sizeMode="regular" id="MWN-PM-U77">
<allowedToolbarItems/>
<defaultToolbarItems/>
</toolbar>
<contentBorderThickness minY="0.0" maxY="0.0"/>
<point key="canvasLocation" x="-213.5" y="-103"/>
</window>
<userDefaultsController representsSharedInstance="YES" id="zYZ-vc-iso"/>
</objects>
</document>

View File

Binary file not shown.

Before

Width:  |  Height:  |  Size: 560 KiB

View File

Binary file not shown.

BIN
DockPhobiaPy/.DS_Store vendored
View File

Binary file not shown.

View File

@@ -1,9 +1,14 @@
# DockPhobia
<div align="center">
<br/>
<p>
<img src="https://github.com/neon443/DockPhobia/blob/main/DockPhobia/Resources/Assets.xcassets/AppIcon.appiconset/DockPhobiaAppIcon.png?raw=true" title="dockphobia" alt="dockphobia icon" width="200" />
<img src="https://github.com/neon443/DockPhobia/blob/main/DockPhobia/Resources/Assets.xcassets/AppIcon.appiconset/DockPhobiaAppIcon.png?raw=true" title="dockphobia" alt="dockphobia icon" width="150" />
</p>
<h3>DockPhobia</h3>
<p>
<a href="https://github.com/neon443/DockPhobia/releases/latest/download/DockPhobia.dmg">
download
<img alt="GitHub Release" src="https://img.shields.io/github/v/release/neon443/DockPhobia">
</a>
</p>
<p>
make your Dock scared of the mouse
@@ -12,14 +17,19 @@
made by neon443
</a>
</p>
<p>
<a href="https://github.com/neon443/DockPhobia/releases">
download
</a>
</p>
<br/>
</div>
![GitHub Downloads (all assets, all releases)](https://img.shields.io/github/downloads/neon443/DockPhobia/total)
<div align="center">
<a href="https://shipwrecked.hackclub.com/?t=ghrm" target="_blank">
<img src="https://hc-cdn.hel1.your-objectstorage.com/s/v3/739361f1d440b17fc9e2f74e49fc185d86cbec14_badge.png"
alt="This project is part of Shipwrecked, the world's first hackathon on an island!"
style="width: 25%;">
</a>
</div>
Have you ever wanted to use your Dock?
well now you cant