2024-10-07 09:36:58 +02:00
|
|
|
package handler
|
|
|
|
|
|
|
|
import (
|
|
|
|
"context"
|
|
|
|
|
|
|
|
"github.com/grassrootseconomics/eth-tracker/pkg/event"
|
|
|
|
"github.com/grassrootseconomics/eth-tracker/pkg/router"
|
|
|
|
)
|
|
|
|
|
|
|
|
const contractCreationEventName = "CONTRACT_CREATION"
|
|
|
|
|
|
|
|
func HandleContractCreation() router.ContractCreationHandlerFunc {
|
|
|
|
return func(ctx context.Context, ccp router.ContractCreationPayload, c router.Callback) error {
|
|
|
|
contractCreationEvent := event.Event{
|
|
|
|
Block: ccp.Block,
|
|
|
|
ContractAddress: ccp.ContractAddress,
|
|
|
|
Success: ccp.Success,
|
|
|
|
Timestamp: ccp.Timestamp,
|
|
|
|
TxHash: ccp.TxHash,
|
2024-10-07 11:57:44 +02:00
|
|
|
TxType: contractCreationEventName,
|
2024-10-07 09:36:58 +02:00
|
|
|
Payload: map[string]any{
|
|
|
|
"from": ccp.From,
|
|
|
|
},
|
|
|
|
}
|
|
|
|
|
|
|
|
return c(ctx, contractCreationEvent)
|
|
|
|
}
|
|
|
|
}
|