2024-10-10 13:44:17 -04:00
|
|
|
package dwn
|
|
|
|
|
|
|
|
|
|
import (
|
|
|
|
|
_ "embed"
|
|
|
|
|
|
|
|
|
|
"github.com/ipfs/boxo/files"
|
|
|
|
|
"github.com/onsonr/sonr/internal/dwn/gen"
|
2024-10-11 16:47:52 -04:00
|
|
|
"github.com/onsonr/sonr/pkg/nebula/components/index"
|
2024-10-10 13:44:17 -04:00
|
|
|
)
|
|
|
|
|
|
|
|
|
|
//go:embed app.wasm
|
|
|
|
|
var dwnWasmData []byte
|
|
|
|
|
|
|
|
|
|
//go:embed sw.js
|
|
|
|
|
var swJSData []byte
|
|
|
|
|
|
|
|
|
|
var (
|
|
|
|
|
dwnWasmFile = files.NewBytesFile(dwnWasmData)
|
|
|
|
|
swJSFile = files.NewBytesFile(swJSData)
|
|
|
|
|
)
|
|
|
|
|
|
|
|
|
|
// NewVaultDirectory creates a new directory with the default files
|
|
|
|
|
func NewVaultDirectory(cnfg *gen.Config) (files.Node, error) {
|
|
|
|
|
idxFile, err := index.BuildFile(cnfg)
|
|
|
|
|
if err != nil {
|
|
|
|
|
return nil, err
|
|
|
|
|
}
|
|
|
|
|
fileMap := map[string]files.Node{
|
|
|
|
|
"sw.js": swJSFile,
|
|
|
|
|
"app.wasm": dwnWasmFile,
|
|
|
|
|
"index.html": idxFile,
|
|
|
|
|
}
|
|
|
|
|
return files.NewMapDirectory(fileMap), nil
|
|
|
|
|
}
|