gitextract_vzwnjo9a/ ├── .github/ │ ├── CODEOWNERS │ ├── ISSUE_TEMPLATE/ │ │ ├── bug_report.yml │ │ ├── feature_request.yml │ │ └── question.yml │ ├── pull_request_template.md │ └── workflows/ │ ├── build.yml │ ├── build_documentation.yml │ ├── build_example_project.yml │ ├── codeql.yml │ ├── swiftlint.yml │ └── test.yml ├── .gitignore ├── .spi.yml ├── .swiftlint.yml ├── Examples/ │ ├── Example.xcodeproj/ │ │ ├── project.pbxproj │ │ ├── project.xcworkspace/ │ │ │ └── contents.xcworkspacedata │ │ └── xcshareddata/ │ │ └── xcschemes/ │ │ └── SwiftUIExample.xcscheme │ ├── SwiftUIExample/ │ │ ├── AppSpiceStore.swift │ │ ├── Assets.xcassets/ │ │ │ ├── AccentColor.colorset/ │ │ │ │ └── Contents.json │ │ │ ├── AppIcon.appiconset/ │ │ │ │ └── Contents.json │ │ │ └── Contents.json │ │ ├── ContentView.swift │ │ ├── ExampleApp.swift │ │ └── Preview Content/ │ │ └── Preview Assets.xcassets/ │ │ └── Contents.json │ └── UIKitExample/ │ ├── AppDelegate.swift │ ├── AppSpiceStore.swift │ ├── Assets.xcassets/ │ │ ├── AccentColor.colorset/ │ │ │ └── Contents.json │ │ ├── AppIcon.appiconset/ │ │ │ └── Contents.json │ │ └── Contents.json │ ├── Base.lproj/ │ │ └── LaunchScreen.storyboard │ ├── ContentViewController.swift │ ├── Info.plist │ └── SceneDelegate.swift ├── LICENSE ├── Package.swift ├── README.md ├── SECURITY.md ├── Sources/ │ └── Spices/ │ ├── Internal/ │ │ ├── MenuItems/ │ │ │ ├── AsyncButtonMenuItem.swift │ │ │ ├── ButtonMenuItem.swift │ │ │ ├── ChildSpiceStoreMenuItem.swift │ │ │ ├── MenuItem.swift │ │ │ ├── MenuItemProvider.swift │ │ │ ├── PickerMenuItem.swift │ │ │ ├── TextFieldMenuItem.swift │ │ │ ├── ToggleMenuItem.swift │ │ │ └── ViewMenuItem.swift │ │ ├── Name.swift │ │ ├── Preparable.swift │ │ ├── Storage/ │ │ │ ├── AnyStorage.swift │ │ │ ├── Storage.swift │ │ │ ├── ThrowingStorage.swift │ │ │ └── UserDefaultsStorage.swift │ │ ├── String+Helpers.swift │ │ ├── UIApplication+Helpers.swift │ │ ├── UIViewController+Helpers.swift │ │ ├── View+RestartOnChange.swift │ │ └── Views/ │ │ ├── AsyncButtonMenuItemView.swift │ │ ├── ButtonMenuItemView.swift │ │ ├── ChildSpiceStoreMenuItemView.swift │ │ ├── MenuItemListContent.swift │ │ ├── MenuItemListView.swift │ │ ├── MenuItemView.swift │ │ ├── PickerMenuItemView.swift │ │ ├── TextFieldMenuItemView.swift │ │ ├── ToggleMenuItemView.swift │ │ ├── UserInteraction.swift │ │ ├── View+ConfigureSheetPresentation.swift │ │ ├── View+ErrorAlert.swift │ │ └── ViewMenuItemView.swift │ ├── PresentationStyle.swift │ ├── Spice.swift │ ├── SpiceEditor.swift │ ├── SpiceEditorViewController.swift │ ├── SpiceEditorWindow.swift │ ├── SpiceStore.swift │ ├── Spices.docc/ │ │ ├── Extensions/ │ │ │ └── SpiceStore.md │ │ └── Spices.md │ ├── SpicesTitleProvider.swift │ └── View+SpiceEditor.swift └── Tests/ └── SpicesTests/ ├── AnyStorageTests.swift ├── CamelCaseToNaturalTextTests.swift ├── Helpers/ │ └── UserDefaults+Helpers.swift ├── Mocks/ │ ├── MockEnvironment.swift │ ├── MockSpiceStore.swift │ └── MockStorage.swift ├── SpiceTests.swift └── UserDefaultsStorageTests.swift