38 lines
538 B
Go
38 lines
538 B
Go
package app
|
|
|
|
import (
|
|
"lash"
|
|
"lash/internal/errx"
|
|
"lash/internal/handlers"
|
|
"net/http"
|
|
"os"
|
|
)
|
|
|
|
func New() http.Handler {
|
|
mux := http.NewServeMux()
|
|
|
|
fp, err := GetFilePath()
|
|
if err != nil {
|
|
errx.FatalPerror(err)
|
|
}
|
|
|
|
contents, err := os.ReadFile(fp)
|
|
if err != nil {
|
|
errx.FatalPerror(err)
|
|
}
|
|
|
|
share := handlers.ShareData{
|
|
Version: lash.Version,
|
|
}
|
|
|
|
file := handlers.FileData{
|
|
Contents: contents,
|
|
FileName: fp,
|
|
}
|
|
|
|
mux.HandleFunc("/", share.Handler)
|
|
mux.HandleFunc("/api/receive-token", file.APIHandler)
|
|
|
|
return mux
|
|
}
|