diff --git a/v2/internal/frontend/runtime/ipc.js b/v2/internal/frontend/runtime/ipc.js new file mode 100644 index 000000000..1b62fb029 --- /dev/null +++ b/v2/internal/frontend/runtime/ipc.js @@ -0,0 +1 @@ +(()=>{(function(){let n=function(o){for(var e=window[o.shift()];e&&o.length;)e=e[o.shift()];return e};window.WailsInvoke=n(["chrome","webview","postMessage"])||n(["webkit","messageHandlers","external","postMessage"]),window.WailsInvoke||console.error("Unsupported Platform")})();})(); diff --git a/v2/internal/frontend/runtime/runtime_dev_desktop.go b/v2/internal/frontend/runtime/runtime_dev_desktop.go index 34e536009..0338d5bcc 100644 --- a/v2/internal/frontend/runtime/runtime_dev_desktop.go +++ b/v2/internal/frontend/runtime/runtime_dev_desktop.go @@ -1,5 +1,3 @@ -//go:build dev - package runtime import _ "embed" diff --git a/v2/pkg/commands/build/base.go b/v2/pkg/commands/build/base.go index cff319cd3..0196d6f4c 100644 --- a/v2/pkg/commands/build/base.go +++ b/v2/pkg/commands/build/base.go @@ -4,6 +4,7 @@ import ( "bytes" "fmt" "github.com/leaanthony/gosod" + wailsRuntime "github.com/wailsapp/wails/v2/internal/frontend/runtime" "github.com/wailsapp/wails/v2/internal/frontend/runtime/wrapper" "io/ioutil" "os" @@ -377,7 +378,22 @@ func generateRuntimeWrapper(options *Options) error { wrapperDir := filepath.Join(options.WailsJSDir, "wailsjs", "runtime") _ = os.RemoveAll(wrapperDir) extractor := gosod.New(wrapper.RuntimeWrapper) - return extractor.Extract(wrapperDir, nil) + err := extractor.Extract(wrapperDir, nil) + if err != nil { + return err + } + + //ipcdev.js + err = os.WriteFile(filepath.Join(wrapperDir, "ipcdev.js"), wailsRuntime.DesktopIPC, 0755) + if err != nil { + return err + } + //runtimedev.js + err = os.WriteFile(filepath.Join(wrapperDir, "runtimedev.js"), wailsRuntime.RuntimeDesktopJS, 0755) + if err != nil { + return err + } + return nil } // NpmInstall runs "npm install" in the given directory