@flighthq/host-tauri 0.5.1-next.903.f434bc2 → 0.5.1-next.905.5fbf787

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/README.md CHANGED
@@ -13,5 +13,5 @@ Import the supported application-facing API from `@flighthq/host-tauri`. The `@f
13
13
  This package is part of the locked-version Flight SDK graph. Applications may instead install and import `@flighthq/sdk` when package-level tree shaking is sufficient.
14
14
 
15
15
  - [Flight project](https://github.com/flighthq/flight)
16
- - [Source for @flighthq/host-tauri@0.5.1-next.903.f434bc2](https://github.com/flighthq/flight/tree/f434bc233778d75aeea61995df3a8cfaec459a85/packages/host-tauri)
17
- - [License](https://github.com/flighthq/flight/blob/f434bc233778d75aeea61995df3a8cfaec459a85/LICENSE.md)
16
+ - [Source for @flighthq/host-tauri@0.5.1-next.905.5fbf787](https://github.com/flighthq/flight/tree/5fbf7874064c384307542d68b4dcb6a895ff0dcf/packages/host-tauri)
17
+ - [License](https://github.com/flighthq/flight/blob/5fbf7874064c384307542d68b4dcb6a895ff0dcf/LICENSE.md)
package/package.json CHANGED
@@ -1,6 +1,6 @@
1
1
  {
2
2
  "name": "@flighthq/host-tauri",
3
- "version": "0.5.1-next.903.f434bc2",
3
+ "version": "0.5.1-next.905.5fbf787",
4
4
  "author": "Joshua Granick and other contributors",
5
5
  "license": "MIT",
6
6
  "repository": {
@@ -38,19 +38,19 @@
38
38
  "clean:dist": "tsx ../../scripts/clean-package-dist.ts"
39
39
  },
40
40
  "dependencies": {
41
- "@flighthq/app": "0.5.1-next.903.f434bc2",
42
- "@flighthq/application": "0.5.1-next.903.f434bc2",
43
- "@flighthq/clipboard": "0.5.1-next.903.f434bc2",
44
- "@flighthq/dialog": "0.5.1-next.903.f434bc2",
45
- "@flighthq/entity": "0.5.1-next.903.f434bc2",
46
- "@flighthq/menu": "0.5.1-next.903.f434bc2",
47
- "@flighthq/notification": "0.5.1-next.903.f434bc2",
48
- "@flighthq/platform": "0.5.1-next.903.f434bc2",
49
- "@flighthq/shortcut": "0.5.1-next.903.f434bc2",
50
- "@flighthq/shell": "0.5.1-next.903.f434bc2",
51
- "@flighthq/signals": "0.5.1-next.903.f434bc2",
52
- "@flighthq/tray": "0.5.1-next.903.f434bc2",
53
- "@flighthq/types": "0.5.1-next.903.f434bc2"
41
+ "@flighthq/app": "0.5.1-next.905.5fbf787",
42
+ "@flighthq/application": "0.5.1-next.905.5fbf787",
43
+ "@flighthq/clipboard": "0.5.1-next.905.5fbf787",
44
+ "@flighthq/dialog": "0.5.1-next.905.5fbf787",
45
+ "@flighthq/entity": "0.5.1-next.905.5fbf787",
46
+ "@flighthq/menu": "0.5.1-next.905.5fbf787",
47
+ "@flighthq/notification": "0.5.1-next.905.5fbf787",
48
+ "@flighthq/platform": "0.5.1-next.905.5fbf787",
49
+ "@flighthq/shortcut": "0.5.1-next.905.5fbf787",
50
+ "@flighthq/shell": "0.5.1-next.905.5fbf787",
51
+ "@flighthq/signals": "0.5.1-next.905.5fbf787",
52
+ "@flighthq/tray": "0.5.1-next.905.5fbf787",
53
+ "@flighthq/types": "0.5.1-next.905.5fbf787"
54
54
  },
55
55
  "devDependencies": {
56
56
  "typescript": "^5.3.0"
@@ -2,7 +2,7 @@ import type { TauriApi } from '@flighthq/types/contract';
2
2
  import { EntityRuntimeKey } from '@flighthq/types/contract';
3
3
  import { describe, expect, it } from 'vitest';
4
4
 
5
- import { createTauriAppCapabilities } from './tauriApp';
5
+ import { createTauriAppCapabilities, initializeTauriAppCapabilities } from './tauriApp';
6
6
 
7
7
  const flush = async () => {
8
8
  await Promise.resolve();
@@ -64,3 +64,8 @@ describe('createTauriAppCapabilities', () => {
64
64
  expect(calls).toEqual(['exit', 'relaunch', 'hide', 'show']);
65
65
  });
66
66
  });
67
+ describe('initializeTauriAppCapabilities', () => {
68
+ it('is the construction initializer of createTauriAppCapabilities', () => {
69
+ expect(typeof initializeTauriAppCapabilities).toBe('function');
70
+ });
71
+ });
@@ -1,7 +1,7 @@
1
1
  import type { TauriApi } from '@flighthq/types/contract';
2
2
  import { EntityRuntimeKey } from '@flighthq/types/contract';
3
3
 
4
- import { createTauriClipboardBackend } from './tauriClipboard';
4
+ import { createTauriClipboardBackend, initializeTauriClipboardBackend } from './tauriClipboard';
5
5
 
6
6
  function fakeTauri() {
7
7
  const store = { text: '' };
@@ -59,3 +59,8 @@ describe('createTauriClipboardBackend', () => {
59
59
  expect(await backend.hasText()).toBe(false);
60
60
  });
61
61
  });
62
+ describe('initializeTauriClipboardBackend', () => {
63
+ it('is the construction initializer of createTauriClipboardBackend', () => {
64
+ expect(typeof initializeTauriClipboardBackend).toBe('function');
65
+ });
66
+ });
@@ -6,6 +6,10 @@ import {
6
6
  createTauriFileOpenDialogBackend,
7
7
  createTauriFileSaveDialogBackend,
8
8
  createTauriMessageDialogBackend,
9
+ initializeTauriDirectoryOpenDialogBackend,
10
+ initializeTauriFileOpenDialogBackend,
11
+ initializeTauriFileSaveDialogBackend,
12
+ initializeTauriMessageDialogBackend,
9
13
  } from './tauriDialog';
10
14
 
11
15
  interface DialogCalls {
@@ -159,3 +163,26 @@ describe('createTauriMessageDialogBackend', () => {
159
163
  expect(calls.confirm[0].kind).toBe('warning');
160
164
  });
161
165
  });
166
+ describe('initializeTauriDirectoryOpenDialogBackend', () => {
167
+ it('is the construction initializer of createTauriDirectoryOpenDialogBackend', () => {
168
+ expect(typeof initializeTauriDirectoryOpenDialogBackend).toBe('function');
169
+ });
170
+ });
171
+
172
+ describe('initializeTauriFileOpenDialogBackend', () => {
173
+ it('is the construction initializer of createTauriFileOpenDialogBackend', () => {
174
+ expect(typeof initializeTauriFileOpenDialogBackend).toBe('function');
175
+ });
176
+ });
177
+
178
+ describe('initializeTauriFileSaveDialogBackend', () => {
179
+ it('is the construction initializer of createTauriFileSaveDialogBackend', () => {
180
+ expect(typeof initializeTauriFileSaveDialogBackend).toBe('function');
181
+ });
182
+ });
183
+
184
+ describe('initializeTauriMessageDialogBackend', () => {
185
+ it('is the construction initializer of createTauriMessageDialogBackend', () => {
186
+ expect(typeof initializeTauriMessageDialogBackend).toBe('function');
187
+ });
188
+ });
@@ -2,7 +2,7 @@ import type { MenuApplicationBackend, MenuPopupBackend, MenuSelectBackend } from
2
2
  import type { MenuItemTemplate, TauriApi, TauriMenuItemOptions } from '@flighthq/types/contract';
3
3
  import { EntityRuntimeKey } from '@flighthq/types/contract';
4
4
 
5
- import { createTauriMenuBackends } from './tauriMenu';
5
+ import { createTauriMenuBackends, initializeTauriMenuBackends } from './tauriMenu';
6
6
 
7
7
  function fakeTauri() {
8
8
  const state = {
@@ -205,3 +205,8 @@ function _slots(api: TauriApi): {
205
205
  subscribeSelect: select.subscribe,
206
206
  };
207
207
  }
208
+ describe('initializeTauriMenuBackends', () => {
209
+ it('is the construction initializer of createTauriMenuBackends', () => {
210
+ expect(typeof initializeTauriMenuBackends).toBe('function');
211
+ });
212
+ });
@@ -1,7 +1,7 @@
1
1
  import { EntityRuntimeKey } from '@flighthq/types/contract';
2
2
  import type { TauriApi, TauriNotificationOptions, TauriNotificationPermission } from '@flighthq/types/contract';
3
3
 
4
- import { createTauriNotificationCapabilities } from './tauriNotification';
4
+ import { createTauriNotificationCapabilities, initializeTauriNotificationCapabilities } from './tauriNotification';
5
5
 
6
6
  function fakeTauri(granted = true, permission: TauriNotificationPermission = 'granted') {
7
7
  const sent: TauriNotificationOptions[] = [];
@@ -67,3 +67,8 @@ describe('createTauriNotificationCapabilities', () => {
67
67
  });
68
68
  });
69
69
  });
70
+ describe('initializeTauriNotificationCapabilities', () => {
71
+ it('is the construction initializer of createTauriNotificationCapabilities', () => {
72
+ expect(typeof initializeTauriNotificationCapabilities).toBe('function');
73
+ });
74
+ });
@@ -1,6 +1,6 @@
1
1
  import type { PlatformInfo, TauriApi } from '@flighthq/types/contract';
2
2
 
3
- import { createTauriPlatformBackend } from './tauriPlatform';
3
+ import { createTauriPlatformBackend, initializeTauriPlatformBackend } from './tauriPlatform';
4
4
 
5
5
  function fakeTauri(platform: string): TauriApi {
6
6
  return {
@@ -54,3 +54,8 @@ describe('createTauriPlatformBackend', () => {
54
54
  expect(out.locale).toBe('');
55
55
  });
56
56
  });
57
+ describe('initializeTauriPlatformBackend', () => {
58
+ it('is the construction initializer of createTauriPlatformBackend', () => {
59
+ expect(typeof initializeTauriPlatformBackend).toBe('function');
60
+ });
61
+ });
@@ -3,7 +3,7 @@ import { getPlatformName } from '@flighthq/platform/contract';
3
3
  import { EntityRuntimeKey } from '@flighthq/types/contract';
4
4
  import type { HasSystemPlatform, TauriApi } from '@flighthq/types/contract';
5
5
 
6
- import { registerTauriBackends } from './tauriRegister';
6
+ import { initializeTauriHost, registerTauriBackends } from './tauriRegister';
7
7
 
8
8
  // A fake Tauri API broad enough that every createTauri*Backend constructs without touching missing
9
9
  // members. Backends close over `tauri` and only call in when their methods run (plus the app/
@@ -38,6 +38,12 @@ function fakeTauri(): TauriApi {
38
38
  } as unknown as TauriApi;
39
39
  }
40
40
 
41
+ describe('initializeTauriHost', () => {
42
+ it('is the construction initializer of createTauriHost', () => {
43
+ expect(typeof initializeTauriHost).toBe('function');
44
+ });
45
+ });
46
+
41
47
  describe('registerTauriBackends', () => {
42
48
  it('routes capability seams to the Tauri backends without throwing', async () => {
43
49
  const host = registerTauriBackends(fakeTauri(), 'linux');
@@ -74,7 +80,6 @@ describe('tauri power slot coverage', () => {
74
80
  expect(host.power).toEqual({});
75
81
  });
76
82
  });
77
-
78
83
  describe('tauri power slot coverage', () => {
79
84
  // ★ EXACT SLOT COVERAGE for T: an EMPTY group, not a guessed or stubbed one. An empty group is
80
85
  // honest and forward-compatible; the named gap lives in agents/upstream-host-requirements.md so an
@@ -1,7 +1,12 @@
1
1
  import type { TauriApi } from '@flighthq/types/contract';
2
2
  import { EntityRuntimeKey } from '@flighthq/types/contract';
3
3
 
4
- import { makeTauriShellCapabilities } from './tauriShell';
4
+ import {
5
+ initializeTauriShellExternalBackend,
6
+ initializeTauriShellPathOpenBackend,
7
+ initializeTauriShellPathRevealBackend,
8
+ makeTauriShellCapabilities,
9
+ } from './tauriShell';
5
10
 
6
11
  function fakeTauri(rejection: unknown = NO_REJECTION) {
7
12
  const calls: { openUrl: string[]; openPath: string[]; reveal: string[] } = {
@@ -31,6 +36,25 @@ function fakeTauri(rejection: unknown = NO_REJECTION) {
31
36
  return { tauri, calls };
32
37
  }
33
38
 
39
+ describe('initializeTauriShellExternalBackend', () => {
40
+ it('is the construction initializer of createTauriShellExternalBackend', () => {
41
+ expect(typeof initializeTauriShellExternalBackend).toBe('function');
42
+ });
43
+ });
44
+
45
+ const NO_REJECTION = Symbol('no rejection');
46
+ describe('initializeTauriShellPathOpenBackend', () => {
47
+ it('is the construction initializer of createTauriShellPathOpenBackend', () => {
48
+ expect(typeof initializeTauriShellPathOpenBackend).toBe('function');
49
+ });
50
+ });
51
+
52
+ describe('initializeTauriShellPathRevealBackend', () => {
53
+ it('is the construction initializer of createTauriShellPathRevealBackend', () => {
54
+ expect(typeof initializeTauriShellPathRevealBackend).toBe('function');
55
+ });
56
+ });
57
+
34
58
  describe('makeTauriShellCapabilities', () => {
35
59
  it('constructs exactly three Entity providers', () => {
36
60
  const capabilities = makeTauriShellCapabilities(fakeTauri().tauri);
@@ -71,5 +95,3 @@ describe('makeTauriShellCapabilities', () => {
71
95
  expect(capabilities.trash).toBeUndefined();
72
96
  });
73
97
  });
74
-
75
- const NO_REJECTION = Symbol('no rejection');
@@ -1,7 +1,12 @@
1
1
  import type { TauriApi, TauriShortcutEvent } from '@flighthq/types/contract';
2
2
  import { EntityRuntimeKey } from '@flighthq/types/contract';
3
3
 
4
- import { createTauriShortcutQueryBackend, createTauriShortcutTriggerBackend } from './tauriShortcut';
4
+ import {
5
+ createTauriShortcutQueryBackend,
6
+ createTauriShortcutTriggerBackend,
7
+ initializeTauriShortcutQueryBackend,
8
+ initializeTauriShortcutTriggerBackend,
9
+ } from './tauriShortcut';
5
10
 
6
11
  interface Deferred {
7
12
  readonly promise: Promise<void>;
@@ -101,3 +106,14 @@ describe('createTauriShortcutTriggerBackend', () => {
101
106
  expect(fake.unregisterCalls.filter((accelerator) => accelerator === 'Control+B')).toHaveLength(1);
102
107
  });
103
108
  });
109
+ describe('initializeTauriShortcutQueryBackend', () => {
110
+ it('is the construction initializer of createTauriShortcutQueryBackend', () => {
111
+ expect(typeof initializeTauriShortcutQueryBackend).toBe('function');
112
+ });
113
+ });
114
+
115
+ describe('initializeTauriShortcutTriggerBackend', () => {
116
+ it('is the construction initializer of createTauriShortcutTriggerBackend', () => {
117
+ expect(typeof initializeTauriShortcutTriggerBackend).toBe('function');
118
+ });
119
+ });
@@ -18,7 +18,7 @@ import type {
18
18
  } from '@flighthq/types/contract';
19
19
  import { describe, expect, it, vi } from 'vitest';
20
20
 
21
- import { createTauriTrayCapabilities } from './tauriTray';
21
+ import { createTauriTrayCapabilities, initializeTauriTrayCapabilities } from './tauriTray';
22
22
 
23
23
  interface FakeIcon extends TauriTrayIcon {
24
24
  closeFailures: number;
@@ -255,3 +255,8 @@ describe('createTauriTrayCapabilities', () => {
255
255
  expect(icons[0].closed).toBe(1);
256
256
  });
257
257
  });
258
+ describe('initializeTauriTrayCapabilities', () => {
259
+ it('is the construction initializer of createTauriTrayCapabilities', () => {
260
+ expect(typeof initializeTauriTrayCapabilities).toBe('function');
261
+ });
262
+ });
@@ -3,7 +3,7 @@ import { connectSignal } from '@flighthq/signals/contract';
3
3
  import { EntityRuntimeKey } from '@flighthq/types/contract';
4
4
  import type { TauriApi, TauriLogicalSizeLike, TauriPhysicalPositionLike } from '@flighthq/types/contract';
5
5
 
6
- import { createTauriWindowBackend } from './tauriWindow';
6
+ import { createTauriWindowBackend, initializeTauriWindowBackend } from './tauriWindow';
7
7
 
8
8
  interface FakeWindowState {
9
9
  calls: { method: string; args: unknown[] }[];
@@ -288,3 +288,8 @@ describe('createTauriWindowBackend close when the platform close rejects', () =>
288
288
  }
289
289
  });
290
290
  });
291
+ describe('initializeTauriWindowBackend', () => {
292
+ it('is the construction initializer of createTauriWindowBackend', () => {
293
+ expect(typeof initializeTauriWindowBackend).toBe('function');
294
+ });
295
+ });