5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-03 05:50:08 +08:00
wails/v3/internal/commands/defaults.go
2023-01-18 21:42:49 +11:00

62 lines
1.2 KiB
Go

package commands
import (
_ "embed"
"os"
)
//go:embed defaults/info.json
var Info []byte
//go:embed defaults/wails.exe.manifest
var Manifest []byte
//go:embed defaults/appicon.png
var AppIcon []byte
//go:embed defaults/icons.ico
var IconsIco []byte
//go:embed defaults/Info.plist
var InfoPlist []byte
//go:embed defaults/Info.dev.plist
var InfoDevPlist []byte
//go:embed defaults/icons.icns
var IconsIcns []byte
var AllAssets = map[string][]byte{
"info.json": Info,
"wails.exe.manifest": Manifest,
"appicon.png": AppIcon,
"icons.ico": IconsIco,
"Info.plist": InfoPlist,
"Info.dev.plist": InfoDevPlist,
"icons.icns": IconsIcns,
}
type DefaultsOptions struct {
Dir string `description:"The directory to generate the files into"`
}
func Defaults(options *DefaultsOptions) error {
dir := options.Dir
if dir == "" {
dir = "."
}
for filename, data := range AllAssets {
// If file exists, skip it
if _, err := os.Stat(dir + "/" + filename); err == nil {
println("Skipping " + filename)
continue
}
err := os.WriteFile(dir+"/"+filename, data, 0644)
if err != nil {
return err
}
println("Generated " + filename)
}
return nil
}