Files
sonr/internal/vfs/embed.go
T

65 lines
1.4 KiB
Go
Raw Normal View History

2024-09-07 18:12:58 -04:00
package vfs
import (
_ "embed"
2024-09-18 02:22:17 -04:00
"encoding/json"
2024-09-07 18:12:58 -04:00
"github.com/ipfs/boxo/files"
2024-09-18 02:22:17 -04:00
"github.com/onsonr/sonr/config/dwn"
2024-09-07 18:12:58 -04:00
)
2024-09-18 02:22:17 -04:00
//go:embed app.wasm
2024-09-07 18:12:58 -04:00
var dwnWasmData []byte
2024-09-18 02:22:17 -04:00
//go:embed index.html
var indexData []byte
2024-09-11 15:10:54 -04:00
//go:embed sw.js
var swJSData []byte
2024-09-18 02:22:17 -04:00
// NewDWNConfigFile uses the config template to generate the dwn config file
func NewDWNConfigFile(keyshareJSON string, adddress string) (files.Node, error) {
dwnCfg := &dwn.Config{
Keyshare: &keyshareJSON,
Address: &adddress,
Ipfs: defaultIPFSConfig(),
Sonr: defaultSonrConfig(),
}
dwnConfigData, err := json.Marshal(dwnCfg)
if err != nil {
return nil, err
}
return files.NewBytesFile(dwnConfigData), nil
}
// Use DWNWasm template to generate the dwn wasm file
2024-09-07 18:12:58 -04:00
func DWNWasmFile() files.Node {
return files.NewBytesFile(dwnWasmData)
}
2024-09-18 02:22:17 -04:00
// Use IndexHTML template to generate the index file
func IndexFile() files.Node {
return files.NewBytesFile(indexData)
}
2024-09-11 15:10:54 -04:00
// Use ServiceWorkerJS template to generate the service worker file
2024-09-07 18:12:58 -04:00
func SWJSFile() files.Node {
return files.NewBytesFile(swJSData)
}
2024-09-18 02:22:17 -04:00
func defaultIPFSConfig() *dwn.IPFS {
return &dwn.IPFS{
ApiUrl: "https://api.sonr-ipfs.land",
GatewayUrl: "https://ipfs.sonr.land",
}
}
func defaultSonrConfig() *dwn.Sonr {
return &dwn.Sonr{
ApiUrl: "https://api.sonr.land",
GrpcUrl: "https://grpc.sonr.land",
RpcUrl: "https://rpc.sonr.land",
WebSocketUrl: "wss://rpc.sonr.land/ws",
}
}