registry.mx raw

   1  package registry
   2  
   3  // Registry — cross-module hook system via JS global self.$hooks.
   4  // Identity state and hook dispatch for isolated SW domain modules.
   5  
   6  // Identity state — accessible from any module.
   7  func SetSeckey(hex string) { panic("jsbridge") }
   8  func Seckey() string       { panic("jsbridge") }
   9  func SetPubkey(pub string) { panic("jsbridge") }
  10  func Pubkey() string       { panic("jsbridge") }
  11  func SetHasKey(v bool)     { panic("jsbridge") }
  12  func HasKey() bool         { panic("jsbridge") }
  13  
  14  // --- Register extension hooks (called from extension init) ---
  15  
  16  func OnEncryptNip04(fn func(string, string, func(string)))         { panic("jsbridge") }
  17  func OnEncryptNip17(fn func(string, string, func(string, string))) { panic("jsbridge") }
  18  func OnDecryptDM(fn func(string, func(string)))                    { panic("jsbridge") }
  19  func OnMarmotInit(fn func(string))                                 { panic("jsbridge") }
  20  func OnMarmotSend(fn func(string, string))                         { panic("jsbridge") }
  21  func OnMarmotSubscribe(fn func())                                  { panic("jsbridge") }
  22  func OnMarmotPublishKP(fn func(string))                            { panic("jsbridge") }
  23  func OnMarmotListGroups(fn func(string))                           { panic("jsbridge") }
  24  
  25  // --- Register core hooks (called from core init) ---
  26  
  27  func OnSaveDMRecord(fn func(string))         { panic("jsbridge") }
  28  func OnBroadcastToClients(fn func(string))   { panic("jsbridge") }
  29  func OnSendToClient(fn func(string, string)) { panic("jsbridge") }
  30  
  31  // --- Call extension hooks ---
  32  
  33  func EncryptNip04(pubkey, content string, cb func(string))         { panic("jsbridge") }
  34  func EncryptNip17(pubkey, content string, cb func(string, string)) { panic("jsbridge") }
  35  func DecryptDM(evJSON string, cb func(string))                     { panic("jsbridge") }
  36  func MakeDMRecord(peer, from, content string, ts int64, proto, eid string) string {
  37  	panic("jsbridge")
  38  }
  39  func MarmotInit(relayURLsJSON string)      { panic("jsbridge") }
  40  func MarmotSend(recipient, content string) { panic("jsbridge") }
  41  func MarmotSubscribe()                     { panic("jsbridge") }
  42  func MarmotPublishKP(relayURLsJSON string) { panic("jsbridge") }
  43  func MarmotListGroups(clientID string)     { panic("jsbridge") }
  44  
  45  // --- Call core hooks ---
  46  
  47  func SaveDMRecord(dmJSON string)        { panic("jsbridge") }
  48  func BroadcastToClients(msg string)     { panic("jsbridge") }
  49  func SendToClient(clientID, msg string) { panic("jsbridge") }
  50  
  51  // --- Module management ---
  52  
  53  func HasHook(name string) bool          { panic("jsbridge") }
  54  func LoadModule(name string, cb func()) { panic("jsbridge") }
  55