├── .github
└── workflows
│ └── build.yml
├── .gitignore
├── .swiftpm
└── xcode
│ ├── package.xcworkspace
│ └── contents.xcworkspacedata
│ └── xcshareddata
│ └── xcschemes
│ └── SFSymbol.xcscheme
├── Info.plist
├── LICENSE
├── Package.swift
├── README.md
├── SFSymbol.h
├── SFSymbol.podspec
├── SFSymbol.xcodeproj
├── SFSymbolTests_Info.plist
├── SFSymbol_Info.plist
├── project.pbxproj
├── project.xcworkspace
│ ├── contents.xcworkspacedata
│ └── xcshareddata
│ │ ├── IDEWorkspaceChecks.plist
│ │ └── WorkspaceSettings.xcsettings
└── xcshareddata
│ └── xcschemes
│ ├── SFSymbol-Package.xcscheme
│ └── SFSymbol.xcscheme
├── SFSymbol
├── Extensions
│ ├── Image+SFSymbol.swift
│ ├── NSImage+SFSymbol.swift
│ └── UIImage+SFSymbol.swift
├── Protocols
│ └── SymbolImage.swift
├── SFSymbol1
│ └── SFSymbol.swift
├── SFSymbol2
│ └── SFSymbol2.swift
├── SFSymbol3
│ └── SFSymbol3.swift
├── SFSymbol4
│ └── SFSymbol4.swift
├── SFSymbol5
│ └── SFSymbol5.swift
└── SFSymbol6
│ └── SFSymbol6.swift
├── Sources
└── SFSymbol
│ ├── Extensions
│ ├── Image+SFSymbol.swift
│ ├── NSImage+SFSymbol.swift
│ └── UIImage+SFSymbol.swift
│ ├── Protocols
│ └── SymbolImage.swift
│ ├── SFSymbol1
│ └── SFSymbol.swift
│ ├── SFSymbol2
│ └── SFSymbol2.swift
│ ├── SFSymbol3
│ └── SFSymbol3.swift
│ ├── SFSymbol4
│ └── SFSymbol4.swift
│ ├── SFSymbol5
│ └── SFSymbol5.swift
│ └── SFSymbol6
│ └── SFSymbol6.swift
└── Tests
└── SFSymbolTests
├── ImageExtensionTests.swift
└── UIImageExtensionTests.swift
/.github/workflows/build.yml:
--------------------------------------------------------------------------------
1 | name: Xcode build smoke test
2 | run-name: Build smoke test by ${{ github.actor }}
3 | on:
4 | pull_request:
5 | branches: [ "main" ]
6 | jobs:
7 | smoke_test_build:
8 | name: Smoke Test (Build only)
9 | runs-on: macos-14
10 | env:
11 | DEVELOPER_DIR: /Applications/Xcode_16.app
12 | steps:
13 | - uses: actions/checkout@v4
14 | - name: Build
15 | run: xcodebuild -scheme SFSymbol -target SFSymbol
16 | - name: Test
17 | run: xcodebuild test -scheme SFSymbol -target SFSymbolTests
18 |
--------------------------------------------------------------------------------
/.gitignore:
--------------------------------------------------------------------------------
1 | # Xcode
2 | #
3 | # gitignore contributors: remember to update Global/Xcode.gitignore, Objective-C.gitignore & Swift.gitignore
4 | .DS_Store
5 | ## Build generated
6 | .build/
7 | build/
8 | DerivedData/
9 |
10 | ## Various settings
11 | *.pbxuser
12 | !default.pbxuser
13 | *.mode1v3
14 | !default.mode1v3
15 | *.mode2v3
16 | !default.mode2v3
17 | *.perspectivev3
18 | !default.perspectivev3
19 | xcuserdata/
20 |
21 | ## Other
22 | *.moved-aside
23 | *.xccheckout
24 | *.xcscmblueprint
25 |
26 | ## Obj-C/Swift specific
27 | *.hmap
28 | *.ipa
29 | *.dSYM.zip
30 | *.dSYM
31 |
32 | # CocoaPods
33 | #
34 | # We recommend against adding the Pods directory to your .gitignore. However
35 | # you should judge for yourself, the pros and cons are mentioned at:
36 | # https://guides.cocoapods.org/using/using-cocoapods.html#should-i-check-the-pods-directory-into-source-control
37 | #
38 | # Pods/
39 |
40 | # Carthage
41 | #
42 | # Add this line if you want to avoid checking in source code from Carthage dependencies.
43 | # Carthage/Checkouts
44 |
45 | Carthage/Build
46 |
47 | # fastlane
48 | #
49 | # It is recommended to not store the screenshots in the git repo. Instead, use fastlane to re-generate the
50 | # screenshots whenever they are needed.
51 | # For more information about the recommended setup visit:
52 | # https://docs.fastlane.tools/best-practices/source-control/#source-control
53 |
54 | fastlane/report.xml
55 | fastlane/Preview.html
56 | fastlane/screenshots/**/*.png
57 | fastlane/test_output
58 |
59 | # Code Injection
60 | #
61 | # After new code Injection tools there's a generated folder /iOSInjectionProject
62 | # https://github.com/johnno1962/injectionforxcode
63 |
64 | iOSInjectionProject/
65 |
--------------------------------------------------------------------------------
/.swiftpm/xcode/package.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/.swiftpm/xcode/xcshareddata/xcschemes/SFSymbol.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
9 |
10 |
16 |
22 |
23 |
24 |
25 |
26 |
32 |
33 |
35 |
41 |
42 |
43 |
44 |
45 |
55 |
56 |
62 |
63 |
69 |
70 |
71 |
72 |
74 |
75 |
78 |
79 |
80 |
--------------------------------------------------------------------------------
/Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | CFBundleDevelopmentRegion
6 | $(DEVELOPMENT_LANGUAGE)
7 | CFBundleExecutable
8 | $(EXECUTABLE_NAME)
9 | CFBundleIdentifier
10 | $(PRODUCT_BUNDLE_IDENTIFIER)
11 | CFBundleInfoDictionaryVersion
12 | 6.0
13 | CFBundleName
14 | $(PRODUCT_NAME)
15 | CFBundlePackageType
16 | $(PRODUCT_BUNDLE_PACKAGE_TYPE)
17 | CFBundleShortVersionString
18 | 1.0
19 | CFBundleVersion
20 | $(CURRENT_PROJECT_VERSION)
21 |
22 |
23 |
--------------------------------------------------------------------------------
/LICENSE:
--------------------------------------------------------------------------------
1 | MIT License
2 |
3 | Copyright (c) 2019 Nicholas Maccharoli
4 |
5 | Permission is hereby granted, free of charge, to any person obtaining a copy
6 | of this software and associated documentation files (the "Software"), to deal
7 | in the Software without restriction, including without limitation the rights
8 | to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | copies of the Software, and to permit persons to whom the Software is
10 | furnished to do so, subject to the following conditions:
11 |
12 | The above copyright notice and this permission notice shall be included in all
13 | copies or substantial portions of the Software.
14 |
15 | THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN THE
21 | SOFTWARE.
22 |
--------------------------------------------------------------------------------
/Package.swift:
--------------------------------------------------------------------------------
1 | // swift-tools-version: 6.0
2 | // The swift-tools-version declares the minimum version of Swift required to build this package.
3 |
4 | import PackageDescription
5 |
6 | let package = Package(
7 | name: "SFSymbol",
8 | platforms: [
9 | .macOS(.v11), .iOS(.v15), .tvOS(.v15), .watchOS(.v6),
10 | ],
11 | products: [
12 | .library(
13 | name: "SFSymbol",
14 | targets: ["SFSymbol"]
15 | ),
16 | ],
17 | dependencies: [],
18 | targets: [
19 | .target(
20 | name: "SFSymbol",
21 | dependencies: []
22 | ),
23 | .testTarget(
24 | name: "SFSymbolTests",
25 | dependencies: ["SFSymbol"]
26 | ),
27 | ]
28 | )
29 |
--------------------------------------------------------------------------------
/README.md:
--------------------------------------------------------------------------------
1 | # SFSymbol: SFSymbols 6 through 1.1
2 | 
3 | [](https://github.com/apple/swift-package-manager)
4 | [](#cocoapods)
5 | [](https://github.com/Carthage/Carthage)
6 | [](http://doge.mit-license.org)
7 |
8 | All the SFSymbols at your fingertips (SFSymbol 6 through 1.1)
9 |
10 | 
11 |
12 |
13 | ## Usage
14 | `SFSymbol6`, `SFSymbol5` and so on are `enum`s that contain the identifier strings of all of apple's SFSymbols version 6 through 1.1.
15 |
16 | For example `SFSymbol6.Camera.cameraMeteringPartial.image` produces a SwiftUI `Image` or omitting the `.image` part will return an enum case with the associated raw value of `"camera.metering.partial"`.
17 |
18 |
19 | https://github.com/user-attachments/assets/96eb227f-e34e-442c-b42f-e5826973030c
20 |
21 |
22 | #### SwiftUI
23 |
24 | ```swift
25 | SFSymbol6.Camera.cameraMeteringPartial.image
26 | ```
27 |
28 | *or*
29 |
30 | #### UIKit
31 |
32 | ```swift
33 | UIImage(symbol: SFSymbol6.Camera.cameraMeteringPartial)
34 | ```
35 |
36 |
37 | ## Installation
38 |
39 | ### Swift Package Manager (Preferred)
40 | Simply add a package to your project passing in `https://github.com/Nirma/SFSymbol` and your preferred version i.e `3.0`
41 |
42 | ### Cocoapods
43 | Just add this line to your podfile:
44 |
45 | ```shell
46 | pod 'SFSymbol'
47 | ```
48 |
49 | ### Carthage
50 |
51 | ```shell
52 | github "Nirma/SFSymbol"
53 | ```
54 |
55 | ## Contributing to this project
56 | **Contributions are highly welcome**
57 |
58 | If there is something you wish to fix about the project, or wish to add any other kind of enhancements,
59 | propose to add to the project. Please feel free to send over a pull request
60 | or open an issue for this project.
61 |
62 | ## License
63 |
64 | SFSymbol is released under the MIT license. [See LICENSE](https://github.com/Nirma/SFSymbol/blob/master/LICENSE) for details.
65 |
--------------------------------------------------------------------------------
/SFSymbol.h:
--------------------------------------------------------------------------------
1 | //
2 | // SFSymbol.h
3 | // SFSymbol
4 | //
5 | // Created by Nicholas Maccharoli on 2019/10/28.
6 | // Copyright © 2019 Nicholas Maccharoli. All rights reserved.
7 | //
8 |
9 | #import
10 |
11 | //! Project version number for SFSymbol.
12 | FOUNDATION_EXPORT double SFSymbolVersionNumber;
13 |
14 | //! Project version string for SFSymbol.
15 | FOUNDATION_EXPORT const unsigned char SFSymbolVersionString[];
16 |
17 | // In this header, you should import all the public headers of your framework using statements like #import
18 |
19 |
20 |
--------------------------------------------------------------------------------
/SFSymbol.podspec:
--------------------------------------------------------------------------------
1 | Pod::Spec.new do |s|
2 |
3 | s.platform = :ios
4 | s.ios.deployment_target = '13.0'
5 | s.name = "SFSymbol"
6 | s.summary = "SFSymbol - All the SFSymbols 6 -> 1.1 via code completion at your fingertips"
7 | s.requires_arc = true
8 | s.version = "3.0.0"
9 |
10 | s.license = { :type => "MIT", :file => "LICENSE" }
11 |
12 | s.author = { "Nicholas Maccharoli" => "nicko@screaming-cactus.com" }
13 |
14 | s.homepage = "https://github.com/Nirma/SFSymbol"
15 |
16 | s.source = { :git => "https://github.com/Nirma/SFSymbol.git",
17 | :tag => "#{s.version}" }
18 |
19 | s.source_files = "Sources/SFSymbol/*.{swift}"
20 | s.swift_version = "6.0"
21 | end
22 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/SFSymbolTests_Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CFBundleDevelopmentRegion
5 | en
6 | CFBundleExecutable
7 | $(EXECUTABLE_NAME)
8 | CFBundleIdentifier
9 | $(PRODUCT_BUNDLE_IDENTIFIER)
10 | CFBundleInfoDictionaryVersion
11 | 6.0
12 | CFBundleName
13 | $(PRODUCT_NAME)
14 | CFBundlePackageType
15 | BNDL
16 | CFBundleShortVersionString
17 | 1.0
18 | CFBundleSignature
19 | ????
20 | CFBundleVersion
21 | $(CURRENT_PROJECT_VERSION)
22 | NSPrincipalClass
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/SFSymbol_Info.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 | CFBundleDevelopmentRegion
5 | en
6 | CFBundleExecutable
7 | $(EXECUTABLE_NAME)
8 | CFBundleIdentifier
9 | $(PRODUCT_BUNDLE_IDENTIFIER)
10 | CFBundleInfoDictionaryVersion
11 | 6.0
12 | CFBundleName
13 | $(PRODUCT_NAME)
14 | CFBundlePackageType
15 | FMWK
16 | CFBundleShortVersionString
17 | 1.0
18 | CFBundleSignature
19 | ????
20 | CFBundleVersion
21 | $(CURRENT_PROJECT_VERSION)
22 | NSPrincipalClass
23 |
24 |
25 |
26 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/project.pbxproj:
--------------------------------------------------------------------------------
1 | // !$*UTF8*$!
2 | {
3 | archiveVersion = 1;
4 | classes = {
5 | };
6 | objectVersion = 54;
7 | objects = {
8 |
9 | /* Begin PBXAggregateTarget section */
10 | "SFSymbol::SFSymbolPackageTests::ProductTarget" /* SFSymbolPackageTests */ = {
11 | isa = PBXAggregateTarget;
12 | buildConfigurationList = OBJ_36 /* Build configuration list for PBXAggregateTarget "SFSymbolPackageTests" */;
13 | buildPhases = (
14 | );
15 | dependencies = (
16 | OBJ_39 /* PBXTargetDependency */,
17 | );
18 | name = SFSymbolPackageTests;
19 | productName = SFSymbolPackageTests;
20 | };
21 | /* End PBXAggregateTarget section */
22 |
23 | /* Begin PBXBuildFile section */
24 | 4E53C3ED2CD3A73E0058EA82 /* SymbolImage.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3DE2CD3A73E0058EA82 /* SymbolImage.swift */; };
25 | 4E53C3EE2CD3A73E0058EA82 /* SFSymbol3.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3E42CD3A73E0058EA82 /* SFSymbol3.swift */; };
26 | 4E53C3EF2CD3A73E0058EA82 /* Image+SFSymbol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3DA2CD3A73E0058EA82 /* Image+SFSymbol.swift */; };
27 | 4E53C3F02CD3A73E0058EA82 /* SFSymbol5.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3E82CD3A73E0058EA82 /* SFSymbol5.swift */; };
28 | 4E53C3F12CD3A73E0058EA82 /* SFSymbol4.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3E62CD3A73E0058EA82 /* SFSymbol4.swift */; };
29 | 4E53C3F22CD3A73E0058EA82 /* SFSymbol2.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3E22CD3A73E0058EA82 /* SFSymbol2.swift */; };
30 | 4E53C3F32CD3A73E0058EA82 /* SFSymbol6.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3EA2CD3A73E0058EA82 /* SFSymbol6.swift */; };
31 | 4E53C3F42CD3A73E0058EA82 /* NSImage+SFSymbol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3DB2CD3A73E0058EA82 /* NSImage+SFSymbol.swift */; };
32 | 4E53C3F52CD3A73E0058EA82 /* UIImage+SFSymbol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3DC2CD3A73E0058EA82 /* UIImage+SFSymbol.swift */; };
33 | 4E53C3F62CD3A73E0058EA82 /* SFSymbol.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3E02CD3A73E0058EA82 /* SFSymbol.swift */; };
34 | 4E53C3FB2CD3A77B0058EA82 /* UIImageExtensionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3F82CD3A77B0058EA82 /* UIImageExtensionTests.swift */; };
35 | 4E53C3FC2CD3A77B0058EA82 /* ImageExtensionTests.swift in Sources */ = {isa = PBXBuildFile; fileRef = 4E53C3F72CD3A77B0058EA82 /* ImageExtensionTests.swift */; };
36 | OBJ_34 /* Package.swift in Sources */ = {isa = PBXBuildFile; fileRef = OBJ_6 /* Package.swift */; };
37 | OBJ_48 /* SFSymbol.framework in Frameworks */ = {isa = PBXBuildFile; fileRef = "SFSymbol::SFSymbol::Product" /* SFSymbol.framework */; };
38 | /* End PBXBuildFile section */
39 |
40 | /* Begin PBXContainerItemProxy section */
41 | 4E70E3E9237048A7004B4A4D /* PBXContainerItemProxy */ = {
42 | isa = PBXContainerItemProxy;
43 | containerPortal = OBJ_1 /* Project object */;
44 | proxyType = 1;
45 | remoteGlobalIDString = "SFSymbol::SFSymbol";
46 | remoteInfo = SFSymbol;
47 | };
48 | 4E70E3EA237048A8004B4A4D /* PBXContainerItemProxy */ = {
49 | isa = PBXContainerItemProxy;
50 | containerPortal = OBJ_1 /* Project object */;
51 | proxyType = 1;
52 | remoteGlobalIDString = "SFSymbol::SFSymbolTests";
53 | remoteInfo = SFSymbolTests;
54 | };
55 | /* End PBXContainerItemProxy section */
56 |
57 | /* Begin PBXFileReference section */
58 | 4E53C3DA2CD3A73E0058EA82 /* Image+SFSymbol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "Image+SFSymbol.swift"; sourceTree = ""; };
59 | 4E53C3DB2CD3A73E0058EA82 /* NSImage+SFSymbol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "NSImage+SFSymbol.swift"; sourceTree = ""; };
60 | 4E53C3DC2CD3A73E0058EA82 /* UIImage+SFSymbol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = "UIImage+SFSymbol.swift"; sourceTree = ""; };
61 | 4E53C3DE2CD3A73E0058EA82 /* SymbolImage.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SymbolImage.swift; sourceTree = ""; };
62 | 4E53C3E02CD3A73E0058EA82 /* SFSymbol.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SFSymbol.swift; sourceTree = ""; };
63 | 4E53C3E22CD3A73E0058EA82 /* SFSymbol2.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SFSymbol2.swift; sourceTree = ""; };
64 | 4E53C3E42CD3A73E0058EA82 /* SFSymbol3.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SFSymbol3.swift; sourceTree = ""; };
65 | 4E53C3E62CD3A73E0058EA82 /* SFSymbol4.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SFSymbol4.swift; sourceTree = ""; };
66 | 4E53C3E82CD3A73E0058EA82 /* SFSymbol5.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SFSymbol5.swift; sourceTree = ""; };
67 | 4E53C3EA2CD3A73E0058EA82 /* SFSymbol6.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = SFSymbol6.swift; sourceTree = ""; };
68 | 4E53C3F72CD3A77B0058EA82 /* ImageExtensionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = ImageExtensionTests.swift; sourceTree = ""; };
69 | 4E53C3F82CD3A77B0058EA82 /* UIImageExtensionTests.swift */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.swift; path = UIImageExtensionTests.swift; sourceTree = ""; };
70 | 4E70E3EB23704F30004B4A4D /* SFSymbol.h */ = {isa = PBXFileReference; lastKnownFileType = sourcecode.c.h; path = SFSymbol.h; sourceTree = ""; };
71 | 4E70E3EC23704F3C004B4A4D /* Info.plist */ = {isa = PBXFileReference; lastKnownFileType = text.plist.xml; path = Info.plist; sourceTree = ""; };
72 | OBJ_19 /* LICENSE */ = {isa = PBXFileReference; lastKnownFileType = text; path = LICENSE; sourceTree = ""; };
73 | OBJ_20 /* README.md */ = {isa = PBXFileReference; lastKnownFileType = net.daringfireball.markdown; path = README.md; sourceTree = ""; };
74 | OBJ_21 /* SFSymbol.podspec */ = {isa = PBXFileReference; lastKnownFileType = text; path = SFSymbol.podspec; sourceTree = ""; };
75 | OBJ_6 /* Package.swift */ = {isa = PBXFileReference; explicitFileType = sourcecode.swift; path = Package.swift; sourceTree = ""; };
76 | "SFSymbol::SFSymbol::Product" /* SFSymbol.framework */ = {isa = PBXFileReference; explicitFileType = wrapper.framework; path = SFSymbol.framework; sourceTree = BUILT_PRODUCTS_DIR; };
77 | "SFSymbol::SFSymbolTests::Product" /* SFSymbolTests.xctest */ = {isa = PBXFileReference; explicitFileType = wrapper.cfbundle; path = SFSymbolTests.xctest; sourceTree = BUILT_PRODUCTS_DIR; };
78 | /* End PBXFileReference section */
79 |
80 | /* Begin PBXFrameworksBuildPhase section */
81 | OBJ_28 /* Frameworks */ = {
82 | isa = PBXFrameworksBuildPhase;
83 | buildActionMask = 0;
84 | files = (
85 | );
86 | runOnlyForDeploymentPostprocessing = 0;
87 | };
88 | OBJ_47 /* Frameworks */ = {
89 | isa = PBXFrameworksBuildPhase;
90 | buildActionMask = 0;
91 | files = (
92 | OBJ_48 /* SFSymbol.framework in Frameworks */,
93 | );
94 | runOnlyForDeploymentPostprocessing = 0;
95 | };
96 | /* End PBXFrameworksBuildPhase section */
97 |
98 | /* Begin PBXGroup section */
99 | 4E53C3DD2CD3A73E0058EA82 /* Extensions */ = {
100 | isa = PBXGroup;
101 | children = (
102 | 4E53C3DA2CD3A73E0058EA82 /* Image+SFSymbol.swift */,
103 | 4E53C3DB2CD3A73E0058EA82 /* NSImage+SFSymbol.swift */,
104 | 4E53C3DC2CD3A73E0058EA82 /* UIImage+SFSymbol.swift */,
105 | );
106 | path = Extensions;
107 | sourceTree = "";
108 | };
109 | 4E53C3DF2CD3A73E0058EA82 /* Protocols */ = {
110 | isa = PBXGroup;
111 | children = (
112 | 4E53C3DE2CD3A73E0058EA82 /* SymbolImage.swift */,
113 | );
114 | path = Protocols;
115 | sourceTree = "";
116 | };
117 | 4E53C3E12CD3A73E0058EA82 /* SFSymbol1 */ = {
118 | isa = PBXGroup;
119 | children = (
120 | 4E53C3E02CD3A73E0058EA82 /* SFSymbol.swift */,
121 | );
122 | path = SFSymbol1;
123 | sourceTree = "";
124 | };
125 | 4E53C3E32CD3A73E0058EA82 /* SFSymbol2 */ = {
126 | isa = PBXGroup;
127 | children = (
128 | 4E53C3E22CD3A73E0058EA82 /* SFSymbol2.swift */,
129 | );
130 | path = SFSymbol2;
131 | sourceTree = "";
132 | };
133 | 4E53C3E52CD3A73E0058EA82 /* SFSymbol3 */ = {
134 | isa = PBXGroup;
135 | children = (
136 | 4E53C3E42CD3A73E0058EA82 /* SFSymbol3.swift */,
137 | );
138 | path = SFSymbol3;
139 | sourceTree = "";
140 | };
141 | 4E53C3E72CD3A73E0058EA82 /* SFSymbol4 */ = {
142 | isa = PBXGroup;
143 | children = (
144 | 4E53C3E62CD3A73E0058EA82 /* SFSymbol4.swift */,
145 | );
146 | path = SFSymbol4;
147 | sourceTree = "";
148 | };
149 | 4E53C3E92CD3A73E0058EA82 /* SFSymbol5 */ = {
150 | isa = PBXGroup;
151 | children = (
152 | 4E53C3E82CD3A73E0058EA82 /* SFSymbol5.swift */,
153 | );
154 | path = SFSymbol5;
155 | sourceTree = "";
156 | };
157 | 4E53C3EB2CD3A73E0058EA82 /* SFSymbol6 */ = {
158 | isa = PBXGroup;
159 | children = (
160 | 4E53C3EA2CD3A73E0058EA82 /* SFSymbol6.swift */,
161 | );
162 | path = SFSymbol6;
163 | sourceTree = "";
164 | };
165 | 4E53C3EC2CD3A73E0058EA82 /* SFSymbol */ = {
166 | isa = PBXGroup;
167 | children = (
168 | 4E53C3DD2CD3A73E0058EA82 /* Extensions */,
169 | 4E53C3DF2CD3A73E0058EA82 /* Protocols */,
170 | 4E53C3E12CD3A73E0058EA82 /* SFSymbol1 */,
171 | 4E53C3E32CD3A73E0058EA82 /* SFSymbol2 */,
172 | 4E53C3E52CD3A73E0058EA82 /* SFSymbol3 */,
173 | 4E53C3E72CD3A73E0058EA82 /* SFSymbol4 */,
174 | 4E53C3E92CD3A73E0058EA82 /* SFSymbol5 */,
175 | 4E53C3EB2CD3A73E0058EA82 /* SFSymbol6 */,
176 | );
177 | path = SFSymbol;
178 | sourceTree = "";
179 | };
180 | 4E53C3F92CD3A77B0058EA82 /* SFSymbolTests */ = {
181 | isa = PBXGroup;
182 | children = (
183 | 4E53C3F72CD3A77B0058EA82 /* ImageExtensionTests.swift */,
184 | 4E53C3F82CD3A77B0058EA82 /* UIImageExtensionTests.swift */,
185 | );
186 | path = SFSymbolTests;
187 | sourceTree = "";
188 | };
189 | 4E53C3FA2CD3A77B0058EA82 /* Tests */ = {
190 | isa = PBXGroup;
191 | children = (
192 | 4E53C3F92CD3A77B0058EA82 /* SFSymbolTests */,
193 | );
194 | path = Tests;
195 | sourceTree = "";
196 | };
197 | OBJ_14 /* Products */ = {
198 | isa = PBXGroup;
199 | children = (
200 | "SFSymbol::SFSymbolTests::Product" /* SFSymbolTests.xctest */,
201 | "SFSymbol::SFSymbol::Product" /* SFSymbol.framework */,
202 | );
203 | name = Products;
204 | sourceTree = BUILT_PRODUCTS_DIR;
205 | };
206 | OBJ_5 = {
207 | isa = PBXGroup;
208 | children = (
209 | 4E70E3EC23704F3C004B4A4D /* Info.plist */,
210 | OBJ_19 /* LICENSE */,
211 | OBJ_6 /* Package.swift */,
212 | OBJ_14 /* Products */,
213 | OBJ_20 /* README.md */,
214 | 4E70E3EB23704F30004B4A4D /* SFSymbol.h */,
215 | OBJ_21 /* SFSymbol.podspec */,
216 | OBJ_7 /* Sources */,
217 | 4E53C3FA2CD3A77B0058EA82 /* Tests */,
218 | );
219 | sourceTree = "";
220 | };
221 | OBJ_7 /* Sources */ = {
222 | isa = PBXGroup;
223 | children = (
224 | 4E53C3EC2CD3A73E0058EA82 /* SFSymbol */,
225 | );
226 | name = Sources;
227 | sourceTree = SOURCE_ROOT;
228 | };
229 | /* End PBXGroup section */
230 |
231 | /* Begin PBXNativeTarget section */
232 | "SFSymbol::SFSymbol" /* SFSymbol */ = {
233 | isa = PBXNativeTarget;
234 | buildConfigurationList = OBJ_23 /* Build configuration list for PBXNativeTarget "SFSymbol" */;
235 | buildPhases = (
236 | OBJ_26 /* Sources */,
237 | OBJ_28 /* Frameworks */,
238 | );
239 | buildRules = (
240 | );
241 | dependencies = (
242 | );
243 | name = SFSymbol;
244 | productName = SFSymbol;
245 | productReference = "SFSymbol::SFSymbol::Product" /* SFSymbol.framework */;
246 | productType = "com.apple.product-type.framework";
247 | };
248 | "SFSymbol::SFSymbolTests" /* SFSymbolTests */ = {
249 | isa = PBXNativeTarget;
250 | buildConfigurationList = OBJ_41 /* Build configuration list for PBXNativeTarget "SFSymbolTests" */;
251 | buildPhases = (
252 | OBJ_44 /* Sources */,
253 | OBJ_47 /* Frameworks */,
254 | );
255 | buildRules = (
256 | );
257 | dependencies = (
258 | OBJ_49 /* PBXTargetDependency */,
259 | );
260 | name = SFSymbolTests;
261 | productName = SFSymbolTests;
262 | productReference = "SFSymbol::SFSymbolTests::Product" /* SFSymbolTests.xctest */;
263 | productType = "com.apple.product-type.bundle.unit-test";
264 | };
265 | "SFSymbol::SwiftPMPackageDescription" /* SFSymbolPackageDescription */ = {
266 | isa = PBXNativeTarget;
267 | buildConfigurationList = OBJ_30 /* Build configuration list for PBXNativeTarget "SFSymbolPackageDescription" */;
268 | buildPhases = (
269 | OBJ_33 /* Sources */,
270 | );
271 | buildRules = (
272 | );
273 | dependencies = (
274 | );
275 | name = SFSymbolPackageDescription;
276 | productName = SFSymbolPackageDescription;
277 | productType = "com.apple.product-type.framework";
278 | };
279 | /* End PBXNativeTarget section */
280 |
281 | /* Begin PBXProject section */
282 | OBJ_1 /* Project object */ = {
283 | isa = PBXProject;
284 | attributes = {
285 | BuildIndependentTargetsInParallel = YES;
286 | LastSwiftMigration = 9999;
287 | LastUpgradeCheck = 1600;
288 | TargetAttributes = {
289 | "SFSymbol::SFSymbolPackageTests::ProductTarget" = {
290 | LastSwiftMigration = 1420;
291 | };
292 | "SFSymbol::SFSymbolTests" = {
293 | LastSwiftMigration = 1420;
294 | };
295 | };
296 | };
297 | buildConfigurationList = OBJ_2 /* Build configuration list for PBXProject "SFSymbol" */;
298 | compatibilityVersion = "Xcode 3.2";
299 | developmentRegion = en;
300 | hasScannedForEncodings = 0;
301 | knownRegions = (
302 | en,
303 | Base,
304 | );
305 | mainGroup = OBJ_5;
306 | productRefGroup = OBJ_14 /* Products */;
307 | projectDirPath = "";
308 | projectRoot = "";
309 | targets = (
310 | "SFSymbol::SFSymbol" /* SFSymbol */,
311 | "SFSymbol::SwiftPMPackageDescription" /* SFSymbolPackageDescription */,
312 | "SFSymbol::SFSymbolPackageTests::ProductTarget" /* SFSymbolPackageTests */,
313 | "SFSymbol::SFSymbolTests" /* SFSymbolTests */,
314 | );
315 | };
316 | /* End PBXProject section */
317 |
318 | /* Begin PBXSourcesBuildPhase section */
319 | OBJ_26 /* Sources */ = {
320 | isa = PBXSourcesBuildPhase;
321 | buildActionMask = 0;
322 | files = (
323 | 4E53C3ED2CD3A73E0058EA82 /* SymbolImage.swift in Sources */,
324 | 4E53C3EE2CD3A73E0058EA82 /* SFSymbol3.swift in Sources */,
325 | 4E53C3EF2CD3A73E0058EA82 /* Image+SFSymbol.swift in Sources */,
326 | 4E53C3F02CD3A73E0058EA82 /* SFSymbol5.swift in Sources */,
327 | 4E53C3F12CD3A73E0058EA82 /* SFSymbol4.swift in Sources */,
328 | 4E53C3F22CD3A73E0058EA82 /* SFSymbol2.swift in Sources */,
329 | 4E53C3F32CD3A73E0058EA82 /* SFSymbol6.swift in Sources */,
330 | 4E53C3F42CD3A73E0058EA82 /* NSImage+SFSymbol.swift in Sources */,
331 | 4E53C3F52CD3A73E0058EA82 /* UIImage+SFSymbol.swift in Sources */,
332 | 4E53C3F62CD3A73E0058EA82 /* SFSymbol.swift in Sources */,
333 | );
334 | runOnlyForDeploymentPostprocessing = 0;
335 | };
336 | OBJ_33 /* Sources */ = {
337 | isa = PBXSourcesBuildPhase;
338 | buildActionMask = 0;
339 | files = (
340 | OBJ_34 /* Package.swift in Sources */,
341 | );
342 | runOnlyForDeploymentPostprocessing = 0;
343 | };
344 | OBJ_44 /* Sources */ = {
345 | isa = PBXSourcesBuildPhase;
346 | buildActionMask = 0;
347 | files = (
348 | 4E53C3FB2CD3A77B0058EA82 /* UIImageExtensionTests.swift in Sources */,
349 | 4E53C3FC2CD3A77B0058EA82 /* ImageExtensionTests.swift in Sources */,
350 | );
351 | runOnlyForDeploymentPostprocessing = 0;
352 | };
353 | /* End PBXSourcesBuildPhase section */
354 |
355 | /* Begin PBXTargetDependency section */
356 | OBJ_39 /* PBXTargetDependency */ = {
357 | isa = PBXTargetDependency;
358 | target = "SFSymbol::SFSymbolTests" /* SFSymbolTests */;
359 | targetProxy = 4E70E3EA237048A8004B4A4D /* PBXContainerItemProxy */;
360 | };
361 | OBJ_49 /* PBXTargetDependency */ = {
362 | isa = PBXTargetDependency;
363 | target = "SFSymbol::SFSymbol" /* SFSymbol */;
364 | targetProxy = 4E70E3E9237048A7004B4A4D /* PBXContainerItemProxy */;
365 | };
366 | /* End PBXTargetDependency section */
367 |
368 | /* Begin XCBuildConfiguration section */
369 | OBJ_24 /* Debug */ = {
370 | isa = XCBuildConfiguration;
371 | buildSettings = {
372 | CODE_SIGN_IDENTITY = "";
373 | ENABLE_TESTABILITY = YES;
374 | FRAMEWORK_SEARCH_PATHS = (
375 | "$(inherited)",
376 | "$(PLATFORM_DIR)/Developer/Library/Frameworks",
377 | );
378 | HEADER_SEARCH_PATHS = "$(inherited)";
379 | INFOPLIST_FILE = SFSymbol.xcodeproj/SFSymbol_Info.plist;
380 | IPHONEOS_DEPLOYMENT_TARGET = 13.0;
381 | LD_RUNPATH_SEARCH_PATHS = (
382 | "$(inherited)",
383 | "$(TOOLCHAIN_DIR)/usr/lib/swift/macosx",
384 | );
385 | MACOSX_DEPLOYMENT_TARGET = 13.5;
386 | OTHER_CFLAGS = "$(inherited)";
387 | OTHER_LDFLAGS = "$(inherited)";
388 | OTHER_SWIFT_FLAGS = "$(inherited)";
389 | PRODUCT_BUNDLE_IDENTIFIER = SFSymbol;
390 | PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)";
391 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
392 | SKIP_INSTALL = YES;
393 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
394 | SWIFT_VERSION = 5.0;
395 | TARGET_NAME = SFSymbol;
396 | TVOS_DEPLOYMENT_TARGET = 13.0;
397 | WATCHOS_DEPLOYMENT_TARGET = 2.0;
398 | };
399 | name = Debug;
400 | };
401 | OBJ_25 /* Release */ = {
402 | isa = XCBuildConfiguration;
403 | buildSettings = {
404 | CODE_SIGN_IDENTITY = "";
405 | ENABLE_TESTABILITY = YES;
406 | FRAMEWORK_SEARCH_PATHS = (
407 | "$(inherited)",
408 | "$(PLATFORM_DIR)/Developer/Library/Frameworks",
409 | );
410 | HEADER_SEARCH_PATHS = "$(inherited)";
411 | INFOPLIST_FILE = SFSymbol.xcodeproj/SFSymbol_Info.plist;
412 | IPHONEOS_DEPLOYMENT_TARGET = 13.0;
413 | LD_RUNPATH_SEARCH_PATHS = (
414 | "$(inherited)",
415 | "$(TOOLCHAIN_DIR)/usr/lib/swift/macosx",
416 | );
417 | MACOSX_DEPLOYMENT_TARGET = 13.5;
418 | OTHER_CFLAGS = "$(inherited)";
419 | OTHER_LDFLAGS = "$(inherited)";
420 | OTHER_SWIFT_FLAGS = "$(inherited)";
421 | PRODUCT_BUNDLE_IDENTIFIER = SFSymbol;
422 | PRODUCT_MODULE_NAME = "$(TARGET_NAME:c99extidentifier)";
423 | PRODUCT_NAME = "$(TARGET_NAME:c99extidentifier)";
424 | SKIP_INSTALL = YES;
425 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
426 | SWIFT_VERSION = 5.0;
427 | TARGET_NAME = SFSymbol;
428 | TVOS_DEPLOYMENT_TARGET = 13.0;
429 | WATCHOS_DEPLOYMENT_TARGET = 2.0;
430 | };
431 | name = Release;
432 | };
433 | OBJ_3 /* Debug */ = {
434 | isa = XCBuildConfiguration;
435 | buildSettings = {
436 | CLANG_ENABLE_OBJC_ARC = YES;
437 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
438 | CLANG_WARN_BOOL_CONVERSION = YES;
439 | CLANG_WARN_COMMA = YES;
440 | CLANG_WARN_CONSTANT_CONVERSION = YES;
441 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
442 | CLANG_WARN_EMPTY_BODY = YES;
443 | CLANG_WARN_ENUM_CONVERSION = YES;
444 | CLANG_WARN_INFINITE_RECURSION = YES;
445 | CLANG_WARN_INT_CONVERSION = YES;
446 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
447 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
448 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
449 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
450 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
451 | CLANG_WARN_STRICT_PROTOTYPES = YES;
452 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
453 | CLANG_WARN_UNREACHABLE_CODE = YES;
454 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
455 | COMBINE_HIDPI_IMAGES = YES;
456 | COPY_PHASE_STRIP = NO;
457 | DEBUG_INFORMATION_FORMAT = dwarf;
458 | DYLIB_INSTALL_NAME_BASE = "@rpath";
459 | ENABLE_NS_ASSERTIONS = YES;
460 | ENABLE_STRICT_OBJC_MSGSEND = YES;
461 | ENABLE_TESTABILITY = YES;
462 | ENABLE_USER_SCRIPT_SANDBOXING = YES;
463 | GCC_NO_COMMON_BLOCKS = YES;
464 | GCC_OPTIMIZATION_LEVEL = 0;
465 | GCC_PREPROCESSOR_DEFINITIONS = (
466 | "$(inherited)",
467 | "SWIFT_PACKAGE=1",
468 | "DEBUG=1",
469 | );
470 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
471 | GCC_WARN_ABOUT_RETURN_TYPE = YES;
472 | GCC_WARN_UNDECLARED_SELECTOR = YES;
473 | GCC_WARN_UNINITIALIZED_AUTOS = YES;
474 | GCC_WARN_UNUSED_FUNCTION = YES;
475 | GCC_WARN_UNUSED_VARIABLE = YES;
476 | MACOSX_DEPLOYMENT_TARGET = 11.5;
477 | ONLY_ACTIVE_ARCH = YES;
478 | OTHER_SWIFT_FLAGS = "$(inherited) -DXcode";
479 | PRODUCT_NAME = "$(TARGET_NAME)";
480 | SDKROOT = iphoneos;
481 | SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator";
482 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE DEBUG";
483 | SWIFT_OPTIMIZATION_LEVEL = "-Onone";
484 | USE_HEADERMAP = NO;
485 | };
486 | name = Debug;
487 | };
488 | OBJ_31 /* Debug */ = {
489 | isa = XCBuildConfiguration;
490 | buildSettings = {
491 | CODE_SIGN_IDENTITY = "";
492 | LD = /usr/bin/true;
493 | MACOSX_DEPLOYMENT_TARGET = 13.5;
494 | OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -target x86_64-apple-macosx10.10 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -package-description-version 5.1";
495 | SWIFT_VERSION = 5.0;
496 | };
497 | name = Debug;
498 | };
499 | OBJ_32 /* Release */ = {
500 | isa = XCBuildConfiguration;
501 | buildSettings = {
502 | CODE_SIGN_IDENTITY = "";
503 | LD = /usr/bin/true;
504 | MACOSX_DEPLOYMENT_TARGET = 13.5;
505 | OTHER_SWIFT_FLAGS = "-swift-version 5 -I $(TOOLCHAIN_DIR)/usr/lib/swift/pm/4_2 -target x86_64-apple-macosx10.10 -sdk /Applications/Xcode.app/Contents/Developer/Platforms/MacOSX.platform/Developer/SDKs/MacOSX10.15.sdk -package-description-version 5.1";
506 | SWIFT_VERSION = 5.0;
507 | };
508 | name = Release;
509 | };
510 | OBJ_37 /* Debug */ = {
511 | isa = XCBuildConfiguration;
512 | buildSettings = {
513 | CLANG_ENABLE_MODULES = YES;
514 | LD_RUNPATH_SEARCH_PATHS = (
515 | "$(inherited)",
516 | "@executable_path/Frameworks",
517 | "@loader_path/Frameworks",
518 | );
519 | MACOSX_DEPLOYMENT_TARGET = 13.5;
520 | SWIFT_OPTIMIZATION_LEVEL = "-Onone";
521 | SWIFT_VERSION = 5.0;
522 | };
523 | name = Debug;
524 | };
525 | OBJ_38 /* Release */ = {
526 | isa = XCBuildConfiguration;
527 | buildSettings = {
528 | CLANG_ENABLE_MODULES = YES;
529 | LD_RUNPATH_SEARCH_PATHS = (
530 | "$(inherited)",
531 | "@executable_path/Frameworks",
532 | "@loader_path/Frameworks",
533 | );
534 | MACOSX_DEPLOYMENT_TARGET = 13.5;
535 | SWIFT_VERSION = 5.0;
536 | };
537 | name = Release;
538 | };
539 | OBJ_4 /* Release */ = {
540 | isa = XCBuildConfiguration;
541 | buildSettings = {
542 | CLANG_ENABLE_OBJC_ARC = YES;
543 | CLANG_WARN_BLOCK_CAPTURE_AUTORELEASING = YES;
544 | CLANG_WARN_BOOL_CONVERSION = YES;
545 | CLANG_WARN_COMMA = YES;
546 | CLANG_WARN_CONSTANT_CONVERSION = YES;
547 | CLANG_WARN_DEPRECATED_OBJC_IMPLEMENTATIONS = YES;
548 | CLANG_WARN_EMPTY_BODY = YES;
549 | CLANG_WARN_ENUM_CONVERSION = YES;
550 | CLANG_WARN_INFINITE_RECURSION = YES;
551 | CLANG_WARN_INT_CONVERSION = YES;
552 | CLANG_WARN_NON_LITERAL_NULL_CONVERSION = YES;
553 | CLANG_WARN_OBJC_IMPLICIT_RETAIN_SELF = YES;
554 | CLANG_WARN_OBJC_LITERAL_CONVERSION = YES;
555 | CLANG_WARN_QUOTED_INCLUDE_IN_FRAMEWORK_HEADER = YES;
556 | CLANG_WARN_RANGE_LOOP_ANALYSIS = YES;
557 | CLANG_WARN_STRICT_PROTOTYPES = YES;
558 | CLANG_WARN_SUSPICIOUS_MOVE = YES;
559 | CLANG_WARN_UNREACHABLE_CODE = YES;
560 | CLANG_WARN__DUPLICATE_METHOD_MATCH = YES;
561 | COMBINE_HIDPI_IMAGES = YES;
562 | COPY_PHASE_STRIP = YES;
563 | DEBUG_INFORMATION_FORMAT = "dwarf-with-dsym";
564 | DYLIB_INSTALL_NAME_BASE = "@rpath";
565 | ENABLE_STRICT_OBJC_MSGSEND = YES;
566 | ENABLE_USER_SCRIPT_SANDBOXING = YES;
567 | GCC_NO_COMMON_BLOCKS = YES;
568 | GCC_OPTIMIZATION_LEVEL = s;
569 | GCC_PREPROCESSOR_DEFINITIONS = (
570 | "$(inherited)",
571 | "SWIFT_PACKAGE=1",
572 | );
573 | GCC_WARN_64_TO_32_BIT_CONVERSION = YES;
574 | GCC_WARN_ABOUT_RETURN_TYPE = YES;
575 | GCC_WARN_UNDECLARED_SELECTOR = YES;
576 | GCC_WARN_UNINITIALIZED_AUTOS = YES;
577 | GCC_WARN_UNUSED_FUNCTION = YES;
578 | GCC_WARN_UNUSED_VARIABLE = YES;
579 | MACOSX_DEPLOYMENT_TARGET = 11.5;
580 | OTHER_SWIFT_FLAGS = "$(inherited) -DXcode";
581 | PRODUCT_NAME = "$(TARGET_NAME)";
582 | SDKROOT = iphoneos;
583 | SUPPORTED_PLATFORMS = "macosx iphoneos iphonesimulator appletvos appletvsimulator watchos watchsimulator";
584 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited) SWIFT_PACKAGE";
585 | SWIFT_COMPILATION_MODE = wholemodule;
586 | SWIFT_OPTIMIZATION_LEVEL = "-O";
587 | USE_HEADERMAP = NO;
588 | };
589 | name = Release;
590 | };
591 | OBJ_42 /* Debug */ = {
592 | isa = XCBuildConfiguration;
593 | buildSettings = {
594 | CLANG_ENABLE_MODULES = YES;
595 | DRIVERKIT_DEPLOYMENT_TARGET = "";
596 | FRAMEWORK_SEARCH_PATHS = (
597 | "$(inherited)",
598 | "$(PLATFORM_DIR)/Developer/Library/Frameworks",
599 | );
600 | HEADER_SEARCH_PATHS = "$(inherited)";
601 | INFOPLIST_FILE = SFSymbol.xcodeproj/SFSymbolTests_Info.plist;
602 | IPHONEOS_DEPLOYMENT_TARGET = 16.0;
603 | LD_RUNPATH_SEARCH_PATHS = (
604 | "$(inherited)",
605 | "@loader_path/../Frameworks",
606 | "@loader_path/Frameworks",
607 | );
608 | MACOSX_DEPLOYMENT_TARGET = 13.5;
609 | OTHER_CFLAGS = "$(inherited)";
610 | OTHER_LDFLAGS = "$(inherited)";
611 | OTHER_SWIFT_FLAGS = "$(inherited)";
612 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
613 | SWIFT_OPTIMIZATION_LEVEL = "-Onone";
614 | SWIFT_VERSION = 5.0;
615 | TARGETED_DEVICE_FAMILY = "1,2,3,4,6";
616 | TARGET_NAME = SFSymbolTests;
617 | TVOS_DEPLOYMENT_TARGET = 13.0;
618 | WATCHOS_DEPLOYMENT_TARGET = 6.0;
619 | };
620 | name = Debug;
621 | };
622 | OBJ_43 /* Release */ = {
623 | isa = XCBuildConfiguration;
624 | buildSettings = {
625 | CLANG_ENABLE_MODULES = YES;
626 | DRIVERKIT_DEPLOYMENT_TARGET = "";
627 | FRAMEWORK_SEARCH_PATHS = (
628 | "$(inherited)",
629 | "$(PLATFORM_DIR)/Developer/Library/Frameworks",
630 | );
631 | HEADER_SEARCH_PATHS = "$(inherited)";
632 | INFOPLIST_FILE = SFSymbol.xcodeproj/SFSymbolTests_Info.plist;
633 | IPHONEOS_DEPLOYMENT_TARGET = 16.0;
634 | LD_RUNPATH_SEARCH_PATHS = (
635 | "$(inherited)",
636 | "@loader_path/../Frameworks",
637 | "@loader_path/Frameworks",
638 | );
639 | MACOSX_DEPLOYMENT_TARGET = 13.5;
640 | OTHER_CFLAGS = "$(inherited)";
641 | OTHER_LDFLAGS = "$(inherited)";
642 | OTHER_SWIFT_FLAGS = "$(inherited)";
643 | SWIFT_ACTIVE_COMPILATION_CONDITIONS = "$(inherited)";
644 | SWIFT_VERSION = 5.0;
645 | TARGETED_DEVICE_FAMILY = "1,2,3,4,6";
646 | TARGET_NAME = SFSymbolTests;
647 | TVOS_DEPLOYMENT_TARGET = 13.0;
648 | WATCHOS_DEPLOYMENT_TARGET = 6.0;
649 | };
650 | name = Release;
651 | };
652 | /* End XCBuildConfiguration section */
653 |
654 | /* Begin XCConfigurationList section */
655 | OBJ_2 /* Build configuration list for PBXProject "SFSymbol" */ = {
656 | isa = XCConfigurationList;
657 | buildConfigurations = (
658 | OBJ_3 /* Debug */,
659 | OBJ_4 /* Release */,
660 | );
661 | defaultConfigurationIsVisible = 0;
662 | defaultConfigurationName = Release;
663 | };
664 | OBJ_23 /* Build configuration list for PBXNativeTarget "SFSymbol" */ = {
665 | isa = XCConfigurationList;
666 | buildConfigurations = (
667 | OBJ_24 /* Debug */,
668 | OBJ_25 /* Release */,
669 | );
670 | defaultConfigurationIsVisible = 0;
671 | defaultConfigurationName = Release;
672 | };
673 | OBJ_30 /* Build configuration list for PBXNativeTarget "SFSymbolPackageDescription" */ = {
674 | isa = XCConfigurationList;
675 | buildConfigurations = (
676 | OBJ_31 /* Debug */,
677 | OBJ_32 /* Release */,
678 | );
679 | defaultConfigurationIsVisible = 0;
680 | defaultConfigurationName = Release;
681 | };
682 | OBJ_36 /* Build configuration list for PBXAggregateTarget "SFSymbolPackageTests" */ = {
683 | isa = XCConfigurationList;
684 | buildConfigurations = (
685 | OBJ_37 /* Debug */,
686 | OBJ_38 /* Release */,
687 | );
688 | defaultConfigurationIsVisible = 0;
689 | defaultConfigurationName = Release;
690 | };
691 | OBJ_41 /* Build configuration list for PBXNativeTarget "SFSymbolTests" */ = {
692 | isa = XCConfigurationList;
693 | buildConfigurations = (
694 | OBJ_42 /* Debug */,
695 | OBJ_43 /* Release */,
696 | );
697 | defaultConfigurationIsVisible = 0;
698 | defaultConfigurationName = Release;
699 | };
700 | /* End XCConfigurationList section */
701 | };
702 | rootObject = OBJ_1 /* Project object */;
703 | }
704 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/project.xcworkspace/contents.xcworkspacedata:
--------------------------------------------------------------------------------
1 |
2 |
4 |
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEDidComputeMac32BitWarning
6 |
7 |
8 |
9 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/project.xcworkspace/xcshareddata/WorkspaceSettings.xcsettings:
--------------------------------------------------------------------------------
1 |
2 |
3 |
4 |
5 | IDEWorkspaceSharedSettings_AutocreateContextsIfNeeded
6 |
7 |
8 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/xcshareddata/xcschemes/SFSymbol-Package.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
33 |
39 |
40 |
41 |
42 |
43 |
53 |
54 |
60 |
61 |
63 |
64 |
67 |
68 |
69 |
--------------------------------------------------------------------------------
/SFSymbol.xcodeproj/xcshareddata/xcschemes/SFSymbol.xcscheme:
--------------------------------------------------------------------------------
1 |
2 |
5 |
8 |
9 |
15 |
21 |
22 |
23 |
24 |
25 |
30 |
31 |
33 |
39 |
40 |
41 |
42 |
43 |
53 |
54 |
60 |
61 |
67 |
68 |
69 |
70 |
72 |
73 |
76 |
77 |
78 |
--------------------------------------------------------------------------------
/SFSymbol/Extensions/Image+SFSymbol.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Image+SFSymbol.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | import SwiftUI
24 |
25 | public extension Image {
26 | /// Create Image from SFSymbol
27 | init(symbol: T) where T.RawValue == String {
28 | self.init(systemName: symbol.rawValue)
29 | }
30 | }
31 |
32 | @available(iOS 16.0, tvOS 16.0, macOS 13.0, watchOS 9.0, *)
33 | public extension Image {
34 | /// Create Image from SFSymbol with optional `variableValue`
35 | init(symbol: T, variableValue: Double? = nil) where T.RawValue == String {
36 | self.init(systemName: symbol.rawValue, variableValue: variableValue)
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/SFSymbol/Extensions/NSImage+SFSymbol.swift:
--------------------------------------------------------------------------------
1 | //
2 | // NSImage+SFSymbol.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #if canImport(AppKit) && !targetEnvironment(macCatalyst)
24 | import AppKit
25 |
26 | @available(macOS 11, *)
27 | public extension NSImage {
28 | convenience init?(symbol: T, accessibilityDescription description: String? = nil) where T.RawValue == String {
29 | self.init(systemSymbolName: symbol.rawValue, accessibilityDescription: description)
30 | }
31 | }
32 |
33 | #endif
34 |
--------------------------------------------------------------------------------
/SFSymbol/Extensions/UIImage+SFSymbol.swift:
--------------------------------------------------------------------------------
1 | //
2 | // UIImage+SFSymbol.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #if canImport(UIKit) || targetEnvironment(macCatalyst)
24 | import UIKit
25 |
26 | @available(iOS 13.0, *)
27 | public extension UIImage {
28 | convenience init?(symbol: T) where T.RawValue == String {
29 | self.init(systemName: symbol.rawValue)
30 | }
31 |
32 | convenience init?(symbol: T, with configuration: Configuration) where T.RawValue == String {
33 | self.init(systemName: symbol.rawValue, withConfiguration: configuration)
34 | }
35 | }
36 |
37 | #endif
38 |
--------------------------------------------------------------------------------
/SFSymbol/Protocols/SymbolImage.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Untitled.swift
3 | // SFSymbol
4 | //
5 | // Created by Nicko on 2024/10/31.
6 | //
7 |
8 | import SwiftUI
9 |
10 | public protocol SymbolImage where Self: RawRepresentable, Self.RawValue == String {
11 | var image: Image? { get }
12 | }
13 |
14 |
15 | public extension SymbolImage {
16 | var image: Image? {
17 | Image(systemName: rawValue)
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/SFSymbol/SFSymbol2/SFSymbol2.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SFSymbol2.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | public enum SFSymbol2: String, SymbolImage {
24 | public enum _4K: String, SymbolImage {
25 | case tv = "4k.tv"
26 | case tvFill = "4k.tv.fill"
27 | }
28 |
29 | public enum LetterA: String, SymbolImage {
30 | case bookClosed = "a.book.closed"
31 | case bookClosedFill = "a.book.closed.fill"
32 | case magnify = "a.magnify"
33 | }
34 |
35 | case abc
36 |
37 | public enum Airplane: String, SymbolImage {
38 | case circle = "airplane.circle"
39 | case circleFill = "airplane.circle.fill"
40 | }
41 |
42 | case airpods
43 |
44 | case airpodspro
45 |
46 | public enum Airport: String, SymbolImage {
47 | case express = "airport.express"
48 | case extremeTower = "airport.extreme.tower"
49 | case extreme = "airport.extreme"
50 | }
51 |
52 | case amplifier
53 |
54 | case applelogo
55 |
56 | case applescript
57 |
58 | public enum Applescript: String, SymbolImage {
59 | case fill = "applescript.fill"
60 | }
61 |
62 | case appletv
63 |
64 | public enum Appletv: String, SymbolImage {
65 | case fill = "appletv.fill"
66 | }
67 |
68 | case applewatch
69 |
70 | public enum Applewatch: String, SymbolImage {
71 | case watchface = "applewatch.watchface"
72 | case radiowavesLeftAndRight = "applewatch.radiowaves.left.and.right"
73 | case slash = "applewatch.slash"
74 | }
75 |
76 | public enum Apps: String, SymbolImage {
77 | case iphone = "apps.iphone"
78 | case iphoneBadgePlus = "apps.iphone.badge.plus"
79 | case iphoneLandscape = "apps.iphone.landscape"
80 | case ipad = "apps.ipad"
81 | case ipadLandscape = "apps.ipad.landscape"
82 | }
83 |
84 | public enum Archivebox: String, SymbolImage {
85 | case circle = "archivebox.circle"
86 | case circleFill = "archivebox.circle.fill"
87 | }
88 |
89 | public enum Arrow: String, SymbolImage {
90 | case rightDocOnClipboard = "arrow.right.doc.on.clipboard"
91 | case upDocOnClipboard = "arrow.up.doc.on.clipboard"
92 | case triangle2CirclepathDocOnClipboard = "arrow.triangle.2.circlepath.doc.on.clipboard"
93 | case rectanglepath = "arrow.rectanglepath"
94 | case upLeftAndDownRightMagnifyingglass = "arrow.up.left.and.down.right.magnifyingglass"
95 | case triangle2CirclepathCamera = "arrow.triangle.2.circlepath.camera"
96 | case triangle2CirclepathCameraFill = "arrow.triangle.2.circlepath.camera.fill"
97 | case upMessage = "arrow.up.message"
98 | case upMessageFill = "arrow.up.message.fill"
99 | case upRightAndArrowDownLeftRectangle = "arrow.up.right.and.arrow.down.left.rectangle"
100 | case upRightAndArrowDownLeftRectangleFill = "arrow.up.right.and.arrow.down.left.rectangle.fill"
101 | case turnUpRightIphone = "arrow.turn.up.right.iphone"
102 | case turnUpRightIphoneFill = "arrow.turn.up.right.iphone.fill"
103 | case upAndPersonRectanglePortrait = "arrow.up.and.person.rectangle.portrait"
104 | case upAndPersonRectangleTurnRight = "arrow.up.and.person.rectangle.turn.right"
105 | case upAndPersonRectangleTurnLeft = "arrow.up.and.person.rectangle.turn.left"
106 | case upRightApp = "arrow.up.right.app"
107 | case upRightAppFill = "arrow.up.right.app.fill"
108 | case downApp = "arrow.down.app"
109 | case downAppFill = "arrow.down.app.fill"
110 | case leftAndRightRighttriangleLeftRighttriangleRight = "arrow.left.and.right.righttriangle.left.righttriangle.right"
111 | case leftAndRightRighttriangleLeftRighttriangleRightFill = "arrow.left.and.right.righttriangle.left.righttriangle.right.fill"
112 | case upAndDownRighttriangleUpRighttriangleDown = "arrow.up.and.down.righttriangle.up.righttriangle.down"
113 | case upAndDownRighttriangleUpFillRighttriangleDownFill = "arrow.up.and.down.righttriangle.up.fill.righttriangle.down.fill"
114 | case upAndDownAndArrowLeftAndRight = "arrow.up.and.down.and.arrow.left.and.right"
115 | case upLeftAndDownRightAndArrowUpRightAndDownLeft = "arrow.up.left.and.down.right.and.arrow.up.right.and.down.left"
116 | case upLeftAndArrowDownRightCircle = "arrow.up.left.and.arrow.down.right.circle"
117 | case upLeftAndArrowDownRightCircleFill = "arrow.up.left.and.arrow.down.right.circle.fill"
118 | case triangle2Circlepath = "arrow.triangle.2.circlepath"
119 | case triangle2CirclepathCircle = "arrow.triangle.2.circlepath.circle"
120 | case triangle2CirclepathCircleFill = "arrow.triangle.2.circlepath.circle.fill"
121 | case triangleCapsulepath = "arrow.triangle.capsulepath"
122 | case triangleTurnUpRightDiamond = "arrow.triangle.turn.up.right.diamond"
123 | case triangleTurnUpRightDiamondFill = "arrow.triangle.turn.up.right.diamond.fill"
124 | case triangleTurnUpRightCircle = "arrow.triangle.turn.up.right.circle"
125 | case triangleTurnUpRightCircleFill = "arrow.triangle.turn.up.right.circle.fill"
126 | case triangleMerge = "arrow.triangle.merge"
127 | case triangleSwap = "arrow.triangle.swap"
128 | case triangleBranch = "arrow.triangle.branch"
129 | case trianglePull = "arrow.triangle.pull"
130 | }
131 |
132 | public enum Arrowshape: String, SymbolImage {
133 | case turnUpLeft2Circle = "arrowshape.turn.up.left.2.circle"
134 | case turnUpLeft2CircleFill = "arrowshape.turn.up.left.2.circle.fill"
135 | case zigzagRight = "arrowshape.zigzag.right"
136 | case zigzagRightFill = "arrowshape.zigzag.right.fill"
137 | case bounceRight = "arrowshape.bounce.right"
138 | case bounceRightFill = "arrowshape.bounce.right.fill"
139 | }
140 |
141 | public enum Arrowtriangle: String, SymbolImage {
142 | case leftAndLineVerticalAndArrowtriangleRight = "arrowtriangle.left.and.line.vertical.and.arrowtriangle.right"
143 | case leftFillAndLineVerticalAndArrowtriangleRightFill = "arrowtriangle.left.fill.and.line.vertical.and.arrowtriangle.right.fill"
144 | case rightAndLineVerticalAndArrowtriangleLeft = "arrowtriangle.right.and.line.vertical.and.arrowtriangle.left"
145 | case rightFillAndLineVerticalAndArrowtriangleLeftFill = "arrowtriangle.right.fill.and.line.vertical.and.arrowtriangle.left.fill"
146 | }
147 |
148 | public enum At: String, SymbolImage {
149 | case circle = "at.circle"
150 | case circleFill = "at.circle.fill"
151 | }
152 |
153 | case atom
154 |
155 | public enum Backward: String, SymbolImage {
156 | case frame = "backward.frame"
157 | case frameFill = "backward.frame.fill"
158 | }
159 |
160 | public enum Bag: String, SymbolImage {
161 | case circle = "bag.circle"
162 | case circleFill = "bag.circle.fill"
163 | }
164 |
165 | case banknote
166 |
167 | public enum Banknote: String, SymbolImage {
168 | case fill = "banknote.fill"
169 | }
170 |
171 | case barometer
172 |
173 | public enum Battery100: String, SymbolImage {
174 | case bolt = "battery.100.bolt"
175 | }
176 |
177 | public enum Bell: String, SymbolImage {
178 | case slashCircle = "bell.slash.circle"
179 | case slashCircleFill = "bell.slash.circle.fill"
180 | case badge = "bell.badge"
181 | case badgeFill = "bell.badge.fill"
182 | }
183 |
184 | case bicycle
185 |
186 | case binoculars
187 |
188 | public enum Binoculars: String, SymbolImage {
189 | case fill = "binoculars.fill"
190 | }
191 |
192 | public enum Bolt: String, SymbolImage {
193 | case heart = "bolt.heart"
194 | case heartFill = "bolt.heart.fill"
195 | case slashCircle = "bolt.slash.circle"
196 | case slashCircleFill = "bolt.slash.circle.fill"
197 | case car = "bolt.car"
198 | case carFill = "bolt.car.fill"
199 | case fillBatteryblock = "bolt.fill.batteryblock"
200 | case fillBatteryblockFill = "bolt.fill.batteryblock.fill"
201 | }
202 |
203 | case bonjour
204 |
205 | public enum Book: String, SymbolImage {
206 | case closed = "book.closed"
207 | case closedFill = "book.closed.fill"
208 | }
209 |
210 | public enum Bookmark: String, SymbolImage {
211 | case circle = "bookmark.circle"
212 | case circleFill = "bookmark.circle.fill"
213 | case slash = "bookmark.slash"
214 | case slashFill = "bookmark.slash.fill"
215 | }
216 |
217 | public enum Books: String, SymbolImage {
218 | case vertical = "books.vertical"
219 | case verticalFill = "books.vertical.fill"
220 | }
221 |
222 | case building
223 |
224 | public enum Building: String, SymbolImage {
225 | case columns = "building.columns"
226 | case columnsFill = "building.columns.fill"
227 | case fill = "building.fill"
228 | }
229 |
230 | case building2 = "building.2"
231 |
232 | public enum Building2: String, SymbolImage {
233 | case fill = "building.2.fill"
234 | case cropCircle = "building.2.crop.circle"
235 | case cropCircleFill = "building.2.crop.circle.fill"
236 | }
237 |
238 | case bus
239 |
240 | public enum Bus: String, SymbolImage {
241 | case fill = "bus.fill"
242 | case doubledecker = "bus.doubledecker"
243 | case doubledeckerFill = "bus.doubledecker.fill"
244 | }
245 |
246 | public enum Calendar: String, SymbolImage {
247 | case badgeClock = "calendar.badge.clock"
248 | case badgeExclamationmark = "calendar.badge.exclamationmark"
249 | }
250 |
251 | public enum Camera: String, SymbolImage {
252 | case badgeEllipsis = "camera.badge.ellipsis"
253 | case fillBadgeEllipsis = "camera.fill.badge.ellipsis"
254 | case meteringCenterWeightedAverage = "camera.metering.center.weighted.average"
255 | case meteringCenterWeighted = "camera.metering.center.weighted"
256 | case meteringMatrix = "camera.metering.matrix"
257 | case meteringMultispot = "camera.metering.multispot"
258 | case meteringNone = "camera.metering.none"
259 | case meteringPartial = "camera.metering.partial"
260 | case meteringSpot = "camera.metering.spot"
261 | case meteringUnknown = "camera.metering.unknown"
262 | case aperture = "camera.aperture"
263 | case filters = "camera.filters"
264 | }
265 |
266 | case candybarphone
267 |
268 | public enum Capsule: String, SymbolImage {
269 | case portrait = "capsule.portrait"
270 | case portraitFill = "capsule.portrait.fill"
271 | }
272 |
273 | public enum Car: String, SymbolImage {
274 | case circle = "car.circle"
275 | case circleFill = "car.circle.fill"
276 | }
277 |
278 | case car2 = "car.2"
279 |
280 | public enum Car2: String, SymbolImage {
281 | case fill = "car.2.fill"
282 | }
283 |
284 | case _case = "case"
285 |
286 | public enum Case: String, SymbolImage {
287 | case fill = "case.fill"
288 | }
289 |
290 | public enum Chart: String, SymbolImage {
291 | case barDocHorizontal = "chart.bar.doc.horizontal"
292 | case barDocHorizontalFill = "chart.bar.doc.horizontal.fill"
293 | case barXaxis = "chart.bar.xaxis"
294 | }
295 |
296 | public enum Checkerboard: String, SymbolImage {
297 | case rectangle = "checkerboard.rectangle"
298 | }
299 |
300 | public enum Checkmark: String, SymbolImage {
301 | case icloud = "checkmark.icloud"
302 | case icloudFill = "checkmark.icloud.fill"
303 | case rectanglePortrait = "checkmark.rectangle.portrait"
304 | case rectanglePortraitFill = "checkmark.rectangle.portrait.fill"
305 | }
306 |
307 | public enum Circle: String, SymbolImage {
308 | case gridCross = "circle.grid.cross"
309 | case gridCrossFill = "circle.grid.cross.fill"
310 | case gridCrossLeftFill = "circle.grid.cross.left.fill"
311 | case gridCrossUpFill = "circle.grid.cross.up.fill"
312 | case gridCrossRightFill = "circle.grid.cross.right.fill"
313 | case gridCrossDownFill = "circle.grid.cross.down.fill"
314 | case bottomhalfFill = "circle.bottomhalf.fill"
315 | case tophalfFill = "circle.tophalf.fill"
316 | case dashed = "circle.dashed"
317 | case dashedInsetFill = "circle.dashed.inset.fill"
318 | case square = "circle.square"
319 | case fillSquareFill = "circle.fill.square.fill"
320 | case circle = "circle.circle"
321 | case circleFill = "circle.circle.fill"
322 | }
323 |
324 | case circlebadge
325 |
326 | public enum Circlebadge: String, SymbolImage {
327 | case fill = "circlebadge.fill"
328 | }
329 |
330 | public enum Circles: String, SymbolImage {
331 | case hexagongrid = "circles.hexagongrid"
332 | case hexagongridFill = "circles.hexagongrid.fill"
333 | case hexagonpath = "circles.hexagonpath"
334 | case hexagonpathFill = "circles.hexagonpath.fill"
335 | }
336 |
337 | public enum Clock: String, SymbolImage {
338 | case arrowCirclepath = "clock.arrow.circlepath"
339 | }
340 |
341 | case comb
342 |
343 | public enum Comb: String, SymbolImage {
344 | case fill = "comb.fill"
345 | }
346 |
347 | public enum Command: String, SymbolImage {
348 | case circle = "command.circle"
349 | case circleFill = "command.circle.fill"
350 | case square = "command.square"
351 | case squareFill = "command.square.fill"
352 | }
353 |
354 | public enum Contextualmenu: String, SymbolImage {
355 | case andCursorarrow = "contextualmenu.and.cursorarrow"
356 | }
357 |
358 | case cpu
359 |
360 | public enum Creditcard: String, SymbolImage {
361 | case circle = "creditcard.circle"
362 | case circleFill = "creditcard.circle.fill"
363 | }
364 |
365 | case cross
366 |
367 | public enum Cross: String, SymbolImage {
368 | case _case = "cross.case"
369 | case caseFill = "cross.case.fill"
370 | case fill = "cross.fill"
371 | case circle = "cross.circle"
372 | case circleFill = "cross.circle.fill"
373 | }
374 |
375 | case crown
376 |
377 | public enum Crown: String, SymbolImage {
378 | case fill = "crown.fill"
379 | }
380 |
381 | public enum Cube: String, SymbolImage {
382 | case transparent = "cube.transparent"
383 | }
384 |
385 | case curlybraces
386 |
387 | public enum Curlybraces: String, SymbolImage {
388 | case square = "curlybraces.square"
389 | case squareFill = "curlybraces.square.fill"
390 | }
391 |
392 | case cursorarrow
393 |
394 | public enum Cursorarrow: String, SymbolImage {
395 | case rays = "cursorarrow.rays"
396 | case square = "cursorarrow.square"
397 | case andSquareOnSquareDashed = "cursorarrow.and.square.on.square.dashed"
398 | case click = "cursorarrow.click"
399 | case click2 = "cursorarrow.click.2"
400 | case motionlines = "cursorarrow.motionlines"
401 | case motionlinesClick = "cursorarrow.motionlines.click"
402 | case clickBadgeClock = "cursorarrow.click.badge.clock"
403 | }
404 |
405 | public enum Cylinder: String, SymbolImage {
406 | case split1X2 = "cylinder.split.1x2"
407 | case split1X2Fill = "cylinder.split.1x2.fill"
408 | }
409 |
410 | case deskclock
411 |
412 | public enum Deskclock: String, SymbolImage {
413 | case fill = "deskclock.fill"
414 | }
415 |
416 | public enum Dial: String, SymbolImage {
417 | case min = "dial.min"
418 | case minFill = "dial.min.fill"
419 | case max = "dial.max"
420 | case maxFill = "dial.max.fill"
421 | }
422 |
423 | case diamond
424 |
425 | public enum Diamond: String, SymbolImage {
426 | case fill = "diamond.fill"
427 | }
428 |
429 | public enum Die: String, SymbolImage {
430 | case face1 = "die.face.1"
431 | case face1Fill = "die.face.1.fill"
432 | case face2 = "die.face.2"
433 | case face2Fill = "die.face.2.fill"
434 | case face3 = "die.face.3"
435 | case face3Fill = "die.face.3.fill"
436 | case face4 = "die.face.4"
437 | case face4Fill = "die.face.4.fill"
438 | case face5 = "die.face.5"
439 | case face5Fill = "die.face.5.fill"
440 | case face6 = "die.face.6"
441 | case face6Fill = "die.face.6.fill"
442 | }
443 |
444 | case display
445 |
446 | public enum Display: String, SymbolImage {
447 | case trianglebadgeExclamationmark = "display.trianglebadge.exclamationmark"
448 | }
449 |
450 | case display2 = "display.2"
451 |
452 | public enum Doc: String, SymbolImage {
453 | case badgePlus = "doc.badge.plus"
454 | case fillBadgePlus = "doc.fill.badge.plus"
455 | case badgeGearshape = "doc.badge.gearshape"
456 | case badgeGearshapeFill = "doc.badge.gearshape.fill"
457 | case badgeEllipsis = "doc.badge.ellipsis"
458 | case fillBadgeEllipsis = "doc.fill.badge.ellipsis"
459 | case zipper = "doc.zipper"
460 | case richtextFill = "doc.richtext.fill"
461 | case plaintextFill = "doc.plaintext.fill"
462 | case appendFill = "doc.append.fill"
463 | case textFillViewfinder = "doc.text.fill.viewfinder"
464 | }
465 |
466 | public enum Dock: String, SymbolImage {
467 | case rectangle = "dock.rectangle"
468 | case arrowUpRectangle = "dock.arrow.up.rectangle"
469 | case arrowDownRectangle = "dock.arrow.down.rectangle"
470 | }
471 |
472 | public enum Dot: String, SymbolImage {
473 | case arrowtrianglesUpRightDownLeftCircle = "dot.arrowtriangles.up.right.down.left.circle"
474 | case circleAndCursorarrow = "dot.circle.and.cursorarrow"
475 | case squareshape = "dot.squareshape"
476 | case squareshapeFill = "dot.squareshape.fill"
477 | case squareshapeSplit2X2 = "dot.squareshape.split.2x2"
478 | }
479 |
480 | case dpad
481 |
482 | public enum Dpad: String, SymbolImage {
483 | case fill = "dpad.fill"
484 | case leftFill = "dpad.left.fill"
485 | case upFill = "dpad.up.fill"
486 | case rightFill = "dpad.right.fill"
487 | case downFill = "dpad.down.fill"
488 | }
489 |
490 | case drop
491 |
492 | public enum Drop: String, SymbolImage {
493 | case fill = "drop.fill"
494 | }
495 |
496 | public enum Ear: String, SymbolImage {
497 | case badgeCheckmark = "ear.badge.checkmark"
498 | case trianglebadgeExclamationmark = "ear.trianglebadge.exclamationmark"
499 | case fill = "ear.fill"
500 | }
501 |
502 | case earpods
503 |
504 | public enum Eject: String, SymbolImage {
505 | case circle = "eject.circle"
506 | case circleFill = "eject.circle.fill"
507 | }
508 |
509 | public enum Ellipsis: String, SymbolImage {
510 | case bubble = "ellipsis.bubble"
511 | case bubbleFill = "ellipsis.bubble.fill"
512 | case rectangle = "ellipsis.rectangle"
513 | case rectangleFill = "ellipsis.rectangle.fill"
514 | }
515 |
516 | public enum Envelope: String, SymbolImage {
517 | case arrowTriangleBranch = "envelope.arrow.triangle.branch"
518 | case arrowTriangleBranchFill = "envelope.arrow.triangle.branch.fill"
519 | case badgeShieldLefthalfFill = "envelope.badge.shield.lefthalf.fill"
520 | case fillBadgeShieldRighthalfFill = "envelope.fill.badge.shield.righthalf.fill"
521 | }
522 |
523 | public enum Exclamationmark: String, SymbolImage {
524 | case arrowTriangle2Circlepath = "exclamationmark.arrow.triangle.2.circlepath"
525 | }
526 |
527 | case exclamationmark2 = "exclamationmark.2"
528 |
529 | case exclamationmark3 = "exclamationmark.3"
530 |
531 | case externaldrive
532 |
533 | public enum Externaldrive: String, SymbolImage {
534 | case fill = "externaldrive.fill"
535 | case badgePlus = "externaldrive.badge.plus"
536 | case fillBadgePlus = "externaldrive.fill.badge.plus"
537 | case badgeMinus = "externaldrive.badge.minus"
538 | case fillBadgeMinus = "externaldrive.fill.badge.minus"
539 | case badgeCheckmark = "externaldrive.badge.checkmark"
540 | case fillBadgeCheckmark = "externaldrive.fill.badge.checkmark"
541 | case badgeXmark = "externaldrive.badge.xmark"
542 | case fillBadgeXmark = "externaldrive.fill.badge.xmark"
543 | case badgePersonCrop = "externaldrive.badge.person.crop"
544 | case fillBadgePersonCrop = "externaldrive.fill.badge.person.crop"
545 | case badgeIcloud = "externaldrive.badge.icloud"
546 | case fillBadgeIcloud = "externaldrive.fill.badge.icloud"
547 | case badgeWifi = "externaldrive.badge.wifi"
548 | case fillBadgeWifi = "externaldrive.fill.badge.wifi"
549 | case badgeTimemachine = "externaldrive.badge.timemachine"
550 | case fillBadgeTimemachine = "externaldrive.fill.badge.timemachine"
551 | case connectedToLineBelow = "externaldrive.connected.to.line.below"
552 | case connectedToLineBelowFill = "externaldrive.connected.to.line.below.fill"
553 | }
554 |
555 | public enum Eye: String, SymbolImage {
556 | case circle = "eye.circle"
557 | case circleFill = "eye.circle.fill"
558 | }
559 |
560 | case eyebrow
561 |
562 | case eyes
563 |
564 | public enum Eyes: String, SymbolImage {
565 | case inverse = "eyes.inverse"
566 | }
567 |
568 | public enum Face: String, SymbolImage {
569 | case smiling = "face.smiling"
570 | case smilingFill = "face.smiling.fill"
571 | case dashed = "face.dashed"
572 | case dashedFill = "face.dashed.fill"
573 | }
574 |
575 | case faxmachine
576 |
577 | case fiberchannel
578 |
579 | public enum Figure: String, SymbolImage {
580 | case walk = "figure.walk"
581 | case walkCircle = "figure.walk.circle"
582 | case walkCircleFill = "figure.walk.circle.fill"
583 | case walkDiamond = "figure.walk.diamond"
584 | case walkDiamondFill = "figure.walk.diamond.fill"
585 | case wave = "figure.wave"
586 | case waveCircle = "figure.wave.circle"
587 | case waveCircleFill = "figure.wave.circle.fill"
588 | }
589 |
590 | public enum Filemenu: String, SymbolImage {
591 | case andCursorarrow = "filemenu.and.cursorarrow"
592 | }
593 |
594 | public enum Flag: String, SymbolImage {
595 | case slashCircle = "flag.slash.circle"
596 | case slashCircleFill = "flag.slash.circle.fill"
597 | case badgeEllipsis = "flag.badge.ellipsis"
598 | case badgeEllipsisFill = "flag.badge.ellipsis.fill"
599 | }
600 |
601 | case flipphone
602 |
603 | case fn
604 |
605 | public enum Folder: String, SymbolImage {
606 | case badgeQuestionmark = "folder.badge.questionmark"
607 | case fillBadgeQuestionmark = "folder.fill.badge.questionmark"
608 | case badgeGear = "folder.badge.gear"
609 | case fillBadgeGear = "folder.fill.badge.gear"
610 | }
611 |
612 | public enum Forward: String, SymbolImage {
613 | case frame = "forward.frame"
614 | case frameFill = "forward.frame.fill"
615 | }
616 |
617 | case gearshape
618 |
619 | public enum Gearshape: String, SymbolImage {
620 | case fill = "gearshape.fill"
621 | }
622 |
623 | case gearshape2 = "gearshape.2"
624 |
625 | public enum Gearshape2: String, SymbolImage {
626 | case fill = "gearshape.2.fill"
627 | }
628 |
629 | public enum Gift: String, SymbolImage {
630 | case circle = "gift.circle"
631 | case circleFill = "gift.circle.fill"
632 | }
633 |
634 | case giftcard
635 |
636 | public enum Giftcard: String, SymbolImage {
637 | case fill = "giftcard.fill"
638 | }
639 |
640 | case graduationcap
641 |
642 | public enum Graduationcap: String, SymbolImage {
643 | case fill = "graduationcap.fill"
644 | }
645 |
646 | case greetingcard
647 |
648 | public enum Greetingcard: String, SymbolImage {
649 | case fill = "greetingcard.fill"
650 | }
651 |
652 | public enum Guitars: String, SymbolImage {
653 | case fill = "guitars.fill"
654 | }
655 |
656 | case gyroscope
657 |
658 | public enum LetterH: String, SymbolImage {
659 | case squareOnSquare = "h.square.on.square"
660 | case squareFillOnSquareFill = "h.square.fill.on.square.fill"
661 | }
662 |
663 | public enum Hand: String, SymbolImage {
664 | case pointUpLeft = "hand.point.up.left"
665 | case pointUpLeftFill = "hand.point.up.left.fill"
666 | case tap = "hand.tap"
667 | case tapFill = "hand.tap.fill"
668 | case pointUp = "hand.point.up"
669 | case pointUpFill = "hand.point.up.fill"
670 | case pointUpBraille = "hand.point.up.braille"
671 | case pointUpBrailleFill = "hand.point.up.braille.fill"
672 | case pointDown = "hand.point.down"
673 | case pointDownFill = "hand.point.down.fill"
674 | case wave = "hand.wave"
675 | case waveFill = "hand.wave.fill"
676 | }
677 |
678 | public enum Headphones: String, SymbolImage {
679 | case circle = "headphones.circle"
680 | case circleFill = "headphones.circle.fill"
681 | }
682 |
683 | public enum Hearingaid: String, SymbolImage {
684 | case ear = "hearingaid.ear"
685 | }
686 |
687 | public enum Heart: String, SymbolImage {
688 | case textSquare = "heart.text.square"
689 | case textSquareFill = "heart.text.square.fill"
690 | }
691 |
692 | case highlighter
693 |
694 | case homekit
695 |
696 | case homepod
697 |
698 | public enum Homepod: String, SymbolImage {
699 | case fill = "homepod.fill"
700 | }
701 |
702 | public enum Hourglass: String, SymbolImage {
703 | case badgePlus = "hourglass.badge.plus"
704 | }
705 |
706 | public enum House: String, SymbolImage {
707 | case circle = "house.circle"
708 | case circleFill = "house.circle.fill"
709 | }
710 |
711 | case infinity
712 |
713 | case internaldrive
714 |
715 | public enum Internaldrive: String, SymbolImage {
716 | case fill = "internaldrive.fill"
717 | }
718 |
719 | case ipad
720 |
721 | public enum Ipad: String, SymbolImage {
722 | case homebutton = "ipad.homebutton"
723 | case homebuttonLandscape = "ipad.homebutton.landscape"
724 | case landscape = "ipad.landscape"
725 | }
726 |
727 | case iphone
728 |
729 | public enum Iphone: String, SymbolImage {
730 | case homebutton = "iphone.homebutton"
731 | case homebuttonRadiowavesLeftAndRight = "iphone.homebutton.radiowaves.left.and.right"
732 | case homebuttonSlash = "iphone.homebutton.slash"
733 | case radiowavesLeftAndRight = "iphone.radiowaves.left.and.right"
734 | case slash = "iphone.slash"
735 | }
736 |
737 | case ipod
738 |
739 | public enum Ipodshuffle: String, SymbolImage {
740 | case gen1 = "ipodshuffle.gen1"
741 | case gen2 = "ipodshuffle.gen2"
742 | case gen3 = "ipodshuffle.gen3"
743 | case gen4 = "ipodshuffle.gen4"
744 | }
745 |
746 | case ipodtouch
747 |
748 | public enum LetterJ: String, SymbolImage {
749 | case squareOnSquare = "j.square.on.square"
750 | case squareFillOnSquareFill = "j.square.fill.on.square.fill"
751 | }
752 |
753 | case k
754 |
755 | case key
756 |
757 | public enum Key: String, SymbolImage {
758 | case icloud = "key.icloud"
759 | case icloudFill = "key.icloud.fill"
760 | case fill = "key.fill"
761 | }
762 |
763 | public enum Keyboard: String, SymbolImage {
764 | case badgeEllipsis = "keyboard.badge.ellipsis"
765 | case chevronCompactLeft = "keyboard.chevron.compact.left"
766 | case onehandedLeft = "keyboard.onehanded.left"
767 | case onehandedRight = "keyboard.onehanded.right"
768 | case macwindow = "keyboard.macwindow"
769 | }
770 |
771 | public enum LetterL: String, SymbolImage {
772 | case joystick = "l.joystick"
773 | case joystickFill = "l.joystick.fill"
774 | case joystickDown = "l.joystick.down"
775 | case joystickDownFill = "l.joystick.down.fill"
776 | case rectangleRoundedbottom = "l.rectangle.roundedbottom"
777 | case rectangleRoundedbottomFill = "l.rectangle.roundedbottom.fill"
778 | }
779 |
780 | public enum L1: String, SymbolImage {
781 | case rectangleRoundedbottom = "l1.rectangle.roundedbottom"
782 | case rectangleRoundedbottomFill = "l1.rectangle.roundedbottom.fill"
783 | }
784 |
785 | public enum L2: String, SymbolImage {
786 | case rectangleRoundedtop = "l2.rectangle.roundedtop"
787 | case rectangleRoundedtopFill = "l2.rectangle.roundedtop.fill"
788 | }
789 |
790 | case laptopcomputer
791 |
792 | public enum Laptopcomputer: String, SymbolImage {
793 | case andIphone = "laptopcomputer.and.iphone"
794 | }
795 |
796 | public enum Lasso: String, SymbolImage {
797 | case sparkles = "lasso.sparkles"
798 | }
799 |
800 | public enum Latch2: String, SymbolImage {
801 | case _case = "latch.2.case"
802 | case caseFill = "latch.2.case.fill"
803 | }
804 |
805 | public enum Lb: String, SymbolImage {
806 | case rectangleRoundedbottom = "lb.rectangle.roundedbottom"
807 | case rectangleRoundedbottomFill = "lb.rectangle.roundedbottom.fill"
808 | }
809 |
810 | case leaf
811 |
812 | public enum Leaf: String, SymbolImage {
813 | case fill = "leaf.fill"
814 | case arrowTriangleCirclepath = "leaf.arrow.triangle.circlepath"
815 | }
816 |
817 | case level
818 |
819 | public enum Level: String, SymbolImage {
820 | case fill = "level.fill"
821 | }
822 |
823 | case lifepreserver
824 |
825 | public enum Lifepreserver: String, SymbolImage {
826 | case fill = "lifepreserver.fill"
827 | }
828 |
829 | public enum Line: String, SymbolImage {
830 | case diagonal = "line.diagonal"
831 | case diagonalArrow = "line.diagonal.arrow"
832 | case horizontalStarFillLineHorizontal = "line.horizontal.star.fill.line.horizontal"
833 | case horizontal3Circle = "line.horizontal.3.circle"
834 | case horizontal3CircleFill = "line.horizontal.3.circle.fill"
835 | case horizontal2DecreaseCircle = "line.horizontal.2.decrease.circle"
836 | case horizontal2DecreaseCircleFill = "line.horizontal.2.decrease.circle.fill"
837 | }
838 |
839 | public enum Line3: String, SymbolImage {
840 | case crossedSwirlCircle = "line.3.crossed.swirl.circle"
841 | case crossedSwirlCircleFill = "line.3.crossed.swirl.circle.fill"
842 | }
843 |
844 | case lineweight
845 |
846 | public enum Link: String, SymbolImage {
847 | case badgePlus = "link.badge.plus"
848 | }
849 |
850 | public enum List: String, SymbolImage {
851 | case bulletRectangle = "list.bullet.rectangle"
852 | case triangle = "list.triangle"
853 | case star = "list.star"
854 | case andFilm = "list.and.film"
855 | }
856 |
857 | public enum Livephoto: String, SymbolImage {
858 | case badgeA = "livephoto.badge.a"
859 | }
860 |
861 | public enum Location: String, SymbolImage {
862 | case viewfinder = "location.viewfinder"
863 | case fillViewfinder = "location.fill.viewfinder"
864 | }
865 |
866 | public enum Lock: String, SymbolImage {
867 | case doc = "lock.doc"
868 | case docFill = "lock.doc.fill"
869 | case square = "lock.square"
870 | case squareFill = "lock.square.fill"
871 | case squareStack = "lock.square.stack"
872 | case squareStackFill = "lock.square.stack.fill"
873 | case rectangle = "lock.rectangle"
874 | case rectangleFill = "lock.rectangle.fill"
875 | case rectangleStack = "lock.rectangle.stack"
876 | case rectangleStackFill = "lock.rectangle.stack.fill"
877 | case rectangleOnRectangle = "lock.rectangle.on.rectangle"
878 | case rectangleOnRectangleFill = "lock.rectangle.on.rectangle.fill"
879 | }
880 |
881 | case loupe
882 |
883 | public enum Lt: String, SymbolImage {
884 | case rectangleRoundedtop = "lt.rectangle.roundedtop"
885 | case rectangleRoundedtopFill = "lt.rectangle.roundedtop.fill"
886 | }
887 |
888 | case lungs
889 |
890 | public enum Lungs: String, SymbolImage {
891 | case fill = "lungs.fill"
892 | }
893 |
894 | case macmini
895 |
896 | public enum Macmini: String, SymbolImage {
897 | case fill = "macmini.fill"
898 | }
899 |
900 | public enum Macpro: String, SymbolImage {
901 | case gen1 = "macpro.gen1"
902 | case gen2 = "macpro.gen2"
903 | case gen2Fill = "macpro.gen2.fill"
904 | case gen3 = "macpro.gen3"
905 | case gen3Server = "macpro.gen3.server"
906 | }
907 |
908 | public enum Macwindow: String, SymbolImage {
909 | case badgePlus = "macwindow.badge.plus"
910 | case onRectangle = "macwindow.on.rectangle"
911 | }
912 |
913 | case mail
914 |
915 | public enum Mail: String, SymbolImage {
916 | case stack = "mail.stack"
917 | case stackFill = "mail.stack.fill"
918 | case fill = "mail.fill"
919 | case andTextMagnifyingglass = "mail.and.text.magnifyingglass"
920 | }
921 |
922 | case megaphone
923 |
924 | public enum Megaphone: String, SymbolImage {
925 | case fill = "megaphone.fill"
926 | }
927 |
928 | case memorychip
929 |
930 | public enum Menubar: String, SymbolImage {
931 | case rectangle = "menubar.rectangle"
932 | case dockRectangle = "menubar.dock.rectangle"
933 | case dockRectangleBadgeRecord = "menubar.dock.rectangle.badge.record"
934 | case arrowUpRectangle = "menubar.arrow.up.rectangle"
935 | case arrowDownRectangle = "menubar.arrow.down.rectangle"
936 | }
937 |
938 | public enum Metronome: String, SymbolImage {
939 | case fill = "metronome.fill"
940 | }
941 |
942 | public enum Minus: String, SymbolImage {
943 | case plusBatteryblock = "minus.plus.batteryblock"
944 | case plusBatteryblockFill = "minus.plus.batteryblock.fill"
945 | case rectanglePortrait = "minus.rectangle.portrait"
946 | case rectanglePortraitFill = "minus.rectangle.portrait.fill"
947 | case diamond = "minus.diamond"
948 | case diamondFill = "minus.diamond.fill"
949 | }
950 |
951 | case mosaic
952 |
953 | public enum Mosaic: String, SymbolImage {
954 | case fill = "mosaic.fill"
955 | }
956 |
957 | case mount
958 |
959 | public enum Mount: String, SymbolImage {
960 | case fill = "mount.fill"
961 | }
962 |
963 | case mouth
964 |
965 | public enum Mouth: String, SymbolImage {
966 | case fill = "mouth.fill"
967 | }
968 |
969 | public enum Move: String, SymbolImage {
970 | case _3d = "move.3d"
971 | }
972 |
973 | public enum Music: String, SymbolImage {
974 | case quarternote3 = "music.quarternote.3"
975 | case noteHouse = "music.note.house"
976 | case noteHouseFill = "music.note.house.fill"
977 | }
978 |
979 | case mustache
980 |
981 | public enum Mustache: String, SymbolImage {
982 | case fill = "mustache.fill"
983 | }
984 |
985 | case network
986 |
987 | case newspaper
988 |
989 | public enum Newspaper: String, SymbolImage {
990 | case fill = "newspaper.fill"
991 | }
992 |
993 | case nose
994 |
995 | public enum Nose: String, SymbolImage {
996 | case fill = "nose.fill"
997 | }
998 |
999 | case note
1000 |
1001 | public enum Note: String, SymbolImage {
1002 | case text = "note.text"
1003 | case textBadgePlus = "note.text.badge.plus"
1004 | }
1005 |
1006 | case octagon
1007 |
1008 | public enum Octagon: String, SymbolImage {
1009 | case fill = "octagon.fill"
1010 | }
1011 |
1012 | case opticaldisc
1013 |
1014 | case opticaldiscdrive
1015 |
1016 | public enum Opticaldiscdrive: String, SymbolImage {
1017 | case fill = "opticaldiscdrive.fill"
1018 | }
1019 |
1020 | public enum Paintbrush: String, SymbolImage {
1021 | case pointed = "paintbrush.pointed"
1022 | case pointedFill = "paintbrush.pointed.fill"
1023 | }
1024 |
1025 | case paintpalette
1026 |
1027 | public enum Paintpalette: String, SymbolImage {
1028 | case fill = "paintpalette.fill"
1029 | }
1030 |
1031 | public enum Paperclip: String, SymbolImage {
1032 | case badgeEllipsis = "paperclip.badge.ellipsis"
1033 | }
1034 |
1035 | public enum Paperplane: String, SymbolImage {
1036 | case circle = "paperplane.circle"
1037 | case circleFill = "paperplane.circle.fill"
1038 | }
1039 |
1040 | case paragraphsign
1041 |
1042 | case pc
1043 |
1044 | public enum Pencil: String, SymbolImage {
1045 | case tipCropCircleBadgeArrowRight = "pencil.tip.crop.circle.badge.arrow.right"
1046 | }
1047 |
1048 | public enum Person: String, SymbolImage {
1049 | case fillTurnRight = "person.fill.turn.right"
1050 | case fillTurnDown = "person.fill.turn.down"
1051 | case fillTurnLeft = "person.fill.turn.left"
1052 | case fillCheckmark = "person.fill.checkmark"
1053 | case fillXmark = "person.fill.xmark"
1054 | case fillQuestionmark = "person.fill.questionmark"
1055 | case fillBadgePlus = "person.fill.badge.plus"
1056 | case fillBadgeMinus = "person.fill.badge.minus"
1057 | case andArrowLeftAndArrowRight = "person.and.arrow.left.and.arrow.right"
1058 | case fillAndArrowLeftAndArrowRight = "person.fill.and.arrow.left.and.arrow.right"
1059 | case cropCircleBadgeQuestionmark = "person.crop.circle.badge.questionmark"
1060 | case cropCircleFillBadgeQuestionmark = "person.crop.circle.fill.badge.questionmark"
1061 | case cropCircleBadgeExclamationmark = "person.crop.circle.badge.exclamationmark"
1062 | case cropCircleFillBadgeExclamationmark = "person.crop.circle.fill.badge.exclamationmark"
1063 | case cropSquareFillAndAtRectangle = "person.crop.square.fill.and.at.rectangle"
1064 | }
1065 |
1066 | public enum Person2: String, SymbolImage {
1067 | case circle = "person.2.circle"
1068 | case circleFill = "person.2.circle.fill"
1069 | }
1070 |
1071 | public enum Phone: String, SymbolImage {
1072 | case connection = "phone.connection"
1073 | case fillConnection = "phone.fill.connection"
1074 | }
1075 |
1076 | public enum Photo: String, SymbolImage {
1077 | case onRectangleAngled = "photo.on.rectangle.angled"
1078 | }
1079 |
1080 | case pianokeys
1081 |
1082 | case pills
1083 |
1084 | public enum Pills: String, SymbolImage {
1085 | case fill = "pills.fill"
1086 | }
1087 |
1088 | case pip
1089 |
1090 | public enum Pip: String, SymbolImage {
1091 | case fill = "pip.fill"
1092 | case exit = "pip.exit"
1093 | case enter = "pip.enter"
1094 | case swap = "pip.swap"
1095 | case remove = "pip.remove"
1096 | }
1097 |
1098 | public enum Placeholdertext: String, SymbolImage {
1099 | case fill = "placeholdertext.fill"
1100 | }
1101 |
1102 | public enum Play: String, SymbolImage {
1103 | case slash = "play.slash"
1104 | case slashFill = "play.slash.fill"
1105 | }
1106 |
1107 | public enum Plus: String, SymbolImage {
1108 | case rectangleOnFolder = "plus.rectangle.on.folder"
1109 | case rectangleFillOnFolderFill = "plus.rectangle.fill.on.folder.fill"
1110 | case message = "plus.message"
1111 | case messageFill = "plus.message.fill"
1112 | case viewfinder = "plus.viewfinder"
1113 | case rectanglePortrait = "plus.rectangle.portrait"
1114 | case rectanglePortraitFill = "plus.rectangle.portrait.fill"
1115 | case diamond = "plus.diamond"
1116 | case diamondFill = "plus.diamond.fill"
1117 | }
1118 |
1119 | public enum Point: String, SymbolImage {
1120 | case topleftDownCurvedtoPointBottomrightUp = "point.topleft.down.curvedto.point.bottomright.up"
1121 | case fillTopleftDownCurvedtoPointFillBottomrightUp = "point.fill.topleft.down.curvedto.point.fill.bottomright.up"
1122 | }
1123 |
1124 | public enum Printer: String, SymbolImage {
1125 | case fillAndPaperFill = "printer.fill.and.paper.fill"
1126 | case dotmatrix = "printer.dotmatrix"
1127 | case dotmatrixFill = "printer.dotmatrix.fill"
1128 | case dotmatrixFillAndPaperFill = "printer.dotmatrix.fill.and.paper.fill"
1129 | }
1130 |
1131 | case puzzlepiece
1132 |
1133 | public enum Puzzlepiece: String, SymbolImage {
1134 | case fill = "puzzlepiece.fill"
1135 | }
1136 |
1137 | public enum Questionmark: String, SymbolImage {
1138 | case folder = "questionmark.folder"
1139 | case folderFill = "questionmark.folder.fill"
1140 | case squareDashed = "questionmark.square.dashed"
1141 | }
1142 |
1143 | public enum LetterR: String, SymbolImage {
1144 | case squareOnSquare = "r.square.on.square"
1145 | case squareFillOnSquareFill = "r.square.fill.on.square.fill"
1146 | case joystick = "r.joystick"
1147 | case joystickFill = "r.joystick.fill"
1148 | case joystickDown = "r.joystick.down"
1149 | case joystickDownFill = "r.joystick.down.fill"
1150 | case rectangleRoundedbottom = "r.rectangle.roundedbottom"
1151 | case rectangleRoundedbottomFill = "r.rectangle.roundedbottom.fill"
1152 | }
1153 |
1154 | public enum R1: String, SymbolImage {
1155 | case rectangleRoundedbottom = "r1.rectangle.roundedbottom"
1156 | case rectangleRoundedbottomFill = "r1.rectangle.roundedbottom.fill"
1157 | }
1158 |
1159 | public enum R2: String, SymbolImage {
1160 | case rectangleRoundedtop = "r2.rectangle.roundedtop"
1161 | case rectangleRoundedtopFill = "r2.rectangle.roundedtop.fill"
1162 | }
1163 |
1164 | case radio
1165 |
1166 | public enum Radio: String, SymbolImage {
1167 | case fill = "radio.fill"
1168 | }
1169 |
1170 | public enum Rb: String, SymbolImage {
1171 | case rectangleRoundedbottom = "rb.rectangle.roundedbottom"
1172 | case rectangleRoundedbottomFill = "rb.rectangle.roundedbottom.fill"
1173 | }
1174 |
1175 | public enum Record: String, SymbolImage {
1176 | case circle = "record.circle"
1177 | case circleFill = "record.circle.fill"
1178 | }
1179 |
1180 | public enum Rectangle: String, SymbolImage {
1181 | case andPencilAndEllipsis = "rectangle.and.pencil.and.ellipsis"
1182 | case dashedAndPaperclip = "rectangle.dashed.and.paperclip"
1183 | case slash = "rectangle.slash"
1184 | case slashFill = "rectangle.slash.fill"
1185 | case portrait = "rectangle.portrait"
1186 | case portraitFill = "rectangle.portrait.fill"
1187 | case andTextMagnifyingglass = "rectangle.and.text.magnifyingglass"
1188 | case arrowtriangle2Outward = "rectangle.arrowtriangle.2.outward"
1189 | case arrowtriangle2Inward = "rectangle.arrowtriangle.2.inward"
1190 | case portraitArrowtriangle2Outward = "rectangle.portrait.arrowtriangle.2.outward"
1191 | case portraitArrowtriangle2Inward = "rectangle.portrait.arrowtriangle.2.inward"
1192 | case insetFill = "rectangle.inset.fill"
1193 | case lefthalfInsetFill = "rectangle.lefthalf.inset.fill"
1194 | case righthalfInsetFill = "rectangle.righthalf.inset.fill"
1195 | case bottomthirdInsetFill = "rectangle.bottomthird.inset.fill"
1196 | case leftthirdInsetFill = "rectangle.leftthird.inset.fill"
1197 | case rightthirdInsetFill = "rectangle.rightthird.inset.fill"
1198 | case centerInsetFill = "rectangle.center.inset.fill"
1199 | case insetTopleftFill = "rectangle.inset.topleft.fill"
1200 | case insetToprightFill = "rectangle.inset.topright.fill"
1201 | case insetBottomleftFill = "rectangle.inset.bottomleft.fill"
1202 | case insetBottomrightFill = "rectangle.inset.bottomright.fill"
1203 | case lefthalfInsetFillArrowLeft = "rectangle.lefthalf.inset.fill.arrow.left"
1204 | case righthalfInsetFillArrowRight = "rectangle.righthalf.inset.fill.arrow.right"
1205 | case lefthalfFill = "rectangle.lefthalf.fill"
1206 | case righthalfFill = "rectangle.righthalf.fill"
1207 | case dashed = "rectangle.dashed"
1208 | case dashedBadgeRecord = "rectangle.dashed.badge.record"
1209 | case badgePlus = "rectangle.badge.plus"
1210 | case fillBadgePlus = "rectangle.fill.badge.plus"
1211 | case badgeMinus = "rectangle.badge.minus"
1212 | case fillBadgeMinus = "rectangle.fill.badge.minus"
1213 | case split2X1 = "rectangle.split.2x1"
1214 | case split2X1Fill = "rectangle.split.2x1.fill"
1215 | case split1X2 = "rectangle.split.1x2"
1216 | case split1X2Fill = "rectangle.split.1x2.fill"
1217 | case split2X2 = "rectangle.split.2x2"
1218 | case split2X2Fill = "rectangle.split.2x2.fill"
1219 | case fillOnRectangleFillCircle = "rectangle.fill.on.rectangle.fill.circle"
1220 | case fillOnRectangleFillCircleFill = "rectangle.fill.on.rectangle.fill.circle.fill"
1221 | case onRectangleSlash = "rectangle.on.rectangle.slash"
1222 | case fillOnRectangleFillSlashFill = "rectangle.fill.on.rectangle.fill.slash.fill"
1223 | case connectedToLineBelow = "rectangle.connected.to.line.below"
1224 | case roundedtop = "rectangle.roundedtop"
1225 | case roundedtopFill = "rectangle.roundedtop.fill"
1226 | case roundedbottom = "rectangle.roundedbottom"
1227 | case roundedbottomFill = "rectangle.roundedbottom.fill"
1228 | }
1229 |
1230 | public enum Rectangle3: String, SymbolImage {
1231 | case offgridBubbleLeft = "rectangle.3.offgrid.bubble.left"
1232 | case offgridBubbleLeftFill = "rectangle.3.offgrid.bubble.left.fill"
1233 | }
1234 |
1235 | case restart
1236 |
1237 | public enum Restart: String, SymbolImage {
1238 | case circle = "restart.circle"
1239 | }
1240 |
1241 | public enum Rotate: String, SymbolImage {
1242 | case _3d = "rotate.3d"
1243 | }
1244 |
1245 | public enum Rt: String, SymbolImage {
1246 | case rectangleRoundedtop = "rt.rectangle.roundedtop"
1247 | case rectangleRoundedtopFill = "rt.rectangle.roundedtop.fill"
1248 | }
1249 |
1250 | case ruler
1251 |
1252 | public enum Ruler: String, SymbolImage {
1253 | case fill = "ruler.fill"
1254 | }
1255 |
1256 | public enum Scale: String, SymbolImage {
1257 | case _3d = "scale.3d"
1258 | }
1259 |
1260 | case scalemass
1261 |
1262 | public enum Scalemass: String, SymbolImage {
1263 | case fill = "scalemass.fill"
1264 | }
1265 |
1266 | case scanner
1267 |
1268 | public enum Scanner: String, SymbolImage {
1269 | case fill = "scanner.fill"
1270 | }
1271 |
1272 | public enum Scribble: String, SymbolImage {
1273 | case variable = "scribble.variable"
1274 | }
1275 |
1276 | case scroll
1277 |
1278 | public enum Scroll: String, SymbolImage {
1279 | case fill = "scroll.fill"
1280 | }
1281 |
1282 | case sdcard
1283 |
1284 | public enum Sdcard: String, SymbolImage {
1285 | case fill = "sdcard.fill"
1286 | }
1287 |
1288 | case seal
1289 |
1290 | public enum Seal: String, SymbolImage {
1291 | case fill = "seal.fill"
1292 | }
1293 |
1294 | public enum Server: String, SymbolImage {
1295 | case rack = "server.rack"
1296 | }
1297 |
1298 | case shadow
1299 |
1300 | case shippingbox
1301 |
1302 | public enum Shippingbox: String, SymbolImage {
1303 | case fill = "shippingbox.fill"
1304 | }
1305 |
1306 | public enum Signpost: String, SymbolImage {
1307 | case right = "signpost.right"
1308 | case rightFill = "signpost.right.fill"
1309 | }
1310 |
1311 | case simcard
1312 |
1313 | public enum Simcard: String, SymbolImage {
1314 | case fill = "simcard.fill"
1315 | }
1316 |
1317 | case simcard2 = "simcard.2"
1318 |
1319 | public enum Simcard2: String, SymbolImage {
1320 | case fill = "simcard.2.fill"
1321 | }
1322 |
1323 | case sleep
1324 |
1325 | public enum Slider: String, SymbolImage {
1326 | case vertical3 = "slider.vertical.3"
1327 | }
1328 |
1329 | case sparkle
1330 |
1331 | public enum Speaker: String, SymbolImage {
1332 | case slashCircle = "speaker.slash.circle"
1333 | case slashCircleFill = "speaker.slash.circle.fill"
1334 | case wave1 = "speaker.wave.1"
1335 | case wave1Fill = "speaker.wave.1.fill"
1336 | case wave2 = "speaker.wave.2"
1337 | case wave2Fill = "speaker.wave.2.fill"
1338 | case wave2Circle = "speaker.wave.2.circle"
1339 | case wave2CircleFill = "speaker.wave.2.circle.fill"
1340 | case wave3 = "speaker.wave.3"
1341 | case wave3Fill = "speaker.wave.3.fill"
1342 | }
1343 |
1344 | public enum Square: String, SymbolImage {
1345 | case grid3X1FolderBadgePlus = "square.grid.3x1.folder.badge.plus"
1346 | case grid3X1FolderFillBadgePlus = "square.grid.3x1.folder.fill.badge.plus"
1347 | case andAtRectangle = "square.and.at.rectangle"
1348 | case grid3X1BelowLineGrid1X2 = "square.grid.3x1.below.line.grid.1x2"
1349 | case grid3X1FillBelowLineGrid1X2 = "square.grid.3x1.fill.below.line.grid.1x2"
1350 | case grid3X3 = "square.grid.3x3"
1351 | case grid3X3Fill = "square.grid.3x3.fill"
1352 | case grid3X3TopleftFill = "square.grid.3x3.topleft.fill"
1353 | case grid3X3TopmiddleFill = "square.grid.3x3.topmiddle.fill"
1354 | case grid3X3ToprightFill = "square.grid.3x3.topright.fill"
1355 | case grid3X3MiddleleftFill = "square.grid.3x3.middleleft.fill"
1356 | case grid3X3MiddleFill = "square.grid.3x3.middle.fill"
1357 | case grid3X3MiddlerightFill = "square.grid.3x3.middleright.fill"
1358 | case grid3X3BottomleftFill = "square.grid.3x3.bottomleft.fill"
1359 | case grid3X3BottommiddleFill = "square.grid.3x3.bottommiddle.fill"
1360 | case grid3X3BottomrightFill = "square.grid.3x3.bottomright.fill"
1361 | case bottomhalfFill = "square.bottomhalf.fill"
1362 | case tophalfFill = "square.tophalf.fill"
1363 | case slash = "square.slash"
1364 | case slashFill = "square.slash.fill"
1365 | case dashed = "square.dashed"
1366 | case dashedInsetFill = "square.dashed.inset.fill"
1367 | case grid3X3FillSquare = "square.grid.3x3.fill.square"
1368 | case splitBottomrightquarter = "square.split.bottomrightquarter"
1369 | case splitBottomrightquarterFill = "square.split.bottomrightquarter.fill"
1370 | case splitDiagonal2X2 = "square.split.diagonal.2x2"
1371 | case splitDiagonal2X2Fill = "square.split.diagonal.2x2.fill"
1372 | case splitDiagonal = "square.split.diagonal"
1373 | case splitDiagonalFill = "square.split.diagonal.fill"
1374 | case onSquareDashed = "square.on.square.dashed"
1375 | case onSquareSquareshapeControlhandles = "square.on.square.squareshape.controlhandles"
1376 | case stack3DUpBadgeA = "square.stack.3d.up.badge.a"
1377 | case stack3DUpBadgeAFill = "square.stack.3d.up.badge.a.fill"
1378 | case circle = "square.circle"
1379 | case circleFill = "square.circle.fill"
1380 | case fillTextGrid1X2 = "square.fill.text.grid.1x2"
1381 | }
1382 |
1383 | public enum Square2: String, SymbolImage {
1384 | case stack3D = "square.2.stack.3d"
1385 | case stack3DTopFill = "square.2.stack.3d.top.fill"
1386 | case stack3DBottomFill = "square.2.stack.3d.bottom.fill"
1387 | }
1388 |
1389 | public enum Square3: String, SymbolImage {
1390 | case stack3D = "square.3.stack.3d"
1391 | case stack3DTopFill = "square.3.stack.3d.top.fill"
1392 | case stack3DMiddleFill = "square.3.stack.3d.middle.fill"
1393 | case stack3DBottomFill = "square.3.stack.3d.bottom.fill"
1394 | }
1395 |
1396 | case squareshape
1397 |
1398 | public enum Squareshape: String, SymbolImage {
1399 | case fill = "squareshape.fill"
1400 | case dashedSquareshape = "squareshape.dashed.squareshape"
1401 | case squareshapeDashed = "squareshape.squareshape.dashed"
1402 | case controlhandlesOnSquareshapeControlhandles = "squareshape.controlhandles.on.squareshape.controlhandles"
1403 | case split2X2 = "squareshape.split.2x2"
1404 | case split3X3 = "squareshape.split.3x3"
1405 | }
1406 |
1407 | public enum Star: String, SymbolImage {
1408 | case square = "star.square"
1409 | case squareFill = "star.square.fill"
1410 | }
1411 |
1412 | public enum Staroflife: String, SymbolImage {
1413 | case circle = "staroflife.circle"
1414 | case circleFill = "staroflife.circle.fill"
1415 | }
1416 |
1417 | case stethoscope
1418 |
1419 | case swift
1420 |
1421 | case switch2 = "switch.2"
1422 |
1423 | case tablecells
1424 |
1425 | public enum Tablecells: String, SymbolImage {
1426 | case fill = "tablecells.fill"
1427 | case badgeEllipsis = "tablecells.badge.ellipsis"
1428 | case badgeEllipsisFill = "tablecells.badge.ellipsis.fill"
1429 | }
1430 |
1431 | public enum Tag: String, SymbolImage {
1432 | case slash = "tag.slash"
1433 | case slashFill = "tag.slash.fill"
1434 | }
1435 |
1436 | case target
1437 |
1438 | public enum Teletype: String, SymbolImage {
1439 | case circle = "teletype.circle"
1440 | case circleFill = "teletype.circle.fill"
1441 | }
1442 |
1443 | public enum Text: String, SymbolImage {
1444 | case bookClosed = "text.book.closed"
1445 | case bookClosedFill = "text.book.closed.fill"
1446 | case magnifyingglass = "text.magnifyingglass"
1447 | case andCommandMacwindow = "text.and.command.macwindow"
1448 | case redaction = "text.redaction"
1449 | }
1450 |
1451 | public enum Thermometer: String, SymbolImage {
1452 | case sunFill = "thermometer.sun.fill"
1453 | }
1454 |
1455 | case ticket
1456 |
1457 | public enum Ticket: String, SymbolImage {
1458 | case fill = "ticket.fill"
1459 | }
1460 |
1461 | public enum Timeline: String, SymbolImage {
1462 | case selection = "timeline.selection"
1463 | }
1464 |
1465 | public enum Timer: String, SymbolImage {
1466 | case square = "timer.square"
1467 | }
1468 |
1469 | case touchid
1470 |
1471 | case tram
1472 |
1473 | public enum Tram: String, SymbolImage {
1474 | case tunnelFill = "tram.tunnel.fill"
1475 | }
1476 |
1477 | case translate
1478 |
1479 | public enum Tray: String, SymbolImage {
1480 | case circle = "tray.circle"
1481 | case circleFill = "tray.circle.fill"
1482 | }
1483 |
1484 | public enum Triangle: String, SymbolImage {
1485 | case circle = "triangle.circle"
1486 | case circleFill = "triangle.circle.fill"
1487 | }
1488 |
1489 | public enum Tv: String, SymbolImage {
1490 | case andHifispeakerFill = "tv.and.hifispeaker.fill"
1491 | }
1492 |
1493 | public enum Video: String, SymbolImage {
1494 | case fillBadgePlus = "video.fill.badge.plus"
1495 | case badgeCheckmark = "video.badge.checkmark"
1496 | case fillBadgeCheckmark = "video.fill.badge.checkmark"
1497 | }
1498 |
1499 | case wake
1500 |
1501 | public enum Wallet: String, SymbolImage {
1502 | case pass = "wallet.pass"
1503 | case passFill = "wallet.pass.fill"
1504 | }
1505 |
1506 | public enum Wave3: String, SymbolImage {
1507 | case left = "wave.3.left"
1508 | case leftCircle = "wave.3.left.circle"
1509 | case leftCircleFill = "wave.3.left.circle.fill"
1510 | case right = "wave.3.right"
1511 | case rightCircle = "wave.3.right.circle"
1512 | case rightCircleFill = "wave.3.right.circle.fill"
1513 | }
1514 |
1515 | public enum Waveform: String, SymbolImage {
1516 | case pathEcgRectangle = "waveform.path.ecg.rectangle"
1517 | case pathEcgRectangleFill = "waveform.path.ecg.rectangle.fill"
1518 | }
1519 |
1520 | public enum Wrench: String, SymbolImage {
1521 | case andScrewdriver = "wrench.and.screwdriver"
1522 | case andScrewdriverFill = "wrench.and.screwdriver.fill"
1523 | }
1524 |
1525 | public enum Xmark: String, SymbolImage {
1526 | case bin = "xmark.bin"
1527 | case binFill = "xmark.bin.fill"
1528 | case binCircle = "xmark.bin.circle"
1529 | case binCircleFill = "xmark.bin.circle.fill"
1530 | case rectanglePortrait = "xmark.rectangle.portrait"
1531 | case rectanglePortraitFill = "xmark.rectangle.portrait.fill"
1532 | case diamond = "xmark.diamond"
1533 | case diamondFill = "xmark.diamond.fill"
1534 | }
1535 |
1536 | case xserve
1537 |
1538 | public enum Zl: String, SymbolImage {
1539 | case rectangleRoundedtop = "zl.rectangle.roundedtop"
1540 | case rectangleRoundedtopFill = "zl.rectangle.roundedtop.fill"
1541 | }
1542 |
1543 | public enum Zr: String, SymbolImage {
1544 | case rectangleRoundedtop = "zr.rectangle.roundedtop"
1545 | case rectangleRoundedtopFill = "zr.rectangle.roundedtop.fill"
1546 | }
1547 | }
1548 |
--------------------------------------------------------------------------------
/Sources/SFSymbol/Extensions/Image+SFSymbol.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Image+SFSymbol.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | import SwiftUI
24 |
25 | public extension Image {
26 | /// Create Image from SFSymbol
27 | init(symbol: T) where T.RawValue == String {
28 | self.init(systemName: symbol.rawValue)
29 | }
30 | }
31 |
32 | @available(iOS 16.0, tvOS 16.0, macOS 13.0, watchOS 9.0, *)
33 | public extension Image {
34 | /// Create Image from SFSymbol with optional `variableValue`
35 | init(symbol: T, variableValue: Double? = nil) where T.RawValue == String {
36 | self.init(systemName: symbol.rawValue, variableValue: variableValue)
37 | }
38 | }
39 |
--------------------------------------------------------------------------------
/Sources/SFSymbol/Extensions/NSImage+SFSymbol.swift:
--------------------------------------------------------------------------------
1 | //
2 | // NSImage+SFSymbol.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #if canImport(AppKit) && !targetEnvironment(macCatalyst)
24 | import AppKit
25 |
26 | @available(macOS 11, *)
27 | public extension NSImage {
28 | convenience init?(symbol: T, accessibilityDescription description: String? = nil) where T.RawValue == String {
29 | self.init(systemSymbolName: symbol.rawValue, accessibilityDescription: description)
30 | }
31 | }
32 |
33 | #endif
34 |
--------------------------------------------------------------------------------
/Sources/SFSymbol/Extensions/UIImage+SFSymbol.swift:
--------------------------------------------------------------------------------
1 | //
2 | // UIImage+SFSymbol.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #if canImport(UIKit) || targetEnvironment(macCatalyst)
24 | import UIKit
25 |
26 | @available(iOS 13.0, *)
27 | public extension UIImage {
28 | convenience init?(symbol: T) where T.RawValue == String {
29 | self.init(systemName: symbol.rawValue)
30 | }
31 |
32 | convenience init?(symbol: T, with configuration: Configuration) where T.RawValue == String {
33 | self.init(systemName: symbol.rawValue, withConfiguration: configuration)
34 | }
35 | }
36 |
37 | #endif
38 |
--------------------------------------------------------------------------------
/Sources/SFSymbol/Protocols/SymbolImage.swift:
--------------------------------------------------------------------------------
1 | //
2 | // Untitled.swift
3 | // SFSymbol
4 | //
5 | // Created by Nicko on 2024/10/31.
6 | //
7 |
8 | import SwiftUI
9 |
10 | public protocol SymbolImage where Self: RawRepresentable, Self.RawValue == String {
11 | var image: Image? { get }
12 | }
13 |
14 |
15 | public extension SymbolImage {
16 | var image: Image? {
17 | Image(systemName: rawValue)
18 | }
19 | }
20 |
--------------------------------------------------------------------------------
/Sources/SFSymbol/SFSymbol2/SFSymbol2.swift:
--------------------------------------------------------------------------------
1 | //
2 | // SFSymbol2.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | public enum SFSymbol2: String, SymbolImage {
24 | public enum _4K: String, SymbolImage {
25 | case tv = "4k.tv"
26 | case tvFill = "4k.tv.fill"
27 | }
28 |
29 | public enum LetterA: String, SymbolImage {
30 | case bookClosed = "a.book.closed"
31 | case bookClosedFill = "a.book.closed.fill"
32 | case magnify = "a.magnify"
33 | }
34 |
35 | case abc
36 |
37 | public enum Airplane: String, SymbolImage {
38 | case circle = "airplane.circle"
39 | case circleFill = "airplane.circle.fill"
40 | }
41 |
42 | case airpods
43 |
44 | case airpodspro
45 |
46 | public enum Airport: String, SymbolImage {
47 | case express = "airport.express"
48 | case extremeTower = "airport.extreme.tower"
49 | case extreme = "airport.extreme"
50 | }
51 |
52 | case amplifier
53 |
54 | case applelogo
55 |
56 | case applescript
57 |
58 | public enum Applescript: String, SymbolImage {
59 | case fill = "applescript.fill"
60 | }
61 |
62 | case appletv
63 |
64 | public enum Appletv: String, SymbolImage {
65 | case fill = "appletv.fill"
66 | }
67 |
68 | case applewatch
69 |
70 | public enum Applewatch: String, SymbolImage {
71 | case watchface = "applewatch.watchface"
72 | case radiowavesLeftAndRight = "applewatch.radiowaves.left.and.right"
73 | case slash = "applewatch.slash"
74 | }
75 |
76 | public enum Apps: String, SymbolImage {
77 | case iphone = "apps.iphone"
78 | case iphoneBadgePlus = "apps.iphone.badge.plus"
79 | case iphoneLandscape = "apps.iphone.landscape"
80 | case ipad = "apps.ipad"
81 | case ipadLandscape = "apps.ipad.landscape"
82 | }
83 |
84 | public enum Archivebox: String, SymbolImage {
85 | case circle = "archivebox.circle"
86 | case circleFill = "archivebox.circle.fill"
87 | }
88 |
89 | public enum Arrow: String, SymbolImage {
90 | case rightDocOnClipboard = "arrow.right.doc.on.clipboard"
91 | case upDocOnClipboard = "arrow.up.doc.on.clipboard"
92 | case triangle2CirclepathDocOnClipboard = "arrow.triangle.2.circlepath.doc.on.clipboard"
93 | case rectanglepath = "arrow.rectanglepath"
94 | case upLeftAndDownRightMagnifyingglass = "arrow.up.left.and.down.right.magnifyingglass"
95 | case triangle2CirclepathCamera = "arrow.triangle.2.circlepath.camera"
96 | case triangle2CirclepathCameraFill = "arrow.triangle.2.circlepath.camera.fill"
97 | case upMessage = "arrow.up.message"
98 | case upMessageFill = "arrow.up.message.fill"
99 | case upRightAndArrowDownLeftRectangle = "arrow.up.right.and.arrow.down.left.rectangle"
100 | case upRightAndArrowDownLeftRectangleFill = "arrow.up.right.and.arrow.down.left.rectangle.fill"
101 | case turnUpRightIphone = "arrow.turn.up.right.iphone"
102 | case turnUpRightIphoneFill = "arrow.turn.up.right.iphone.fill"
103 | case upAndPersonRectanglePortrait = "arrow.up.and.person.rectangle.portrait"
104 | case upAndPersonRectangleTurnRight = "arrow.up.and.person.rectangle.turn.right"
105 | case upAndPersonRectangleTurnLeft = "arrow.up.and.person.rectangle.turn.left"
106 | case upRightApp = "arrow.up.right.app"
107 | case upRightAppFill = "arrow.up.right.app.fill"
108 | case downApp = "arrow.down.app"
109 | case downAppFill = "arrow.down.app.fill"
110 | case leftAndRightRighttriangleLeftRighttriangleRight = "arrow.left.and.right.righttriangle.left.righttriangle.right"
111 | case leftAndRightRighttriangleLeftRighttriangleRightFill = "arrow.left.and.right.righttriangle.left.righttriangle.right.fill"
112 | case upAndDownRighttriangleUpRighttriangleDown = "arrow.up.and.down.righttriangle.up.righttriangle.down"
113 | case upAndDownRighttriangleUpFillRighttriangleDownFill = "arrow.up.and.down.righttriangle.up.fill.righttriangle.down.fill"
114 | case upAndDownAndArrowLeftAndRight = "arrow.up.and.down.and.arrow.left.and.right"
115 | case upLeftAndDownRightAndArrowUpRightAndDownLeft = "arrow.up.left.and.down.right.and.arrow.up.right.and.down.left"
116 | case upLeftAndArrowDownRightCircle = "arrow.up.left.and.arrow.down.right.circle"
117 | case upLeftAndArrowDownRightCircleFill = "arrow.up.left.and.arrow.down.right.circle.fill"
118 | case triangle2Circlepath = "arrow.triangle.2.circlepath"
119 | case triangle2CirclepathCircle = "arrow.triangle.2.circlepath.circle"
120 | case triangle2CirclepathCircleFill = "arrow.triangle.2.circlepath.circle.fill"
121 | case triangleCapsulepath = "arrow.triangle.capsulepath"
122 | case triangleTurnUpRightDiamond = "arrow.triangle.turn.up.right.diamond"
123 | case triangleTurnUpRightDiamondFill = "arrow.triangle.turn.up.right.diamond.fill"
124 | case triangleTurnUpRightCircle = "arrow.triangle.turn.up.right.circle"
125 | case triangleTurnUpRightCircleFill = "arrow.triangle.turn.up.right.circle.fill"
126 | case triangleMerge = "arrow.triangle.merge"
127 | case triangleSwap = "arrow.triangle.swap"
128 | case triangleBranch = "arrow.triangle.branch"
129 | case trianglePull = "arrow.triangle.pull"
130 | }
131 |
132 | public enum Arrowshape: String, SymbolImage {
133 | case turnUpLeft2Circle = "arrowshape.turn.up.left.2.circle"
134 | case turnUpLeft2CircleFill = "arrowshape.turn.up.left.2.circle.fill"
135 | case zigzagRight = "arrowshape.zigzag.right"
136 | case zigzagRightFill = "arrowshape.zigzag.right.fill"
137 | case bounceRight = "arrowshape.bounce.right"
138 | case bounceRightFill = "arrowshape.bounce.right.fill"
139 | }
140 |
141 | public enum Arrowtriangle: String, SymbolImage {
142 | case leftAndLineVerticalAndArrowtriangleRight = "arrowtriangle.left.and.line.vertical.and.arrowtriangle.right"
143 | case leftFillAndLineVerticalAndArrowtriangleRightFill = "arrowtriangle.left.fill.and.line.vertical.and.arrowtriangle.right.fill"
144 | case rightAndLineVerticalAndArrowtriangleLeft = "arrowtriangle.right.and.line.vertical.and.arrowtriangle.left"
145 | case rightFillAndLineVerticalAndArrowtriangleLeftFill = "arrowtriangle.right.fill.and.line.vertical.and.arrowtriangle.left.fill"
146 | }
147 |
148 | public enum At: String, SymbolImage {
149 | case circle = "at.circle"
150 | case circleFill = "at.circle.fill"
151 | }
152 |
153 | case atom
154 |
155 | public enum Backward: String, SymbolImage {
156 | case frame = "backward.frame"
157 | case frameFill = "backward.frame.fill"
158 | }
159 |
160 | public enum Bag: String, SymbolImage {
161 | case circle = "bag.circle"
162 | case circleFill = "bag.circle.fill"
163 | }
164 |
165 | case banknote
166 |
167 | public enum Banknote: String, SymbolImage {
168 | case fill = "banknote.fill"
169 | }
170 |
171 | case barometer
172 |
173 | public enum Battery100: String, SymbolImage {
174 | case bolt = "battery.100.bolt"
175 | }
176 |
177 | public enum Bell: String, SymbolImage {
178 | case slashCircle = "bell.slash.circle"
179 | case slashCircleFill = "bell.slash.circle.fill"
180 | case badge = "bell.badge"
181 | case badgeFill = "bell.badge.fill"
182 | }
183 |
184 | case bicycle
185 |
186 | case binoculars
187 |
188 | public enum Binoculars: String, SymbolImage {
189 | case fill = "binoculars.fill"
190 | }
191 |
192 | public enum Bolt: String, SymbolImage {
193 | case heart = "bolt.heart"
194 | case heartFill = "bolt.heart.fill"
195 | case slashCircle = "bolt.slash.circle"
196 | case slashCircleFill = "bolt.slash.circle.fill"
197 | case car = "bolt.car"
198 | case carFill = "bolt.car.fill"
199 | case fillBatteryblock = "bolt.fill.batteryblock"
200 | case fillBatteryblockFill = "bolt.fill.batteryblock.fill"
201 | }
202 |
203 | case bonjour
204 |
205 | public enum Book: String, SymbolImage {
206 | case closed = "book.closed"
207 | case closedFill = "book.closed.fill"
208 | }
209 |
210 | public enum Bookmark: String, SymbolImage {
211 | case circle = "bookmark.circle"
212 | case circleFill = "bookmark.circle.fill"
213 | case slash = "bookmark.slash"
214 | case slashFill = "bookmark.slash.fill"
215 | }
216 |
217 | public enum Books: String, SymbolImage {
218 | case vertical = "books.vertical"
219 | case verticalFill = "books.vertical.fill"
220 | }
221 |
222 | case building
223 |
224 | public enum Building: String, SymbolImage {
225 | case columns = "building.columns"
226 | case columnsFill = "building.columns.fill"
227 | case fill = "building.fill"
228 | }
229 |
230 | case building2 = "building.2"
231 |
232 | public enum Building2: String, SymbolImage {
233 | case fill = "building.2.fill"
234 | case cropCircle = "building.2.crop.circle"
235 | case cropCircleFill = "building.2.crop.circle.fill"
236 | }
237 |
238 | case bus
239 |
240 | public enum Bus: String, SymbolImage {
241 | case fill = "bus.fill"
242 | case doubledecker = "bus.doubledecker"
243 | case doubledeckerFill = "bus.doubledecker.fill"
244 | }
245 |
246 | public enum Calendar: String, SymbolImage {
247 | case badgeClock = "calendar.badge.clock"
248 | case badgeExclamationmark = "calendar.badge.exclamationmark"
249 | }
250 |
251 | public enum Camera: String, SymbolImage {
252 | case badgeEllipsis = "camera.badge.ellipsis"
253 | case fillBadgeEllipsis = "camera.fill.badge.ellipsis"
254 | case meteringCenterWeightedAverage = "camera.metering.center.weighted.average"
255 | case meteringCenterWeighted = "camera.metering.center.weighted"
256 | case meteringMatrix = "camera.metering.matrix"
257 | case meteringMultispot = "camera.metering.multispot"
258 | case meteringNone = "camera.metering.none"
259 | case meteringPartial = "camera.metering.partial"
260 | case meteringSpot = "camera.metering.spot"
261 | case meteringUnknown = "camera.metering.unknown"
262 | case aperture = "camera.aperture"
263 | case filters = "camera.filters"
264 | }
265 |
266 | case candybarphone
267 |
268 | public enum Capsule: String, SymbolImage {
269 | case portrait = "capsule.portrait"
270 | case portraitFill = "capsule.portrait.fill"
271 | }
272 |
273 | public enum Car: String, SymbolImage {
274 | case circle = "car.circle"
275 | case circleFill = "car.circle.fill"
276 | }
277 |
278 | case car2 = "car.2"
279 |
280 | public enum Car2: String, SymbolImage {
281 | case fill = "car.2.fill"
282 | }
283 |
284 | case _case = "case"
285 |
286 | public enum Case: String, SymbolImage {
287 | case fill = "case.fill"
288 | }
289 |
290 | public enum Chart: String, SymbolImage {
291 | case barDocHorizontal = "chart.bar.doc.horizontal"
292 | case barDocHorizontalFill = "chart.bar.doc.horizontal.fill"
293 | case barXaxis = "chart.bar.xaxis"
294 | }
295 |
296 | public enum Checkerboard: String, SymbolImage {
297 | case rectangle = "checkerboard.rectangle"
298 | }
299 |
300 | public enum Checkmark: String, SymbolImage {
301 | case icloud = "checkmark.icloud"
302 | case icloudFill = "checkmark.icloud.fill"
303 | case rectanglePortrait = "checkmark.rectangle.portrait"
304 | case rectanglePortraitFill = "checkmark.rectangle.portrait.fill"
305 | }
306 |
307 | public enum Circle: String, SymbolImage {
308 | case gridCross = "circle.grid.cross"
309 | case gridCrossFill = "circle.grid.cross.fill"
310 | case gridCrossLeftFill = "circle.grid.cross.left.fill"
311 | case gridCrossUpFill = "circle.grid.cross.up.fill"
312 | case gridCrossRightFill = "circle.grid.cross.right.fill"
313 | case gridCrossDownFill = "circle.grid.cross.down.fill"
314 | case bottomhalfFill = "circle.bottomhalf.fill"
315 | case tophalfFill = "circle.tophalf.fill"
316 | case dashed = "circle.dashed"
317 | case dashedInsetFill = "circle.dashed.inset.fill"
318 | case square = "circle.square"
319 | case fillSquareFill = "circle.fill.square.fill"
320 | case circle = "circle.circle"
321 | case circleFill = "circle.circle.fill"
322 | }
323 |
324 | case circlebadge
325 |
326 | public enum Circlebadge: String, SymbolImage {
327 | case fill = "circlebadge.fill"
328 | }
329 |
330 | public enum Circles: String, SymbolImage {
331 | case hexagongrid = "circles.hexagongrid"
332 | case hexagongridFill = "circles.hexagongrid.fill"
333 | case hexagonpath = "circles.hexagonpath"
334 | case hexagonpathFill = "circles.hexagonpath.fill"
335 | }
336 |
337 | public enum Clock: String, SymbolImage {
338 | case arrowCirclepath = "clock.arrow.circlepath"
339 | }
340 |
341 | case comb
342 |
343 | public enum Comb: String, SymbolImage {
344 | case fill = "comb.fill"
345 | }
346 |
347 | public enum Command: String, SymbolImage {
348 | case circle = "command.circle"
349 | case circleFill = "command.circle.fill"
350 | case square = "command.square"
351 | case squareFill = "command.square.fill"
352 | }
353 |
354 | public enum Contextualmenu: String, SymbolImage {
355 | case andCursorarrow = "contextualmenu.and.cursorarrow"
356 | }
357 |
358 | case cpu
359 |
360 | public enum Creditcard: String, SymbolImage {
361 | case circle = "creditcard.circle"
362 | case circleFill = "creditcard.circle.fill"
363 | }
364 |
365 | case cross
366 |
367 | public enum Cross: String, SymbolImage {
368 | case _case = "cross.case"
369 | case caseFill = "cross.case.fill"
370 | case fill = "cross.fill"
371 | case circle = "cross.circle"
372 | case circleFill = "cross.circle.fill"
373 | }
374 |
375 | case crown
376 |
377 | public enum Crown: String, SymbolImage {
378 | case fill = "crown.fill"
379 | }
380 |
381 | public enum Cube: String, SymbolImage {
382 | case transparent = "cube.transparent"
383 | }
384 |
385 | case curlybraces
386 |
387 | public enum Curlybraces: String, SymbolImage {
388 | case square = "curlybraces.square"
389 | case squareFill = "curlybraces.square.fill"
390 | }
391 |
392 | case cursorarrow
393 |
394 | public enum Cursorarrow: String, SymbolImage {
395 | case rays = "cursorarrow.rays"
396 | case square = "cursorarrow.square"
397 | case andSquareOnSquareDashed = "cursorarrow.and.square.on.square.dashed"
398 | case click = "cursorarrow.click"
399 | case click2 = "cursorarrow.click.2"
400 | case motionlines = "cursorarrow.motionlines"
401 | case motionlinesClick = "cursorarrow.motionlines.click"
402 | case clickBadgeClock = "cursorarrow.click.badge.clock"
403 | }
404 |
405 | public enum Cylinder: String, SymbolImage {
406 | case split1X2 = "cylinder.split.1x2"
407 | case split1X2Fill = "cylinder.split.1x2.fill"
408 | }
409 |
410 | case deskclock
411 |
412 | public enum Deskclock: String, SymbolImage {
413 | case fill = "deskclock.fill"
414 | }
415 |
416 | public enum Dial: String, SymbolImage {
417 | case min = "dial.min"
418 | case minFill = "dial.min.fill"
419 | case max = "dial.max"
420 | case maxFill = "dial.max.fill"
421 | }
422 |
423 | case diamond
424 |
425 | public enum Diamond: String, SymbolImage {
426 | case fill = "diamond.fill"
427 | }
428 |
429 | public enum Die: String, SymbolImage {
430 | case face1 = "die.face.1"
431 | case face1Fill = "die.face.1.fill"
432 | case face2 = "die.face.2"
433 | case face2Fill = "die.face.2.fill"
434 | case face3 = "die.face.3"
435 | case face3Fill = "die.face.3.fill"
436 | case face4 = "die.face.4"
437 | case face4Fill = "die.face.4.fill"
438 | case face5 = "die.face.5"
439 | case face5Fill = "die.face.5.fill"
440 | case face6 = "die.face.6"
441 | case face6Fill = "die.face.6.fill"
442 | }
443 |
444 | case display
445 |
446 | public enum Display: String, SymbolImage {
447 | case trianglebadgeExclamationmark = "display.trianglebadge.exclamationmark"
448 | }
449 |
450 | case display2 = "display.2"
451 |
452 | public enum Doc: String, SymbolImage {
453 | case badgePlus = "doc.badge.plus"
454 | case fillBadgePlus = "doc.fill.badge.plus"
455 | case badgeGearshape = "doc.badge.gearshape"
456 | case badgeGearshapeFill = "doc.badge.gearshape.fill"
457 | case badgeEllipsis = "doc.badge.ellipsis"
458 | case fillBadgeEllipsis = "doc.fill.badge.ellipsis"
459 | case zipper = "doc.zipper"
460 | case richtextFill = "doc.richtext.fill"
461 | case plaintextFill = "doc.plaintext.fill"
462 | case appendFill = "doc.append.fill"
463 | case textFillViewfinder = "doc.text.fill.viewfinder"
464 | }
465 |
466 | public enum Dock: String, SymbolImage {
467 | case rectangle = "dock.rectangle"
468 | case arrowUpRectangle = "dock.arrow.up.rectangle"
469 | case arrowDownRectangle = "dock.arrow.down.rectangle"
470 | }
471 |
472 | public enum Dot: String, SymbolImage {
473 | case arrowtrianglesUpRightDownLeftCircle = "dot.arrowtriangles.up.right.down.left.circle"
474 | case circleAndCursorarrow = "dot.circle.and.cursorarrow"
475 | case squareshape = "dot.squareshape"
476 | case squareshapeFill = "dot.squareshape.fill"
477 | case squareshapeSplit2X2 = "dot.squareshape.split.2x2"
478 | }
479 |
480 | case dpad
481 |
482 | public enum Dpad: String, SymbolImage {
483 | case fill = "dpad.fill"
484 | case leftFill = "dpad.left.fill"
485 | case upFill = "dpad.up.fill"
486 | case rightFill = "dpad.right.fill"
487 | case downFill = "dpad.down.fill"
488 | }
489 |
490 | case drop
491 |
492 | public enum Drop: String, SymbolImage {
493 | case fill = "drop.fill"
494 | }
495 |
496 | public enum Ear: String, SymbolImage {
497 | case badgeCheckmark = "ear.badge.checkmark"
498 | case trianglebadgeExclamationmark = "ear.trianglebadge.exclamationmark"
499 | case fill = "ear.fill"
500 | }
501 |
502 | case earpods
503 |
504 | public enum Eject: String, SymbolImage {
505 | case circle = "eject.circle"
506 | case circleFill = "eject.circle.fill"
507 | }
508 |
509 | public enum Ellipsis: String, SymbolImage {
510 | case bubble = "ellipsis.bubble"
511 | case bubbleFill = "ellipsis.bubble.fill"
512 | case rectangle = "ellipsis.rectangle"
513 | case rectangleFill = "ellipsis.rectangle.fill"
514 | }
515 |
516 | public enum Envelope: String, SymbolImage {
517 | case arrowTriangleBranch = "envelope.arrow.triangle.branch"
518 | case arrowTriangleBranchFill = "envelope.arrow.triangle.branch.fill"
519 | case badgeShieldLefthalfFill = "envelope.badge.shield.lefthalf.fill"
520 | case fillBadgeShieldRighthalfFill = "envelope.fill.badge.shield.righthalf.fill"
521 | }
522 |
523 | public enum Exclamationmark: String, SymbolImage {
524 | case arrowTriangle2Circlepath = "exclamationmark.arrow.triangle.2.circlepath"
525 | }
526 |
527 | case exclamationmark2 = "exclamationmark.2"
528 |
529 | case exclamationmark3 = "exclamationmark.3"
530 |
531 | case externaldrive
532 |
533 | public enum Externaldrive: String, SymbolImage {
534 | case fill = "externaldrive.fill"
535 | case badgePlus = "externaldrive.badge.plus"
536 | case fillBadgePlus = "externaldrive.fill.badge.plus"
537 | case badgeMinus = "externaldrive.badge.minus"
538 | case fillBadgeMinus = "externaldrive.fill.badge.minus"
539 | case badgeCheckmark = "externaldrive.badge.checkmark"
540 | case fillBadgeCheckmark = "externaldrive.fill.badge.checkmark"
541 | case badgeXmark = "externaldrive.badge.xmark"
542 | case fillBadgeXmark = "externaldrive.fill.badge.xmark"
543 | case badgePersonCrop = "externaldrive.badge.person.crop"
544 | case fillBadgePersonCrop = "externaldrive.fill.badge.person.crop"
545 | case badgeIcloud = "externaldrive.badge.icloud"
546 | case fillBadgeIcloud = "externaldrive.fill.badge.icloud"
547 | case badgeWifi = "externaldrive.badge.wifi"
548 | case fillBadgeWifi = "externaldrive.fill.badge.wifi"
549 | case badgeTimemachine = "externaldrive.badge.timemachine"
550 | case fillBadgeTimemachine = "externaldrive.fill.badge.timemachine"
551 | case connectedToLineBelow = "externaldrive.connected.to.line.below"
552 | case connectedToLineBelowFill = "externaldrive.connected.to.line.below.fill"
553 | }
554 |
555 | public enum Eye: String, SymbolImage {
556 | case circle = "eye.circle"
557 | case circleFill = "eye.circle.fill"
558 | }
559 |
560 | case eyebrow
561 |
562 | case eyes
563 |
564 | public enum Eyes: String, SymbolImage {
565 | case inverse = "eyes.inverse"
566 | }
567 |
568 | public enum Face: String, SymbolImage {
569 | case smiling = "face.smiling"
570 | case smilingFill = "face.smiling.fill"
571 | case dashed = "face.dashed"
572 | case dashedFill = "face.dashed.fill"
573 | }
574 |
575 | case faxmachine
576 |
577 | case fiberchannel
578 |
579 | public enum Figure: String, SymbolImage {
580 | case walk = "figure.walk"
581 | case walkCircle = "figure.walk.circle"
582 | case walkCircleFill = "figure.walk.circle.fill"
583 | case walkDiamond = "figure.walk.diamond"
584 | case walkDiamondFill = "figure.walk.diamond.fill"
585 | case wave = "figure.wave"
586 | case waveCircle = "figure.wave.circle"
587 | case waveCircleFill = "figure.wave.circle.fill"
588 | }
589 |
590 | public enum Filemenu: String, SymbolImage {
591 | case andCursorarrow = "filemenu.and.cursorarrow"
592 | }
593 |
594 | public enum Flag: String, SymbolImage {
595 | case slashCircle = "flag.slash.circle"
596 | case slashCircleFill = "flag.slash.circle.fill"
597 | case badgeEllipsis = "flag.badge.ellipsis"
598 | case badgeEllipsisFill = "flag.badge.ellipsis.fill"
599 | }
600 |
601 | case flipphone
602 |
603 | case fn
604 |
605 | public enum Folder: String, SymbolImage {
606 | case badgeQuestionmark = "folder.badge.questionmark"
607 | case fillBadgeQuestionmark = "folder.fill.badge.questionmark"
608 | case badgeGear = "folder.badge.gear"
609 | case fillBadgeGear = "folder.fill.badge.gear"
610 | }
611 |
612 | public enum Forward: String, SymbolImage {
613 | case frame = "forward.frame"
614 | case frameFill = "forward.frame.fill"
615 | }
616 |
617 | case gearshape
618 |
619 | public enum Gearshape: String, SymbolImage {
620 | case fill = "gearshape.fill"
621 | }
622 |
623 | case gearshape2 = "gearshape.2"
624 |
625 | public enum Gearshape2: String, SymbolImage {
626 | case fill = "gearshape.2.fill"
627 | }
628 |
629 | public enum Gift: String, SymbolImage {
630 | case circle = "gift.circle"
631 | case circleFill = "gift.circle.fill"
632 | }
633 |
634 | case giftcard
635 |
636 | public enum Giftcard: String, SymbolImage {
637 | case fill = "giftcard.fill"
638 | }
639 |
640 | case graduationcap
641 |
642 | public enum Graduationcap: String, SymbolImage {
643 | case fill = "graduationcap.fill"
644 | }
645 |
646 | case greetingcard
647 |
648 | public enum Greetingcard: String, SymbolImage {
649 | case fill = "greetingcard.fill"
650 | }
651 |
652 | public enum Guitars: String, SymbolImage {
653 | case fill = "guitars.fill"
654 | }
655 |
656 | case gyroscope
657 |
658 | public enum LetterH: String, SymbolImage {
659 | case squareOnSquare = "h.square.on.square"
660 | case squareFillOnSquareFill = "h.square.fill.on.square.fill"
661 | }
662 |
663 | public enum Hand: String, SymbolImage {
664 | case pointUpLeft = "hand.point.up.left"
665 | case pointUpLeftFill = "hand.point.up.left.fill"
666 | case tap = "hand.tap"
667 | case tapFill = "hand.tap.fill"
668 | case pointUp = "hand.point.up"
669 | case pointUpFill = "hand.point.up.fill"
670 | case pointUpBraille = "hand.point.up.braille"
671 | case pointUpBrailleFill = "hand.point.up.braille.fill"
672 | case pointDown = "hand.point.down"
673 | case pointDownFill = "hand.point.down.fill"
674 | case wave = "hand.wave"
675 | case waveFill = "hand.wave.fill"
676 | }
677 |
678 | public enum Headphones: String, SymbolImage {
679 | case circle = "headphones.circle"
680 | case circleFill = "headphones.circle.fill"
681 | }
682 |
683 | public enum Hearingaid: String, SymbolImage {
684 | case ear = "hearingaid.ear"
685 | }
686 |
687 | public enum Heart: String, SymbolImage {
688 | case textSquare = "heart.text.square"
689 | case textSquareFill = "heart.text.square.fill"
690 | }
691 |
692 | case highlighter
693 |
694 | case homekit
695 |
696 | case homepod
697 |
698 | public enum Homepod: String, SymbolImage {
699 | case fill = "homepod.fill"
700 | }
701 |
702 | public enum Hourglass: String, SymbolImage {
703 | case badgePlus = "hourglass.badge.plus"
704 | }
705 |
706 | public enum House: String, SymbolImage {
707 | case circle = "house.circle"
708 | case circleFill = "house.circle.fill"
709 | }
710 |
711 | case infinity
712 |
713 | case internaldrive
714 |
715 | public enum Internaldrive: String, SymbolImage {
716 | case fill = "internaldrive.fill"
717 | }
718 |
719 | case ipad
720 |
721 | public enum Ipad: String, SymbolImage {
722 | case homebutton = "ipad.homebutton"
723 | case homebuttonLandscape = "ipad.homebutton.landscape"
724 | case landscape = "ipad.landscape"
725 | }
726 |
727 | case iphone
728 |
729 | public enum Iphone: String, SymbolImage {
730 | case homebutton = "iphone.homebutton"
731 | case homebuttonRadiowavesLeftAndRight = "iphone.homebutton.radiowaves.left.and.right"
732 | case homebuttonSlash = "iphone.homebutton.slash"
733 | case radiowavesLeftAndRight = "iphone.radiowaves.left.and.right"
734 | case slash = "iphone.slash"
735 | }
736 |
737 | case ipod
738 |
739 | public enum Ipodshuffle: String, SymbolImage {
740 | case gen1 = "ipodshuffle.gen1"
741 | case gen2 = "ipodshuffle.gen2"
742 | case gen3 = "ipodshuffle.gen3"
743 | case gen4 = "ipodshuffle.gen4"
744 | }
745 |
746 | case ipodtouch
747 |
748 | public enum LetterJ: String, SymbolImage {
749 | case squareOnSquare = "j.square.on.square"
750 | case squareFillOnSquareFill = "j.square.fill.on.square.fill"
751 | }
752 |
753 | case k
754 |
755 | case key
756 |
757 | public enum Key: String, SymbolImage {
758 | case icloud = "key.icloud"
759 | case icloudFill = "key.icloud.fill"
760 | case fill = "key.fill"
761 | }
762 |
763 | public enum Keyboard: String, SymbolImage {
764 | case badgeEllipsis = "keyboard.badge.ellipsis"
765 | case chevronCompactLeft = "keyboard.chevron.compact.left"
766 | case onehandedLeft = "keyboard.onehanded.left"
767 | case onehandedRight = "keyboard.onehanded.right"
768 | case macwindow = "keyboard.macwindow"
769 | }
770 |
771 | public enum LetterL: String, SymbolImage {
772 | case joystick = "l.joystick"
773 | case joystickFill = "l.joystick.fill"
774 | case joystickDown = "l.joystick.down"
775 | case joystickDownFill = "l.joystick.down.fill"
776 | case rectangleRoundedbottom = "l.rectangle.roundedbottom"
777 | case rectangleRoundedbottomFill = "l.rectangle.roundedbottom.fill"
778 | }
779 |
780 | public enum L1: String, SymbolImage {
781 | case rectangleRoundedbottom = "l1.rectangle.roundedbottom"
782 | case rectangleRoundedbottomFill = "l1.rectangle.roundedbottom.fill"
783 | }
784 |
785 | public enum L2: String, SymbolImage {
786 | case rectangleRoundedtop = "l2.rectangle.roundedtop"
787 | case rectangleRoundedtopFill = "l2.rectangle.roundedtop.fill"
788 | }
789 |
790 | case laptopcomputer
791 |
792 | public enum Laptopcomputer: String, SymbolImage {
793 | case andIphone = "laptopcomputer.and.iphone"
794 | }
795 |
796 | public enum Lasso: String, SymbolImage {
797 | case sparkles = "lasso.sparkles"
798 | }
799 |
800 | public enum Latch2: String, SymbolImage {
801 | case _case = "latch.2.case"
802 | case caseFill = "latch.2.case.fill"
803 | }
804 |
805 | public enum Lb: String, SymbolImage {
806 | case rectangleRoundedbottom = "lb.rectangle.roundedbottom"
807 | case rectangleRoundedbottomFill = "lb.rectangle.roundedbottom.fill"
808 | }
809 |
810 | case leaf
811 |
812 | public enum Leaf: String, SymbolImage {
813 | case fill = "leaf.fill"
814 | case arrowTriangleCirclepath = "leaf.arrow.triangle.circlepath"
815 | }
816 |
817 | case level
818 |
819 | public enum Level: String, SymbolImage {
820 | case fill = "level.fill"
821 | }
822 |
823 | case lifepreserver
824 |
825 | public enum Lifepreserver: String, SymbolImage {
826 | case fill = "lifepreserver.fill"
827 | }
828 |
829 | public enum Line: String, SymbolImage {
830 | case diagonal = "line.diagonal"
831 | case diagonalArrow = "line.diagonal.arrow"
832 | case horizontalStarFillLineHorizontal = "line.horizontal.star.fill.line.horizontal"
833 | case horizontal3Circle = "line.horizontal.3.circle"
834 | case horizontal3CircleFill = "line.horizontal.3.circle.fill"
835 | case horizontal2DecreaseCircle = "line.horizontal.2.decrease.circle"
836 | case horizontal2DecreaseCircleFill = "line.horizontal.2.decrease.circle.fill"
837 | }
838 |
839 | public enum Line3: String, SymbolImage {
840 | case crossedSwirlCircle = "line.3.crossed.swirl.circle"
841 | case crossedSwirlCircleFill = "line.3.crossed.swirl.circle.fill"
842 | }
843 |
844 | case lineweight
845 |
846 | public enum Link: String, SymbolImage {
847 | case badgePlus = "link.badge.plus"
848 | }
849 |
850 | public enum List: String, SymbolImage {
851 | case bulletRectangle = "list.bullet.rectangle"
852 | case triangle = "list.triangle"
853 | case star = "list.star"
854 | case andFilm = "list.and.film"
855 | }
856 |
857 | public enum Livephoto: String, SymbolImage {
858 | case badgeA = "livephoto.badge.a"
859 | }
860 |
861 | public enum Location: String, SymbolImage {
862 | case viewfinder = "location.viewfinder"
863 | case fillViewfinder = "location.fill.viewfinder"
864 | }
865 |
866 | public enum Lock: String, SymbolImage {
867 | case doc = "lock.doc"
868 | case docFill = "lock.doc.fill"
869 | case square = "lock.square"
870 | case squareFill = "lock.square.fill"
871 | case squareStack = "lock.square.stack"
872 | case squareStackFill = "lock.square.stack.fill"
873 | case rectangle = "lock.rectangle"
874 | case rectangleFill = "lock.rectangle.fill"
875 | case rectangleStack = "lock.rectangle.stack"
876 | case rectangleStackFill = "lock.rectangle.stack.fill"
877 | case rectangleOnRectangle = "lock.rectangle.on.rectangle"
878 | case rectangleOnRectangleFill = "lock.rectangle.on.rectangle.fill"
879 | }
880 |
881 | case loupe
882 |
883 | public enum Lt: String, SymbolImage {
884 | case rectangleRoundedtop = "lt.rectangle.roundedtop"
885 | case rectangleRoundedtopFill = "lt.rectangle.roundedtop.fill"
886 | }
887 |
888 | case lungs
889 |
890 | public enum Lungs: String, SymbolImage {
891 | case fill = "lungs.fill"
892 | }
893 |
894 | case macmini
895 |
896 | public enum Macmini: String, SymbolImage {
897 | case fill = "macmini.fill"
898 | }
899 |
900 | public enum Macpro: String, SymbolImage {
901 | case gen1 = "macpro.gen1"
902 | case gen2 = "macpro.gen2"
903 | case gen2Fill = "macpro.gen2.fill"
904 | case gen3 = "macpro.gen3"
905 | case gen3Server = "macpro.gen3.server"
906 | }
907 |
908 | public enum Macwindow: String, SymbolImage {
909 | case badgePlus = "macwindow.badge.plus"
910 | case onRectangle = "macwindow.on.rectangle"
911 | }
912 |
913 | case mail
914 |
915 | public enum Mail: String, SymbolImage {
916 | case stack = "mail.stack"
917 | case stackFill = "mail.stack.fill"
918 | case fill = "mail.fill"
919 | case andTextMagnifyingglass = "mail.and.text.magnifyingglass"
920 | }
921 |
922 | case megaphone
923 |
924 | public enum Megaphone: String, SymbolImage {
925 | case fill = "megaphone.fill"
926 | }
927 |
928 | case memorychip
929 |
930 | public enum Menubar: String, SymbolImage {
931 | case rectangle = "menubar.rectangle"
932 | case dockRectangle = "menubar.dock.rectangle"
933 | case dockRectangleBadgeRecord = "menubar.dock.rectangle.badge.record"
934 | case arrowUpRectangle = "menubar.arrow.up.rectangle"
935 | case arrowDownRectangle = "menubar.arrow.down.rectangle"
936 | }
937 |
938 | public enum Metronome: String, SymbolImage {
939 | case fill = "metronome.fill"
940 | }
941 |
942 | public enum Minus: String, SymbolImage {
943 | case plusBatteryblock = "minus.plus.batteryblock"
944 | case plusBatteryblockFill = "minus.plus.batteryblock.fill"
945 | case rectanglePortrait = "minus.rectangle.portrait"
946 | case rectanglePortraitFill = "minus.rectangle.portrait.fill"
947 | case diamond = "minus.diamond"
948 | case diamondFill = "minus.diamond.fill"
949 | }
950 |
951 | case mosaic
952 |
953 | public enum Mosaic: String, SymbolImage {
954 | case fill = "mosaic.fill"
955 | }
956 |
957 | case mount
958 |
959 | public enum Mount: String, SymbolImage {
960 | case fill = "mount.fill"
961 | }
962 |
963 | case mouth
964 |
965 | public enum Mouth: String, SymbolImage {
966 | case fill = "mouth.fill"
967 | }
968 |
969 | public enum Move: String, SymbolImage {
970 | case _3d = "move.3d"
971 | }
972 |
973 | public enum Music: String, SymbolImage {
974 | case quarternote3 = "music.quarternote.3"
975 | case noteHouse = "music.note.house"
976 | case noteHouseFill = "music.note.house.fill"
977 | }
978 |
979 | case mustache
980 |
981 | public enum Mustache: String, SymbolImage {
982 | case fill = "mustache.fill"
983 | }
984 |
985 | case network
986 |
987 | case newspaper
988 |
989 | public enum Newspaper: String, SymbolImage {
990 | case fill = "newspaper.fill"
991 | }
992 |
993 | case nose
994 |
995 | public enum Nose: String, SymbolImage {
996 | case fill = "nose.fill"
997 | }
998 |
999 | case note
1000 |
1001 | public enum Note: String, SymbolImage {
1002 | case text = "note.text"
1003 | case textBadgePlus = "note.text.badge.plus"
1004 | }
1005 |
1006 | case octagon
1007 |
1008 | public enum Octagon: String, SymbolImage {
1009 | case fill = "octagon.fill"
1010 | }
1011 |
1012 | case opticaldisc
1013 |
1014 | case opticaldiscdrive
1015 |
1016 | public enum Opticaldiscdrive: String, SymbolImage {
1017 | case fill = "opticaldiscdrive.fill"
1018 | }
1019 |
1020 | public enum Paintbrush: String, SymbolImage {
1021 | case pointed = "paintbrush.pointed"
1022 | case pointedFill = "paintbrush.pointed.fill"
1023 | }
1024 |
1025 | case paintpalette
1026 |
1027 | public enum Paintpalette: String, SymbolImage {
1028 | case fill = "paintpalette.fill"
1029 | }
1030 |
1031 | public enum Paperclip: String, SymbolImage {
1032 | case badgeEllipsis = "paperclip.badge.ellipsis"
1033 | }
1034 |
1035 | public enum Paperplane: String, SymbolImage {
1036 | case circle = "paperplane.circle"
1037 | case circleFill = "paperplane.circle.fill"
1038 | }
1039 |
1040 | case paragraphsign
1041 |
1042 | case pc
1043 |
1044 | public enum Pencil: String, SymbolImage {
1045 | case tipCropCircleBadgeArrowRight = "pencil.tip.crop.circle.badge.arrow.right"
1046 | }
1047 |
1048 | public enum Person: String, SymbolImage {
1049 | case fillTurnRight = "person.fill.turn.right"
1050 | case fillTurnDown = "person.fill.turn.down"
1051 | case fillTurnLeft = "person.fill.turn.left"
1052 | case fillCheckmark = "person.fill.checkmark"
1053 | case fillXmark = "person.fill.xmark"
1054 | case fillQuestionmark = "person.fill.questionmark"
1055 | case fillBadgePlus = "person.fill.badge.plus"
1056 | case fillBadgeMinus = "person.fill.badge.minus"
1057 | case andArrowLeftAndArrowRight = "person.and.arrow.left.and.arrow.right"
1058 | case fillAndArrowLeftAndArrowRight = "person.fill.and.arrow.left.and.arrow.right"
1059 | case cropCircleBadgeQuestionmark = "person.crop.circle.badge.questionmark"
1060 | case cropCircleFillBadgeQuestionmark = "person.crop.circle.fill.badge.questionmark"
1061 | case cropCircleBadgeExclamationmark = "person.crop.circle.badge.exclamationmark"
1062 | case cropCircleFillBadgeExclamationmark = "person.crop.circle.fill.badge.exclamationmark"
1063 | case cropSquareFillAndAtRectangle = "person.crop.square.fill.and.at.rectangle"
1064 | }
1065 |
1066 | public enum Person2: String, SymbolImage {
1067 | case circle = "person.2.circle"
1068 | case circleFill = "person.2.circle.fill"
1069 | }
1070 |
1071 | public enum Phone: String, SymbolImage {
1072 | case connection = "phone.connection"
1073 | case fillConnection = "phone.fill.connection"
1074 | }
1075 |
1076 | public enum Photo: String, SymbolImage {
1077 | case onRectangleAngled = "photo.on.rectangle.angled"
1078 | }
1079 |
1080 | case pianokeys
1081 |
1082 | case pills
1083 |
1084 | public enum Pills: String, SymbolImage {
1085 | case fill = "pills.fill"
1086 | }
1087 |
1088 | case pip
1089 |
1090 | public enum Pip: String, SymbolImage {
1091 | case fill = "pip.fill"
1092 | case exit = "pip.exit"
1093 | case enter = "pip.enter"
1094 | case swap = "pip.swap"
1095 | case remove = "pip.remove"
1096 | }
1097 |
1098 | public enum Placeholdertext: String, SymbolImage {
1099 | case fill = "placeholdertext.fill"
1100 | }
1101 |
1102 | public enum Play: String, SymbolImage {
1103 | case slash = "play.slash"
1104 | case slashFill = "play.slash.fill"
1105 | }
1106 |
1107 | public enum Plus: String, SymbolImage {
1108 | case rectangleOnFolder = "plus.rectangle.on.folder"
1109 | case rectangleFillOnFolderFill = "plus.rectangle.fill.on.folder.fill"
1110 | case message = "plus.message"
1111 | case messageFill = "plus.message.fill"
1112 | case viewfinder = "plus.viewfinder"
1113 | case rectanglePortrait = "plus.rectangle.portrait"
1114 | case rectanglePortraitFill = "plus.rectangle.portrait.fill"
1115 | case diamond = "plus.diamond"
1116 | case diamondFill = "plus.diamond.fill"
1117 | }
1118 |
1119 | public enum Point: String, SymbolImage {
1120 | case topleftDownCurvedtoPointBottomrightUp = "point.topleft.down.curvedto.point.bottomright.up"
1121 | case fillTopleftDownCurvedtoPointFillBottomrightUp = "point.fill.topleft.down.curvedto.point.fill.bottomright.up"
1122 | }
1123 |
1124 | public enum Printer: String, SymbolImage {
1125 | case fillAndPaperFill = "printer.fill.and.paper.fill"
1126 | case dotmatrix = "printer.dotmatrix"
1127 | case dotmatrixFill = "printer.dotmatrix.fill"
1128 | case dotmatrixFillAndPaperFill = "printer.dotmatrix.fill.and.paper.fill"
1129 | }
1130 |
1131 | case puzzlepiece
1132 |
1133 | public enum Puzzlepiece: String, SymbolImage {
1134 | case fill = "puzzlepiece.fill"
1135 | }
1136 |
1137 | public enum Questionmark: String, SymbolImage {
1138 | case folder = "questionmark.folder"
1139 | case folderFill = "questionmark.folder.fill"
1140 | case squareDashed = "questionmark.square.dashed"
1141 | }
1142 |
1143 | public enum LetterR: String, SymbolImage {
1144 | case squareOnSquare = "r.square.on.square"
1145 | case squareFillOnSquareFill = "r.square.fill.on.square.fill"
1146 | case joystick = "r.joystick"
1147 | case joystickFill = "r.joystick.fill"
1148 | case joystickDown = "r.joystick.down"
1149 | case joystickDownFill = "r.joystick.down.fill"
1150 | case rectangleRoundedbottom = "r.rectangle.roundedbottom"
1151 | case rectangleRoundedbottomFill = "r.rectangle.roundedbottom.fill"
1152 | }
1153 |
1154 | public enum R1: String, SymbolImage {
1155 | case rectangleRoundedbottom = "r1.rectangle.roundedbottom"
1156 | case rectangleRoundedbottomFill = "r1.rectangle.roundedbottom.fill"
1157 | }
1158 |
1159 | public enum R2: String, SymbolImage {
1160 | case rectangleRoundedtop = "r2.rectangle.roundedtop"
1161 | case rectangleRoundedtopFill = "r2.rectangle.roundedtop.fill"
1162 | }
1163 |
1164 | case radio
1165 |
1166 | public enum Radio: String, SymbolImage {
1167 | case fill = "radio.fill"
1168 | }
1169 |
1170 | public enum Rb: String, SymbolImage {
1171 | case rectangleRoundedbottom = "rb.rectangle.roundedbottom"
1172 | case rectangleRoundedbottomFill = "rb.rectangle.roundedbottom.fill"
1173 | }
1174 |
1175 | public enum Record: String, SymbolImage {
1176 | case circle = "record.circle"
1177 | case circleFill = "record.circle.fill"
1178 | }
1179 |
1180 | public enum Rectangle: String, SymbolImage {
1181 | case andPencilAndEllipsis = "rectangle.and.pencil.and.ellipsis"
1182 | case dashedAndPaperclip = "rectangle.dashed.and.paperclip"
1183 | case slash = "rectangle.slash"
1184 | case slashFill = "rectangle.slash.fill"
1185 | case portrait = "rectangle.portrait"
1186 | case portraitFill = "rectangle.portrait.fill"
1187 | case andTextMagnifyingglass = "rectangle.and.text.magnifyingglass"
1188 | case arrowtriangle2Outward = "rectangle.arrowtriangle.2.outward"
1189 | case arrowtriangle2Inward = "rectangle.arrowtriangle.2.inward"
1190 | case portraitArrowtriangle2Outward = "rectangle.portrait.arrowtriangle.2.outward"
1191 | case portraitArrowtriangle2Inward = "rectangle.portrait.arrowtriangle.2.inward"
1192 | case insetFill = "rectangle.inset.fill"
1193 | case lefthalfInsetFill = "rectangle.lefthalf.inset.fill"
1194 | case righthalfInsetFill = "rectangle.righthalf.inset.fill"
1195 | case bottomthirdInsetFill = "rectangle.bottomthird.inset.fill"
1196 | case leftthirdInsetFill = "rectangle.leftthird.inset.fill"
1197 | case rightthirdInsetFill = "rectangle.rightthird.inset.fill"
1198 | case centerInsetFill = "rectangle.center.inset.fill"
1199 | case insetTopleftFill = "rectangle.inset.topleft.fill"
1200 | case insetToprightFill = "rectangle.inset.topright.fill"
1201 | case insetBottomleftFill = "rectangle.inset.bottomleft.fill"
1202 | case insetBottomrightFill = "rectangle.inset.bottomright.fill"
1203 | case lefthalfInsetFillArrowLeft = "rectangle.lefthalf.inset.fill.arrow.left"
1204 | case righthalfInsetFillArrowRight = "rectangle.righthalf.inset.fill.arrow.right"
1205 | case lefthalfFill = "rectangle.lefthalf.fill"
1206 | case righthalfFill = "rectangle.righthalf.fill"
1207 | case dashed = "rectangle.dashed"
1208 | case dashedBadgeRecord = "rectangle.dashed.badge.record"
1209 | case badgePlus = "rectangle.badge.plus"
1210 | case fillBadgePlus = "rectangle.fill.badge.plus"
1211 | case badgeMinus = "rectangle.badge.minus"
1212 | case fillBadgeMinus = "rectangle.fill.badge.minus"
1213 | case split2X1 = "rectangle.split.2x1"
1214 | case split2X1Fill = "rectangle.split.2x1.fill"
1215 | case split1X2 = "rectangle.split.1x2"
1216 | case split1X2Fill = "rectangle.split.1x2.fill"
1217 | case split2X2 = "rectangle.split.2x2"
1218 | case split2X2Fill = "rectangle.split.2x2.fill"
1219 | case fillOnRectangleFillCircle = "rectangle.fill.on.rectangle.fill.circle"
1220 | case fillOnRectangleFillCircleFill = "rectangle.fill.on.rectangle.fill.circle.fill"
1221 | case onRectangleSlash = "rectangle.on.rectangle.slash"
1222 | case fillOnRectangleFillSlashFill = "rectangle.fill.on.rectangle.fill.slash.fill"
1223 | case connectedToLineBelow = "rectangle.connected.to.line.below"
1224 | case roundedtop = "rectangle.roundedtop"
1225 | case roundedtopFill = "rectangle.roundedtop.fill"
1226 | case roundedbottom = "rectangle.roundedbottom"
1227 | case roundedbottomFill = "rectangle.roundedbottom.fill"
1228 | }
1229 |
1230 | public enum Rectangle3: String, SymbolImage {
1231 | case offgridBubbleLeft = "rectangle.3.offgrid.bubble.left"
1232 | case offgridBubbleLeftFill = "rectangle.3.offgrid.bubble.left.fill"
1233 | }
1234 |
1235 | case restart
1236 |
1237 | public enum Restart: String, SymbolImage {
1238 | case circle = "restart.circle"
1239 | }
1240 |
1241 | public enum Rotate: String, SymbolImage {
1242 | case _3d = "rotate.3d"
1243 | }
1244 |
1245 | public enum Rt: String, SymbolImage {
1246 | case rectangleRoundedtop = "rt.rectangle.roundedtop"
1247 | case rectangleRoundedtopFill = "rt.rectangle.roundedtop.fill"
1248 | }
1249 |
1250 | case ruler
1251 |
1252 | public enum Ruler: String, SymbolImage {
1253 | case fill = "ruler.fill"
1254 | }
1255 |
1256 | public enum Scale: String, SymbolImage {
1257 | case _3d = "scale.3d"
1258 | }
1259 |
1260 | case scalemass
1261 |
1262 | public enum Scalemass: String, SymbolImage {
1263 | case fill = "scalemass.fill"
1264 | }
1265 |
1266 | case scanner
1267 |
1268 | public enum Scanner: String, SymbolImage {
1269 | case fill = "scanner.fill"
1270 | }
1271 |
1272 | public enum Scribble: String, SymbolImage {
1273 | case variable = "scribble.variable"
1274 | }
1275 |
1276 | case scroll
1277 |
1278 | public enum Scroll: String, SymbolImage {
1279 | case fill = "scroll.fill"
1280 | }
1281 |
1282 | case sdcard
1283 |
1284 | public enum Sdcard: String, SymbolImage {
1285 | case fill = "sdcard.fill"
1286 | }
1287 |
1288 | case seal
1289 |
1290 | public enum Seal: String, SymbolImage {
1291 | case fill = "seal.fill"
1292 | }
1293 |
1294 | public enum Server: String, SymbolImage {
1295 | case rack = "server.rack"
1296 | }
1297 |
1298 | case shadow
1299 |
1300 | case shippingbox
1301 |
1302 | public enum Shippingbox: String, SymbolImage {
1303 | case fill = "shippingbox.fill"
1304 | }
1305 |
1306 | public enum Signpost: String, SymbolImage {
1307 | case right = "signpost.right"
1308 | case rightFill = "signpost.right.fill"
1309 | }
1310 |
1311 | case simcard
1312 |
1313 | public enum Simcard: String, SymbolImage {
1314 | case fill = "simcard.fill"
1315 | }
1316 |
1317 | case simcard2 = "simcard.2"
1318 |
1319 | public enum Simcard2: String, SymbolImage {
1320 | case fill = "simcard.2.fill"
1321 | }
1322 |
1323 | case sleep
1324 |
1325 | public enum Slider: String, SymbolImage {
1326 | case vertical3 = "slider.vertical.3"
1327 | }
1328 |
1329 | case sparkle
1330 |
1331 | public enum Speaker: String, SymbolImage {
1332 | case slashCircle = "speaker.slash.circle"
1333 | case slashCircleFill = "speaker.slash.circle.fill"
1334 | case wave1 = "speaker.wave.1"
1335 | case wave1Fill = "speaker.wave.1.fill"
1336 | case wave2 = "speaker.wave.2"
1337 | case wave2Fill = "speaker.wave.2.fill"
1338 | case wave2Circle = "speaker.wave.2.circle"
1339 | case wave2CircleFill = "speaker.wave.2.circle.fill"
1340 | case wave3 = "speaker.wave.3"
1341 | case wave3Fill = "speaker.wave.3.fill"
1342 | }
1343 |
1344 | public enum Square: String, SymbolImage {
1345 | case grid3X1FolderBadgePlus = "square.grid.3x1.folder.badge.plus"
1346 | case grid3X1FolderFillBadgePlus = "square.grid.3x1.folder.fill.badge.plus"
1347 | case andAtRectangle = "square.and.at.rectangle"
1348 | case grid3X1BelowLineGrid1X2 = "square.grid.3x1.below.line.grid.1x2"
1349 | case grid3X1FillBelowLineGrid1X2 = "square.grid.3x1.fill.below.line.grid.1x2"
1350 | case grid3X3 = "square.grid.3x3"
1351 | case grid3X3Fill = "square.grid.3x3.fill"
1352 | case grid3X3TopleftFill = "square.grid.3x3.topleft.fill"
1353 | case grid3X3TopmiddleFill = "square.grid.3x3.topmiddle.fill"
1354 | case grid3X3ToprightFill = "square.grid.3x3.topright.fill"
1355 | case grid3X3MiddleleftFill = "square.grid.3x3.middleleft.fill"
1356 | case grid3X3MiddleFill = "square.grid.3x3.middle.fill"
1357 | case grid3X3MiddlerightFill = "square.grid.3x3.middleright.fill"
1358 | case grid3X3BottomleftFill = "square.grid.3x3.bottomleft.fill"
1359 | case grid3X3BottommiddleFill = "square.grid.3x3.bottommiddle.fill"
1360 | case grid3X3BottomrightFill = "square.grid.3x3.bottomright.fill"
1361 | case bottomhalfFill = "square.bottomhalf.fill"
1362 | case tophalfFill = "square.tophalf.fill"
1363 | case slash = "square.slash"
1364 | case slashFill = "square.slash.fill"
1365 | case dashed = "square.dashed"
1366 | case dashedInsetFill = "square.dashed.inset.fill"
1367 | case grid3X3FillSquare = "square.grid.3x3.fill.square"
1368 | case splitBottomrightquarter = "square.split.bottomrightquarter"
1369 | case splitBottomrightquarterFill = "square.split.bottomrightquarter.fill"
1370 | case splitDiagonal2X2 = "square.split.diagonal.2x2"
1371 | case splitDiagonal2X2Fill = "square.split.diagonal.2x2.fill"
1372 | case splitDiagonal = "square.split.diagonal"
1373 | case splitDiagonalFill = "square.split.diagonal.fill"
1374 | case onSquareDashed = "square.on.square.dashed"
1375 | case onSquareSquareshapeControlhandles = "square.on.square.squareshape.controlhandles"
1376 | case stack3DUpBadgeA = "square.stack.3d.up.badge.a"
1377 | case stack3DUpBadgeAFill = "square.stack.3d.up.badge.a.fill"
1378 | case circle = "square.circle"
1379 | case circleFill = "square.circle.fill"
1380 | case fillTextGrid1X2 = "square.fill.text.grid.1x2"
1381 | }
1382 |
1383 | public enum Square2: String, SymbolImage {
1384 | case stack3D = "square.2.stack.3d"
1385 | case stack3DTopFill = "square.2.stack.3d.top.fill"
1386 | case stack3DBottomFill = "square.2.stack.3d.bottom.fill"
1387 | }
1388 |
1389 | public enum Square3: String, SymbolImage {
1390 | case stack3D = "square.3.stack.3d"
1391 | case stack3DTopFill = "square.3.stack.3d.top.fill"
1392 | case stack3DMiddleFill = "square.3.stack.3d.middle.fill"
1393 | case stack3DBottomFill = "square.3.stack.3d.bottom.fill"
1394 | }
1395 |
1396 | case squareshape
1397 |
1398 | public enum Squareshape: String, SymbolImage {
1399 | case fill = "squareshape.fill"
1400 | case dashedSquareshape = "squareshape.dashed.squareshape"
1401 | case squareshapeDashed = "squareshape.squareshape.dashed"
1402 | case controlhandlesOnSquareshapeControlhandles = "squareshape.controlhandles.on.squareshape.controlhandles"
1403 | case split2X2 = "squareshape.split.2x2"
1404 | case split3X3 = "squareshape.split.3x3"
1405 | }
1406 |
1407 | public enum Star: String, SymbolImage {
1408 | case square = "star.square"
1409 | case squareFill = "star.square.fill"
1410 | }
1411 |
1412 | public enum Staroflife: String, SymbolImage {
1413 | case circle = "staroflife.circle"
1414 | case circleFill = "staroflife.circle.fill"
1415 | }
1416 |
1417 | case stethoscope
1418 |
1419 | case swift
1420 |
1421 | case switch2 = "switch.2"
1422 |
1423 | case tablecells
1424 |
1425 | public enum Tablecells: String, SymbolImage {
1426 | case fill = "tablecells.fill"
1427 | case badgeEllipsis = "tablecells.badge.ellipsis"
1428 | case badgeEllipsisFill = "tablecells.badge.ellipsis.fill"
1429 | }
1430 |
1431 | public enum Tag: String, SymbolImage {
1432 | case slash = "tag.slash"
1433 | case slashFill = "tag.slash.fill"
1434 | }
1435 |
1436 | case target
1437 |
1438 | public enum Teletype: String, SymbolImage {
1439 | case circle = "teletype.circle"
1440 | case circleFill = "teletype.circle.fill"
1441 | }
1442 |
1443 | public enum Text: String, SymbolImage {
1444 | case bookClosed = "text.book.closed"
1445 | case bookClosedFill = "text.book.closed.fill"
1446 | case magnifyingglass = "text.magnifyingglass"
1447 | case andCommandMacwindow = "text.and.command.macwindow"
1448 | case redaction = "text.redaction"
1449 | }
1450 |
1451 | public enum Thermometer: String, SymbolImage {
1452 | case sunFill = "thermometer.sun.fill"
1453 | }
1454 |
1455 | case ticket
1456 |
1457 | public enum Ticket: String, SymbolImage {
1458 | case fill = "ticket.fill"
1459 | }
1460 |
1461 | public enum Timeline: String, SymbolImage {
1462 | case selection = "timeline.selection"
1463 | }
1464 |
1465 | public enum Timer: String, SymbolImage {
1466 | case square = "timer.square"
1467 | }
1468 |
1469 | case touchid
1470 |
1471 | case tram
1472 |
1473 | public enum Tram: String, SymbolImage {
1474 | case tunnelFill = "tram.tunnel.fill"
1475 | }
1476 |
1477 | case translate
1478 |
1479 | public enum Tray: String, SymbolImage {
1480 | case circle = "tray.circle"
1481 | case circleFill = "tray.circle.fill"
1482 | }
1483 |
1484 | public enum Triangle: String, SymbolImage {
1485 | case circle = "triangle.circle"
1486 | case circleFill = "triangle.circle.fill"
1487 | }
1488 |
1489 | public enum Tv: String, SymbolImage {
1490 | case andHifispeakerFill = "tv.and.hifispeaker.fill"
1491 | }
1492 |
1493 | public enum Video: String, SymbolImage {
1494 | case fillBadgePlus = "video.fill.badge.plus"
1495 | case badgeCheckmark = "video.badge.checkmark"
1496 | case fillBadgeCheckmark = "video.fill.badge.checkmark"
1497 | }
1498 |
1499 | case wake
1500 |
1501 | public enum Wallet: String, SymbolImage {
1502 | case pass = "wallet.pass"
1503 | case passFill = "wallet.pass.fill"
1504 | }
1505 |
1506 | public enum Wave3: String, SymbolImage {
1507 | case left = "wave.3.left"
1508 | case leftCircle = "wave.3.left.circle"
1509 | case leftCircleFill = "wave.3.left.circle.fill"
1510 | case right = "wave.3.right"
1511 | case rightCircle = "wave.3.right.circle"
1512 | case rightCircleFill = "wave.3.right.circle.fill"
1513 | }
1514 |
1515 | public enum Waveform: String, SymbolImage {
1516 | case pathEcgRectangle = "waveform.path.ecg.rectangle"
1517 | case pathEcgRectangleFill = "waveform.path.ecg.rectangle.fill"
1518 | }
1519 |
1520 | public enum Wrench: String, SymbolImage {
1521 | case andScrewdriver = "wrench.and.screwdriver"
1522 | case andScrewdriverFill = "wrench.and.screwdriver.fill"
1523 | }
1524 |
1525 | public enum Xmark: String, SymbolImage {
1526 | case bin = "xmark.bin"
1527 | case binFill = "xmark.bin.fill"
1528 | case binCircle = "xmark.bin.circle"
1529 | case binCircleFill = "xmark.bin.circle.fill"
1530 | case rectanglePortrait = "xmark.rectangle.portrait"
1531 | case rectanglePortraitFill = "xmark.rectangle.portrait.fill"
1532 | case diamond = "xmark.diamond"
1533 | case diamondFill = "xmark.diamond.fill"
1534 | }
1535 |
1536 | case xserve
1537 |
1538 | public enum Zl: String, SymbolImage {
1539 | case rectangleRoundedtop = "zl.rectangle.roundedtop"
1540 | case rectangleRoundedtopFill = "zl.rectangle.roundedtop.fill"
1541 | }
1542 |
1543 | public enum Zr: String, SymbolImage {
1544 | case rectangleRoundedtop = "zr.rectangle.roundedtop"
1545 | case rectangleRoundedtopFill = "zr.rectangle.roundedtop.fill"
1546 | }
1547 | }
1548 |
--------------------------------------------------------------------------------
/Tests/SFSymbolTests/ImageExtensionTests.swift:
--------------------------------------------------------------------------------
1 | //
2 | // ImageExtensionTests.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | @testable import SFSymbol
24 | import SwiftUI
25 | import XCTest
26 |
27 | class ImageExtensionTests: XCTestCase {
28 | func testImagefromSFSymbol() {
29 | let symbol = SFSymbol6.Apple.appleLogo
30 | let imageFromSFSymbol = Image(symbol: symbol)
31 | let imageFromSymbolString = Image(systemName: symbol.rawValue)
32 |
33 | XCTAssert(imageFromSFSymbol == imageFromSymbolString, "Image(symbol:) is broken")
34 | }
35 | }
36 |
37 | extension ImageExtensionTests {
38 | @available(iOS 16.0, tvOS 16.0, watchOS 9.0, macOS 13.0, *)
39 | func testImageVariableValuesConvenienceInit() {
40 | let symbol = SFSymbol6.Apple.appleLogo
41 | let imageFromSFSymbol = Image(symbol: symbol, variableValue: 0.5)
42 | let imageFromSymbolString = Image(systemName: symbol.rawValue)
43 |
44 | XCTAssert(imageFromSFSymbol != imageFromSymbolString, "Image(symbol:) is broken")
45 | }
46 | }
47 |
--------------------------------------------------------------------------------
/Tests/SFSymbolTests/UIImageExtensionTests.swift:
--------------------------------------------------------------------------------
1 | //
2 | // UIImageExtensionTests.swift
3 | // SFSymbol
4 | //
5 | // Permission is hereby granted, free of charge, to any person obtaining a copy
6 | // of this software and associated documentation files (the "Software"), to deal
7 | // in the Software without restriction, including without limitation the rights
8 | // to use, copy, modify, merge, publish, distribute, sublicense, and/or sell
9 | // copies of the Software, and to permit persons to whom the Software is
10 | // furnished to do so, subject to the following conditions:
11 | //
12 | // The above copyright notice and this permission notice shall be included in
13 | // all copies or substantial portions of the Software.
14 | //
15 | // THE SOFTWARE IS PROVIDED "AS IS", WITHOUT WARRANTY OF ANY KIND, EXPRESS OR
16 | // IMPLIED, INCLUDING BUT NOT LIMITED TO THE WARRANTIES OF MERCHANTABILITY,
17 | // FITNESS FOR A PARTICULAR PURPOSE AND NONINFRINGEMENT. IN NO EVENT SHALL THE
18 | // AUTHORS OR COPYRIGHT HOLDERS BE LIABLE FOR ANY CLAIM, DAMAGES OR OTHER
19 | // LIABILITY, WHETHER IN AN ACTION OF CONTRACT, TORT OR OTHERWISE, ARISING FROM,
20 | // OUT OF OR IN CONNECTION WITH THE SOFTWARE OR THE USE OR OTHER DEALINGS IN
21 | // THE SOFTWARE.
22 |
23 | #if canImport(UIKit)
24 | @testable import SFSymbol
25 | import UIKit
26 | import SwiftUI
27 | import XCTest
28 |
29 | @available(iOS 13, *)
30 | class UIImageExtensionTests: XCTestCase {
31 | func testUIImageInitilizer() {
32 | let expected = UIImage(systemName: SFSymbol4.infinity.rawValue)
33 | let result = UIImage(symbol: SFSymbol4.infinity)
34 |
35 | XCTAssertNotNil(expected)
36 | XCTAssertNotNil(result)
37 | XCTAssert(expected == result)
38 | }
39 | }
40 | #endif
41 |
--------------------------------------------------------------------------------