mirror of
https://github.com/Novaloop-AG/element-x-ios.git
synced 2026-11-03 16:10:20 +00:00
Send reaction method placeholder (#355)
* Send reaction method placeholder * Removed unnecessary emoji skin parsing * Code review fixes
This commit is contained in:
committed by
GitHub
parent
7db7eec98f
commit
1e197d48de
@@ -22,7 +22,7 @@ struct EmojiPickerScreenCoordinatorParameters {
|
||||
}
|
||||
|
||||
enum EmojiPickerScreenCoordinatorAction {
|
||||
case selectEmoji(emojiId: String, itemId: String)
|
||||
case emojiSelected(emoji: String, itemId: String)
|
||||
}
|
||||
|
||||
final class EmojiPickerScreenCoordinator: CoordinatorProtocol {
|
||||
@@ -42,8 +42,8 @@ final class EmojiPickerScreenCoordinator: CoordinatorProtocol {
|
||||
guard let self else { return }
|
||||
MXLog.debug("EmojiPickerScreenViewModel did complete with result: \(action).")
|
||||
switch action {
|
||||
case let .selectEmoji(emojiId: emojiId):
|
||||
self.callback?(.selectEmoji(emojiId: emojiId, itemId: self.parameters.itemId))
|
||||
case let .emojiSelected(emoji: emoji):
|
||||
self.callback?(.emojiSelected(emoji: emoji, itemId: self.parameters.itemId))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
@@ -17,7 +17,7 @@
|
||||
import Foundation
|
||||
|
||||
enum EmojiPickerScreenViewModelAction {
|
||||
case selectEmoji(emojiId: String)
|
||||
case emojiSelected(emoji: String)
|
||||
}
|
||||
|
||||
struct EmojiPickerScreenViewState: BindableState {
|
||||
@@ -26,7 +26,7 @@ struct EmojiPickerScreenViewState: BindableState {
|
||||
|
||||
enum EmojiPickerScreenViewAction {
|
||||
case search(searchString: String)
|
||||
case emojiSelected(emoji: EmojiPickerEmojiViewData)
|
||||
case emojiTapped(emoji: EmojiPickerEmojiViewData)
|
||||
}
|
||||
|
||||
struct EmojiPickerEmojiCategoryViewData: Identifiable {
|
||||
|
||||
@@ -37,8 +37,8 @@ class EmojiPickerScreenViewModel: EmojiPickerScreenViewModelType, EmojiPickerScr
|
||||
case let .search(searchString: searchString):
|
||||
let categories = await emojiProvider.getCategories(searchString: searchString)
|
||||
state.categories = convert(emojiCategories: categories)
|
||||
case let .emojiSelected(emoji: emoji):
|
||||
callback?(.selectEmoji(emojiId: emoji.id))
|
||||
case let .emojiTapped(emoji: emoji):
|
||||
callback?(.emojiSelected(emoji: emoji.value))
|
||||
}
|
||||
}
|
||||
|
||||
@@ -59,7 +59,7 @@ class EmojiPickerScreenViewModel: EmojiPickerScreenViewModelType, EmojiPickerScr
|
||||
guard let firstSkin = emojiItem.skins.first else {
|
||||
return nil
|
||||
}
|
||||
return EmojiPickerEmojiViewData(id: emojiItem.id, value: firstSkin.value)
|
||||
return EmojiPickerEmojiViewData(id: emojiItem.id, value: firstSkin)
|
||||
}
|
||||
|
||||
return EmojiPickerEmojiCategoryViewData(id: emojiCategory.id, emojis: emojisViewData)
|
||||
|
||||
@@ -36,7 +36,7 @@ struct EmojiPickerScreen: View {
|
||||
Text(emoji.value)
|
||||
.frame(width: 45, height: 45)
|
||||
.onTapGesture {
|
||||
context.send(viewAction: .emojiSelected(emoji: emoji))
|
||||
context.send(viewAction: .emojiTapped(emoji: emoji))
|
||||
}
|
||||
}
|
||||
}
|
||||
|
||||
Reference in New Issue
Block a user