5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-17 17:39:29 +08:00
wails/v2/internal/ffenestri/windows/wv2runtime/wv2runtime.go
2021-12-26 19:24:59 +11:00

38 lines
823 B
Go

package wv2runtime
import (
"github.com/leaanthony/go-webview2/webviewloader"
)
const MinimumRuntimeVersion string = "91.0.992.28"
type installationStatus int
const (
needsInstalling installationStatus = iota
needsUpdating
installed
)
func Process() (string, error) {
installStatus := needsInstalling
installedVersion, err := webviewloader.GetInstalledVersion()
if err != nil {
return "", err
}
if installedVersion != "" {
installStatus = installed
compareResult, err := webviewloader.CompareBrowserVersions(installedVersion, MinimumRuntimeVersion)
if err != nil {
return "", err
}
updateRequired := compareResult == -1
// Installed and does not require updating
if !updateRequired {
return installedVersion, nil
}
}
return installedVersion, doInstallationStrategy(installStatus)
}