@wailsio/runtime 3.0.0-alpha.9 → 3.0.0-alpha.94

This diff represents the content of publicly available package versions that have been released to one of the supported registries. The information contained in this diff is provided for informational purposes only and reflects changes between package versions as they appear in their respective public registries.
Files changed (71) hide show
  1. package/dist/android.js +39 -0
  2. package/{src → dist}/application.js +32 -46
  3. package/dist/browser.js +20 -0
  4. package/dist/callable.js +144 -0
  5. package/dist/calls.js +114 -0
  6. package/dist/cancellable.js +792 -0
  7. package/dist/clipboard.js +30 -0
  8. package/dist/contextmenu.js +83 -0
  9. package/dist/create.js +99 -0
  10. package/dist/dialogs.js +69 -0
  11. package/dist/drag.js +268 -0
  12. package/dist/environment.js +17 -0
  13. package/dist/event_types.js +292 -0
  14. package/dist/events.js +119 -0
  15. package/dist/flags.js +23 -0
  16. package/dist/index.js +88 -0
  17. package/dist/ios.js +28 -0
  18. package/dist/listener.js +44 -0
  19. package/dist/nanoid.js +38 -0
  20. package/dist/plugins/vite.js +64 -0
  21. package/dist/runtime.js +198 -0
  22. package/dist/screens.js +58 -0
  23. package/dist/system.js +158 -0
  24. package/dist/updater.js +74 -0
  25. package/dist/utils.js +98 -0
  26. package/dist/window.js +734 -0
  27. package/dist/wml.js +179 -0
  28. package/package.json +71 -26
  29. package/types/android.d.ts +21 -0
  30. package/types/application.d.ts +3 -10
  31. package/types/browser.d.ts +4 -4
  32. package/types/callable.d.ts +3 -0
  33. package/types/calls.d.ts +52 -24
  34. package/types/cancellable.d.ts +433 -0
  35. package/types/clipboard.d.ts +6 -5
  36. package/types/contextmenu.d.ts +1 -1
  37. package/types/create.d.ts +36 -0
  38. package/types/dialogs.d.ts +132 -20
  39. package/types/drag.d.ts +1 -4
  40. package/types/environment.d.ts +8 -0
  41. package/types/event_types.d.ts +281 -0
  42. package/types/events.d.ts +70 -33
  43. package/types/flags.d.ts +3 -3
  44. package/types/index.d.ts +32 -48
  45. package/types/ios.d.ts +13 -0
  46. package/types/listener.d.ts +9 -0
  47. package/types/nanoid.d.ts +1 -0
  48. package/types/plugins/vite.d.ts +10 -0
  49. package/types/runtime.d.ts +61 -22
  50. package/types/screens.d.ts +64 -7
  51. package/types/system.d.ts +74 -39
  52. package/types/updater.d.ts +65 -0
  53. package/types/utils.d.ts +21 -0
  54. package/types/window.d.ts +327 -13
  55. package/types/wml.d.ts +5 -3
  56. package/src/browser.js +0 -24
  57. package/src/calls.js +0 -123
  58. package/src/clipboard.js +0 -35
  59. package/src/contextmenu.js +0 -98
  60. package/src/dialogs.js +0 -138
  61. package/src/drag.js +0 -125
  62. package/src/events.js +0 -134
  63. package/src/flags.js +0 -63
  64. package/src/index.d.ts +0 -136
  65. package/src/index.js +0 -58
  66. package/src/runtime.js +0 -122
  67. package/src/screens.js +0 -45
  68. package/src/system.js +0 -122
  69. package/src/window.js +0 -122
  70. package/src/wml.js +0 -151
  71. package/tsconfig.json +0 -20
package/src/wml.js DELETED
@@ -1,151 +0,0 @@
1
-
2
- import {Emit, WailsEvent} from "./events";
3
- import {Question} from "./dialogs";
4
- import {WindowMethods, Get} from "./window";
5
- import {OpenURL} from "./browser";
6
-
7
- /**
8
- * Sends an event with the given name and optional data.
9
- *
10
- * @param {string} eventName - The name of the event to send.
11
- * @param {any} [data=null] - Optional data to send along with the event.
12
- *
13
- * @return {void}
14
- */
15
- function sendEvent(eventName, data=null) {
16
- let event = new WailsEvent(eventName, data);
17
- Emit(event);
18
- }
19
-
20
- /**
21
- * Adds event listeners to elements with `wml-event` attribute.
22
- *
23
- * @return {void}
24
- */
25
- function addWMLEventListeners() {
26
- const elements = document.querySelectorAll('[wml-event]');
27
- elements.forEach(function (element) {
28
- const eventType = element.getAttribute('wml-event');
29
- const confirm = element.getAttribute('wml-confirm');
30
- const trigger = element.getAttribute('wml-trigger') || "click";
31
-
32
- let callback = function () {
33
- if (confirm) {
34
- Question({Title: "Confirm", Message:confirm, Detached: false, Buttons:[{Label:"Yes"},{Label:"No", IsDefault:true}]}).then(function (result) {
35
- if (result !== "No") {
36
- sendEvent(eventType);
37
- }
38
- });
39
- return;
40
- }
41
- sendEvent(eventType);
42
- };
43
-
44
- // Remove existing listeners
45
- element.removeEventListener(trigger, callback);
46
-
47
- // Add new listener
48
- element.addEventListener(trigger, callback);
49
- });
50
- }
51
-
52
-
53
- /**
54
- * Calls a method on a specified window.
55
- * @param {string} windowName - The name of the window to call the method on.
56
- * @param {string} method - The name of the method to call.
57
- */
58
- function callWindowMethod(windowName, method) {
59
- let targetWindow = Get(windowName);
60
- let methodMap = WindowMethods(targetWindow);
61
- if (!methodMap.has(method)) {
62
- console.log("Window method " + method + " not found");
63
- }
64
- try {
65
- methodMap.get(method)();
66
- } catch (e) {
67
- console.error("Error calling window method '" + method + "': " + e);
68
- }
69
- }
70
-
71
- /**
72
- * Adds window listeners for elements with the 'wml-window' attribute.
73
- * Removes any existing listeners before adding new ones.
74
- *
75
- * @return {void}
76
- */
77
- function addWMLWindowListeners() {
78
- const elements = document.querySelectorAll('[wml-window]');
79
- elements.forEach(function (element) {
80
- const windowMethod = element.getAttribute('wml-window');
81
- const confirm = element.getAttribute('wml-confirm');
82
- const trigger = element.getAttribute('wml-trigger') || 'click';
83
- const targetWindow = element.getAttribute('wml-target-window') || '';
84
-
85
- let callback = function () {
86
- if (confirm) {
87
- Question({Title: "Confirm", Message:confirm, Buttons:[{Label:"Yes"},{Label:"No", IsDefault:true}]}).then(function (result) {
88
- if (result !== "No") {
89
- callWindowMethod(targetWindow, windowMethod);
90
- }
91
- });
92
- return;
93
- }
94
- callWindowMethod(targetWindow, windowMethod);
95
- };
96
-
97
- // Remove existing listeners
98
- element.removeEventListener(trigger, callback);
99
-
100
- // Add new listener
101
- element.addEventListener(trigger, callback);
102
- });
103
- }
104
-
105
- /**
106
- * Adds a listener to elements with the 'wml-openurl' attribute.
107
- * When the specified trigger event is fired on any of these elements,
108
- * the listener will open the URL specified by the 'wml-openurl' attribute.
109
- * If a 'wml-confirm' attribute is provided, a confirmation dialog will be displayed,
110
- * and the URL will only be opened if the user confirms.
111
- *
112
- * @return {void}
113
- */
114
- function addWMLOpenBrowserListener() {
115
- const elements = document.querySelectorAll('[wml-openurl]');
116
- elements.forEach(function (element) {
117
- const url = element.getAttribute('wml-openurl');
118
- const confirm = element.getAttribute('wml-confirm');
119
- const trigger = element.getAttribute('wml-trigger') || "click";
120
-
121
- let callback = function () {
122
- if (confirm) {
123
- Question({Title: "Confirm", Message:confirm, Buttons:[{Label:"Yes"},{Label:"No", IsDefault:true}]}).then(function (result) {
124
- if (result !== "No") {
125
- void OpenURL(url);
126
- }
127
- });
128
- return;
129
- }
130
- void OpenURL(url);
131
- };
132
-
133
- // Remove existing listeners
134
- element.removeEventListener(trigger, callback);
135
-
136
- // Add new listener
137
- element.addEventListener(trigger, callback);
138
- });
139
- }
140
-
141
- /**
142
- * Reloads the WML page by adding necessary event listeners and browser listeners.
143
- *
144
- * @return {void}
145
- */
146
- export function reloadWML() {
147
- console.log("Reloading WML");
148
- addWMLEventListeners();
149
- addWMLWindowListeners();
150
- addWMLOpenBrowserListener();
151
- }
package/tsconfig.json DELETED
@@ -1,20 +0,0 @@
1
- {
2
- "include": ["./src/**/*"],
3
- "compilerOptions": {
4
- "lib": [
5
- "dom",
6
- "dom.iterable",
7
- "esnext"
8
- ],
9
- "allowJs": true,
10
- "declaration": true,
11
- "declarationMap": true,
12
- "emitDeclarationOnly": true,
13
- "esModuleInterop": true,
14
- "module": "esnext",
15
- "moduleResolution": "node",
16
- "outDir": "dist",
17
- "strict": true,
18
- "target": "es6"
19
- }
20
- }