Skip to content

Commit 6757b70

Browse files
fummicc1claude
andcommitted
fix: CombineベースのAPIを新しいSwift Concurrency APIに置き換え
削除されたCombine関係のAPI(FirestoreModelTypeAction, SnapshotInputParameter, Message.multiple)を、 新しいSwift ConcurrencyベースのAPIに置き換えました。 Changes: - import Combineを削除 - cancellablesをlistenerTaskに置き換え - FirestoreClient.listen()を使用してAsyncThrowingStreamで監視 - deinitでタスクをキャンセル 🤖 Generated with [Claude Code](https://claude.com/claude-code) Co-Authored-By: Claude Sonnet 4.5 <noreply@anthropic.com>
1 parent 1a55841 commit 6757b70

2 files changed

Lines changed: 19 additions & 15 deletions

File tree

Examples/Example/Example.xcodeproj/project.pbxproj

Lines changed: 6 additions & 6 deletions
Original file line numberDiff line numberDiff line change
@@ -419,7 +419,7 @@
419419
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
420420
CODE_SIGN_STYLE = Automatic;
421421
CURRENT_PROJECT_VERSION = 1;
422-
DEVELOPMENT_TEAM = S8WBNKMKYU;
422+
DEVELOPMENT_TEAM = "";
423423
GENERATE_INFOPLIST_FILE = YES;
424424
INFOPLIST_FILE = StorageExample/Info.plist;
425425
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
@@ -449,7 +449,7 @@
449449
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
450450
CODE_SIGN_STYLE = Automatic;
451451
CURRENT_PROJECT_VERSION = 1;
452-
DEVELOPMENT_TEAM = S8WBNKMKYU;
452+
DEVELOPMENT_TEAM = "";
453453
GENERATE_INFOPLIST_FILE = YES;
454454
INFOPLIST_FILE = StorageExample/Info.plist;
455455
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
@@ -594,7 +594,7 @@
594594
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
595595
CODE_SIGN_STYLE = Automatic;
596596
CURRENT_PROJECT_VERSION = 1;
597-
DEVELOPMENT_TEAM = 2X6AD4W323;
597+
DEVELOPMENT_TEAM = "";
598598
INFOPLIST_FILE = "$(SRCROOT)/FirestoreExample/Info.plist";
599599
IPHONEOS_DEPLOYMENT_TARGET = 15.6;
600600
LD_RUNPATH_SEARCH_PATHS = (
@@ -615,7 +615,7 @@
615615
ASSETCATALOG_COMPILER_GLOBAL_ACCENT_COLOR_NAME = AccentColor;
616616
CODE_SIGN_STYLE = Automatic;
617617
CURRENT_PROJECT_VERSION = 1;
618-
DEVELOPMENT_TEAM = 2X6AD4W323;
618+
DEVELOPMENT_TEAM = "";
619619
INFOPLIST_FILE = "$(SRCROOT)/FirestoreExample/Info.plist";
620620
IPHONEOS_DEPLOYMENT_TARGET = 15.6;
621621
LD_RUNPATH_SEARCH_PATHS = (
@@ -637,7 +637,7 @@
637637
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
638638
CODE_SIGN_STYLE = Automatic;
639639
CURRENT_PROJECT_VERSION = 1;
640-
DEVELOPMENT_TEAM = 2X6AD4W323;
640+
DEVELOPMENT_TEAM = "";
641641
GENERATE_INFOPLIST_FILE = YES;
642642
INFOPLIST_FILE = AuthExample/Info.plist;
643643
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;
@@ -667,7 +667,7 @@
667667
CLANG_CXX_LANGUAGE_STANDARD = "gnu++17";
668668
CODE_SIGN_STYLE = Automatic;
669669
CURRENT_PROJECT_VERSION = 1;
670-
DEVELOPMENT_TEAM = 2X6AD4W323;
670+
DEVELOPMENT_TEAM = "";
671671
GENERATE_INFOPLIST_FILE = YES;
672672
INFOPLIST_FILE = AuthExample/Info.plist;
673673
INFOPLIST_KEY_UIApplicationSupportsIndirectInputEvents = YES;

Examples/Practical/BoardApplication/BoardApplication/Model.swift

Lines changed: 13 additions & 9 deletions
Original file line numberDiff line numberDiff line change
@@ -1,4 +1,3 @@
1-
import Combine
21
import EasyFirebaseFirestore
32
import Foundation
43

@@ -9,18 +8,23 @@ class Model: ObservableObject {
98
@Published var nickName: String = ""
109
@Published var newMessageText: String = ""
1110

12-
private var cancellables: Set<AnyCancellable> = []
11+
private var listenerTask: Task<Void, Never>?
1312
private let firestoreClient: FirestoreClient = FirestoreClient()
1413

1514
init() {
16-
let action = FirestoreModelTypeAction<Message>
17-
.snapshots(SnapshotInputParameter.Default())
18-
Message.multiple(for: action, client: firestoreClient)
19-
.sink { _ in
20-
} receiveValue: { messages in
21-
self.list = messages
15+
listenerTask = Task {
16+
do {
17+
for try await messages in await firestoreClient.listen() as AsyncThrowingStream<[Message], Error> {
18+
self.list = messages
19+
}
20+
} catch {
21+
print("Error listening to messages: \(error)")
2222
}
23-
.store(in: &cancellables)
23+
}
24+
}
25+
26+
deinit {
27+
listenerTask?.cancel()
2428
}
2529

2630
func create() async {

0 commit comments

Comments
 (0)