From 54e8d798d0fc58f7292ea573dfd0f2261fcc4b85 Mon Sep 17 00:00:00 2001 From: Marc Prud'hommeaux Date: Sat, 3 Jan 2026 11:29:00 -0500 Subject: [PATCH] Add NotificationPlayground and skip-notify --- Android/app/build.gradle.kts | 4 + Android/app/google-services.json | 29 +++++++ Android/app/src/main/AndroidManifest.xml | 1 + Darwin/Entitlements.plist | 7 +- .../xcshareddata/xcschemes/Showcase.xcscheme | 78 ------------------- Package.swift | 2 + Sources/Showcase/NotificationPlayground.swift | 9 +++ Sources/Showcase/PlaygroundListView.swift | 5 ++ .../Showcase/Resources/Localizable.xcstrings | 24 ++++++ 9 files changed, 80 insertions(+), 79 deletions(-) create mode 100644 Android/app/google-services.json delete mode 100644 Darwin/Showcase.xcodeproj/xcshareddata/xcschemes/Showcase.xcscheme create mode 100644 Sources/Showcase/NotificationPlayground.swift diff --git a/Android/app/build.gradle.kts b/Android/app/build.gradle.kts index 725241c..92c43a0 100644 --- a/Android/app/build.gradle.kts +++ b/Android/app/build.gradle.kts @@ -5,6 +5,10 @@ plugins { alias(libs.plugins.kotlin.compose) alias(libs.plugins.android.application) id("skip-build-plugin") + + // this plugin is needed in order to process the google-services.json file + id("com.google.gms.google-services") version "4.4.4" apply true + id("com.google.firebase.crashlytics") version "3.0.2" apply true } skip { diff --git a/Android/app/google-services.json b/Android/app/google-services.json new file mode 100644 index 0000000..07f5176 --- /dev/null +++ b/Android/app/google-services.json @@ -0,0 +1,29 @@ +{ + "project_info": { + "project_number": "25594159619", + "project_id": "app-fair-425519", + "storage_bucket": "app-fair-425519.firebasestorage.app" + }, + "client": [ + { + "client_info": { + "mobilesdk_app_id": "1:25594159619:android:965b6dc7c4ba7e6afc2436", + "android_client_info": { + "package_name": "org.appfair.app.ShowcaseLite" + } + }, + "oauth_client": [], + "api_key": [ + { + "current_key": "AIzaSyDICqY23CwGFFBM2hDf_-4oJPtUFRfK_1g" + } + ], + "services": { + "appinvite_service": { + "other_platform_oauth_client": [] + } + } + } + ], + "configuration_version": "1" +} diff --git a/Android/app/src/main/AndroidManifest.xml b/Android/app/src/main/AndroidManifest.xml index 35beb0b..35198b1 100644 --- a/Android/app/src/main/AndroidManifest.xml +++ b/Android/app/src/main/AndroidManifest.xml @@ -22,6 +22,7 @@ + - + + aps-environment + development + com.apple.developer.aps-environment + development + diff --git a/Darwin/Showcase.xcodeproj/xcshareddata/xcschemes/Showcase.xcscheme b/Darwin/Showcase.xcodeproj/xcshareddata/xcschemes/Showcase.xcscheme deleted file mode 100644 index e09b31a..0000000 --- a/Darwin/Showcase.xcodeproj/xcshareddata/xcschemes/Showcase.xcscheme +++ /dev/null @@ -1,78 +0,0 @@ - - - - - - - - - - - - - - - - - - - - - - - - - - - - - diff --git a/Package.swift b/Package.swift index 0522407..78206ba 100644 --- a/Package.swift +++ b/Package.swift @@ -19,6 +19,7 @@ let package = Package( .package(url: "https://source.skip.tools/skip-motion.git", "0.0.0"..<"2.0.0"), .package(url: "https://source.skip.tools/skip-keychain.git", "0.3.0"..<"2.0.0"), .package(url: "https://source.skip.tools/skip-marketplace.git", "0.0.0"..<"2.0.0"), + .package(url: "https://source.skip.tools/skip-notify.git", "0.0.0"..<"2.0.0"), ], targets: [ .target(name: "Showcase", dependencies: [ @@ -31,6 +32,7 @@ let package = Package( .product(name: "SkipMotion", package: "skip-motion"), .product(name: "SkipKeychain", package: "skip-keychain"), .product(name: "SkipMarketplace", package: "skip-marketplace"), + .product(name: "SkipNotify", package: "skip-notify"), ], resources: [.process("Resources")], plugins: [.plugin(name: "skipstone", package: "skip")]), ] ) diff --git a/Sources/Showcase/NotificationPlayground.swift b/Sources/Showcase/NotificationPlayground.swift new file mode 100644 index 0000000..dc03e93 --- /dev/null +++ b/Sources/Showcase/NotificationPlayground.swift @@ -0,0 +1,9 @@ +// Copyright 2023–2025 Skip +import SwiftUI +import SkipNotify + +struct NotificationPlayground: View { + var body: some View { + Text("NotificationPlayground") + } +} diff --git a/Sources/Showcase/PlaygroundListView.swift b/Sources/Showcase/PlaygroundListView.swift index 8a769cc..a612014 100644 --- a/Sources/Showcase/PlaygroundListView.swift +++ b/Sources/Showcase/PlaygroundListView.swift @@ -42,6 +42,7 @@ enum PlaygroundType: CaseIterable, View { case menu case modifier case navigationStack + case notification case observable case offsetPosition case onSubmit @@ -163,6 +164,8 @@ enum PlaygroundType: CaseIterable, View { return LocalizedStringResource("Modifiers") case .navigationStack: return LocalizedStringResource("NavigationStack") + case .notification: + return LocalizedStringResource("Notifications") case .observable: return LocalizedStringResource("Observable") case .offsetPosition: @@ -326,6 +329,8 @@ enum PlaygroundType: CaseIterable, View { ModifierPlayground() case .navigationStack: NavigationStackPlayground() + case .notification: + NotificationPlayground() case .observable: ObservablePlayground() case .offsetPosition: diff --git a/Sources/Showcase/Resources/Localizable.xcstrings b/Sources/Showcase/Resources/Localizable.xcstrings index fec6065..92d147b 100644 --- a/Sources/Showcase/Resources/Localizable.xcstrings +++ b/Sources/Showcase/Resources/Localizable.xcstrings @@ -1593,6 +1593,9 @@ }, "Item %lld" : { + }, + "Item value: %lld" : { + }, "JavaScript" : { @@ -1828,9 +1831,18 @@ }, "Navigate back" : { + }, + "Navigate back (dismiss)" : { + + }, + "Navigate back (set nil)" : { + }, "Navigate forward" : { + }, + "Navigate forward to %lld" : { + }, "NavigationLink" : { @@ -1904,6 +1916,12 @@ }, "Note: tint should not affect Label appearance" : { + }, + "NotificationPlayground" : { + + }, + "Notifications" : { + }, "Observable" : { @@ -2134,6 +2152,9 @@ }, "Present with data" : { + }, + "Present with item binding" : { + }, "Primary" : { @@ -2374,6 +2395,9 @@ }, "Selection Set" : { + }, + "Selection: %@" : { + }, "Selection: %lld" : {