├── .github ├── ISSUE_TEMPLATE │ ├── bug_report.yml │ └── feature_request.yml ├── PULL_REQUEST_TEMPLATE.md └── workflows │ ├── docs.yml │ └── swiftlint.yml ├── .gitignore ├── .swiftlint.yml ├── CONTRIBUTING.md ├── Icons ├── GitHubBanner.png ├── GitHubBanner.pxd ├── SettingsKitIcon.png └── SettingsKitIcon.pxd ├── LICENSE.md ├── Package.swift ├── README.md ├── Sources └── SettingsKit │ ├── Components │ └── SettingsKitScene.swift │ ├── Model │ ├── Data │ │ ├── ArrayBuilder.swift │ │ ├── CustomToolbarButton.swift │ │ ├── SettingsAction.swift │ │ ├── SettingsSubtab.swift │ │ ├── SettingsTab.swift │ │ ├── SettingsWindowDesign.swift │ │ ├── TabType.swift │ │ ├── ToolbarAction.swift │ │ ├── ToolbarActionProtocol.swift │ │ ├── ToolbarGroup.swift │ │ └── ToolbarMenu.swift │ └── Extensions │ │ ├── Array.swift │ │ ├── CGFloat.swift │ │ ├── Double.swift │ │ ├── SettingsTab+.swift │ │ ├── String.swift │ │ └── SwiftUI │ │ ├── KeyboardShortcut.swift │ │ ├── Scene.swift │ │ └── View.swift │ ├── SettingsKit.docc │ ├── GettingStarted.md │ ├── Resources │ │ ├── DefaultDesign.png │ │ └── SidebarDesign.png │ ├── SettingsKit.md │ ├── Usage │ │ ├── Actions.md │ │ ├── AddSettingsWindow.md │ │ ├── SidebarDesign.md │ │ └── TabsAndSubtabs.md │ └── theme-settings.json │ └── ViewModel │ └── SettingsModel.swift └── Tests ├── Examples ├── Examples.xcodeproj │ ├── project.pbxproj │ └── project.xcworkspace │ │ ├── contents.xcworkspacedata │ │ └── xcshareddata │ │ ├── IDEWorkspaceChecks.plist │ │ └── swiftpm │ │ └── Package.resolved └── Examples │ ├── AccountView.swift │ ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json │ ├── ContentView.swift │ ├── Examples.entitlements │ ├── ExamplesApp.swift │ ├── GeneralSettings.swift │ └── Preview Content │ └── Preview Assets.xcassets │ └── Contents.json ├── SettingsKitTests └── SettingsKitTests.swift └── TestApp ├── .swiftlint.yml ├── TestApp.xcodeproj ├── project.pbxproj └── project.xcworkspace │ ├── contents.xcworkspacedata │ └── xcshareddata │ ├── IDEWorkspaceChecks.plist │ └── swiftpm │ └── Package.resolved ├── TestApp ├── Assets.xcassets │ ├── AccentColor.colorset │ │ └── Contents.json │ ├── AppIcon.appiconset │ │ └── Contents.json │ └── Contents.json ├── Preview Content │ └── Preview Assets.xcassets │ │ └── Contents.json ├── TestApp.entitlements ├── TestAppApp.swift ├── View │ └── ContentView.swift └── ViewModel │ └── TestAppModel.swift └── xcodebuild.log /.github/ISSUE_TEMPLATE/bug_report.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.github/ISSUE_TEMPLATE/bug_report.yml -------------------------------------------------------------------------------- /.github/ISSUE_TEMPLATE/feature_request.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.github/ISSUE_TEMPLATE/feature_request.yml -------------------------------------------------------------------------------- /.github/PULL_REQUEST_TEMPLATE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.github/PULL_REQUEST_TEMPLATE.md -------------------------------------------------------------------------------- /.github/workflows/docs.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.github/workflows/docs.yml -------------------------------------------------------------------------------- /.github/workflows/swiftlint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.github/workflows/swiftlint.yml -------------------------------------------------------------------------------- /.gitignore: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.gitignore -------------------------------------------------------------------------------- /.swiftlint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/.swiftlint.yml -------------------------------------------------------------------------------- /CONTRIBUTING.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/CONTRIBUTING.md -------------------------------------------------------------------------------- /Icons/GitHubBanner.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Icons/GitHubBanner.png -------------------------------------------------------------------------------- /Icons/GitHubBanner.pxd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Icons/GitHubBanner.pxd -------------------------------------------------------------------------------- /Icons/SettingsKitIcon.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Icons/SettingsKitIcon.png -------------------------------------------------------------------------------- /Icons/SettingsKitIcon.pxd: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Icons/SettingsKitIcon.pxd -------------------------------------------------------------------------------- /LICENSE.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/LICENSE.md -------------------------------------------------------------------------------- /Package.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Package.swift -------------------------------------------------------------------------------- /README.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/README.md -------------------------------------------------------------------------------- /Sources/SettingsKit/Components/SettingsKitScene.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Components/SettingsKitScene.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/ArrayBuilder.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/ArrayBuilder.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/CustomToolbarButton.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/CustomToolbarButton.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/SettingsAction.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/SettingsAction.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/SettingsSubtab.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/SettingsSubtab.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/SettingsTab.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/SettingsTab.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/SettingsWindowDesign.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/SettingsWindowDesign.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/TabType.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/TabType.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/ToolbarAction.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/ToolbarAction.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/ToolbarActionProtocol.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/ToolbarActionProtocol.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/ToolbarGroup.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/ToolbarGroup.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Data/ToolbarMenu.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Data/ToolbarMenu.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/Array.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/Array.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/CGFloat.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/CGFloat.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/Double.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/Double.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/SettingsTab+.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/SettingsTab+.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/String.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/String.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/SwiftUI/KeyboardShortcut.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/SwiftUI/KeyboardShortcut.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/SwiftUI/Scene.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/SwiftUI/Scene.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/Model/Extensions/SwiftUI/View.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/Model/Extensions/SwiftUI/View.swift -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/GettingStarted.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/GettingStarted.md -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/Resources/DefaultDesign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/Resources/DefaultDesign.png -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/Resources/SidebarDesign.png: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/Resources/SidebarDesign.png -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/SettingsKit.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/SettingsKit.md -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/Usage/Actions.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/Usage/Actions.md -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/Usage/AddSettingsWindow.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/Usage/AddSettingsWindow.md -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/Usage/SidebarDesign.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/Usage/SidebarDesign.md -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/Usage/TabsAndSubtabs.md: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/Usage/TabsAndSubtabs.md -------------------------------------------------------------------------------- /Sources/SettingsKit/SettingsKit.docc/theme-settings.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/SettingsKit.docc/theme-settings.json -------------------------------------------------------------------------------- /Sources/SettingsKit/ViewModel/SettingsModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Sources/SettingsKit/ViewModel/SettingsModel.swift -------------------------------------------------------------------------------- /Tests/Examples/Examples.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Tests/Examples/Examples.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Tests/Examples/Examples.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Tests/Examples/Examples.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved -------------------------------------------------------------------------------- /Tests/Examples/Examples/AccountView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/AccountView.swift -------------------------------------------------------------------------------- /Tests/Examples/Examples/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /Tests/Examples/Examples/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Tests/Examples/Examples/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Tests/Examples/Examples/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/ContentView.swift -------------------------------------------------------------------------------- /Tests/Examples/Examples/Examples.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/Examples.entitlements -------------------------------------------------------------------------------- /Tests/Examples/Examples/ExamplesApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/ExamplesApp.swift -------------------------------------------------------------------------------- /Tests/Examples/Examples/GeneralSettings.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/GeneralSettings.swift -------------------------------------------------------------------------------- /Tests/Examples/Examples/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/Examples/Examples/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Tests/SettingsKitTests/SettingsKitTests.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/SettingsKitTests/SettingsKitTests.swift -------------------------------------------------------------------------------- /Tests/TestApp/.swiftlint.yml: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/.swiftlint.yml -------------------------------------------------------------------------------- /Tests/TestApp/TestApp.xcodeproj/project.pbxproj: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp.xcodeproj/project.pbxproj -------------------------------------------------------------------------------- /Tests/TestApp/TestApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp.xcodeproj/project.xcworkspace/contents.xcworkspacedata -------------------------------------------------------------------------------- /Tests/TestApp/TestApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp.xcodeproj/project.xcworkspace/xcshareddata/IDEWorkspaceChecks.plist -------------------------------------------------------------------------------- /Tests/TestApp/TestApp.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp.xcodeproj/project.xcworkspace/xcshareddata/swiftpm/Package.resolved -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/Assets.xcassets/AccentColor.colorset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/Assets.xcassets/AccentColor.colorset/Contents.json -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/Assets.xcassets/AppIcon.appiconset/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/Assets.xcassets/AppIcon.appiconset/Contents.json -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/Preview Content/Preview Assets.xcassets/Contents.json: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/Preview Content/Preview Assets.xcassets/Contents.json -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/TestApp.entitlements: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/TestApp.entitlements -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/TestAppApp.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/TestAppApp.swift -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/View/ContentView.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/View/ContentView.swift -------------------------------------------------------------------------------- /Tests/TestApp/TestApp/ViewModel/TestAppModel.swift: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/TestApp/ViewModel/TestAppModel.swift -------------------------------------------------------------------------------- /Tests/TestApp/xcodebuild.log: -------------------------------------------------------------------------------- https://raw.githubusercontent.com/david-swift/SettingsKit-macOS/HEAD/Tests/TestApp/xcodebuild.log --------------------------------------------------------------------------------