Skip to content
Merged
Show file tree
Hide file tree
Changes from all commits
Commits
File filter

Filter by extension

Filter by extension

Conversations
Failed to load comments.
Loading
Jump to
Jump to file
Failed to load files.
Loading
Diff view
Diff view
2 changes: 1 addition & 1 deletion .swiftformat
Original file line number Diff line number Diff line change
Expand Up @@ -81,4 +81,4 @@
--wrapcollections before-first

# Exclude paths
--exclude **/Generated,**/generated,**/protobuf,**/OpenApi
--exclude **/Generated,**/generated,**/protobuf,**/OpenApi,vendor/bundle,Pods,spm_cache,derived_data,.build
12 changes: 7 additions & 5 deletions .swiftlint.yml
Original file line number Diff line number Diff line change
@@ -1,14 +1,16 @@
# Directory and file filters
included:
- Sources
- DemoApp
- DemoAppUIKit
excluded:
- Tests/SwiftLintFrameworkTests/Resources
- Sources/StreamVideo/Generated
- Sources/StreamVideo/OpenApi
- Sources/StreamVideo/protobuf
- Sources/StreamVideoSwiftUI/Generated
- DocumentationTests
- Pods
- .build
- spm_cache
- vendor/bundle
- derived_data

# Custom Rules
custom_rules:
Expand All @@ -26,4 +28,4 @@ custom_rules:
# Enabled/disabled rules
only_rules:
- unhandled_throwing_task
# - custom_rules
# - custom_rules
6 changes: 6 additions & 0 deletions CHANGELOG.md
Original file line number Diff line number Diff line change
Expand Up @@ -6,6 +6,12 @@ The format is based on [Keep a Changelog](https://keepachangelog.com/en/1.0.0/).

### 🔄 Changed

# [1.34.1](https://github.com/GetStream/stream-video-swift/releases/tag/1.34.1)
_October 14, 2025_

### 🐞 Fixed
- An issue that was causing the speaker to toggle nonstop. [#968](https://github.com/GetStream/stream-video-swift/pull/968)

# [1.34.0](https://github.com/GetStream/stream-video-swift/releases/tag/1.34.0)
_October 07, 2025_

Expand Down
16 changes: 8 additions & 8 deletions CallIntent/IntentHandler.swift
Original file line number Diff line number Diff line change
Expand Up @@ -5,14 +5,14 @@
import Intents

class IntentHandler: INExtension, INStartCallIntentHandling {
override func handler(for intent: INIntent) -> Any {
return self
}
override func handler(for intent: INIntent) -> Any {
return self
}

func handle(intent: INStartCallIntent, completion: @escaping (INStartCallIntentResponse) -> Void) {
let userActivity = NSUserActivity(activityType: NSStringFromClass(INStartCallIntent.self))
let response = INStartCallIntentResponse(code: .continueInApp, userActivity: userActivity)
func handle(intent: INStartCallIntent, completion: @escaping (INStartCallIntentResponse) -> Void) {
let userActivity = NSUserActivity(activityType: NSStringFromClass(INStartCallIntent.self))
let response = INStartCallIntentResponse(code: .continueInApp, userActivity: userActivity)

completion(response)
}
completion(response)
}
}
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
import SwiftUI
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import StreamVideo
import StreamVideoSwiftUI
import SwiftUI

fileprivate func content() {
private func content() {
container {
struct VideoDemoSwiftUIApp: View {

Expand Down Expand Up @@ -53,7 +57,7 @@ fileprivate func content() {
callViewModel.startCall(
callType: "default",
callId: callId,
members: [/* Your list of participants goes here. */]
members: [ /* Your list of participants goes here. */ ]
)
} label: {
Text("Start a call")
Expand Down Expand Up @@ -127,7 +131,7 @@ fileprivate func content() {
callViewModel.startCall(
callType: "default",
callId: callId,
members: [/* Your list of participants goes here. */]
members: [ /* Your list of participants goes here. */ ]
)
} label: {
Text("Start a call")
Expand All @@ -137,7 +141,5 @@ fileprivate func content() {
.modifier(CallModifier(viewFactory: CustomViewFactory(), viewModel: callViewModel))
}
}

}

}
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import StreamVideo

fileprivate enum First {
private enum First {
static let streamVideo = StreamVideo(
apiKey: apiKey,
user: user,
Expand All @@ -9,7 +13,7 @@ fileprivate enum First {
)
}

fileprivate enum Second {
private enum Second {
static let streamVideo = StreamVideo(
apiKey: apiKey,
user: .guest("guest"),
Expand All @@ -18,7 +22,7 @@ fileprivate enum Second {
)
}

fileprivate enum Third {
private enum Third {
static let streamVideo = StreamVideo(
apiKey: apiKey,
user: .anonymous,
Expand All @@ -27,7 +31,7 @@ fileprivate enum Third {
)
}

fileprivate enum Fourth {
private enum Fourth {
static let streamVideo = StreamVideo(
apiKey: apiKey,
user: user,
Expand Down
Original file line number Diff line number Diff line change
@@ -1,6 +1,10 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import StreamVideo

fileprivate func content() {
private func content() {
asyncContainer {
let call = streamVideo.call(callType: "default", callId: "123")
let result = try await call.create()
Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import StreamVideo
import StreamVideoSwiftUI

@MainActor
fileprivate func content() {
private func content() {
container {
let clientState = streamVideo.state
let callState = call.state
Expand All @@ -17,7 +21,7 @@ fileprivate func content() {
}

container {
let cancellable = call.state.$participants.sink { participants in
let cancellable = call.state.$participants.sink { _ in
// ..
}

Expand Down
Original file line number Diff line number Diff line change
@@ -1,8 +1,12 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import StreamVideo
import StreamVideoSwiftUI

@MainActor
fileprivate func content() {
private func content() {
container {
let call = streamVideo.call(callType: "default", callId: "123")
let camera = call.camera
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import Combine
import StreamVideo
import StreamVideoSwiftUI
import SwiftUI
import Combine

@MainActor
fileprivate func content() {
private func content() {
asyncContainer {
let filters: [String: RawJSON] = ["ended_at": .nil]
let sort = [SortParamRequest.descending("created_at")]
Expand Down Expand Up @@ -90,7 +94,7 @@ fileprivate func content() {

ScrollView {
LazyVStack {
ForEach(callsViewModel.calls, id: \.callId) { call in
ForEach(callsViewModel.calls, id: \.callId) { _ in
CallView(viewFactory: viewFactory, viewModel: viewModel)
.padding(.vertical, 4)
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import Combine
import StreamVideo
import StreamVideoSwiftUI
import SwiftUI
import Combine

@MainActor
fileprivate func content() {
private func content() {
container {
@Injected(\.streamVideo) var streamVideo
@Injected(\.fonts) var fonts
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import Combine
import StreamVideo
import StreamVideoSwiftUI
import SwiftUI
import Combine

@MainActor
fileprivate func content() {
private func content() {
asyncContainer {
// sorting and pagination
let sort = SortParamRequest(direction: 1, field: "user_id")
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import Combine
import StreamVideo
import StreamVideoSwiftUI
import SwiftUI
import Combine

@MainActor
fileprivate func content() {
private func content() {
asyncContainer {
// see if you currently have this permission.
let hasPermission = call.currentUserHasCapability(.sendAudio)
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import Combine
import StreamVideo
import StreamVideoSwiftUI
import SwiftUI
import Combine

@MainActor
fileprivate func content() {
private func content() {
asyncContainer {
let response = try await call.sendReaction(type: "fireworks")
}
Expand Down
Original file line number Diff line number Diff line change
@@ -1,10 +1,14 @@
//
// Copyright © 2025 Stream.io Inc. All rights reserved.
//

import Combine
import StreamVideo
import StreamVideoSwiftUI
import SwiftUI
import Combine

@MainActor
fileprivate func content() {
private func content() {
asyncContainer {
let response = try await call.sendCustomEvent(["type": .string("draw"), "x": .number(10), "y": .number(20)])
}
Expand Down
Loading
Loading