webtau 0.5.2 → 0.7.0
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.
- package/dist/adapters/electrobun.d.ts +29 -40
- package/dist/adapters/electrobun.d.ts.map +1 -1
- package/dist/adapters/electrobun.js +90 -88
- package/dist/adapters/electrobun.js.map +1 -1
- package/dist/adapters/tauri.d.ts.map +1 -1
- package/dist/adapters/tauri.js +12 -0
- package/dist/adapters/tauri.js.map +1 -1
- package/dist/core.d.ts +9 -79
- package/dist/core.d.ts.map +1 -1
- package/dist/core.js +121 -89
- package/dist/core.js.map +1 -1
- package/dist/provider.d.ts +25 -5
- package/dist/provider.d.ts.map +1 -1
- package/dist/provider.js +4 -4
- package/package.json +1 -1
|
@@ -1,52 +1,41 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* webtau/adapters/electrobun
|
|
2
|
+
* webtau/adapters/electrobun - Electrobun runtime adapter.
|
|
3
3
|
*
|
|
4
|
-
* Implements WindowAdapter, EventAdapter, FsAdapter, and DialogAdapter
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* ```ts
|
|
9
|
-
* import { bootstrapElectrobun } from "webtau/adapters/electrobun";
|
|
10
|
-
*
|
|
11
|
-
* bootstrapElectrobun();
|
|
12
|
-
* ```
|
|
4
|
+
* Implements WindowAdapter, EventAdapter, FsAdapter, and DialogAdapter by
|
|
5
|
+
* delegating each operation to the Electrobun backend via `invoke()`.
|
|
13
6
|
*/
|
|
14
7
|
import type { CoreProvider, DialogAdapter, EventAdapter, FsAdapter, WindowAdapter } from "../provider.js";
|
|
8
|
+
type InvokeArgs = Record<string, unknown> | undefined;
|
|
9
|
+
export type ElectrobunRenderMode = "browser" | "hybrid" | "gpu" | "unknown";
|
|
10
|
+
export interface ElectrobunCapabilities {
|
|
11
|
+
runtime: "electrobun";
|
|
12
|
+
renderMode: ElectrobunRenderMode;
|
|
13
|
+
hasGpuWindow: boolean;
|
|
14
|
+
hasWgpuView: boolean;
|
|
15
|
+
hasWebGpu: boolean;
|
|
16
|
+
}
|
|
17
|
+
export interface ElectrobunBridge {
|
|
18
|
+
invoke<T = unknown>(command: string, args?: InvokeArgs): Promise<T>;
|
|
19
|
+
convertFileSrc?: (filePath: string, protocol?: string) => string;
|
|
20
|
+
capabilities?: Partial<Omit<ElectrobunCapabilities, "runtime">>;
|
|
21
|
+
renderMode?: ElectrobunRenderMode;
|
|
22
|
+
}
|
|
23
|
+
declare global {
|
|
24
|
+
interface Window {
|
|
25
|
+
__ELECTROBUN__?: ElectrobunBridge;
|
|
26
|
+
}
|
|
27
|
+
}
|
|
28
|
+
export declare function getElectrobunBridge(): ElectrobunBridge | null;
|
|
29
|
+
export declare function isElectrobun(): boolean;
|
|
30
|
+
export declare function getElectrobunCapabilities(): ElectrobunCapabilities | null;
|
|
31
|
+
export declare function createElectrobunWindowBridgeProvider(bridge?: ElectrobunBridge): CoreProvider;
|
|
15
32
|
export declare function createElectrobunWindowAdapter(): WindowAdapter;
|
|
16
33
|
export declare function createElectrobunEventAdapter(): EventAdapter;
|
|
17
|
-
/**
|
|
18
|
-
* Dispatch an event from the Electrobun backend to a registered handler.
|
|
19
|
-
* Called by the IPC bridge when the backend pushes an event.
|
|
20
|
-
*/
|
|
21
34
|
export declare function dispatchElectrobunEvent(listenerId: number, event: string, payload: unknown): void;
|
|
22
35
|
export declare function createElectrobunFsAdapter(): FsAdapter;
|
|
23
36
|
export declare function createElectrobunDialogAdapter(): DialogAdapter;
|
|
24
|
-
/**
|
|
25
|
-
* Core provider for the Electrobun runtime.
|
|
26
|
-
*
|
|
27
|
-
* Provides the `invoke` and `convertFileSrc` implementations that all
|
|
28
|
-
* adapters delegate through.
|
|
29
|
-
*/
|
|
30
37
|
export declare function createElectrobunCoreProvider(): CoreProvider;
|
|
31
|
-
/**
|
|
32
|
-
* Bootstrap all Electrobun adapters at once.
|
|
33
|
-
*
|
|
34
|
-
* Registers the core provider and sets adapters for window, event,
|
|
35
|
-
* filesystem, and dialog modules. After calling this function, all
|
|
36
|
-
* webtau module-level functions will delegate through Electrobun.
|
|
37
|
-
*
|
|
38
|
-
* An optional `coreProvider` can be passed to supply a custom IPC
|
|
39
|
-
* bridge (e.g. one that delegates to `electrobun.ipc.invoke()`).
|
|
40
|
-
*
|
|
41
|
-
* ```ts
|
|
42
|
-
* import { bootstrapElectrobun } from "webtau/adapters/electrobun";
|
|
43
|
-
*
|
|
44
|
-
* bootstrapElectrobun({
|
|
45
|
-
* id: "electrobun",
|
|
46
|
-
* invoke: (cmd, args) => electrobun.ipc.invoke(cmd, args),
|
|
47
|
-
* convertFileSrc: (path) => `electrobun://asset/${path}`,
|
|
48
|
-
* });
|
|
49
|
-
* ```
|
|
50
|
-
*/
|
|
51
38
|
export declare function bootstrapElectrobun(coreProvider?: CoreProvider): void;
|
|
39
|
+
export declare function bootstrapElectrobunFromWindowBridge(): boolean;
|
|
40
|
+
export {};
|
|
52
41
|
//# sourceMappingURL=electrobun.d.ts.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electrobun.d.ts","sourceRoot":"","sources":["../../src/adapters/electrobun.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"electrobun.d.ts","sourceRoot":"","sources":["../../src/adapters/electrobun.ts"],"names":[],"mappings":"AAAA;;;;;GAKG;AAkBH,OAAO,KAAK,EACV,YAAY,EACZ,aAAa,EACb,YAAY,EACZ,SAAS,EAET,aAAa,EACd,MAAM,gBAAgB,CAAC;AAGxB,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAAG,SAAS,CAAC;AAEtD,MAAM,MAAM,oBAAoB,GAAG,SAAS,GAAG,QAAQ,GAAG,KAAK,GAAG,SAAS,CAAC;AAE5E,MAAM,WAAW,sBAAsB;IACrC,OAAO,EAAE,YAAY,CAAC;IACtB,UAAU,EAAE,oBAAoB,CAAC;IACjC,YAAY,EAAE,OAAO,CAAC;IACtB,WAAW,EAAE,OAAO,CAAC;IACrB,SAAS,EAAE,OAAO,CAAC;CACpB;AAED,MAAM,WAAW,gBAAgB;IAC/B,MAAM,CAAC,CAAC,GAAG,OAAO,EAAE,OAAO,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,UAAU,GAAG,OAAO,CAAC,CAAC,CAAC,CAAC;IACpE,cAAc,CAAC,EAAE,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,KAAK,MAAM,CAAC;IACjE,YAAY,CAAC,EAAE,OAAO,CAAC,IAAI,CAAC,sBAAsB,EAAE,SAAS,CAAC,CAAC,CAAC;IAChE,UAAU,CAAC,EAAE,oBAAoB,CAAC;CACnC;AAED,OAAO,CAAC,MAAM,CAAC;IACb,UAAU,MAAM;QACd,cAAc,CAAC,EAAE,gBAAgB,CAAC;KACnC;CACF;AAaD,wBAAgB,mBAAmB,IAAI,gBAAgB,GAAG,IAAI,CAK7D;AAED,wBAAgB,YAAY,IAAI,OAAO,CAEtC;AAED,wBAAgB,yBAAyB,IAAI,sBAAsB,GAAG,IAAI,CAoBzE;AAmBD,wBAAgB,oCAAoC,CAClD,MAAM,GAAE,gBAA4D,GACnE,YAAY,CAqBd;AAED,wBAAgB,6BAA6B,IAAI,aAAa,CA4F7D;AAED,wBAAgB,4BAA4B,IAAI,YAAY,CAsB3D;AAOD,wBAAgB,uBAAuB,CACrC,UAAU,EAAE,MAAM,EAClB,KAAK,EAAE,MAAM,EACb,OAAO,EAAE,OAAO,GACf,IAAI,CAKN;AAED,wBAAgB,yBAAyB,IAAI,SAAS,CAiErD;AAED,wBAAgB,6BAA6B,IAAI,aAAa,CAmC7D;AAED,wBAAgB,4BAA4B,IAAI,YAAY,CAmB3D;AAED,wBAAgB,mBAAmB,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAMrE;AAED,wBAAgB,mCAAmC,IAAI,OAAO,CAM7D"}
|
|
@@ -1,28 +1,83 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* webtau/adapters/electrobun
|
|
2
|
+
* webtau/adapters/electrobun - Electrobun runtime adapter.
|
|
3
3
|
*
|
|
4
|
-
* Implements WindowAdapter, EventAdapter, FsAdapter, and DialogAdapter
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
* Usage:
|
|
8
|
-
* ```ts
|
|
9
|
-
* import { bootstrapElectrobun } from "webtau/adapters/electrobun";
|
|
10
|
-
*
|
|
11
|
-
* bootstrapElectrobun();
|
|
12
|
-
* ```
|
|
4
|
+
* Implements WindowAdapter, EventAdapter, FsAdapter, and DialogAdapter by
|
|
5
|
+
* delegating each operation to the Electrobun backend via `invoke()`.
|
|
13
6
|
*/
|
|
14
7
|
import { invoke, registerProvider } from "../core.js";
|
|
15
8
|
import { setDialogAdapter } from "../dialog.js";
|
|
16
9
|
import { setEventAdapter } from "../event.js";
|
|
17
10
|
import { setFsAdapter } from "../fs.js";
|
|
18
11
|
import { setWindowAdapter } from "../window.js";
|
|
19
|
-
|
|
20
|
-
|
|
21
|
-
|
|
22
|
-
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
12
|
+
function normalizeRenderMode(mode) {
|
|
13
|
+
switch (mode) {
|
|
14
|
+
case "browser":
|
|
15
|
+
case "hybrid":
|
|
16
|
+
case "gpu":
|
|
17
|
+
return mode;
|
|
18
|
+
default:
|
|
19
|
+
return "unknown";
|
|
20
|
+
}
|
|
21
|
+
}
|
|
22
|
+
export function getElectrobunBridge() {
|
|
23
|
+
if (typeof window === "undefined")
|
|
24
|
+
return null;
|
|
25
|
+
const bridge = window.__ELECTROBUN__;
|
|
26
|
+
return bridge && typeof bridge.invoke === "function" ? bridge : null;
|
|
27
|
+
}
|
|
28
|
+
export function isElectrobun() {
|
|
29
|
+
return getElectrobunBridge() !== null;
|
|
30
|
+
}
|
|
31
|
+
export function getElectrobunCapabilities() {
|
|
32
|
+
const bridge = getElectrobunBridge();
|
|
33
|
+
if (!bridge)
|
|
34
|
+
return null;
|
|
35
|
+
const renderMode = normalizeRenderMode(bridge.renderMode ?? bridge.capabilities?.renderMode);
|
|
36
|
+
const hasGpuWindow = bridge.capabilities?.hasGpuWindow ?? renderMode === "gpu";
|
|
37
|
+
const hasWgpuView = bridge.capabilities?.hasWgpuView
|
|
38
|
+
?? (renderMode === "hybrid" || renderMode === "gpu");
|
|
39
|
+
const hasWebGpu = bridge.capabilities?.hasWebGpu
|
|
40
|
+
?? (hasWgpuView || renderMode === "gpu");
|
|
41
|
+
return {
|
|
42
|
+
runtime: "electrobun",
|
|
43
|
+
renderMode,
|
|
44
|
+
hasGpuWindow,
|
|
45
|
+
hasWgpuView,
|
|
46
|
+
hasWebGpu,
|
|
47
|
+
};
|
|
48
|
+
}
|
|
49
|
+
function getElectrobunRuntimeCapabilities() {
|
|
50
|
+
const capabilities = getElectrobunCapabilities();
|
|
51
|
+
return {
|
|
52
|
+
events: true,
|
|
53
|
+
fs: true,
|
|
54
|
+
dialog: true,
|
|
55
|
+
window: true,
|
|
56
|
+
task: true,
|
|
57
|
+
convertFileSrc: true,
|
|
58
|
+
renderMode: capabilities?.renderMode ?? "unknown",
|
|
59
|
+
hasGpuWindow: capabilities?.hasGpuWindow ?? false,
|
|
60
|
+
hasWgpuView: capabilities?.hasWgpuView ?? false,
|
|
61
|
+
hasWebGpu: capabilities?.hasWebGpu ?? false,
|
|
62
|
+
};
|
|
63
|
+
}
|
|
64
|
+
export function createElectrobunWindowBridgeProvider(bridge = getElectrobunBridge()) {
|
|
65
|
+
if (!bridge || typeof bridge.invoke !== "function") {
|
|
66
|
+
throw new Error("[webtau/electrobun] No window.__ELECTROBUN__ bridge is available.");
|
|
67
|
+
}
|
|
68
|
+
return {
|
|
69
|
+
id: "electrobun",
|
|
70
|
+
invoke: (command, args) => bridge.invoke(command, args),
|
|
71
|
+
convertFileSrc: (filePath, protocol) => (bridge.convertFileSrc
|
|
72
|
+
? bridge.convertFileSrc(filePath, protocol)
|
|
73
|
+
: `electrobun://asset/${filePath.replace(/^\/+/, "")}`),
|
|
74
|
+
runtimeInfo: {
|
|
75
|
+
id: "electrobun",
|
|
76
|
+
platform: "desktop",
|
|
77
|
+
capabilities: getElectrobunRuntimeCapabilities(),
|
|
78
|
+
},
|
|
79
|
+
};
|
|
80
|
+
}
|
|
26
81
|
export function createElectrobunWindowAdapter() {
|
|
27
82
|
return {
|
|
28
83
|
async isFullscreen() {
|
|
@@ -74,8 +129,6 @@ export function createElectrobunWindowAdapter() {
|
|
|
74
129
|
async setDecorations(decorations) {
|
|
75
130
|
await invoke("plugin:electrobun|window_set_decorations", { decorations });
|
|
76
131
|
},
|
|
77
|
-
// Partial: centering depends on the Electrobun backend's window
|
|
78
|
-
// manager integration. May be a no-op on some platforms.
|
|
79
132
|
async center() {
|
|
80
133
|
await invoke("plugin:electrobun|window_center");
|
|
81
134
|
},
|
|
@@ -87,26 +140,18 @@ export function createElectrobunWindowAdapter() {
|
|
|
87
140
|
},
|
|
88
141
|
};
|
|
89
142
|
}
|
|
90
|
-
// ── Event Adapter ───────────────────────────────────────────────────────────
|
|
91
|
-
// Supported: listen, emit
|
|
92
|
-
// Partial: none
|
|
93
|
-
// Unsupported: none currently
|
|
94
|
-
//
|
|
95
|
-
// Note: The event system relies on the Electrobun backend to manage event
|
|
96
|
-
// subscriptions. The `listen` call returns an unlisten ID that is used to
|
|
97
|
-
// remove the subscription on the backend when `unlisten()` is called.
|
|
98
143
|
export function createElectrobunEventAdapter() {
|
|
99
144
|
return {
|
|
100
145
|
async listen(event, handler) {
|
|
101
146
|
const listenerId = await invoke("plugin:electrobun|event_listen", { event });
|
|
102
|
-
|
|
103
|
-
|
|
104
|
-
|
|
105
|
-
|
|
147
|
+
electrobunEventHandlers.set(listenerId, {
|
|
148
|
+
event,
|
|
149
|
+
handler: handler,
|
|
150
|
+
});
|
|
106
151
|
return () => {
|
|
107
152
|
electrobunEventHandlers.delete(listenerId);
|
|
108
153
|
invoke("plugin:electrobun|event_unlisten", { listenerId }).catch(() => {
|
|
109
|
-
// Best-effort cleanup
|
|
154
|
+
// Best-effort cleanup.
|
|
110
155
|
});
|
|
111
156
|
};
|
|
112
157
|
},
|
|
@@ -115,27 +160,13 @@ export function createElectrobunEventAdapter() {
|
|
|
115
160
|
},
|
|
116
161
|
};
|
|
117
162
|
}
|
|
118
|
-
/** Internal registry for event handlers keyed by listener ID. */
|
|
119
163
|
const electrobunEventHandlers = new Map();
|
|
120
|
-
/**
|
|
121
|
-
* Dispatch an event from the Electrobun backend to a registered handler.
|
|
122
|
-
* Called by the IPC bridge when the backend pushes an event.
|
|
123
|
-
*/
|
|
124
164
|
export function dispatchElectrobunEvent(listenerId, event, payload) {
|
|
125
165
|
const entry = electrobunEventHandlers.get(listenerId);
|
|
126
166
|
if (entry) {
|
|
127
167
|
entry.handler({ event, id: listenerId, payload });
|
|
128
168
|
}
|
|
129
169
|
}
|
|
130
|
-
// ── Filesystem Adapter ──────────────────────────────────────────────────────
|
|
131
|
-
// Supported: writeTextFile, readTextFile, writeFile, readFile, exists,
|
|
132
|
-
// mkdir, readDir, remove, copyFile, rename
|
|
133
|
-
// Partial: none
|
|
134
|
-
// Unsupported: none currently
|
|
135
|
-
//
|
|
136
|
-
// Note: Binary data (Uint8Array/ArrayBuffer) is serialized as a number[]
|
|
137
|
-
// for JSON transport over IPC. The backend is responsible for converting
|
|
138
|
-
// back to native byte buffers.
|
|
139
170
|
export function createElectrobunFsAdapter() {
|
|
140
171
|
return {
|
|
141
172
|
async writeTextFile(path, contents) {
|
|
@@ -145,7 +176,6 @@ export function createElectrobunFsAdapter() {
|
|
|
145
176
|
return invoke("plugin:electrobun|fs_read_text_file", { path });
|
|
146
177
|
},
|
|
147
178
|
async writeFile(path, contents) {
|
|
148
|
-
// Serialize binary data as number[] for JSON IPC transport.
|
|
149
179
|
let data;
|
|
150
180
|
if (contents instanceof Uint8Array) {
|
|
151
181
|
data = Array.from(contents);
|
|
@@ -194,13 +224,6 @@ export function createElectrobunFsAdapter() {
|
|
|
194
224
|
},
|
|
195
225
|
};
|
|
196
226
|
}
|
|
197
|
-
// ── Dialog Adapter ──────────────────────────────────────────────────────────
|
|
198
|
-
// Supported: message, ask, open, save
|
|
199
|
-
// Partial: none
|
|
200
|
-
// Unsupported: none currently
|
|
201
|
-
//
|
|
202
|
-
// Note: Dialog appearance and behavior depend on the Electrobun backend's
|
|
203
|
-
// native dialog implementation. Options are forwarded as-is.
|
|
204
227
|
export function createElectrobunDialogAdapter() {
|
|
205
228
|
return {
|
|
206
229
|
async message(text, options) {
|
|
@@ -234,52 +257,24 @@ export function createElectrobunDialogAdapter() {
|
|
|
234
257
|
},
|
|
235
258
|
};
|
|
236
259
|
}
|
|
237
|
-
// ── Bootstrap ───────────────────────────────────────────────────────────────
|
|
238
|
-
/**
|
|
239
|
-
* Core provider for the Electrobun runtime.
|
|
240
|
-
*
|
|
241
|
-
* Provides the `invoke` and `convertFileSrc` implementations that all
|
|
242
|
-
* adapters delegate through.
|
|
243
|
-
*/
|
|
244
260
|
export function createElectrobunCoreProvider() {
|
|
245
261
|
return {
|
|
246
262
|
id: "electrobun",
|
|
247
263
|
invoke: async (command, _args) => {
|
|
248
|
-
// In a real Electrobun integration, this would delegate to
|
|
249
|
-
// electrobun.ipc.invoke(). For now, we throw to indicate
|
|
250
|
-
// that the actual IPC bridge must be provided at integration time.
|
|
251
|
-
//
|
|
252
|
-
// When integrating, replace this with:
|
|
253
|
-
// return electrobun.ipc.invoke(command, args) as Promise<T>;
|
|
254
264
|
throw new Error(`[webtau/electrobun] No IPC bridge configured. ` +
|
|
255
265
|
`Cannot invoke "${command}". Wire electrobun.ipc.invoke() ` +
|
|
256
266
|
`into the core provider before calling bootstrapElectrobun().`);
|
|
257
267
|
},
|
|
258
|
-
convertFileSrc: (filePath
|
|
268
|
+
convertFileSrc: (filePath) => {
|
|
259
269
|
return `electrobun://asset/${filePath.replace(/^\/+/, "")}`;
|
|
260
270
|
},
|
|
271
|
+
runtimeInfo: {
|
|
272
|
+
id: "electrobun",
|
|
273
|
+
platform: "desktop",
|
|
274
|
+
capabilities: getElectrobunRuntimeCapabilities(),
|
|
275
|
+
},
|
|
261
276
|
};
|
|
262
277
|
}
|
|
263
|
-
/**
|
|
264
|
-
* Bootstrap all Electrobun adapters at once.
|
|
265
|
-
*
|
|
266
|
-
* Registers the core provider and sets adapters for window, event,
|
|
267
|
-
* filesystem, and dialog modules. After calling this function, all
|
|
268
|
-
* webtau module-level functions will delegate through Electrobun.
|
|
269
|
-
*
|
|
270
|
-
* An optional `coreProvider` can be passed to supply a custom IPC
|
|
271
|
-
* bridge (e.g. one that delegates to `electrobun.ipc.invoke()`).
|
|
272
|
-
*
|
|
273
|
-
* ```ts
|
|
274
|
-
* import { bootstrapElectrobun } from "webtau/adapters/electrobun";
|
|
275
|
-
*
|
|
276
|
-
* bootstrapElectrobun({
|
|
277
|
-
* id: "electrobun",
|
|
278
|
-
* invoke: (cmd, args) => electrobun.ipc.invoke(cmd, args),
|
|
279
|
-
* convertFileSrc: (path) => `electrobun://asset/${path}`,
|
|
280
|
-
* });
|
|
281
|
-
* ```
|
|
282
|
-
*/
|
|
283
278
|
export function bootstrapElectrobun(coreProvider) {
|
|
284
279
|
registerProvider(coreProvider ?? createElectrobunCoreProvider());
|
|
285
280
|
setWindowAdapter(createElectrobunWindowAdapter());
|
|
@@ -287,4 +282,11 @@ export function bootstrapElectrobun(coreProvider) {
|
|
|
287
282
|
setFsAdapter(createElectrobunFsAdapter());
|
|
288
283
|
setDialogAdapter(createElectrobunDialogAdapter());
|
|
289
284
|
}
|
|
285
|
+
export function bootstrapElectrobunFromWindowBridge() {
|
|
286
|
+
const bridge = getElectrobunBridge();
|
|
287
|
+
if (!bridge)
|
|
288
|
+
return false;
|
|
289
|
+
bootstrapElectrobun(createElectrobunWindowBridgeProvider(bridge));
|
|
290
|
+
return true;
|
|
291
|
+
}
|
|
290
292
|
//# sourceMappingURL=electrobun.js.map
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"electrobun.js","sourceRoot":"","sources":["../../src/adapters/electrobun.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"electrobun.js","sourceRoot":"","sources":["../../src/adapters/electrobun.ts"],"names":[],"mappings":"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"}
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tauri.d.ts","sourceRoot":"","sources":["../../src/adapters/tauri.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAwBjE,wBAAgB,uBAAuB,IAAI,YAAY,CAmBtD;AAOD,wBAAgB,uBAAuB,IAAI,YAAY,
|
|
1
|
+
{"version":3,"file":"tauri.d.ts","sourceRoot":"","sources":["../../src/adapters/tauri.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAKH,OAAO,KAAK,EAAE,YAAY,EAAE,YAAY,EAAE,MAAM,gBAAgB,CAAC;AAwBjE,wBAAgB,uBAAuB,IAAI,YAAY,CAmBtD;AAOD,wBAAgB,uBAAuB,IAAI,YAAY,CAwBtD;AAID;;;;;;;;;;;;;;GAcG;AACH,wBAAgB,cAAc,CAAC,YAAY,CAAC,EAAE,YAAY,GAAG,IAAI,CAGhE"}
|
package/dist/adapters/tauri.js
CHANGED
|
@@ -47,6 +47,18 @@ export function createTauriCoreProvider() {
|
|
|
47
47
|
const proto = protocol ?? "asset";
|
|
48
48
|
return `${proto}://localhost${filePath.startsWith("/") ? filePath : `/${filePath}`}`;
|
|
49
49
|
},
|
|
50
|
+
runtimeInfo: {
|
|
51
|
+
id: "tauri",
|
|
52
|
+
platform: "desktop",
|
|
53
|
+
capabilities: {
|
|
54
|
+
events: true,
|
|
55
|
+
fs: true,
|
|
56
|
+
dialog: true,
|
|
57
|
+
window: true,
|
|
58
|
+
task: true,
|
|
59
|
+
convertFileSrc: true,
|
|
60
|
+
},
|
|
61
|
+
},
|
|
50
62
|
};
|
|
51
63
|
}
|
|
52
64
|
// ── Bootstrap ─────────────────────────────────────────────────────────────────
|
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"tauri.js","sourceRoot":"","sources":["../../src/adapters/tauri.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoB9C,+EAA+E;AAC/E,0EAA0E;AAC1E,4EAA4E;AAC5E,4CAA4C;AAE5C,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,KAAK,CAAC,MAAM,CAAI,KAAa,EAAE,OAAyB;YACtD,wEAAwE;YACxE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,uBAAiC,CAAqB,CAAC;YAChF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EACL,CAAC,UAAU,EAAE,EAAE;gBACb,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YACvF,CAAC,CACF,CAAC;YACF,OAAO,QAAsB,CAAC;QAChC,CAAC;QAED,KAAK,CAAC,IAAI,CAAI,KAAa,EAAE,OAAW;YACtC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,uBAAiC,CAAqB,CAAC;YAChF,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,iEAAiE;AACjE,gFAAgF;AAChF,oEAAoE;AAEpE,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,EAAE,EAAE,OAAO;QACX,MAAM,EAAE,KAAK,EAAe,OAAe,EAAE,IAA8B,EAAc,EAAE;YACzF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,sBAAgC,CAAoB,CAAC;YAC9E,OAAO,GAAG,CAAC,MAAM,CAAI,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,cAAc,EAAE,CAAC,QAAgB,EAAE,QAAiB,EAAU,EAAE;YAC9D,MAAM,KAAK,GAAG,QAAQ,IAAI,OAAO,CAAC;YAClC,OAAO,GAAG,KAAK,eAAe,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC;QACvF,CAAC;KACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,cAAc,CAAC,YAA2B;IACxD,gBAAgB,CAAC,YAAY,IAAI,uBAAuB,EAAE,CAAC,CAAC;IAC5D,eAAe,CAAC,uBAAuB,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
|
1
|
+
{"version":3,"file":"tauri.js","sourceRoot":"","sources":["../../src/adapters/tauri.ts"],"names":[],"mappings":"AAAA;;;;;;;;;;;GAWG;AAEH,OAAO,EAAE,gBAAgB,EAAE,MAAM,YAAY,CAAC;AAE9C,OAAO,EAAE,eAAe,EAAE,MAAM,aAAa,CAAC;AAoB9C,+EAA+E;AAC/E,0EAA0E;AAC1E,4EAA4E;AAC5E,4CAA4C;AAE5C,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,KAAK,CAAC,MAAM,CAAI,KAAa,EAAE,OAAyB;YACtD,wEAAwE;YACxE,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,uBAAiC,CAAqB,CAAC;YAChF,MAAM,QAAQ,GAAG,MAAM,GAAG,CAAC,MAAM,CAC/B,KAAK,EACL,CAAC,UAAU,EAAE,EAAE;gBACb,OAAO,CAAC,EAAE,KAAK,EAAE,UAAU,CAAC,KAAK,EAAE,EAAE,EAAE,UAAU,CAAC,EAAE,EAAE,OAAO,EAAE,UAAU,CAAC,OAAO,EAAE,CAAC,CAAC;YACvF,CAAC,CACF,CAAC;YACF,OAAO,QAAsB,CAAC;QAChC,CAAC;QAED,KAAK,CAAC,IAAI,CAAI,KAAa,EAAE,OAAW;YACtC,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,uBAAiC,CAAqB,CAAC;YAChF,MAAM,GAAG,CAAC,IAAI,CAAC,KAAK,EAAE,OAAO,CAAC,CAAC;QACjC,CAAC;KACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AACjF,iEAAiE;AACjE,gFAAgF;AAChF,oEAAoE;AAEpE,MAAM,UAAU,uBAAuB;IACrC,OAAO;QACL,EAAE,EAAE,OAAO;QACX,MAAM,EAAE,KAAK,EAAe,OAAe,EAAE,IAA8B,EAAc,EAAE;YACzF,MAAM,GAAG,GAAG,MAAM,MAAM,CAAC,sBAAgC,CAAoB,CAAC;YAC9E,OAAO,GAAG,CAAC,MAAM,CAAI,OAAO,EAAE,IAAI,CAAC,CAAC;QACtC,CAAC;QACD,cAAc,EAAE,CAAC,QAAgB,EAAE,QAAiB,EAAU,EAAE;YAC9D,MAAM,KAAK,GAAG,QAAQ,IAAI,OAAO,CAAC;YAClC,OAAO,GAAG,KAAK,eAAe,QAAQ,CAAC,UAAU,CAAC,GAAG,CAAC,CAAC,CAAC,CAAC,QAAQ,CAAC,CAAC,CAAC,IAAI,QAAQ,EAAE,EAAE,CAAC;QACvF,CAAC;QACD,WAAW,EAAE;YACX,EAAE,EAAE,OAAO;YACX,QAAQ,EAAE,SAAS;YACnB,YAAY,EAAE;gBACZ,MAAM,EAAE,IAAI;gBACZ,EAAE,EAAE,IAAI;gBACR,MAAM,EAAE,IAAI;gBACZ,MAAM,EAAE,IAAI;gBACZ,IAAI,EAAE,IAAI;gBACV,cAAc,EAAE,IAAI;aACrB;SACF;KACF,CAAC;AACJ,CAAC;AAED,iFAAiF;AAEjF;;;;;;;;;;;;;;GAcG;AACH,MAAM,UAAU,cAAc,CAAC,YAA2B;IACxD,gBAAgB,CAAC,YAAY,IAAI,uBAAuB,EAAE,CAAC,CAAC;IAC5D,eAAe,CAAC,uBAAuB,EAAE,CAAC,CAAC;AAC7C,CAAC"}
|
package/dist/core.d.ts
CHANGED
|
@@ -1,97 +1,27 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* webtau
|
|
2
|
+
* webtau - Tauri-to-web invoke router.
|
|
3
3
|
*
|
|
4
|
-
* Detects whether the app is running inside Tauri (desktop) or as a
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* A runtime provider can be registered via `registerProvider()` to
|
|
10
|
-
* route invoke() and convertFileSrc() through an arbitrary backend
|
|
11
|
-
* (e.g. Electrobun). When no provider is registered and `isTauri()`
|
|
12
|
-
* is true, Tauri auto-registers itself on first invoke().
|
|
4
|
+
* Detects whether the app is running inside Tauri (desktop) or as a plain web
|
|
5
|
+
* app. In Tauri mode, delegates to `@tauri-apps/api/core`. In web mode, calls
|
|
6
|
+
* the corresponding function from a configured WASM module. A runtime provider
|
|
7
|
+
* can be registered to route invoke and asset conversion through an arbitrary
|
|
8
|
+
* backend (for example Electrobun).
|
|
13
9
|
*/
|
|
14
|
-
import type { CoreProvider } from "./provider.js";
|
|
15
|
-
export type { CoreProvider };
|
|
10
|
+
import type { CoreProvider, RuntimeCapabilities, RuntimeInfo, RuntimeInfoResolver } from "./provider.js";
|
|
11
|
+
export type { CoreProvider, RuntimeCapabilities, RuntimeInfo, RuntimeInfoResolver };
|
|
16
12
|
export type { DiagnosticCode, DiagnosticEnvelope } from "./diagnostics.js";
|
|
17
13
|
export { WebtauError } from "./diagnostics.js";
|
|
18
14
|
type WasmModule = Record<string, (...args: any[]) => any>;
|
|
19
15
|
export interface WebtauConfig {
|
|
20
|
-
/**
|
|
21
|
-
* A function that returns the WASM module (or a promise for it).
|
|
22
|
-
* This is typically `() => import("./wasm")` pointing at the
|
|
23
|
-
* wasm-pack output.
|
|
24
|
-
*/
|
|
25
16
|
loadWasm: () => Promise<WasmModule>;
|
|
26
|
-
/**
|
|
27
|
-
* Called if the WASM module fails to load.
|
|
28
|
-
* Defaults to `console.error`.
|
|
29
|
-
*/
|
|
30
17
|
onLoadError?: (error: unknown) => void;
|
|
31
18
|
}
|
|
32
|
-
/**
|
|
33
|
-
* Configure webtau for web mode. Must be called before the first
|
|
34
|
-
* `invoke()` in a web build. In Tauri mode this is a no-op.
|
|
35
|
-
*
|
|
36
|
-
* ```ts
|
|
37
|
-
* import { configure } from "webtau";
|
|
38
|
-
*
|
|
39
|
-
* configure({
|
|
40
|
-
* loadWasm: () => import("./wasm"),
|
|
41
|
-
* });
|
|
42
|
-
* ```
|
|
43
|
-
*/
|
|
44
19
|
export declare function configure(config: WebtauConfig): void;
|
|
45
|
-
/**
|
|
46
|
-
* Register a runtime provider that replaces the default Tauri/WASM
|
|
47
|
-
* routing in `invoke()` and `convertFileSrc()`.
|
|
48
|
-
*
|
|
49
|
-
* ```ts
|
|
50
|
-
* import { registerProvider } from "webtau";
|
|
51
|
-
*
|
|
52
|
-
* registerProvider({
|
|
53
|
-
* id: "electrobun",
|
|
54
|
-
* invoke: (cmd, args) => electrobun.ipc.invoke(cmd, args),
|
|
55
|
-
* convertFileSrc: (path) => `electrobun://asset/${path}`,
|
|
56
|
-
* });
|
|
57
|
-
* ```
|
|
58
|
-
*/
|
|
59
20
|
export declare function registerProvider(provider: CoreProvider): void;
|
|
60
|
-
/** Returns the currently registered provider, or `null`. */
|
|
61
21
|
export declare function getProvider(): CoreProvider | null;
|
|
62
|
-
/** Clears the registered provider (useful for testing). */
|
|
63
22
|
export declare function resetProvider(): void;
|
|
64
|
-
/**
|
|
65
|
-
* Returns `true` when running inside Tauri.
|
|
66
|
-
* Checks for `window.__TAURI_INTERNALS__` which Tauri injects.
|
|
67
|
-
*/
|
|
68
23
|
export declare function isTauri(): boolean;
|
|
69
|
-
|
|
70
|
-
* Universal invoke — same API as `@tauri-apps/api/core`'s `invoke()`.
|
|
71
|
-
*
|
|
72
|
-
* In Tauri mode: delegates to Tauri IPC.
|
|
73
|
-
* In web mode: calls the matching WASM export, passing the args
|
|
74
|
-
* object as a single parameter.
|
|
75
|
-
*
|
|
76
|
-
* ```ts
|
|
77
|
-
* const view = await invoke<WorldView>("get_world_view");
|
|
78
|
-
* const result = await invoke<TickResult>("tick_world");
|
|
79
|
-
* ```
|
|
80
|
-
*/
|
|
24
|
+
export declare function getRuntimeInfo(): RuntimeInfo;
|
|
81
25
|
export declare function invoke<T = unknown>(command: string, args?: Record<string, unknown>): Promise<T>;
|
|
82
|
-
/**
|
|
83
|
-
* Converts a file path to a URL that can be used to load assets.
|
|
84
|
-
*
|
|
85
|
-
* In Tauri mode: delegates to `@tauri-apps/api/core`'s `convertFileSrc()`,
|
|
86
|
-
* which returns an `asset://` protocol URL.
|
|
87
|
-
* In web mode: returns the path as-is — no protocol conversion is needed
|
|
88
|
-
* since web apps load assets via standard HTTP URLs.
|
|
89
|
-
*
|
|
90
|
-
* ```ts
|
|
91
|
-
* const url = convertFileSrc("/app/data/sprite.png");
|
|
92
|
-
* // web: "/app/data/sprite.png"
|
|
93
|
-
* // Tauri: "asset://localhost/app/data/sprite.png"
|
|
94
|
-
* ```
|
|
95
|
-
*/
|
|
96
26
|
export declare function convertFileSrc(filePath: string, protocol?: string): string;
|
|
97
27
|
//# sourceMappingURL=core.d.ts.map
|
package/dist/core.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"core.d.ts","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA;;;;;;;;GAQG;AAGH,OAAO,KAAK,EACV,YAAY,EACZ,mBAAmB,EACnB,WAAW,EACX,mBAAmB,EACpB,MAAM,eAAe,CAAC;AAEvB,YAAY,EAAE,YAAY,EAAE,mBAAmB,EAAE,WAAW,EAAE,mBAAmB,EAAE,CAAC;AACpF,YAAY,EAAE,cAAc,EAAE,kBAAkB,EAAE,MAAM,kBAAkB,CAAC;AAC3E,OAAO,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAG/C,KAAK,UAAU,GAAG,MAAM,CAAC,MAAM,EAAE,CAAC,GAAG,IAAI,EAAE,GAAG,EAAE,KAAK,GAAG,CAAC,CAAC;AAe1D,MAAM,WAAW,YAAY;IAC3B,QAAQ,EAAE,MAAM,OAAO,CAAC,UAAU,CAAC,CAAC;IACpC,WAAW,CAAC,EAAE,CAAC,KAAK,EAAE,OAAO,KAAK,IAAI,CAAC;CACxC;AA8GD,wBAAgB,SAAS,CAAC,MAAM,EAAE,YAAY,GAAG,IAAI,CAOpD;AAED,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,YAAY,GAAG,IAAI,CAE7D;AAED,wBAAgB,WAAW,IAAI,YAAY,GAAG,IAAI,CAEjD;AAED,wBAAgB,aAAa,IAAI,IAAI,CAEpC;AAED,wBAAgB,OAAO,IAAI,OAAO,CAEjC;AAED,wBAAgB,cAAc,IAAI,WAAW,CAkB5C;AAqCD,wBAAsB,MAAM,CAAC,CAAC,GAAG,OAAO,EACtC,OAAO,EAAE,MAAM,EACf,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,GAC7B,OAAO,CAAC,CAAC,CAAC,CA6EZ;AAED,wBAAgB,cAAc,CAAC,QAAQ,EAAE,MAAM,EAAE,QAAQ,CAAC,EAAE,MAAM,GAAG,MAAM,CAM1E"}
|
package/dist/core.js
CHANGED
|
@@ -1,15 +1,11 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* webtau
|
|
2
|
+
* webtau - Tauri-to-web invoke router.
|
|
3
3
|
*
|
|
4
|
-
* Detects whether the app is running inside Tauri (desktop) or as a
|
|
5
|
-
*
|
|
6
|
-
*
|
|
7
|
-
*
|
|
8
|
-
*
|
|
9
|
-
* A runtime provider can be registered via `registerProvider()` to
|
|
10
|
-
* route invoke() and convertFileSrc() through an arbitrary backend
|
|
11
|
-
* (e.g. Electrobun). When no provider is registered and `isTauri()`
|
|
12
|
-
* is true, Tauri auto-registers itself on first invoke().
|
|
4
|
+
* Detects whether the app is running inside Tauri (desktop) or as a plain web
|
|
5
|
+
* app. In Tauri mode, delegates to `@tauri-apps/api/core`. In web mode, calls
|
|
6
|
+
* the corresponding function from a configured WASM module. A runtime provider
|
|
7
|
+
* can be registered to route invoke and asset conversion through an arbitrary
|
|
8
|
+
* backend (for example Electrobun).
|
|
13
9
|
*/
|
|
14
10
|
import { WebtauError } from "./diagnostics.js";
|
|
15
11
|
export { WebtauError } from "./diagnostics.js";
|
|
@@ -20,18 +16,98 @@ let wasmLoadPromise = null;
|
|
|
20
16
|
let onLoadError = (err) => {
|
|
21
17
|
console.error("[webtau] Failed to load WASM module:", err);
|
|
22
18
|
};
|
|
23
|
-
|
|
24
|
-
|
|
25
|
-
|
|
26
|
-
|
|
27
|
-
|
|
28
|
-
|
|
29
|
-
|
|
30
|
-
|
|
31
|
-
|
|
32
|
-
|
|
33
|
-
|
|
34
|
-
|
|
19
|
+
const wasmCapabilities = {
|
|
20
|
+
events: true,
|
|
21
|
+
fs: true,
|
|
22
|
+
dialog: true,
|
|
23
|
+
window: true,
|
|
24
|
+
task: true,
|
|
25
|
+
convertFileSrc: true,
|
|
26
|
+
};
|
|
27
|
+
const tauriCapabilities = {
|
|
28
|
+
events: true,
|
|
29
|
+
fs: true,
|
|
30
|
+
dialog: true,
|
|
31
|
+
window: true,
|
|
32
|
+
task: true,
|
|
33
|
+
convertFileSrc: true,
|
|
34
|
+
};
|
|
35
|
+
function cloneRuntimeInfo(info) {
|
|
36
|
+
return {
|
|
37
|
+
...info,
|
|
38
|
+
capabilities: { ...info.capabilities },
|
|
39
|
+
};
|
|
40
|
+
}
|
|
41
|
+
function normalizeElectrobunRenderMode(mode) {
|
|
42
|
+
switch (mode) {
|
|
43
|
+
case "browser":
|
|
44
|
+
case "hybrid":
|
|
45
|
+
case "gpu":
|
|
46
|
+
return mode;
|
|
47
|
+
default:
|
|
48
|
+
return "unknown";
|
|
49
|
+
}
|
|
50
|
+
}
|
|
51
|
+
function getElectrobunBridgeCapabilities() {
|
|
52
|
+
// Fallback capability derivation for bare provider registrations. The
|
|
53
|
+
// Electrobun adapter remains the authoritative path when runtimeInfo is
|
|
54
|
+
// supplied explicitly by the provider itself.
|
|
55
|
+
const bridge = typeof window !== "undefined"
|
|
56
|
+
? window.__ELECTROBUN__
|
|
57
|
+
: undefined;
|
|
58
|
+
const renderMode = normalizeElectrobunRenderMode(bridge?.renderMode ?? bridge?.capabilities?.renderMode);
|
|
59
|
+
const hasGpuWindow = bridge?.capabilities?.hasGpuWindow ?? renderMode === "gpu";
|
|
60
|
+
const hasWgpuView = bridge?.capabilities?.hasWgpuView
|
|
61
|
+
?? (renderMode === "hybrid" || renderMode === "gpu");
|
|
62
|
+
const hasWebGpu = bridge?.capabilities?.hasWebGpu
|
|
63
|
+
?? (hasWgpuView || renderMode === "gpu");
|
|
64
|
+
return {
|
|
65
|
+
events: true,
|
|
66
|
+
fs: true,
|
|
67
|
+
dialog: true,
|
|
68
|
+
window: true,
|
|
69
|
+
task: true,
|
|
70
|
+
convertFileSrc: true,
|
|
71
|
+
renderMode,
|
|
72
|
+
hasGpuWindow,
|
|
73
|
+
hasWgpuView,
|
|
74
|
+
hasWebGpu,
|
|
75
|
+
};
|
|
76
|
+
}
|
|
77
|
+
function deriveRuntimeInfo(provider) {
|
|
78
|
+
const resolved = typeof provider.runtimeInfo === "function"
|
|
79
|
+
? provider.runtimeInfo()
|
|
80
|
+
: provider.runtimeInfo;
|
|
81
|
+
if (resolved) {
|
|
82
|
+
return cloneRuntimeInfo(resolved);
|
|
83
|
+
}
|
|
84
|
+
if (provider.id === "tauri") {
|
|
85
|
+
return {
|
|
86
|
+
id: "tauri",
|
|
87
|
+
platform: "desktop",
|
|
88
|
+
capabilities: { ...tauriCapabilities },
|
|
89
|
+
};
|
|
90
|
+
}
|
|
91
|
+
if (provider.id === "electrobun") {
|
|
92
|
+
return {
|
|
93
|
+
id: "electrobun",
|
|
94
|
+
platform: "desktop",
|
|
95
|
+
capabilities: getElectrobunBridgeCapabilities(),
|
|
96
|
+
};
|
|
97
|
+
}
|
|
98
|
+
return {
|
|
99
|
+
id: provider.id,
|
|
100
|
+
platform: "desktop",
|
|
101
|
+
capabilities: {
|
|
102
|
+
events: false,
|
|
103
|
+
fs: false,
|
|
104
|
+
dialog: false,
|
|
105
|
+
window: false,
|
|
106
|
+
task: true,
|
|
107
|
+
convertFileSrc: true,
|
|
108
|
+
},
|
|
109
|
+
};
|
|
110
|
+
}
|
|
35
111
|
export function configure(config) {
|
|
36
112
|
wasmLoader = config.loadWasm;
|
|
37
113
|
wasmModule = null;
|
|
@@ -40,52 +116,38 @@ export function configure(config) {
|
|
|
40
116
|
onLoadError = config.onLoadError;
|
|
41
117
|
}
|
|
42
118
|
}
|
|
43
|
-
/**
|
|
44
|
-
* Register a runtime provider that replaces the default Tauri/WASM
|
|
45
|
-
* routing in `invoke()` and `convertFileSrc()`.
|
|
46
|
-
*
|
|
47
|
-
* ```ts
|
|
48
|
-
* import { registerProvider } from "webtau";
|
|
49
|
-
*
|
|
50
|
-
* registerProvider({
|
|
51
|
-
* id: "electrobun",
|
|
52
|
-
* invoke: (cmd, args) => electrobun.ipc.invoke(cmd, args),
|
|
53
|
-
* convertFileSrc: (path) => `electrobun://asset/${path}`,
|
|
54
|
-
* });
|
|
55
|
-
* ```
|
|
56
|
-
*/
|
|
57
119
|
export function registerProvider(provider) {
|
|
58
120
|
registeredProvider = provider;
|
|
59
121
|
}
|
|
60
|
-
/** Returns the currently registered provider, or `null`. */
|
|
61
122
|
export function getProvider() {
|
|
62
123
|
return registeredProvider;
|
|
63
124
|
}
|
|
64
|
-
/** Clears the registered provider (useful for testing). */
|
|
65
125
|
export function resetProvider() {
|
|
66
126
|
registeredProvider = null;
|
|
67
127
|
}
|
|
68
|
-
/**
|
|
69
|
-
* Returns `true` when running inside Tauri.
|
|
70
|
-
* Checks for `window.__TAURI_INTERNALS__` which Tauri injects.
|
|
71
|
-
*/
|
|
72
128
|
export function isTauri() {
|
|
73
|
-
return
|
|
74
|
-
|
|
129
|
+
return typeof window !== "undefined" && "__TAURI_INTERNALS__" in window;
|
|
130
|
+
}
|
|
131
|
+
export function getRuntimeInfo() {
|
|
132
|
+
if (registeredProvider) {
|
|
133
|
+
return deriveRuntimeInfo(registeredProvider);
|
|
134
|
+
}
|
|
135
|
+
if (isTauri()) {
|
|
136
|
+
return {
|
|
137
|
+
id: "tauri",
|
|
138
|
+
platform: "desktop",
|
|
139
|
+
capabilities: { ...tauriCapabilities },
|
|
140
|
+
};
|
|
141
|
+
}
|
|
142
|
+
return {
|
|
143
|
+
id: "wasm",
|
|
144
|
+
platform: "web",
|
|
145
|
+
capabilities: { ...wasmCapabilities },
|
|
146
|
+
};
|
|
75
147
|
}
|
|
76
|
-
/**
|
|
77
|
-
* Lazily loads and caches the WASM module.
|
|
78
|
-
*
|
|
79
|
-
* Loading is deduplicated: concurrent `invoke()` calls while the module is
|
|
80
|
-
* still loading will share the same promise instead of triggering multiple
|
|
81
|
-
* loads. On failure the promise is cleared so the next `invoke()` retries
|
|
82
|
-
* the load (the user may have called `configure()` with a fixed loader).
|
|
83
|
-
*/
|
|
84
148
|
async function getWasmModule() {
|
|
85
|
-
// Fast path: module already loaded and cached.
|
|
86
149
|
if (wasmModule)
|
|
87
150
|
return wasmModule;
|
|
88
|
-
// Deduplicate: if a load is already in flight, piggyback on it.
|
|
89
151
|
if (wasmLoadPromise)
|
|
90
152
|
return wasmLoadPromise;
|
|
91
153
|
if (!wasmLoader) {
|
|
@@ -101,8 +163,6 @@ async function getWasmModule() {
|
|
|
101
163
|
wasmModule = mod;
|
|
102
164
|
return mod;
|
|
103
165
|
}, (err) => {
|
|
104
|
-
// Clear promise so subsequent invoke() calls can retry after the
|
|
105
|
-
// user fixes the issue (e.g. reconfigures with a valid loader).
|
|
106
166
|
wasmLoadPromise = null;
|
|
107
167
|
onLoadError(err);
|
|
108
168
|
throw new WebtauError({
|
|
@@ -115,20 +175,7 @@ async function getWasmModule() {
|
|
|
115
175
|
});
|
|
116
176
|
return wasmLoadPromise;
|
|
117
177
|
}
|
|
118
|
-
/**
|
|
119
|
-
* Universal invoke — same API as `@tauri-apps/api/core`'s `invoke()`.
|
|
120
|
-
*
|
|
121
|
-
* In Tauri mode: delegates to Tauri IPC.
|
|
122
|
-
* In web mode: calls the matching WASM export, passing the args
|
|
123
|
-
* object as a single parameter.
|
|
124
|
-
*
|
|
125
|
-
* ```ts
|
|
126
|
-
* const view = await invoke<WorldView>("get_world_view");
|
|
127
|
-
* const result = await invoke<TickResult>("tick_world");
|
|
128
|
-
* ```
|
|
129
|
-
*/
|
|
130
178
|
export async function invoke(command, args) {
|
|
131
|
-
// 1. Explicit provider — delegate immediately.
|
|
132
179
|
if (registeredProvider) {
|
|
133
180
|
try {
|
|
134
181
|
return await registeredProvider.invoke(command, args);
|
|
@@ -145,20 +192,21 @@ export async function invoke(command, args) {
|
|
|
145
192
|
});
|
|
146
193
|
}
|
|
147
194
|
}
|
|
148
|
-
// 2. Auto-detect Tauri — lazily register a Tauri provider, then delegate.
|
|
149
195
|
if (isTauri()) {
|
|
150
|
-
// Dynamic import — @tauri-apps/api is an optional peer dependency.
|
|
151
|
-
// Only loaded at runtime inside Tauri, never in web builds.
|
|
152
196
|
const mod = await import("@tauri-apps/api/core");
|
|
153
197
|
const tauriProvider = {
|
|
154
198
|
id: "tauri",
|
|
155
199
|
invoke: (cmd, a) => mod.invoke(cmd, a),
|
|
156
200
|
convertFileSrc: (path, protocol) => mod.convertFileSrc(path, protocol),
|
|
201
|
+
runtimeInfo: {
|
|
202
|
+
id: "tauri",
|
|
203
|
+
platform: "desktop",
|
|
204
|
+
capabilities: { ...tauriCapabilities },
|
|
205
|
+
},
|
|
157
206
|
};
|
|
158
207
|
registeredProvider = tauriProvider;
|
|
159
208
|
return tauriProvider.invoke(command, args);
|
|
160
209
|
}
|
|
161
|
-
// 3. WASM path — unchanged.
|
|
162
210
|
const wasm = await getWasmModule();
|
|
163
211
|
const fn = wasm[command];
|
|
164
212
|
if (typeof fn !== "function") {
|
|
@@ -173,7 +221,6 @@ export async function invoke(command, args) {
|
|
|
173
221
|
}
|
|
174
222
|
try {
|
|
175
223
|
const result = args ? fn(args) : fn();
|
|
176
|
-
// wasm_bindgen can return plain values or promises
|
|
177
224
|
if (result instanceof Promise) {
|
|
178
225
|
try {
|
|
179
226
|
return await result;
|
|
@@ -204,25 +251,10 @@ export async function invoke(command, args) {
|
|
|
204
251
|
});
|
|
205
252
|
}
|
|
206
253
|
}
|
|
207
|
-
/**
|
|
208
|
-
* Converts a file path to a URL that can be used to load assets.
|
|
209
|
-
*
|
|
210
|
-
* In Tauri mode: delegates to `@tauri-apps/api/core`'s `convertFileSrc()`,
|
|
211
|
-
* which returns an `asset://` protocol URL.
|
|
212
|
-
* In web mode: returns the path as-is — no protocol conversion is needed
|
|
213
|
-
* since web apps load assets via standard HTTP URLs.
|
|
214
|
-
*
|
|
215
|
-
* ```ts
|
|
216
|
-
* const url = convertFileSrc("/app/data/sprite.png");
|
|
217
|
-
* // web: "/app/data/sprite.png"
|
|
218
|
-
* // Tauri: "asset://localhost/app/data/sprite.png"
|
|
219
|
-
* ```
|
|
220
|
-
*/
|
|
221
254
|
export function convertFileSrc(filePath, protocol) {
|
|
222
255
|
if (registeredProvider) {
|
|
223
256
|
return registeredProvider.convertFileSrc(filePath, protocol);
|
|
224
257
|
}
|
|
225
|
-
// On web, just return the path as-is — no protocol conversion needed
|
|
226
258
|
return filePath;
|
|
227
259
|
}
|
|
228
260
|
//# sourceMappingURL=core.js.map
|
package/dist/core.js.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"AAAA
|
|
1
|
+
{"version":3,"file":"core.js","sourceRoot":"","sources":["../src/core.ts"],"names":[],"mappings":"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"}
|
package/dist/provider.d.ts
CHANGED
|
@@ -1,20 +1,40 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* webtau/provider
|
|
2
|
+
* webtau/provider - Adapter interfaces for runtime providers.
|
|
3
3
|
*
|
|
4
|
-
* Types only
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Types only - no runtime logic. Each interface defines the contract that a
|
|
5
|
+
* runtime provider (Tauri, Electrobun, etc.) must implement for the
|
|
6
|
+
* corresponding webtau module.
|
|
7
7
|
*/
|
|
8
8
|
import type { MessageDialogOptions, OpenDialogOptions, SaveDialogOptions } from "./dialog.js";
|
|
9
9
|
import type { EventCallback, UnlistenFn } from "./event.js";
|
|
10
10
|
import type { CreateDirOptions, FsEntry, ReadDirOptions, RemoveOptions } from "./fs.js";
|
|
11
|
+
export interface RuntimeCapabilities {
|
|
12
|
+
events: boolean;
|
|
13
|
+
fs: boolean;
|
|
14
|
+
dialog: boolean;
|
|
15
|
+
window: boolean;
|
|
16
|
+
task: boolean;
|
|
17
|
+
convertFileSrc: boolean;
|
|
18
|
+
renderMode?: string;
|
|
19
|
+
hasGpuWindow?: boolean;
|
|
20
|
+
hasWgpuView?: boolean;
|
|
21
|
+
hasWebGpu?: boolean;
|
|
22
|
+
}
|
|
23
|
+
export interface RuntimeInfo {
|
|
24
|
+
id: string;
|
|
25
|
+
platform: "web" | "desktop";
|
|
26
|
+
capabilities: RuntimeCapabilities;
|
|
27
|
+
}
|
|
28
|
+
export type RuntimeInfoResolver = RuntimeInfo | (() => RuntimeInfo);
|
|
11
29
|
export interface CoreProvider {
|
|
12
|
-
/** Unique identifier for this runtime (
|
|
30
|
+
/** Unique identifier for this runtime (for example "tauri" or "electrobun"). */
|
|
13
31
|
id: string;
|
|
14
32
|
/** Invoke a command on the runtime backend. */
|
|
15
33
|
invoke<T = unknown>(command: string, args?: Record<string, unknown>): Promise<T>;
|
|
16
34
|
/** Convert a file path to a URL suitable for loading assets. */
|
|
17
35
|
convertFileSrc(filePath: string, protocol?: string): string;
|
|
36
|
+
/** Optional runtime/capability metadata for capability-based branching. */
|
|
37
|
+
runtimeInfo?: RuntimeInfoResolver;
|
|
18
38
|
}
|
|
19
39
|
export interface WindowAdapter {
|
|
20
40
|
isFullscreen(): Promise<boolean>;
|
package/dist/provider.d.ts.map
CHANGED
|
@@ -1 +1 @@
|
|
|
1
|
-
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"AAAA;;;;;;GAMG;AAEH,OAAO,KAAK,EACV,oBAAoB,EACpB,iBAAiB,EACjB,iBAAiB,EAClB,MAAM,aAAa,CAAC;AACrB,OAAO,KAAK,EAAE,aAAa,EAAE,UAAU,EAAE,MAAM,YAAY,CAAC;AAC5D,OAAO,KAAK,EACV,gBAAgB,EAChB,OAAO,EACP,cAAc,EACd,aAAa,EACd,MAAM,SAAS,CAAC;
|
|
1
|
+
{"version":3,"file":"provider.d.ts","sourceRoot":"","sources":["../src/provider.ts"],"names":[],"mappings":"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"}
|
package/dist/provider.js
CHANGED
|
@@ -1,9 +1,9 @@
|
|
|
1
1
|
/**
|
|
2
|
-
* webtau/provider
|
|
2
|
+
* webtau/provider - Adapter interfaces for runtime providers.
|
|
3
3
|
*
|
|
4
|
-
* Types only
|
|
5
|
-
*
|
|
6
|
-
*
|
|
4
|
+
* Types only - no runtime logic. Each interface defines the contract that a
|
|
5
|
+
* runtime provider (Tauri, Electrobun, etc.) must implement for the
|
|
6
|
+
* corresponding webtau module.
|
|
7
7
|
*/
|
|
8
8
|
export {};
|
|
9
9
|
//# sourceMappingURL=provider.js.map
|