diff --git a/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Mockings/UITestCallingSDKWrapper.swift b/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Mockings/UITestCallingSDKWrapper.swift index c559e039e..640a02647 100644 --- a/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Mockings/UITestCallingSDKWrapper.swift +++ b/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Mockings/UITestCallingSDKWrapper.swift @@ -59,11 +59,11 @@ class UITestCallingSDKWrapper: NSObject, CallingSDKWrapperProtocol { func setupCall() async throws { try await setupCallClientAndDeviceManager() } - /* + /* */ func callStartTime() -> Date? { return nil } - */ + /* */ func removeParticipant(_ participantId: String) async throws { return diff --git a/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Views/CallingDemoView.swift b/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Views/CallingDemoView.swift index dea0e16bf..af4cf335c 100644 --- a/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Views/CallingDemoView.swift +++ b/AzureCommunicationUI/AzureCommunicationUIDemoApp/Sources/Views/CallingDemoView.swift @@ -599,7 +599,7 @@ extension CallingDemoView { identifiers: ids) } - /* + /* */ let onCallStartTimeUpdated: (Date) -> Void = { [] startTime in let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" @@ -607,7 +607,7 @@ extension CallingDemoView { let systemTimeZoneDateString = dateFormatter.string(from: startTime) print("::::CallingDemoView startTime event call start time \(systemTimeZoneDateString)") } - */ + /* */ callComposite.events.onRemoteParticipantJoined = onRemoteParticipantJoinedHandler callComposite.events.onError = onErrorHandler @@ -619,9 +619,9 @@ extension CallingDemoView { callComposite.events.onIncomingCall = onIncomingCall callComposite.events.onIncomingCallCancelled = onIncomingCallCancelled callComposite.events.onRemoteParticipantLeft = onRemoteParticipantLeftHandler - /* + /* */ callComposite.events.onCallStartTimeUpdated = onCallStartTimeUpdated - */ + /* */ } func getLocalOptions(callComposite: CallComposite? = nil) -> LocalOptions { @@ -798,6 +798,7 @@ extension CallingDemoView { headerViewData = headerViewData ?? CallScreenHeaderViewData() headerViewData?.subtitle = envConfigSubject.callInformationSubtitle } + headerViewData?.showCallDuration = true return CallScreenOptions(controlBarOptions: callScreenControlBarOptions, headerViewData: headerViewData) } @@ -1093,7 +1094,7 @@ extension CallingDemoView { private func onCallStateChanged(_ callState: CallState, callComposite: CallComposite) { print("::::CallingDemoView::getEventsHandler::onCallStateChanged \(callState.requestString)") - /* + /* */ if let date = callComposite.callStartTime() { let dateFormatter = DateFormatter() dateFormatter.dateFormat = "yyyy-MM-dd HH:mm:ss" @@ -1101,7 +1102,7 @@ extension CallingDemoView { let systemTimeZoneDateString = dateFormatter.string(from: date) print("::::CallingDemoView call start time \(systemTimeZoneDateString)") } - */ + /* */ self.callState = "\(callState.requestString) \(callState.callEndReasonCodeInt) \(callState.callId)" } diff --git a/AzureCommunicationUI/Podfile b/AzureCommunicationUI/Podfile index e6a209aa9..75f6980e4 100644 --- a/AzureCommunicationUI/Podfile +++ b/AzureCommunicationUI/Podfile @@ -11,7 +11,7 @@ project 'AzureCommunicationUIDemoApp/AzureCommunicationUIDemoApp.xcodeproj' target 'AzureCommunicationUICalling' do project 'sdk/AzureCommunicationUICalling/AzureCommunicationUICalling.xcodeproj' use_frameworks! - pod 'AzureCore', '1.0.0-beta.15' + pod 'AzureCore', '1.0.0-beta.16' pod 'AzureCommunicationCalling', '2.15.0' pod 'MicrosoftFluentUI/Avatar_ios', '0.10.0' pod 'MicrosoftFluentUI/BottomSheet_ios', '0.10.0' @@ -30,7 +30,7 @@ end target 'AzureCommunicationUIChat' do project 'sdk/AzureCommunicationUIChat/AzureCommunicationUIChat.xcodeproj' use_frameworks! - pod 'AzureCommunicationChat', '1.3.6' + pod 'AzureCommunicationChat', '1.3.7' pod 'MicrosoftFluentUI/Avatar_ios', '0.10.0' pod 'MicrosoftFluentUI/BottomSheet_ios', '0.10.0' pod 'MicrosoftFluentUI/Button_ios', '0.10.0' @@ -49,7 +49,7 @@ target 'AzureCommunicationUIDemoApp' do project 'AzureCommunicationUIDemoApp/AzureCommunicationUIDemoApp.xcodeproj' use_frameworks! pod 'AzureCommunicationCalling', '2.15.0' - pod 'AzureCommunicationChat', '1.3.6' + pod 'AzureCommunicationChat', '1.3.7' pod 'MicrosoftFluentUI/Avatar_ios', '0.10.0' pod 'MicrosoftFluentUI/BottomSheet_ios', '0.10.0' pod 'MicrosoftFluentUI/Button_ios', '0.10.0' diff --git a/AzureCommunicationUI/Podfile.lock b/AzureCommunicationUI/Podfile.lock index 393efa412..d7143562b 100644 --- a/AzureCommunicationUI/Podfile.lock +++ b/AzureCommunicationUI/Podfile.lock @@ -4,12 +4,12 @@ PODS: - AppCenter/Core - AzureCommunicationCalling (2.15.0): - AzureCommunicationCommon (~> 1.0) - - AzureCommunicationChat (1.3.6): + - AzureCommunicationChat (1.3.7): - AzureCommunicationCommon (~> 1.2.0) - - AzureCore (= 1.0.0-beta.15) + - AzureCore (= 1.0.0-beta.16) - Trouter (= 0.2.0) - AzureCommunicationCommon (1.2.0) - - AzureCore (1.0.0-beta.15) + - AzureCore (1.0.0-beta.16) - MicrosoftFluentUI/ActivityIndicator_ios (0.10.0): - MicrosoftFluentUI/Core_ios - MicrosoftFluentUI/Avatar_ios (0.10.0): @@ -51,8 +51,8 @@ PODS: DEPENDENCIES: - AppCenter/Crashes (= 4.4.1) - AzureCommunicationCalling (= 2.15.0) - - AzureCommunicationChat (= 1.3.6) - - AzureCore (= 1.0.0-beta.15) + - AzureCommunicationChat (= 1.3.7) + - AzureCore (= 1.0.0-beta.16) - MicrosoftFluentUI/ActivityIndicator_ios (= 0.10.0) - MicrosoftFluentUI/Avatar_ios (= 0.10.0) - MicrosoftFluentUI/AvatarGroup_ios (= 0.10.0) @@ -75,13 +75,13 @@ SPEC REPOS: SPEC CHECKSUMS: AppCenter: b0b6f1190215b5f983c42934db718f3b46fff3c0 AzureCommunicationCalling: 96df4da223a0faa2926ff7a99c6960ee1eec14a3 - AzureCommunicationChat: 1e10f873c4eb7c41f4e7fd2bce1fc7c7020fddd9 + AzureCommunicationChat: 2997f9ce17f7663e503684f7aa4312f6954a65ee AzureCommunicationCommon: 130a21be2be889f83dc4adbf994af6285f962de8 - AzureCore: ebbf7cf4dfe72afc7584088c38d1c99f5a35d647 + AzureCore: 1e940658808f94fdf6a23264febfc516fb59fe3e MicrosoftFluentUI: f6db695718efb93f4ca9bdc366c00b80a1f91dba SwiftLint: 5ce4d6a8ff83f1b5fd5ad5dbf30965d35af65e44 Trouter: 7eab36954ad740e32db3ff9f6025b0dff92193d7 -PODFILE CHECKSUM: 08062a259826c034168d700fabdbd291565ed2e3 +PODFILE CHECKSUM: 67d6f29e288e23c5a36728c6998718bdaf749fb6 COCOAPODS: 1.16.2 diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/AzureCommunicationUICalling.podspec b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/AzureCommunicationUICalling.podspec index 5576f6983..fbce8592b 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/AzureCommunicationUICalling.podspec +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/AzureCommunicationUICalling.podspec @@ -1,11 +1,11 @@ Pod::Spec.new do |spec| spec.name = "AzureCommunicationUICalling" - spec.version = "1.14.0" + spec.version = "1.14.1" spec.summary = "UI Library to quickly integrate Azure Communication Calling Services experiences into your applications." spec.homepage = "https://github.com/Azure/communication-ui-library-ios" spec.license = { :type => 'MIT' } spec.author = 'Microsoft' - spec.source = { :git => 'https://github.com/Azure/communication-ui-library-ios.git', :tag => 'AzureCommunicationUICalling_1.14.0' } + spec.source = { :git => 'https://github.com/Azure/communication-ui-library-ios.git', :tag => 'AzureCommunicationUICalling_1.14.1' } spec.module_name = 'AzureCommunicationUICalling' spec.swift_version = '5.8' @@ -17,7 +17,7 @@ Pod::Spec.new do |spec| spec.info_plist = {'UILibrarySemVersion' => "#{spec.version}"} spec.dependency 'AzureCommunicationCalling', '2.15.0' - spec.dependency 'AzureCore', '1.0.0-beta.15' + spec.dependency 'AzureCore', '1.0.0-beta.16' spec.dependency 'MicrosoftFluentUI/Avatar_ios', '0.10.0' spec.dependency 'MicrosoftFluentUI/BottomSheet_ios', '0.10.0' spec.dependency 'MicrosoftFluentUI/Button_ios', '0.10.0' diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/CHANGELOG.md b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/CHANGELOG.md index b24839a80..541c9cfde 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/CHANGELOG.md +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/CHANGELOG.md @@ -1,4 +1,9 @@ # Azure Communication UI Calling Release History +## 1.14.1 (2025-05-02) + +### Bugfixes +- Xcode 16.3 compiling issue + ## 1.14.0 (2025-04-17) ### Features diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallComposite.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallComposite.swift index 0680e97f8..94671ac2c 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallComposite.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallComposite.swift @@ -43,10 +43,10 @@ public class CallComposite { public var onIncomingCallAcceptedFromCallKit: ((_ callId: String) -> Void)? /// Closure to execute when participant has left a call inside Call Composite public var onRemoteParticipantLeft: (([CommunicationIdentifier]) -> Void)? - /* + /* */ /// Closure to call start time updated. public var onCallStartTimeUpdated: ((Date) -> Void)? - */ + /* */ } /// The events handler for Call Composite @@ -102,9 +102,9 @@ public class CallComposite { private var videoViewManager: VideoViewManager? private var callingSDKEventsHandler: CallingSDKEventsHandler? private var callingSDKWrapper: CallingSDKWrapperProtocol? - /* + /* */ private var callStartTimeInternal: Date? - */ + /* */ /// Get debug information for the Call Composite. public var debugInfo: DebugInfo { @@ -306,7 +306,7 @@ public class CallComposite { } } - /* + /* */ /// Get call start time public func callStartTime() -> Date? { guard let callingSDKWrapper = callingSDKWrapper else { @@ -314,7 +314,7 @@ public class CallComposite { } return callingSDKWrapper.callStartTime() } - */ + /* */ convenience init(withOptions options: CallCompositeOptions? = nil, callingSDKWrapperProtocol: CallingSDKWrapperProtocol? = nil) { @@ -754,14 +754,14 @@ extension CallComposite { store?.dispatch(action: .visibilityAction(.hideEntered)) hide() } - /* + /* */ if let onCallStartTimeUpdated = events.onCallStartTimeUpdated, let newCallStartTime = state.callingState.callStartTime, callStartTimeInternal != newCallStartTime { self.callStartTimeInternal = newCallStartTime onCallStartTimeUpdated(newCallStartTime) } - */ + /* */ } private func makeToolkitHostingController(router: NavigationRouter, diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallCompositeOptions/CallScreenHeaderViewData.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallCompositeOptions/CallScreenHeaderViewData.swift index 4d300b183..5908d19dc 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallCompositeOptions/CallScreenHeaderViewData.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/CallCompositeOptions/CallScreenHeaderViewData.swift @@ -14,6 +14,9 @@ public class CallScreenHeaderViewData: ObservableObject { /// Subtitle is the header message in the InfoHeader with a user injected custom subtitle message. /// The subtitle message is updatable even after launching the composite. @Published public var subtitle: String? + /// ShowCallDuration is for the InfoHeader with a user injected custom signal for the UI to show call time. + /// The call duration show signal is not updatable after launching the composite. + @Published public var showCallDuration: Bool? /// Custom buttons. public let customButtons: [CustomButtonViewData] @@ -26,10 +29,12 @@ public class CallScreenHeaderViewData: ObservableObject { /// - Parameter customButtons: An array of custom button options. Default is an empty array. public init(title: String? = nil, subtitle: String? = nil, + showCallDuration: Bool? = nil, customButtons: [CustomButtonViewData] = [] ) { self.title = title self.subtitle = subtitle + self.showCallDuration = showCallDuration self.customButtons = customButtons } } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Info.plist b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Info.plist index 247b20d11..1fa6383d9 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Info.plist +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Info.plist @@ -19,6 +19,6 @@ CFBundleVersion $(CURRENT_PROJECT_VERSION) UILibrarySemVersion - 1.14.0 + 1.14.1 diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ar-SA.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ar-SA.lproj/Localizable.strings index c1636ab3f..07a0380bb 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ar-SA.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ar-SA.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "المزيد"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "مشاركة معلومات التشخيص"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="إزالة"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="الإبلاغ عن مشكلة"; "AzureCommunicationUICalling.SendFeedback.Text"="إرسال"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="نص الكلام"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="نص الكلام وعرض الكتابة في الوقت الحقيقي"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="اللغة المنطوقة"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="لغة التسمية التوضيحية"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="يتم الآن بدء تشغيل التسميات التوضيحية..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="تشغيل التسميات التوضيحية"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="إيقاف تشغيل التسميات التوضيحية"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="يتعذّر بدء تشغيل التسميات التوضيحية"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="يتعذّر إيقاف التسميات التوضيحية"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="يتعذر تغيير لغة التسميات التوضيحية"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="يتعذّر تغيير اللغة المنطوقة"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="عرض الكتابة في الوقت الحقيقي"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="هل تريد تشغيل عرض الكتابة في الوقت الحقيقي؟"; "AzureCommunicationUICalling.RTT.Alert.Message"="سيتم تشغيل النص في الوقت الحقيقي (RTT) لكل شخص في المكالمة."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="تشغيل"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="تجاهل"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="تشغيل RTT لهذه المكالمة"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="تم تمكين النص في الوقت الحقيقي (RTT) طوال مدة هذا الاجتماع ويمكن لجميع المشاركين مشاهدته."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="تعرّف على المزيد"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="عرض الكتابة في الوقت الحقيقي (RTT) قيد الكتابة"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="اكتب رسالة في الوقت الحقيقي"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "تكبير التسميات التوضيحية وRTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "تصغير التسميات التوضيحية وRTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="كتم الصوت"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="قائمة كتم صوت المشارك."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/de-DE.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/de-DE.lproj/Localizable.strings index 88a4f875f..678b0d0be 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/de-DE.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/de-DE.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Mehr"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Diagnoseinformationen freigeben"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Entfernen"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Ein Problem melden"; "AzureCommunicationUICalling.SendFeedback.Text"="Senden"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Untertitel"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Untertitel und RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Gesprochene Sprache"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Sprache für Untertitel"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Untertitel werden gestartet..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Untertitel aktivieren"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Untertitel deaktivieren"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Untertitel können nicht gestartet werden."; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Untertitel können nicht beendet werden."; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Die Sprache der Untertitel kann nicht geändert werden."; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Die gesprochene Sprache kann nicht geändert werden"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Echtzeittext"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="RTT aktivieren?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Echtzeittext (RTT) wird für alle Teilnehmer des Anrufs aktiviert."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Aktivieren"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Schließen"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="RTT für diesen Anruf aktivieren"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Echtzeittext (RTT) ist für die gesamte Dauer dieser Besprechung aktiviert und wird von allen Teilnehmern angezeigt."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Weitere Informationen"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT-Eingabe"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Nachricht in Echtzeit eingeben"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Untertitel und RTT maximieren"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Untertitel und RTT minimieren"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Stummschalten"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Schalten Sie das Teilnehmermenü stumm."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en-GB.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en-GB.lproj/Localizable.strings index c1afd554b..a7a172dfe 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en-GB.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en-GB.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "More"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Share diagnostics info"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Remove"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Report a problem"; "AzureCommunicationUICalling.SendFeedback.Text"="Send"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Captions"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Captions & RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Spoken language"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Caption language"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Starting Captions..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Turn captions on"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Turn captions off"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Unable to start captions"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Unable to stop captions"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Unable to change captions language"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Unable to change spoken language"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Real-time text"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Turn on RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Real-time text(RTT) will be turned on for everyone in the call."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Turn on"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Dismiss"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Turn on RTT for this call"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Real-time text(RTT) is enabled for the entire duration of this meeting and is seen by all participants."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Learn more"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT typing"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Type message in real-time"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maximise captions and RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimise captions and RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Mute"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Mute participant menu."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en.lproj/Localizable.strings index f75d75f70..4821fe0bf 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/en.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "More"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Share diagnostics info"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Remove"; /* ComplianceBanner title */ @@ -168,7 +170,9 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Report a problem"; "AzureCommunicationUICalling.SendFeedback.Text"="Send"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Captions"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Captions & RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Spoken language"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Caption language"; @@ -180,16 +184,23 @@ "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Unable to change captions language"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Unable to change spoken language"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Real-time text"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Turn on RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Real-time text(RTT) will be turned on for everyone in the call."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Turn on"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Dismiss"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Turn on RTT for this call"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Real-time text(RTT) is enabled for the entire duration of this meeting and is seen by all participants."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Learn more"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT typing"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Type message in real-time"; "AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maximize captions and RTT"; "AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimize captions and RTT"; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/es-ES.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/es-ES.lproj/Localizable.strings index 7a93c3252..04225bb56 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/es-ES.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/es-ES.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Más"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Compartir información de diagnóstico"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Quitar"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Informar de un problema"; "AzureCommunicationUICalling.SendFeedback.Text"="Enviar"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Subtítulos"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Subtítulos y RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Idioma hablado"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Idioma de subtítulos"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Iniciando subtítulos..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Activar los subtítulos"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Desactivar los subtítulos"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="No se pueden iniciar los subtítulos"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="No se pueden detener los subtítulos"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="No se puede cambiar el idioma de los subtítulos"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="No se puede cambiar el idioma hablado"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Texto en tiempo real"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="¿Activar RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="El texto en tiempo real (RTT) se activará para todos los usuarios de la llamada."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Activar"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Descartar"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Activar RTT para esta llamada"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="El texto en tiempo real (RTT) está habilitado para toda la duración de esta reunión y es visto por todos los participantes."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Más información"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Escritura en tiempo real"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Escribir un mensaje en tiempo real"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maximizar subtítulos y RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimizar subtítulos y RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Silenciar"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Silenciar el menú de participantes."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fi-FI.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fi-FI.lproj/Localizable.strings index 9c2e080dc..565673cf3 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fi-FI.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fi-FI.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Lisää"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Jaa diagnostiikkatiedot"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Poista"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Ilmoita ongelmasta"; "AzureCommunicationUICalling.SendFeedback.Text"="Lähetä"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Tekstitykset"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Tekstitykset ja RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Puhuttu kieli"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Tekstityksen kieli"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Aloitetaan tekstitystä..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Ota tekstitykset käyttöön"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Poista tekstitykset käytöstä"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Tekstitystä ei voi aloittaa"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Tekstitystä ei voi lopettaa"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Tekstityksen kieltä ei voi vaihtaa"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Puhuttua kieltä ei voi vaihtaa"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Reaaliaikainen teksti"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Otetaanko RTT käyttöön?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Reaaliaikainen kirjoitus (RTT) otetaan käyttöön kaikille puhelun osallistujille."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Ota käyttöön"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Sulje"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Ota reaaliaikainen kirjoitus käyttöön tässä puhelussa"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Reaaliaikainen teksti (RTT) on käytössä koko kokouksen keston ajan, ja kaikki osallistujat voivat nähdä sen."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Lue lisää"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT-kirjoitus"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="Reaaliaikainen kirjoitus"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Kirjoita viesti reaaliaikaisesti"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Suurenna tekstitykset ja RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Pienennä tekstitykset ja RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Mykistä"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Mykistä osallistuja -valikko."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fr-FR.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fr-FR.lproj/Localizable.strings index e8dfc1ab8..5e915bc5f 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fr-FR.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/fr-FR.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Plus"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Partager les informations de diagnostic"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Supprimer"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Signaler un problème"; "AzureCommunicationUICalling.SendFeedback.Text"="Envoyer"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Sous-titres"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Sous-titres et RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Langue parlée"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Langue des sous-titres"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Commencer les sous-titres..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Activer les sous-titres"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Désactiver les sous-titres"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Impossible de démarrer les sous-titres"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Il est impossible d’arrêter les sous-titres"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Il est impossible de modifier la langue des sous-titres"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Il est impossible de modifier la langue parlée"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Saisie en temps réel"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Activer la RTT ?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Le texte en temps réel (RTT) sera activé pour tous les participants à l’appel."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Activer"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Ignorer"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Activer RTT pour cet appel"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Le texte en temps réel (RTT) est activé pour toute la durée de cette réunion et est visible par tous les participants."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="En savoir plus"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Saisie RTT"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Tapez votre message en temps réel"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maximiser les sous-titres et la RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimiser les sous-titres et la RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Désactiver le micro / muet"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Désactivez le son du participant."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/he-IL.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/he-IL.lproj/Localizable.strings index cfeb49a4c..8f5e328f2 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/he-IL.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/he-IL.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "עוד"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "שתף פרטי אבחון"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="הסר"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="דווח על בעיה"; "AzureCommunicationUICalling.SendFeedback.Text"="שלח"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="כתוביות"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="כתוביות ו- RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="שפה מדוברת"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="שפת כתוביות"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="מאתחל כתוביות..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="הפעל כתוביות"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="כבה כתוביות"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="לא ניתן להפעיל כתוביות"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="לא ניתן להפסיק כתוביות"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="לא ניתן לשנות את שפת הכתוביות"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="לא ניתן לשנות את השפה המדוברת"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="טקסט בזמן אמת"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="להפעיל RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="טקסט בזמן אמת (RTT) יופעל עבור כל האנשים בשיחה."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="הפעל"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="התעלם"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="הפעל RTT עבור שיחה זו"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="טקסט בזמן אמת (RTT) זמין למשך הזמן המלא של פגישה זו והוא נראה על-ידי כל המשתתפים."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="מידע נוסף"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="הקלדת RTT"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="הקלד הודעה בזמן אמת"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "הגדל כתוביות ו- RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "מזער כתוביות ו- RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="השתק"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="תפריט השתקת משתתף."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/it-IT.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/it-IT.lproj/Localizable.strings index ba2feb8a6..8e1925084 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/it-IT.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/it-IT.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Altro"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Condividi informazioni di diagnostica"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Rimuovi"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Segnala un problema"; "AzureCommunicationUICalling.SendFeedback.Text"="Invia"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Sottotitoli"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Sottotitoli e scrittura in tempo reale"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Lingua parlata"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Lingua sottotitoli"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Avvio dei sottotitoli in corso..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Attiva sottotitoli"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Disattiva sottotitoli"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Impossibile avviare i sottotitoli"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Impossibile arrestare i sottotitoli"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Non è possibile modificare la lingua dei sottotitoli"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Impossibile cambiare la lingua parlata"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Testo in tempo reale"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Abilitare la scrittura in tempo reale?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Il testo (RTT) in tempo reale verrà attivato per tutti gli utenti della chiamata."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Abilita"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Ignora"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Attiva la scrittura in tempo reale per questa chiamata"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Il testo in tempo reale è abilitato per l'intera durata della riunione e viene visualizzato da tutti i partecipanti."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Scopri di più"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Digitazione scrittura in tempo reale"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="Scrittura in tempo reale"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Digita messaggio in tempo reale"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Ingrandisci didascalie e scrittura in tempo reale"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Riduci a icona didascalie e scrittura in tempo reale"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Disattiva audio"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Menu Disattiva l'audio del partecipante."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ja-JP.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ja-JP.lproj/Localizable.strings index 5cc578b81..d3cce01c6 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ja-JP.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ja-JP.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "その他"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "診断情報を共有する"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="削除"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="問題の報告"; "AzureCommunicationUICalling.SendFeedback.Text"="送信"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="キャプション"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="キャプションと RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="音声言語"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="キャプション言語"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="キャプションを開始しています..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="キャプションを有効にする"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="キャプションを無効にする"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="キャプションを開始できません"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="キャプションを停止できません"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="キャプションの言語を変更できません"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="話し言葉を変更できません"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="リアルタイム テキスト"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="RTT を有効にしますか?"; "AzureCommunicationUICalling.RTT.Alert.Message"="リアルタイム テキスト (RTT) は、通話のすべてのユーザーに対してオンになります。"; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="有効にする"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="閉じる"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="この呼び出しの RTT を有効にする"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="リアルタイム テキスト (RTT) は、この会議の全期間で有効になっており、すべての参加者に表示されます。"; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="詳細情報"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT 入力"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="リアルタイムにメッセージを入力"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "キャプションと RTT を最大化する"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "キャプションと RTT を最小化する"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="ミュート"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="参加者メニューをミュートにします。"; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ko-KR.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ko-KR.lproj/Localizable.strings index 2ea5ff35b..f9ac8cac4 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ko-KR.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ko-KR.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "기타"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "진단 정보 공유"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="제거"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="문제 보고"; "AzureCommunicationUICalling.SendFeedback.Text"="보내기"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="캡션"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="캡션 및 실시간 입력"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="음성 언어"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="캡션 언어"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="캡션 시작 중..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="캡션 켜기"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="캡션 끄기"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="캡션을 시작할 수 없음"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="캡션을 중지할 수 없음"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="캡션 언어를 변경할 수 없음"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="음성 언어를 변경할 수 없음"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="실시간 입력"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="실시간 입력을 사용하시겠습니까?"; "AzureCommunicationUICalling.RTT.Alert.Message"="통화 중인 모든 사용자에 대해 RTT(실시간 텍스트)가 켜집니다."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="사용"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="해제"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="이 통화에 대한 RTT 켜기"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="RTT(실시간 텍스트)는 이 모임의 전체 기간에 사용할 수 있으며 모든 참가자가 볼 수 있습니다."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="자세한 정보"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="실시간 입력 입력 중"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="실시간 입력"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="실시간으로 메시지 입력"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "캡션 및 RTT 최대화"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "캡션 및 RTT 최소화"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="음소거"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="참가자 음소거"; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nb-NO.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nb-NO.lproj/Localizable.strings index 25a02184c..87f1b6885 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nb-NO.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nb-NO.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Mer"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Del diagnoseinformasjon"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Fjern"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Rapporter et problem"; "AzureCommunicationUICalling.SendFeedback.Text"="Send"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Undertekster"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Undertekster og RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Talespråk"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Språk for undertekst"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Starter teksting ..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Aktiver undertekst"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Deaktiver undertekst"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Kan ikke starte teksting"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Kan ikke stoppe teksting"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Kan ikke endre språk for teksting"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Kan ikke endre talespråk"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Tekst i sanntid"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Aktiver skriving i sanntid?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Sanntidstekst (RTT) aktiveres for alle i samtalen."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Aktiver"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Lukk"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Aktiver RTT for denne samtalen"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Sanntidstekst (RTT) er aktivert for hele varigheten av dette møtet og vises av alle deltakerne."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Mer informasjon"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Skriving i sanntid"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="Skriving i sanntid"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Skriv inn melding i sanntid"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maksimer undertekster og RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimer undertekster og RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Demp"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Meny for demping av lyd for deltaker."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nl-NL.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nl-NL.lproj/Localizable.strings index c22015762..b3bc481f6 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nl-NL.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/nl-NL.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Meer"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Diagnostische gegevens delen"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Verwijderen"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Een probleem melden"; "AzureCommunicationUICalling.SendFeedback.Text"="Verzenden"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Ondertitels"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Ondertitels en RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Gesproken taal"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Taal van ondertiteling"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Ondertitels starten..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Ondertitels inschakelen"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Ondertitels uitschakelen"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Kan ondertitels niet starten"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Kan ondertitels niet stoppen"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Kan de taal van de ondertiteling niet wijzigen"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Kan de gesproken talen niet wijzigen"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Real-time tekst"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="RTT inschakelen?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Tekst in realtime (RTT) wordt ingeschakeld voor iedereen in het gesprek."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Inschakelen"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Sluiten"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="RTT inschakelen voor dit gesprek"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Real-time text (RTT) is ingeschakeld voor de hele duur van deze vergadering en wordt gezien door alle deelnemers."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Meer informatie"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT typen"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Bericht in realtime typen"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Bijschriften en RTT maximaliseren"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Bijschriften en RTT minimaliseren"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Dempen"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Deelnemersmenu dempen."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pl-PL.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pl-PL.lproj/Localizable.strings index a6e023611..8d57bce2f 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pl-PL.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pl-PL.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Więcej"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Udostępnij informacje diagnostyczne"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Usuń"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Zgłoś problem"; "AzureCommunicationUICalling.SendFeedback.Text"="Wyślij"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Napisy"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Napisy i pisanie w czasie rzeczywistym"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Język mówiony"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Język napisów"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Trwa uruchamianie napisów..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Włącz napisy"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Wyłącz napisy"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Nie można uruchomić napisów"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Nie można zatrzymać napisów"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Nie można zmienić języka napisów"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Nie można zmienić języka mówionego"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Pisanie w czasie rzeczywistym"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Włączyć pisanie w czasie rzeczywistym?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Tekst w czasie rzeczywistym zostanie włączony dla wszystkich uczestników rozmowy."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Włącz"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Odrzuć"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Włącz funkcję Pisanie w czasie rzeczywistym dla tego połączenia"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Tekst w czasie rzeczywistym jest włączony przez cały czas trwania tego spotkania i jest widoczny dla wszystkich uczestników."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Dowiedz się więcej"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Pisanie w czasie rzeczywistym"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="Pisanie w czasie rzeczywistym"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Pisanie wiadomości w czasie rzeczywistym"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maksymalizowanie napisów i RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimalizowanie napisów i RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Wycisz"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Menu wyciszania uczestnika."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pt-BR.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pt-BR.lproj/Localizable.strings index 2b463cd14..3b35b13c9 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pt-BR.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/pt-BR.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Mais"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Compartilhar informações de diagnóstico"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Remover"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Informar um problema"; "AzureCommunicationUICalling.SendFeedback.Text"="Enviar"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Legendas"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Legendas e RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Idioma falado"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Idioma da legenda"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Iniciando as Legendas..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Ativar legendas"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Desativar legendas"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Não é possível iniciar as legendas"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Não é possível parar as legendas"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Não é possível alterar o idioma das legendas"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Não é possível alterar o idioma falado"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Texto em tempo real"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Ativar a RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="O RTT (texto em tempo real) será ativado para todos na chamada."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Ativar"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Ignorar"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Habilitar a RTT para esta chamada"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="O RTT (texto em tempo real) está habilitado durante toda a reunião e é visto por todos os participantes."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Saiba mais"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Digitação RTT"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Digitar mensagem em tempo real"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maximizar legendas e RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimizar legendas e RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Ativar mudo"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Ative o mudo do menu do participante."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ru-RU.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ru-RU.lproj/Localizable.strings index d6378f198..2d0370ace 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ru-RU.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/ru-RU.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Дополнительно"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Поделиться диагностическими сведениями"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Удалить"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Сообщить о проблеме"; "AzureCommunicationUICalling.SendFeedback.Text"="Отправить"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Субтитры"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Субтитры и ввод в режиме реального времени"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Язык речи"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Язык субтитров"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Запуск субтитров..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Включить субтитры"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Отключить субтитры"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Не удается запустить субтитры"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Не удалось остановить субтитры"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Не удалось изменить язык субтитров"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Не удалось изменить язык речи"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Текст в режиме реального времени"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Включить ввод в режиме реального времени?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Текст в режиме реального времени (RTT) будет включен для всех участников звонка."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Включить"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Закрыть"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Включить ввод в режиме реального времени для этого звонка"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Текст в режиме реального времени включен на протяжении всего собрания и виден всем участникам."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Подробнее"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="Ввод с клавиатуры в режиме реального времени"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="Ввод в режиме реального времени"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Введите сообщение в режиме реального времени"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Развернуть субтитры и ввод в режиме реального времени"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Свернуть субтитры и ввод в режиме реального времени"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Отключить звук"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Меню отключения звука участника."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/sv-SE.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/sv-SE.lproj/Localizable.strings index 3ee4f87d1..999fce16b 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/sv-SE.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/sv-SE.lproj/Localizable.strings @@ -102,12 +102,14 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Mer"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Dela diagnostikinformation"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Ta bort"; /* ComplianceBanner title */ -"AzureCommunicationUICalling.CallingView.BannerTitle.RecordingAndTranscribingStarted"="Inspelning och avskrift har startats."; +"AzureCommunicationUICalling.CallingView.BannerTitle.RecordingAndTranscribingStarted"="Inspelning och transkription har startats."; "AzureCommunicationUICalling.CallingView.BannerTitle.RecordingStarted"="Inspelningen har startat."; -"AzureCommunicationUICalling.CallingView.BannerTitle.TranscriptionStoppedStillRecording"="Avskriften har avslutats."; +"AzureCommunicationUICalling.CallingView.BannerTitle.TranscriptionStoppedStillRecording"="Transkriptionen har avslutats."; "AzureCommunicationUICalling.CallingView.BannerTitle.TranscriptionStarted"="Transkriptionen har startat."; "AzureCommunicationUICalling.CallingView.BannerTitle.TranscriptionStopped"="Transkriptionen sparas."; "AzureCommunicationUICalling.CallingView.BannerTitle.RecordingStoppedStillTranscribing"="Inspelningen har stoppats."; @@ -117,10 +119,10 @@ /* ComplianceBanner body */ "AzureCommunicationUICalling.CallingView.BannerBody.Consent"="Genom att ansluta ger du ditt medgivande för att det här mötet ska transkriberas."; "AzureCommunicationUICalling.CallingView.BannerBody.Recording"="Du spelar nu bara in det här mötet."; -"AzureCommunicationUICalling.CallingView.BannerBody.TranscriptionStopped"="Avskriften har avslutats."; +"AzureCommunicationUICalling.CallingView.BannerBody.TranscriptionStopped"="Transkriptionen har avslutats."; "AzureCommunicationUICalling.CallingView.BannerBody.OnlyTranscribing"="Nu transkriberar du bara det här mötet."; "AzureCommunicationUICalling.CallingView.BannerBody.RecordingStopped"="Inspelningen har stoppats."; -"AzureCommunicationUICalling.CallingView.BannerBody.RecordingAndTranscriptionStopped"="Inspelning och avskrift har avslutats."; +"AzureCommunicationUICalling.CallingView.BannerBody.RecordingAndTranscriptionStopped"="Inspelning och transkription har avslutats."; /* ComplianceBanner display link */ "AzureCommunicationUICalling.CallingView.BannerLink.PrivacyPolicy"="Sekretesspolicy"; @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Rapportera ett problem"; "AzureCommunicationUICalling.SendFeedback.Text"="Skicka"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Bildtexter"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Undertexter och RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Talat språk"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Språk för undertext"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Startar undertexter..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Aktivera undertexter"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Inaktivera undertexter"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Det går inte att starta undertexter"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Det går inte att stoppa undertexter"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Det går inte att ändra språket för undertexter"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Det gör inte att ändra talat språk"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Realtidstext"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="Aktivera RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Realtidstext (RTT) aktiveras för alla i samtalet."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Aktivera"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Stäng"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Aktivera RTT för det här samtalet"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Realtidstext (RTT) har aktiverats för hela mötets varaktighet och visas av alla deltagare."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Mer information"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT-inmatning"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="Skriv meddelande i realtid"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Maximera undertexter och RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Minimera undertexter och RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Stäng av ljudet"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Stäng av deltagarmenyn."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/tr-TR.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/tr-TR.lproj/Localizable.strings index c64335584..5c18ef21e 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/tr-TR.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/tr-TR.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "Tümü"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "Tanılama bilgilerini paylaş"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="Kaldır"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="Sorun bildirin"; "AzureCommunicationUICalling.SendFeedback.Text"="Gönder"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="Alt yazılar"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="Alt yazılar ve RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="Konuşma dili"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="Alt yazı dili"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="Alt Yazılar Başlatılıyor..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="Alt yazıları aç"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="Alt yazıları kapat"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="Alt yazılar başlatılamadı"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="Alt yazılar durdurulamadı"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="Alt yazı dili değiştirilemedi"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="Konuşma dili değiştirilemedi"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="Gerçek zamanlı metin"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="RTT açılsın mı?"; "AzureCommunicationUICalling.RTT.Alert.Message"="Aramadaki herkes için gerçek zamanlı metin (RTT) açılır."; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="Aç"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="Kapat"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="Bu arama için RTT'yi aç"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="Gerçek zamanlı metin (RTT) bu toplantı süresi boyunca etkindir ve tüm katılımcılar tarafından görülebilir."; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="Daha fazla bilgi edinin"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT yazma"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="RTT"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="İletiyi gerçek zamanlı yazın"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "Alt yazılar ve RTT ekranını büyüt"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "Alt yazıları ve RTT ekranını simge durumuna küçült"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="Bildirimleri kapat"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="Katılımcı menüsünü sessize alın."; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hans-CN.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hans-CN.lproj/Localizable.strings index 8442fc7ba..f09bf1a6b 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hans-CN.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hans-CN.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "更多"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "共享诊断信息"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="移除"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="报告问题"; "AzureCommunicationUICalling.SendFeedback.Text"="发送"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="字幕"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="字幕和实时文本"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="口语"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="辅助字幕语言"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="正在启动字幕..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="打开辅助字幕"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="关闭辅助字幕"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="无法启动字幕"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="无法停止字幕"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="无法更改标题语言"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="无法更改口语"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="实时文本"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="是否启用实时文本?"; "AzureCommunicationUICalling.RTT.Alert.Message"="将为通话中的每个人启用实时文本(RTT)。"; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="启用"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="关闭"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="为此通话启用 RTT"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="在此会议的整个持续时间内启用了实时文本(RTT),并且所有参与者都可以看到该文本。"; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="了解详细信息"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="实时文本键入"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="实时文本"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="实时键入消息"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "最大化字幕和 RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "最小化字幕和 RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="静音"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="将参与者菜单静音。"; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hant-TW.lproj/Localizable.strings b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hant-TW.lproj/Localizable.strings index 7a997e4ca..a6d0ab455 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hant-TW.lproj/Localizable.strings +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Localization/zh-Hant-TW.lproj/Localizable.strings @@ -102,6 +102,8 @@ "AzureCommunicationUICalling.CallingView.Button.More.AccessibilityLabel" = "其他"; "AzureCommunicationUICalling.CallingView.MoreCallOptionsList.ShareDiagnosticsInfo" = "分享診斷資訊"; "AzureCommunicationUICalling.CallingView.GridView.Calling"="Calling..."; +/* Action button label to remove a participant from a call. */ +"AzureCommunicationUICalling.CallingView.ParticipantRemove"="移除"; /* ComplianceBanner title */ @@ -168,27 +170,40 @@ "AzureCommunicationUICalling.ReportAProblem.Text"="回報問題"; "AzureCommunicationUICalling.SendFeedback.Text"="傳送"; +/* Label for a button to enable live captions during a call. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptions"="輔助字幕"; +/* Title label indicating both Live Captions and Real-Time Text (RTT) features are available. */ "AzureCommunicationUICalling.Captions.Text.LiveCaptionsAndRTT"="輔助字幕與 RTT"; "AzureCommunicationUICalling.Captions.Text.SpokenLanguage"="口語語言"; "AzureCommunicationUICalling.Captions.Text.CaptionLanguage"="輔助字幕語言"; "AzureCommunicationUICalling.Captions.Text.StartingCaptions"="正在啟動輔助字幕..."; +"AzureCommunicationUICalling.Captions.Text.TurnOnCaptions" ="開啟輔助字幕"; +"AzureCommunicationUICalling.Captions.Text.TurnOffCaptions" ="關閉輔助字幕"; "AzureCommunicationUICalling.Captions.ActionError.StartCaptions"="無法啟動輔助字幕"; "AzureCommunicationUICalling.Captions.ActionError.StopCaptions"="無法停止輔助字幕"; "AzureCommunicationUICalling.Captions.ActionError.ChangeCaptionsLanguage"="無法變更輔助字幕語言"; "AzureCommunicationUICalling.Captions.ActionError.ChangeSpokenLanguage"="無法變更口說語言"; +/* Full label or title for the RTT (Real-Time Text) feature. */ "AzureCommunicationUICalling.RTT.Title.RTT"="即時文字"; +/* Prompt title asking the user to confirm enabling Real-Time Text (RTT) for a call. */ "AzureCommunicationUICalling.RTT.Alert.Title"="開啟 RTT?"; "AzureCommunicationUICalling.RTT.Alert.Message"="將為通話中的所有人開啟即時文字(RTT)。"; +/* Confirmation button label to enable Real-Time Text (RTT) in a dialog. */ "AzureCommunicationUICalling.RTT.Alert.TurnOn"="開啟"; "AzureCommunicationUICalling.RTT.Alert.Dismiss"="關閉"; "AzureCommunicationUICalling.RTT.TurnOn.Text"="開啟此通話的即時輸入"; "AzureCommunicationUICalling.RTT.WarningMessage.Text"="此會議的整個期間已啟用即時文字(RTT),所有參與者皆可看到。"; +/* Link label directing the user to more information about Real-Time Text (RTT). */ "AzureCommunicationUICalling.RTT.WarningMessage.LearnMore"="深入了解"; +/* Indicator shown while the other user is typing using Real-Time Text. */ "AzureCommunicationUICalling.RTT.Text.RTTTyping"="RTT 輸入"; +/* Short label representing Real-Time Text feature. */ "AzureCommunicationUICalling.RTT.RTTLable"="即時輸入"; +/* Placeholder text shown in the RTT input box to guide the user to type in real-time. */ "AzureCommunicationUICalling.RTT.TextBox.Hint"="即時輸入訊息"; +"AzureCommunicationUICalling.RTT.Maximize.CaptionsRTT"= "最大化輔助字幕與 RTT"; +"AzureCommunicationUICalling.RTT.Minimize.CaptionsRTT"= "最小化輔助字幕與 RTT"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute"="靜音"; "AzureCommunicationUICalling.CallingView.ParticipantMenu.Mute.AccessibilityLabel"="將參與者靜音功能表。"; diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactory.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactory.swift index 7eda38a0a..1dbdc2a05 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactory.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactory.swift @@ -326,8 +326,8 @@ extension CompositeViewModelFactory { localUserState: LocalUserState, callScreenInfoHeaderState: CallScreenInfoHeaderState, buttonViewDataState: ButtonViewDataState, - controlHeaderViewData: CallScreenHeaderViewData? - ) -> InfoHeaderViewModel { + controlHeaderViewData: CallScreenHeaderViewData?, + callStartTimer: Date?) -> InfoHeaderViewModel { InfoHeaderViewModel(compositeViewModelFactory: self, logger: logger, localUserState: localUserState, @@ -338,7 +338,8 @@ extension CompositeViewModelFactory { enableSystemPipWhenMultitasking: enableSystemPipWhenMultitasking, callScreenInfoHeaderState: callScreenInfoHeaderState, buttonViewDataState: buttonViewDataState, - controlHeaderViewData: controlHeaderViewData + controlHeaderViewData: controlHeaderViewData, + callStartTime: callStartTimer ) } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactoryProtocols.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactoryProtocols.swift index 61d030097..7b81a818c 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactoryProtocols.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Factories/CompositeViewModelFactoryProtocols.swift @@ -61,7 +61,8 @@ protocol CompositeViewModelFactoryProtocol { localUserState: LocalUserState, callScreenInfoHeaderState: CallScreenInfoHeaderState, buttonViewDataState: ButtonViewDataState, - controlHeaderViewData: CallScreenHeaderViewData? + controlHeaderViewData: CallScreenHeaderViewData?, + callStartTimer: Date? ) -> InfoHeaderViewModel func makeLobbyWaitingHeaderViewModel(localUserState: LocalUserState, dispatchAction: @escaping ActionDispatch) -> LobbyWaitingHeaderViewModel diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Manager/UpdatableOptionsManager.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Manager/UpdatableOptionsManager.swift index 6ad879fad..7d2a48f63 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Manager/UpdatableOptionsManager.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/Manager/UpdatableOptionsManager.swift @@ -38,6 +38,12 @@ class UpdatableOptionsManager: UpdatableOptionsManagerProtocol { self?.store.dispatch(action: .callScreenInfoHeaderAction(.updateSubtitle(subtitle: newSubtitle))) } .store(in: &subscriptions) + callScreenOptions?.headerViewData?.$showCallDuration + .sink { [weak self] showCallDuration in + self?.store.dispatch(action: .callScreenInfoHeaderAction( + .updateShowCallDuration(showCallDuration: showCallDuration)) + ) + } setupScreenOptions?.audioDeviceButton?.$visible .sink { [weak self] visible in diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderView.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderView.swift index a1691f8f6..80f7c12c2 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderView.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderView.swift @@ -21,6 +21,7 @@ struct InfoHeaderView: View { private enum Constants { static let shapeCornerRadius: CGFloat = 5 static let infoLabelHorizontalPadding: CGFloat = 16.0 + static let hStackHorizontalPadding: CGFloat = 20.0 static let hStackBottomPadding: CGFloat = 10.0 static let hSpace: CGFloat = 4 @@ -86,7 +87,7 @@ struct InfoHeaderView: View { .minimumScaleFactor(sizeCategory.isAccessibilityCategory ? Constants.accessibilityFontScale : Constants.defaultFontScale) - if !viewModel.subtitle!.isEmpty { + if viewModel.subtitle != nil && !viewModel.subtitle!.isEmpty { Text(viewModel.subtitle!.trimmingCharacters(in: .whitespacesAndNewlines)) .alignmentGuide(.leading) { d in d[.leading] } .foregroundColor(Constants.foregroundColor) @@ -99,6 +100,7 @@ struct InfoHeaderView: View { Constants.accessibilityFontScale : Constants.defaultFontScale) } + } Spacer() if let customButton1ViewModel = viewModel.customButton1ViewModel { diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderViewModel.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderViewModel.swift index 2bb947632..2f590a856 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderViewModel.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewComponent/InfoHeaderViewModel.swift @@ -16,6 +16,7 @@ class InfoHeaderViewModel: ObservableObject { @Published var subtitle: String? = "" @Published var customButton1ViewModel: IconButtonViewModel? @Published var customButton2ViewModel: IconButtonViewModel? + @Published var showCallDuration = false private let compositeViewModelFactory: CompositeViewModelFactoryProtocol private let logger: Logger private let dispatch: ActionDispatch @@ -29,6 +30,7 @@ class InfoHeaderViewModel: ObservableObject { var dismissButtonViewModel: IconButtonViewModel! private var cancellables = Set() private let controlHeaderViewData: CallScreenHeaderViewData? + private var callDurationTimer: Timer? var isPad = false @@ -42,7 +44,8 @@ class InfoHeaderViewModel: ObservableObject { enableSystemPipWhenMultitasking: Bool, callScreenInfoHeaderState: CallScreenInfoHeaderState, buttonViewDataState: ButtonViewDataState, - controlHeaderViewData: CallScreenHeaderViewData? + controlHeaderViewData: CallScreenHeaderViewData?, + callStartTime: Date? = nil ) { self.compositeViewModelFactory = compositeViewModelFactory self.controlHeaderViewData = controlHeaderViewData @@ -51,6 +54,7 @@ class InfoHeaderViewModel: ObservableObject { self.subtitle = callScreenInfoHeaderState.subtitle ?? "" self.accessibilityLabelTitle = callScreenInfoHeaderState.title ?? infoLabel self.accessibilityLabelSubtitle = callScreenInfoHeaderState.subtitle ?? "" + self.showCallDuration = callScreenInfoHeaderState.showCallDuration ?? false self.dispatch = dispatchAction self.logger = logger self.accessibilityProvider = accessibilityProvider @@ -66,7 +70,6 @@ class InfoHeaderViewModel: ObservableObject { } self.showParticipantListButtonTapped() } - self.participantListButtonViewModel.accessibilityLabel = self.localizationProvider.getLocalizedString( .participantListAccessibilityLabel) @@ -81,6 +84,9 @@ class InfoHeaderViewModel: ObservableObject { } dismissButtonViewModel.update( accessibilityLabel: self.localizationProvider.getLocalizedString(.dismissAccessibilityLabel)) + if self.showCallDuration { + self.subtitle = "00:00" + } self.accessibilityProvider.subscribeToVoiceOverStatusDidChangeNotification(self) self.accessibilityProvider.subscribeToUIFocusDidUpdateNotification(self) @@ -103,16 +109,13 @@ class InfoHeaderViewModel: ObservableObject { } return formatter.string(from: interval) ?? "00:00:00" } - func showParticipantListButtonTapped() { logger.debug("Show participant list button tapped") self.displayParticipantsList() } - func displayParticipantsList() { dispatch(.showParticipants) } - func toggleDisplayInfoHeaderIfNeeded() { guard !isVoiceOverEnabled else { return @@ -123,17 +126,18 @@ class InfoHeaderViewModel: ObservableObject { displayWithTimer() } } - func update(localUserState: LocalUserState, remoteParticipantsState: RemoteParticipantsState, callingState: CallingState, visibilityState: VisibilityState, callScreenInfoHeaderState: CallScreenInfoHeaderState, - buttonViewDataState: ButtonViewDataState + buttonViewDataState: ButtonViewDataState, + callStartTime: Date? = nil ) { isHoldingCall(callingState: callingState) let shouldDisplayInfoHeaderValue = shouldDisplayInfoHeader(for: callingStatus) let newDisplayInfoHeaderValue = shouldDisplayInfoHeader(for: callingState.status) + self.showCallDuration = callScreenInfoHeaderState.showCallDuration ?? false callingStatus = callingState.status if isVoiceOverEnabled && newDisplayInfoHeaderValue != shouldDisplayInfoHeaderValue { updateInfoHeaderAvailability() @@ -160,6 +164,15 @@ class InfoHeaderViewModel: ObservableObject { self.subtitle = callScreenInfoHeaderState.subtitle self.accessibilityLabelSubtitle = self.subtitle ?? "" } + self.showCallDuration = callScreenInfoHeaderState.showCallDuration ?? false + if self.showCallDuration { + if callStartTime != nil { + startTimer(callStartDate: callStartTime!) + } + } else { + stopTimer() + self.subtitle = nil + } updateCustomButtons(buttonViewDataState) } @@ -175,7 +188,6 @@ class InfoHeaderViewModel: ObservableObject { return remoteParticipantsState.totalParticipantCount - filteredOutRemoteParticipantsCount } - private func isHoldingCall(callingState: CallingState) { guard callingState.status == .localHold, callingStatus != callingState.status else { @@ -185,7 +197,6 @@ class InfoHeaderViewModel: ObservableObject { isInfoHeaderDisplayed = false } } - private func updateInfoLabel() { let content: String switch participantsCount { @@ -199,15 +210,12 @@ class InfoHeaderViewModel: ObservableObject { title = content accessibilityLabelTitle = content } - private func displayWithTimer() { self.isInfoHeaderDisplayed = true } - @objc private func hideInfoHeader() { self.isInfoHeaderDisplayed = false } - private func updateInfoHeaderAvailability() { let shouldDisplayInfoHeader = shouldDisplayInfoHeader(for: callingStatus) isVoiceOverEnabled = accessibilityProvider.isVoiceOverEnabled @@ -217,11 +225,9 @@ class InfoHeaderViewModel: ObservableObject { displayWithTimer() } } - private func shouldDisplayInfoHeader(for callingStatus: CallingStatus) -> Bool { return callingStatus != .inLobby && callingStatus != .localHold } - private func dismissButtonTapped() { if self.enableSystemPipWhenMultitasking { dispatch(.visibilityAction(.pipModeRequested)) @@ -271,4 +277,30 @@ extension InfoHeaderViewModel: AccessibilityProviderNotificationsObserver { updateInfoHeaderAvailability() } + func startTimer(callStartDate: Date) { + if callDurationTimer != nil { + return + } + callDurationTimer = Timer.scheduledTimer(withTimeInterval: 1.0, repeats: true) { [weak self] _ in + guard let self = self else { + return + } + let currentTime = Date() + let elapsedTimeMillis = currentTime.timeIntervalSince(callStartDate) + let hours = Int(elapsedTimeMillis / 3600) + let minutes = Int((elapsedTimeMillis.truncatingRemainder(dividingBy: 3600)) / 60) + let seconds = Int(elapsedTimeMillis.truncatingRemainder(dividingBy: 60)) + let formattedTime: String + if hours > 0 { + formattedTime = String(format: "%02d:%02d:%02d", hours, minutes, seconds) + } else { + formattedTime = String(format: "%02d:%02d", minutes, seconds) + } + self.subtitle = formattedTime + } + } + func stopTimer() { + callDurationTimer?.invalidate() + callDurationTimer = nil + } } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewModel.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewModel.swift index 5cb34bc11..7b6b7798e 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewModel.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/Calling/CallingViewModel.swift @@ -105,7 +105,8 @@ internal class CallingViewModel: ObservableObject { localUserState: store.state.localUserState, callScreenInfoHeaderState: store.state.callScreenInfoHeaderState, buttonViewDataState: store.state.buttonViewDataState, - controlHeaderViewData: callScreenOptions.headerViewData + controlHeaderViewData: callScreenOptions.headerViewData, + callStartTimer: store.state.callingState.callStartTime ) lobbyWaitingHeaderViewModel = compositeViewModelFactory .makeLobbyWaitingHeaderViewModel(localUserState: store.state.localUserState, diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/ViewComponents/ParticipantActions/ParticipantMenuViewModel.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/ViewComponents/ParticipantActions/ParticipantMenuViewModel.swift index 73c1dbdc6..a5d4cf2f6 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/ViewComponents/ParticipantActions/ParticipantMenuViewModel.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Presentation/SwiftUI/ViewComponents/ParticipantActions/ParticipantMenuViewModel.swift @@ -32,8 +32,8 @@ internal class ParticipantMenuViewModel: ObservableObject { self.isDisplayed = false self.onRemoveUser = onRemoveUser - items = [DrawerGenericItemViewModel(title: "Remove", - accessibilityIdentifier: "Remove", + items = [DrawerGenericItemViewModel(title: localizationProvider.getLocalizedString(.participantRemove), + accessibilityIdentifier: "", action: rowTapped, startCompositeIcon: .personDelete, isEnabled: canRemove)] @@ -53,8 +53,8 @@ internal class ParticipantMenuViewModel: ObservableObject { capability: ParticipantCapabilityType.removeParticipant) self.isDisplayed = isDisplayed - items = [DrawerGenericItemViewModel(title: "Remove", - accessibilityIdentifier: "Remove", + items = [DrawerGenericItemViewModel(title: localizationProvider.getLocalizedString(.participantRemove), + accessibilityIdentifier: "", action: rowTapped, startCompositeIcon: .personDelete, isEnabled: canRemove)] diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallScreenInfoHeaderAction.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallScreenInfoHeaderAction.swift index 833a2dc6d..ab546faf1 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallScreenInfoHeaderAction.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallScreenInfoHeaderAction.swift @@ -8,4 +8,5 @@ import Foundation enum CallScreenInfoHeaderAction: Equatable { case updateTitle(title: String?) case updateSubtitle(subtitle: String?) + case updateShowCallDuration(showCallDuration: Bool?) } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallingAction.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallingAction.swift index 72a21fb7d..21df84018 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallingAction.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Action/CallingAction.swift @@ -27,9 +27,9 @@ enum CallingAction: Equatable { case resumeRequested case holdRequested case requestFailed - /* + /* */ case callStartTimeUpdated(startTime: Date) - */ + /* */ } enum ErrorAction: Equatable { diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Middleware/CallingMiddlewareHandler.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Middleware/CallingMiddlewareHandler.swift index f7ad11ec8..dcd71b41b 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Middleware/CallingMiddlewareHandler.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Middleware/CallingMiddlewareHandler.swift @@ -812,13 +812,13 @@ extension CallingMiddlewareHandler { .sink { participantCount in dispatch(.remoteParticipantsAction(.setTotalParticipantCount(participantCount: participantCount))) }.store(in: subscription) - /* + /* */ callingService.callStartTimeSubject .removeDuplicates() .sink { startTime in dispatch(.callingAction(.callStartTimeUpdated(startTime: startTime))) }.store(in: subscription) - */ + /* */ subscribeOnDiagnostics(dispatch: dispatch) subscribeCapabilitiesUpdate(dispatch: dispatch) } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallScreenInfoHeaderReducer.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallScreenInfoHeaderReducer.swift index fcb4ac28e..51d782b8b 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallScreenInfoHeaderReducer.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallScreenInfoHeaderReducer.swift @@ -16,6 +16,10 @@ extension Reducer where State == CallScreenInfoHeaderState, case .updateSubtitle(let subtitle): newState = CallScreenInfoHeaderState(title: currentState.title, subtitle: subtitle) + case .updateShowCallDuration(let showCallDuration): + newState = CallScreenInfoHeaderState(title: currentState.title, + subtitle: currentState.subtitle, + showCallDuration: showCallDuration) } return newState } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallingReducer.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallingReducer.swift index 5b084bd9f..518050cf3 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallingReducer.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/CallingReducer.swift @@ -21,9 +21,9 @@ extension Reducer where State == CallingState, var callStartDate = callingState.callStartDate var callEndReasonCode: Int? var callEndReasonSubCode: Int? - /* + /* */ var callStartTime: Date? - */ + /* */ switch action { case .callingAction(.stateUpdated(let status, let code, let subCode)): @@ -57,10 +57,10 @@ extension Reducer where State == CallingState, transcriptionStatus = status case .callingAction(.dismissRecordingTranscriptionBannedUpdated(let isDismissed)): isRecorcingTranscriptionBannedDismissed = isDismissed - /* + /* */ case .callingAction(.callStartTimeUpdated(let startTime)): callStartTime = startTime - */ + /* */ // Exhaustive un-implemented actions case .audioSessionAction, .callingAction(.setupCall), @@ -105,10 +105,10 @@ extension Reducer where State == CallingState, recordingStatus: recordingStatus, transcriptionStatus: transcriptionStatus, isRecorcingTranscriptionBannedDismissed: isRecorcingTranscriptionBannedDismissed - /* + /* */ , callStartTime: callStartTime - */ + /* */ ) } } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/ErrorReducer.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/ErrorReducer.swift index f2f1f6eb6..e3b2b4393 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/ErrorReducer.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/ErrorReducer.swift @@ -46,9 +46,9 @@ extension Reducer where State == ErrorState, .callingAction(.recordingUpdated), .callingAction(.transcriptionUpdated), .callingAction(.dismissRecordingTranscriptionBannedUpdated), - /* + /* */ .callingAction(.callStartTimeUpdated), - */ + /* */ .lifecycleAction, .localUserAction, .permissionAction, diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/NavigationReducer.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/NavigationReducer.swift index ac0c6dc14..1a33b23bf 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/NavigationReducer.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/Reducer/NavigationReducer.swift @@ -68,9 +68,9 @@ extension Reducer where State == NavigationState, .callingAction(.recordingUpdated), .callingAction(.transcriptionUpdated), .callingAction(.dismissRecordingTranscriptionBannedUpdated), - /* + /* */ .callingAction(.callStartTimeUpdated), - */ + /* */ .captionsAction, .rttAction, .lifecycleAction, diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallScreenInfoHeaderState.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallScreenInfoHeaderState.swift index 8bfa50b58..a9f180284 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallScreenInfoHeaderState.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallScreenInfoHeaderState.swift @@ -8,8 +8,10 @@ import Foundation struct CallScreenInfoHeaderState { let title: String? let subtitle: String? - init(title: String? = nil, subtitle: String? = nil) { + let showCallDuration: Bool? + init(title: String? = nil, subtitle: String? = nil, showCallDuration: Bool? = false) { self.title = title self.subtitle = subtitle + self.showCallDuration = showCallDuration } } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallingState.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallingState.swift index d1e7bbf47..65de03329 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallingState.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Redux/State/CallingState.swift @@ -43,9 +43,9 @@ struct CallingState: Equatable { let callStartDate: Date? let callEndReasonCode: Int? let callEndReasonSubCode: Int? - /* + /* */ let callStartTime: Date? - */ + /* */ init(status: CallingStatus = .none, operationStatus: OperationStatus = .none, @@ -72,9 +72,9 @@ struct CallingState: Equatable { self.recordingStatus = recordingStatus self.transcriptionStatus = transcriptionStatus self.isRecorcingTranscriptionBannedDismissed = isRecorcingTranscriptionBannedDismissed - /* + /* */ self.callStartTime = callStartTime - */ + /* */ } static func == (lhs: CallingState, rhs: CallingState) -> Bool { diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKEventsHandler.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKEventsHandler.swift index 1f3532537..b73cabb0f 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKEventsHandler.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKEventsHandler.swift @@ -19,9 +19,9 @@ class CallingSDKEventsHandler: NSObject, CallingSDKEventsHandling { var callIdSubject = PassthroughSubject() var participantRoleSubject = PassthroughSubject() var totalParticipantCountSubject = PassthroughSubject() - /* + /* */ var callStartTimeSubject = PassthroughSubject() - */ + /* */ var capabilitiesChangedSubject = PassthroughSubject() var captionsSupportedSpokenLanguages = CurrentValueSubject<[String], Never>([]) @@ -223,11 +223,11 @@ extension CallingSDKEventsHandler: CallDelegate, } } - /* + /* */ func call(_ call: Call, didUpdateStartTime args: PropertyChangedEventArgs) { callStartTimeSubject.send(call.startTime) } - */ + /* */ func call(_ call: Call, didChangeState args: PropertyChangedEventArgs) { onStateChanged(call: call) diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKWrapper.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKWrapper.swift index fbd199876..1395a372a 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKWrapper.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/AzureCommunicationCalling/CallingSDKWrapper.swift @@ -404,7 +404,7 @@ class CallingSDKWrapper: NSObject, CallingSDKWrapperProtocol { } } - /* + /* */ func callStartTime() -> Date? { guard let call = call else { return nil @@ -416,7 +416,7 @@ class CallingSDKWrapper: NSObject, CallingSDKWrapperProtocol { return call.startTime } - */ + /* */ func admitAllLobbyParticipants() async throws { guard let call = call else { diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingSDKWrapperProtocol.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingSDKWrapperProtocol.swift index 94cff8767..1a8e255be 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingSDKWrapperProtocol.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingSDKWrapperProtocol.swift @@ -80,9 +80,9 @@ protocol CallingSDKWrapperProtocol { func sendRttMessage(_ message: String, isFinal: Bool) async throws func removeParticipant(_ participantId: String) async throws func getCapabilities() async throws -> Set - /* + /* */ func callStartTime() -> Date? - */ + /* */ func getLogFiles() -> [URL] var callingEventsHandler: CallingSDKEventsHandling { get } @@ -106,9 +106,9 @@ protocol CallingSDKEventsHandling { var participantRoleSubject: PassthroughSubject { get } var totalParticipantCountSubject: PassthroughSubject { get } var networkQualityDiagnosticsSubject: PassthroughSubject { get } - /* + /* */ var callStartTimeSubject: PassthroughSubject { get } - */ + /* */ var networkDiagnosticsSubject: PassthroughSubject { get } var mediaDiagnosticsSubject: PassthroughSubject { get } diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingService.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingService.swift index 58142e12d..9c1526735 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingService.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Service/Calling/CallingService.swift @@ -16,9 +16,9 @@ protocol CallingServiceProtocol { var dominantSpeakersSubject: CurrentValueSubject<[String], Never> { get } var participantRoleSubject: PassthroughSubject { get } var totalParticipantCountSubject: PassthroughSubject { get } - /* + /* */ var callStartTimeSubject: PassthroughSubject { get } - */ + /* */ var networkQualityDiagnosticsSubject: PassthroughSubject { get } var networkDiagnosticsSubject: PassthroughSubject { get } @@ -57,9 +57,9 @@ protocol CallingServiceProtocol { func removeParticipant(_ participantId: String) async throws func sendRttMessage(_ message: String, isFinal: Bool) async throws func getCapabilities() async throws -> Set - /* + /* */ func callStartTime() -> Date? - */ + /* */ } class CallingService: NSObject, CallingServiceProtocol { @@ -80,9 +80,9 @@ class CallingService: NSObject, CallingServiceProtocol { var networkDiagnosticsSubject = PassthroughSubject() var mediaDiagnosticsSubject = PassthroughSubject() var capabilitiesChangedSubject: PassthroughSubject - /* + /* */ var callStartTimeSubject: PassthroughSubject - */ + /* */ var supportedSpokenLanguagesSubject: CurrentValueSubject<[String], Never> var supportedCaptionLanguagesSubject: CurrentValueSubject<[String], Never> @@ -115,9 +115,9 @@ class CallingService: NSObject, CallingServiceProtocol { captionsTypeSubject = callingSDKWrapper.callingEventsHandler.captionsTypeChanged capabilitiesChangedSubject = callingSDKWrapper.callingEventsHandler.capabilitiesChangedSubject totalParticipantCountSubject = callingSDKWrapper.callingEventsHandler.totalParticipantCountSubject - /* + /* */ callStartTimeSubject = callingSDKWrapper.callingEventsHandler.callStartTimeSubject - */ + /* */ } func setupCall() async throws { @@ -135,11 +135,11 @@ class CallingService: NSObject, CallingServiceProtocol { try await callingSDKWrapper.endCall() } - /* + /* */ func callStartTime() -> Date? { return callingSDKWrapper.callStartTime() } - */ + /* */ func requestCameraPreviewOn() async throws -> String { return try await callingSDKWrapper.startPreviewVideoStream() diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Utilities/LocalizationKey.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Utilities/LocalizationKey.swift index 0f3e84869..e98682a68 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Utilities/LocalizationKey.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Sources/Utilities/LocalizationKey.swift @@ -58,6 +58,7 @@ enum LocalizationKey: String { case participantListAccessibilityLabel = "AzureCommunicationUICalling.CallingView.InfoHeader.ParticipantList.AccessibilityLabel" case callingCallMessage = "AzureCommunicationUICalling.CallingView.GridView.Calling" + case participantRemove = "AzureCommunicationUICalling.CallingView.ParticipantRemove" /* Lobby waiting */ case lobbyWaitingToJoin = "AzureCommunicationUICalling.CallingView.LobbyWaitingHeader.LobbyWaitingToJoin" diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallCompositeOptions/DiagnosticConfigTests.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallCompositeOptions/DiagnosticConfigTests.swift index c343ec3a1..44f3fa0c6 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallCompositeOptions/DiagnosticConfigTests.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallCompositeOptions/DiagnosticConfigTests.swift @@ -10,7 +10,7 @@ import AzureCommunicationCommon class DiagnosticConfigTests: XCTestCase { - let expectedCompositeTag: String = "aci110/1.14.0" + let expectedCompositeTag: String = "aci110/1.14.1" func test_init_when_init_then_returnExpectedTags() { let sut = makeSUT() guard let tag = sut.tags.first else { diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallingSDKEventsHandlerMocking.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallingSDKEventsHandlerMocking.swift index 90d68887f..d3e13e86a 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallingSDKEventsHandlerMocking.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/CallingSDKEventsHandlerMocking.swift @@ -31,9 +31,9 @@ class CallingSDKEventsHandlerMocking: NSObject, CallingSDKEventsHandling { var capabilitiesChangedSubject = PassthroughSubject() var totalParticipantCountSubject = PassthroughSubject() var rttReceived: PassthroughSubject = PassthroughSubject() - /* + /* */ var callStartTimeSubject = PassthroughSubject() - */ + /* */ override init() { captionsSupportedSpokenLanguages = CurrentValueSubject<[String], Never>([]) diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingSDKWrapperMocking.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingSDKWrapperMocking.swift index 8d9545590..9f0dffdc8 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingSDKWrapperMocking.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingSDKWrapperMocking.swift @@ -25,11 +25,11 @@ class CallingSDKWrapperMocking: CallingSDKWrapperProtocol { func dispose() { } - /* + /* */ func callStartTime() -> Date? { return nil } - */ + /* */ func startCallLocalVideoStream() async throws -> String { return try await Task { diff --git a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingServiceMocking.swift b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingServiceMocking.swift index eb5a16244..5af4d1c18 100644 --- a/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingServiceMocking.swift +++ b/AzureCommunicationUI/sdk/AzureCommunicationUICalling/Tests/Mocking/CallingServiceMocking.swift @@ -38,11 +38,11 @@ class CallingServiceMocking: CallingServiceProtocol { var declineLobbyParticipantCalled = false var remoteParticipantCalled = false - /* + /* */ func callStartTime() -> Date? { return nil } - */ + /* */ private func possibleErrorTask() throws -> Task { Task { @@ -106,9 +106,9 @@ class CallingServiceMocking: CallingServiceProtocol { var participantRoleSubject = PassthroughSubject() var capabilitiesChangedSubject = PassthroughSubject() var totalParticipantCountSubject = PassthroughSubject() - /* + /* */ var callStartTimeSubject = PassthroughSubject() - */ + /* */ func setupCall() async throws { setupCallCalled = true