nip47_controller.go raw
1 package controllers
2
3 import (
4 "github.com/getAlby/hub/alby"
5 "github.com/getAlby/hub/apps"
6 "github.com/getAlby/hub/events"
7 "github.com/getAlby/hub/lnclient"
8 "github.com/getAlby/hub/nip47/permissions"
9 "github.com/getAlby/hub/transactions"
10 "gorm.io/gorm"
11 )
12
13 type nip47Controller struct {
14 lnClient lnclient.LNClient
15 db *gorm.DB
16 eventPublisher events.EventPublisher
17 permissionsService permissions.PermissionsService
18 transactionsService transactions.TransactionsService
19 appsService apps.AppsService
20 albyOAuthService alby.AlbyOAuthService
21 }
22
23 func NewNip47Controller(
24 lnClient lnclient.LNClient,
25 db *gorm.DB,
26 eventPublisher events.EventPublisher,
27 permissionsService permissions.PermissionsService,
28 transactionsService transactions.TransactionsService,
29 appsService apps.AppsService,
30 albyOAuthService alby.AlbyOAuthService) *nip47Controller {
31 return &nip47Controller{
32 lnClient: lnClient,
33 db: db,
34 eventPublisher: eventPublisher,
35 permissionsService: permissionsService,
36 transactionsService: transactionsService,
37 appsService: appsService,
38 albyOAuthService: albyOAuthService,
39 }
40 }
41