5
0
mirror of https://github.com/wailsapp/wails.git synced 2025-05-02 15:30:37 +08:00
wails/v3/internal/runtime/runtime_production_desktop_linux.js
Lea Anthony c415c1b321
Added Wails ML experiment
added Window.Close to js runtime
2023-02-15 20:58:57 +11:00

2 lines
5.1 KiB
JavaScript

(()=>{var Y=Object.defineProperty;var f=(e,t)=>{for(var n in t)Y(e,n,{get:t[n],enumerable:!0})};var w={};f(w,{SetText:()=>J,Text:()=>_});var q=window.location.origin+"/wails/runtime";function v(e,t){let n=new URL(q);return n.searchParams.append("method",e),t&&n.searchParams.append("args",JSON.stringify(t)),new Promise((i,o)=>{fetch(n).then(r=>{if(r.ok)return r.headers.get("Content-Type")&&r.headers.get("Content-Type").indexOf("application/json")!==-1?r.json():r.text();o(Error(r.statusText))}).then(r=>i(r)).catch(r=>o(r))})}function l(e,t){return!t||t===-1?function(n,i){return v(e+"."+n,i)}:function(n,i){return i=i||{},i.windowID=t,v(e+"."+n,i)}}var b=l("clipboard");function J(e){return b("SetText",{text:e})}function _(){return b("Text")}var g={};f(g,{Hide:()=>X,Quit:()=>K,Show:()=>j});var x=l("application");function X(){return x("Hide")}function j(){return x("Show")}function K(){return x("Quit")}var h={};f(h,{Log:()=>Z});var V=l("log");function Z(e){return V("Log",e)}var S={};f(S,{GetAll:()=>$,GetCurrent:()=>te,GetPrimary:()=>ee});var C=l("screens");function $(){return C("GetAll")}function ee(){return C("GetPrimary")}function te(){return C("GetCurrent")}function E(e){let t=l("window",e);return{Center:()=>t("Center"),SetTitle:n=>t("SetTitle",{title:n}),Fullscreen:()=>t("Fullscreen"),UnFullscreen:()=>t("UnFullscreen"),SetSize:(n,i)=>t("SetSize",{width:n,height:i}),Size:()=>t("Size"),SetMaxSize:(n,i)=>t("SetMaxSize",{width:n,height:i}),SetMinSize:(n,i)=>t("SetMinSize",{width:n,height:i}),SetAlwaysOnTop:n=>t("SetAlwaysOnTop",{alwaysOnTop:n}),SetPosition:(n,i)=>t("SetPosition",{x:n,y:i}),Position:()=>t("Position"),Screen:()=>t("Screen"),Hide:()=>t("Hide"),Maximise:()=>t("Maximise"),Show:()=>t("Show"),Close:()=>t("Close"),ToggleMaximise:()=>t("ToggleMaximise"),UnMaximise:()=>t("UnMaximise"),Minimise:()=>t("Minimise"),UnMinimise:()=>t("UnMinimise"),SetBackgroundColour:(n,i,o,r)=>t("SetBackgroundColour",{r:n,g:i,b:o,a:r})}}var ne=l("events"),M=class{constructor(t,n,i){this.eventName=t,this.maxCallbacks=i||-1,this.Callback=o=>(n(o),this.maxCallbacks===-1?!1:(this.maxCallbacks-=1,this.maxCallbacks===0))}};var a=new Map;function m(e,t,n){let i=a.get(e)||[],o=new M(e,t,n);return i.push(o),a.set(e,i),()=>ie(o)}function L(e,t){return m(e,t,-1)}function O(e,t){return m(e,t,1)}function ie(e){let t=e.eventName,n=a.get(t).filter(i=>i!==e);n.length===0?a.delete(t):a.set(t,n)}function k(e){console.log("dispatching event: ",{event:e});let t=a.get(e.name);if(t){let n=[];t.forEach(i=>{i.Callback(e)&&n.push(i)}),n.length>0&&(t=t.filter(i=>!n.includes(i)),t.length===0?a.delete(e.name):a.set(e.name,t))}}function T(e,...t){[e,...t].forEach(i=>{a.delete(i)})}function A(){a.clear()}function d(e){return ne("Emit",e)}var oe="useandom-26T198340PX75pxJACKVERYMINDBUSHWOLF_GQZbfghjklqvwyzrict";var R=(e=21)=>{let t="",n=e;for(;n--;)t+=oe[Math.random()*64|0];return t};var re=l("dialog"),u=new Map;function le(){let e;do e=R();while(u.has(e));return e}function W(e,t,n){let i=u.get(e);i&&(n?i.resolve(JSON.parse(t)):i.resolve(t),u.delete(e))}function y(e,t){let n=u.get(e);n&&(n.reject(t),u.delete(e))}function c(e,t){return new Promise((n,i)=>{let o=le();t=t||{},t["dialog-id"]=o,u.set(o,{resolve:n,reject:i}),re(e,t).catch(r=>{i(r),u.delete(o)})})}function F(e){return c("Info",e)}function P(e){return c("Warning",e)}function D(e){return c("Error",e)}function s(e){return c("Question",e)}function U(e){return c("OpenFile",e)}function z(e){return c("SaveFile",e)}var ae=l("contextmenu");function ue(e,t,n,i){return ae("OpenContextMenu",{id:e,x:t,y:n,data:i})}function I(e){e?window.addEventListener("contextmenu",G):window.removeEventListener("contextmenu",G)}function G(e){N(e.target,e)}function N(e,t){let n=e.getAttribute("data-contextmenu");if(n)t.preventDefault(),ue(n,t.clientX,t.clientY,e.getAttribute("data-contextmenu-data"));else{let i=e.parentElement;i&&N(i,t)}}function Q(e){let t=d({name:e})}function ce(){let e=document.querySelectorAll("[data-wml-event]");for(let t=0;t<e.length;t++){let n=e[t],i=n.getAttribute("data-wml-event"),o=n.getAttribute("data-wml-confirm"),r=function(){if(o){s({Title:"Confirm",Message:o,Buttons:[{Label:"Yes"},{Label:"No",IsDefault:!0}]}).then(function(p){p!=="No"&&Q(i)});return}Q(i)};n.removeEventListener("click",r),n.addEventListener("click",r)}}function B(e){wails.Window[e]===void 0&&console.log("Window method "+e+" not found"),wails.Window[e]()}function se(){let e=document.querySelectorAll("[data-wml-window]");for(let t=0;t<e.length;t++){let n=e[t],i=n.getAttribute("data-wml-window"),o=n.getAttribute("data-wml-confirm"),r=function(){if(o){s({Title:"Confirm",Message:o,Buttons:[{Label:"Yes"},{Label:"No",IsDefault:!0}]}).then(function(p){p!=="No"&&B(i)});return}B(i)};n.removeEventListener("click",r),n.addEventListener("click",r)}}function H(){ce(),se()}window.wails={...fe(-1)};window._wails={dialogCallback:W,dialogErrorCallback:y,dispatchCustomEvent:k};function fe(e){return{Clipboard:{...w},Application:{...g},Log:h,Screens:S,Dialog:{Info:F,Warning:P,Error:D,Question:s,OpenFile:U,SaveFile:z},Events:{Emit:d,On:L,Once:O,OnMultiple:m,Off:T,OffAll:A},Window:E(e)}}console.log("Wails v3.0.0 Debug Mode Enabled");I(!0);document.addEventListener("DOMContentLoaded",function(e){H()});})();