Updated on 2026-08-14
This commit is contained in:
parent
ee69ff5fb3
commit
4f88f3a7b0
3 changed files with 36 additions and 3 deletions
|
|
@ -49,12 +49,14 @@ internal class WcAddNetworkModel @Inject constructor(
|
|||
|
||||
private val params = paramsContainer.require<WcTransactionModelParams>()
|
||||
private var useCase by Delegates.notNull<WcAddNetworkUseCase>()
|
||||
private val signatureReceivedAnalyticsSendState = MutableStateFlow(false)
|
||||
|
||||
init {
|
||||
modelScope.launch {
|
||||
useCase = useCaseFactory.createUseCase<WcAddNetworkUseCase>(params.rawRequest)
|
||||
.onLeft { router.push(WcHandleMethodErrorConverter.convert(it)) }
|
||||
.getOrNull() ?: return@launch
|
||||
sendSignatureReceivedAnalytics(useCase)
|
||||
_uiState.emit(
|
||||
wcAddEthereumChainUMConverter.convert(
|
||||
WcAddEthereumChainUMConverter.Input(
|
||||
|
|
@ -114,4 +116,18 @@ internal class WcAddNetworkModel @Inject constructor(
|
|||
private fun copyData(text: String) {
|
||||
clipboardManager.setText(text = text, isSensitive = true)
|
||||
}
|
||||
|
||||
private fun sendSignatureReceivedAnalytics(useCase: WcAddNetworkUseCase) {
|
||||
if (signatureReceivedAnalyticsSendState.value) return
|
||||
|
||||
analytics.send(
|
||||
WcAnalyticEvents.SignatureRequestReceived(
|
||||
rawRequest = useCase.rawSdkRequest,
|
||||
network = useCase.network,
|
||||
emulationStatus = null,
|
||||
),
|
||||
)
|
||||
|
||||
signatureReceivedAnalyticsSendState.value = true
|
||||
}
|
||||
}
|
||||
|
|
@ -59,12 +59,14 @@ internal class WcSignTransactionModel @Inject constructor(
|
|||
val stackNavigation = StackNavigation<WcTransactionRoutes>()
|
||||
|
||||
private var useCase by Delegates.notNull<WcMessageSignUseCase>()
|
||||
private val signatureReceivedAnalyticsSendState = MutableStateFlow(false)
|
||||
|
||||
init {
|
||||
modelScope.launch {
|
||||
useCase = useCaseFactory.createUseCase<WcMessageSignUseCase>(params.rawRequest)
|
||||
.onLeft { router.push(WcHandleMethodErrorConverter.convert(it)) }
|
||||
.getOrNull() ?: return@launch
|
||||
sendSignatureReceivedAnalytics(useCase)
|
||||
useCase.invoke()
|
||||
.onEach { signState ->
|
||||
if (signingIsDone(signState)) return@onEach
|
||||
|
|
@ -145,4 +147,18 @@ internal class WcSignTransactionModel @Inject constructor(
|
|||
private fun copyData(text: String) {
|
||||
clipboardManager.setText(text = text, isSensitive = true)
|
||||
}
|
||||
|
||||
private fun sendSignatureReceivedAnalytics(useCase: WcMessageSignUseCase) {
|
||||
if (signatureReceivedAnalyticsSendState.value) return
|
||||
|
||||
analytics.send(
|
||||
WcAnalyticEvents.SignatureRequestReceived(
|
||||
rawRequest = useCase.rawSdkRequest,
|
||||
network = useCase.network,
|
||||
emulationStatus = null,
|
||||
),
|
||||
)
|
||||
|
||||
signatureReceivedAnalyticsSendState.value = true
|
||||
}
|
||||
}
|
||||
Loading…
Add table
Add a link
Reference in a new issue