@flighthq/host-electron 0.5.1-next.920.da8f530 → 0.6.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.
Files changed (137) hide show
  1. package/README.md +2 -2
  2. package/dist/contract.d.ts +19 -24
  3. package/dist/contract.d.ts.map +1 -1
  4. package/dist/contract.js +18 -24
  5. package/dist/contract.js.map +1 -1
  6. package/dist/electronApp.d.ts +62 -34
  7. package/dist/electronApp.d.ts.map +1 -1
  8. package/dist/electronApp.js +175 -234
  9. package/dist/electronApp.js.map +1 -1
  10. package/dist/electronClipboard.d.ts +7 -5
  11. package/dist/electronClipboard.d.ts.map +1 -1
  12. package/dist/electronClipboard.js +91 -66
  13. package/dist/electronClipboard.js.map +1 -1
  14. package/dist/electronDefaultHostGroups.d.ts +59 -0
  15. package/dist/electronDefaultHostGroups.d.ts.map +1 -0
  16. package/dist/electronDefaultHostGroups.js +109 -0
  17. package/dist/electronDefaultHostGroups.js.map +1 -0
  18. package/dist/electronDialog.d.ts +12 -9
  19. package/dist/electronDialog.d.ts.map +1 -1
  20. package/dist/electronDialog.js +28 -21
  21. package/dist/electronDialog.js.map +1 -1
  22. package/dist/electronIpc.d.ts +13 -11
  23. package/dist/electronIpc.d.ts.map +1 -1
  24. package/dist/electronIpc.js +32 -26
  25. package/dist/electronIpc.js.map +1 -1
  26. package/dist/electronMenu.d.ts +12 -6
  27. package/dist/electronMenu.d.ts.map +1 -1
  28. package/dist/electronMenu.js +41 -30
  29. package/dist/electronMenu.js.map +1 -1
  30. package/dist/electronMenuTemplate.d.ts +2 -1
  31. package/dist/electronMenuTemplate.d.ts.map +1 -1
  32. package/dist/electronMenuTemplate.js.map +1 -1
  33. package/dist/electronNotification.d.ts +25 -7
  34. package/dist/electronNotification.d.ts.map +1 -1
  35. package/dist/electronNotification.js +39 -16
  36. package/dist/electronNotification.js.map +1 -1
  37. package/dist/electronPlatform.d.ts +5 -3
  38. package/dist/electronPlatform.d.ts.map +1 -1
  39. package/dist/electronPlatform.js +9 -7
  40. package/dist/electronPlatform.js.map +1 -1
  41. package/dist/electronPower.d.ts +22 -11
  42. package/dist/electronPower.d.ts.map +1 -1
  43. package/dist/electronPower.js +48 -59
  44. package/dist/electronPower.js.map +1 -1
  45. package/dist/electronProtocol.d.ts +16 -8
  46. package/dist/electronProtocol.d.ts.map +1 -1
  47. package/dist/electronProtocol.js +45 -28
  48. package/dist/electronProtocol.js.map +1 -1
  49. package/dist/electronRegister.d.ts +5 -7
  50. package/dist/electronRegister.d.ts.map +1 -1
  51. package/dist/electronRegister.js +72 -99
  52. package/dist/electronRegister.js.map +1 -1
  53. package/dist/electronScreen.d.ts +7 -6
  54. package/dist/electronScreen.d.ts.map +1 -1
  55. package/dist/electronScreen.js +17 -14
  56. package/dist/electronScreen.js.map +1 -1
  57. package/dist/electronShell.d.ts +16 -8
  58. package/dist/electronShell.d.ts.map +1 -1
  59. package/dist/electronShell.js +50 -43
  60. package/dist/electronShell.js.map +1 -1
  61. package/dist/electronShortcut.d.ts +6 -4
  62. package/dist/electronShortcut.d.ts.map +1 -1
  63. package/dist/electronShortcut.js +16 -10
  64. package/dist/electronShortcut.js.map +1 -1
  65. package/dist/electronStorage.d.ts +5 -3
  66. package/dist/electronStorage.d.ts.map +1 -1
  67. package/dist/electronStorage.js +9 -7
  68. package/dist/electronStorage.js.map +1 -1
  69. package/dist/electronTray.d.ts +38 -21
  70. package/dist/electronTray.d.ts.map +1 -1
  71. package/dist/electronTray.js +110 -76
  72. package/dist/electronTray.js.map +1 -1
  73. package/dist/electronUpdater.d.ts +6 -3
  74. package/dist/electronUpdater.d.ts.map +1 -1
  75. package/dist/electronUpdater.js +10 -7
  76. package/dist/electronUpdater.js.map +1 -1
  77. package/dist/electronWindow.d.ts +23 -7
  78. package/dist/electronWindow.d.ts.map +1 -1
  79. package/dist/electronWindow.js +234 -152
  80. package/dist/electronWindow.js.map +1 -1
  81. package/dist/index.d.ts +19 -1
  82. package/dist/index.d.ts.map +1 -1
  83. package/dist/index.js +18 -1
  84. package/dist/index.js.map +1 -1
  85. package/dist/types/ElectronApi.d.ts +393 -0
  86. package/dist/types/ElectronApi.d.ts.map +1 -0
  87. package/dist/types/ElectronApi.js +20 -0
  88. package/dist/types/ElectronApi.js.map +1 -0
  89. package/dist/types/ElectronAppCapabilitiesFor.d.ts +8 -0
  90. package/dist/types/ElectronAppCapabilitiesFor.d.ts.map +1 -0
  91. package/dist/types/ElectronAppCapabilitiesFor.js +2 -0
  92. package/dist/types/ElectronAppCapabilitiesFor.js.map +1 -0
  93. package/dist/types/ElectronHost.d.ts +43 -0
  94. package/dist/types/ElectronHost.d.ts.map +1 -0
  95. package/dist/types/ElectronHost.js +2 -0
  96. package/dist/types/ElectronHost.js.map +1 -0
  97. package/dist/types/ElectronHostGroups.d.ts +85 -0
  98. package/dist/types/ElectronHostGroups.d.ts.map +1 -0
  99. package/dist/types/ElectronHostGroups.js +2 -0
  100. package/dist/types/ElectronHostGroups.js.map +1 -0
  101. package/dist/types/ElectronHostOptions.d.ts +7 -0
  102. package/dist/types/ElectronHostOptions.d.ts.map +1 -0
  103. package/dist/types/ElectronHostOptions.js +2 -0
  104. package/dist/types/ElectronHostOptions.js.map +1 -0
  105. package/dist/types/ElectronProtocolCapabilities.d.ts +3 -0
  106. package/dist/types/ElectronProtocolCapabilities.d.ts.map +1 -0
  107. package/dist/types/ElectronProtocolCapabilities.js +2 -0
  108. package/dist/types/ElectronProtocolCapabilities.js.map +1 -0
  109. package/dist/types/ElectronTrayCapabilitiesFor.d.ts +7 -0
  110. package/dist/types/ElectronTrayCapabilitiesFor.d.ts.map +1 -0
  111. package/dist/types/ElectronTrayCapabilitiesFor.js +2 -0
  112. package/dist/types/ElectronTrayCapabilitiesFor.js.map +1 -0
  113. package/dist/types/index.d.ts +7 -0
  114. package/dist/types/index.d.ts.map +1 -0
  115. package/dist/types/index.js +7 -0
  116. package/dist/types/index.js.map +1 -0
  117. package/package.json +42 -21
  118. package/src/electronApp.test.ts +158 -131
  119. package/src/electronClipboard.test.ts +40 -13
  120. package/src/electronDefaultHostGroups.test.ts +148 -0
  121. package/src/electronDialog.test.ts +55 -53
  122. package/src/electronHostTreeShaking.test.ts +51 -0
  123. package/src/electronIpc.test.ts +47 -66
  124. package/src/electronMenu.test.ts +61 -47
  125. package/src/electronMenuTemplate.test.ts +1 -1
  126. package/src/electronNotification.test.ts +71 -21
  127. package/src/electronPlatform.test.ts +17 -12
  128. package/src/electronPower.test.ts +112 -88
  129. package/src/electronProtocol.test.ts +68 -35
  130. package/src/electronRegister.test.ts +280 -26
  131. package/src/electronScreen.test.ts +34 -25
  132. package/src/electronShell.test.ts +99 -59
  133. package/src/electronShortcut.test.ts +22 -19
  134. package/src/electronStorage.test.ts +26 -24
  135. package/src/electronTray.test.ts +225 -109
  136. package/src/electronUpdater.test.ts +26 -19
  137. package/src/electronWindow.test.ts +229 -101
@@ -1,12 +1,14 @@
1
- import type { ElectronApi, ElectronIpcRenderer, ElectronIpcTarget, IpcHandleBackend, IpcInvokeBackend, IpcMessageBackend, IpcSendBackend, IpcTargetedSendBackend, EntityConstruction } from '@flighthq/types/contract';
2
- export declare function createElectronIpcHandleBackend(electron: ElectronApi): IpcHandleBackend;
3
- export declare function createElectronIpcInvokeBackend(ipcRenderer: ElectronIpcRenderer): IpcInvokeBackend;
4
- export declare function createElectronIpcMessageBackend(electron: ElectronApi): IpcMessageBackend;
5
- export declare function createElectronIpcSendBackend(ipcRenderer: ElectronIpcRenderer): IpcSendBackend;
6
- export declare function createElectronIpcTargetedSendBackend<Target extends ElectronIpcTarget = ElectronIpcTarget>(): IpcTargetedSendBackend<Target>;
7
- export declare function initializeElectronIpcHandleBackend(out: EntityConstruction<IpcHandleBackend>, electron: ElectronApi): void;
8
- export declare function initializeElectronIpcInvokeBackend(out: EntityConstruction<IpcInvokeBackend>, ipcRenderer: ElectronIpcRenderer): void;
9
- export declare function initializeElectronIpcMessageBackend(out: EntityConstruction<IpcMessageBackend>, electron: ElectronApi): void;
10
- export declare function initializeElectronIpcSendBackend(out: EntityConstruction<IpcSendBackend>, ipcRenderer: ElectronIpcRenderer): void;
11
- export declare function initializeElectronIpcTargetedSendBackend<Target extends ElectronIpcTarget = ElectronIpcTarget>(out: EntityConstruction<IpcTargetedSendBackend<Target>>): void;
1
+ import type { HostIpcCapabilities, HostIpcHandleCapability, HostIpcInvokeCapability, HostIpcMessageCapability, HostIpcSendCapability, HostIpcTargetedSendCapability } from '@flighthq/ipc/contract';
2
+ import type { ElectronApi, ElectronIpcRenderer, ElectronIpcTarget } from './types/index.ts';
3
+ export declare function electronHostIpc(electron: ElectronApi): Required<Pick<HostIpcCapabilities, 'handle' | 'message' | 'targetedSend'>>;
4
+ export declare function electronHostIpcHandle(electron: ElectronApi): HostIpcHandleCapability;
5
+ export declare function electronHostIpcInvoke(ipcRenderer: ElectronIpcRenderer): HostIpcInvokeCapability;
6
+ export declare function electronHostIpcMessage(electron: ElectronApi): HostIpcMessageCapability;
7
+ export declare function electronHostIpcSend(ipcRenderer: ElectronIpcRenderer): HostIpcSendCapability;
8
+ export declare function electronHostIpcTargetedSend<Target extends ElectronIpcTarget = ElectronIpcTarget>(): HostIpcTargetedSendCapability<Target>;
9
+ export declare function populateElectronHostIpcHandle(out: HostIpcHandleCapability, electron: ElectronApi): void;
10
+ export declare function populateElectronHostIpcInvoke(out: HostIpcInvokeCapability, ipcRenderer: ElectronIpcRenderer): void;
11
+ export declare function populateElectronHostIpcMessage(out: HostIpcMessageCapability, electron: ElectronApi): void;
12
+ export declare function populateElectronHostIpcSend(out: HostIpcSendCapability, ipcRenderer: ElectronIpcRenderer): void;
13
+ export declare function populateElectronHostIpcTargetedSend<Target extends ElectronIpcTarget = ElectronIpcTarget>(out: HostIpcTargetedSendCapability<Target>): void;
12
14
  //# sourceMappingURL=electronIpc.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"electronIpc.d.ts","sourceRoot":"","sources":["../src/electronIpc.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,mBAAmB,EACnB,iBAAiB,EACjB,gBAAgB,EAChB,gBAAgB,EAChB,iBAAiB,EACjB,cAAc,EACd,sBAAsB,EACtB,kBAAkB,EACnB,MAAM,0BAA0B,CAAC;AAKlC,wBAAgB,8BAA8B,CAAC,QAAQ,EAAE,WAAW,GAAG,gBAAgB,CAItF;AAED,wBAAgB,8BAA8B,CAAC,WAAW,EAAE,mBAAmB,GAAG,gBAAgB,CAIjG;AAED,wBAAgB,+BAA+B,CAAC,QAAQ,EAAE,WAAW,GAAG,iBAAiB,CAIxF;AAED,wBAAgB,4BAA4B,CAAC,WAAW,EAAE,mBAAmB,GAAG,cAAc,CAI7F;AAED,wBAAgB,oCAAoC,CAClD,MAAM,SAAS,iBAAiB,GAAG,iBAAiB,KACjD,sBAAsB,CAAC,MAAM,CAAC,CAIlC;AAED,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,EACzC,QAAQ,EAAE,WAAW,GACpB,IAAI,CAWN;AAED,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,EACzC,WAAW,EAAE,mBAAmB,GAC/B,IAAI,CAIN;AAED,wBAAgB,mCAAmC,CACjD,GAAG,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,EAC1C,QAAQ,EAAE,WAAW,GACpB,IAAI,CAON;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,kBAAkB,CAAC,cAAc,CAAC,EACvC,WAAW,EAAE,mBAAmB,GAC/B,IAAI,CAIN;AAED,wBAAgB,wCAAwC,CAAC,MAAM,SAAS,iBAAiB,GAAG,iBAAiB,EAC3G,GAAG,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,MAAM,CAAC,CAAC,GACtD,IAAI,CAIN"}
1
+ {"version":3,"file":"electronIpc.d.ts","sourceRoot":"","sources":["../src/electronIpc.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,mBAAmB,EACnB,uBAAuB,EACvB,uBAAuB,EACvB,wBAAwB,EACxB,qBAAqB,EACrB,6BAA6B,EAC9B,MAAM,wBAAwB,CAAC;AAEhC,OAAO,KAAK,EAAE,WAAW,EAAE,mBAAmB,EAAE,iBAAiB,EAAE,MAAM,kBAAkB,CAAC;AAK5F,wBAAgB,eAAe,CAC7B,QAAQ,EAAE,WAAW,GACpB,QAAQ,CAAC,IAAI,CAAC,mBAAmB,EAAE,QAAQ,GAAG,SAAS,GAAG,cAAc,CAAC,CAAC,CAM5E;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,GAAG,uBAAuB,CAIpF;AAED,wBAAgB,qBAAqB,CAAC,WAAW,EAAE,mBAAmB,GAAG,uBAAuB,CAI/F;AAED,wBAAgB,sBAAsB,CAAC,QAAQ,EAAE,WAAW,GAAG,wBAAwB,CAItF;AAED,wBAAgB,mBAAmB,CAAC,WAAW,EAAE,mBAAmB,GAAG,qBAAqB,CAI3F;AAED,wBAAgB,2BAA2B,CACzC,MAAM,SAAS,iBAAiB,GAAG,iBAAiB,KACjD,6BAA6B,CAAC,MAAM,CAAC,CAIzC;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,uBAAuB,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAWvG;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,uBAAuB,EAAE,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAIlH;AAED,wBAAgB,8BAA8B,CAAC,GAAG,EAAE,wBAAwB,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAOzG;AAED,wBAAgB,2BAA2B,CAAC,GAAG,EAAE,qBAAqB,EAAE,WAAW,EAAE,mBAAmB,GAAG,IAAI,CAI9G;AAED,wBAAgB,mCAAmC,CAAC,MAAM,SAAS,iBAAiB,GAAG,iBAAiB,EACtG,GAAG,EAAE,6BAA6B,CAAC,MAAM,CAAC,GACzC,IAAI,CAIN"}
@@ -1,32 +1,38 @@
1
- import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
1
  // Electron's process sides expose different capability vectors. These constructors keep the slots
3
2
  // independent so a renderer host carries send/invoke while a main host carries message/handle/targetedSend.
4
- export function createElectronIpcHandleBackend(electron) {
5
- const out = allocateEntity();
6
- initializeElectronIpcHandleBackend(out, electron);
7
- return finishEntity(out);
3
+ export function electronHostIpc(electron) {
4
+ return {
5
+ handle: electronHostIpcHandle(electron),
6
+ message: electronHostIpcMessage(electron),
7
+ targetedSend: electronHostIpcTargetedSend(),
8
+ };
9
+ }
10
+ export function electronHostIpcHandle(electron) {
11
+ const out = {};
12
+ populateElectronHostIpcHandle(out, electron);
13
+ return out;
8
14
  }
9
- export function createElectronIpcInvokeBackend(ipcRenderer) {
10
- const out = allocateEntity();
11
- initializeElectronIpcInvokeBackend(out, ipcRenderer);
12
- return finishEntity(out);
15
+ export function electronHostIpcInvoke(ipcRenderer) {
16
+ const out = {};
17
+ populateElectronHostIpcInvoke(out, ipcRenderer);
18
+ return out;
13
19
  }
14
- export function createElectronIpcMessageBackend(electron) {
15
- const out = allocateEntity();
16
- initializeElectronIpcMessageBackend(out, electron);
17
- return finishEntity(out);
20
+ export function electronHostIpcMessage(electron) {
21
+ const out = {};
22
+ populateElectronHostIpcMessage(out, electron);
23
+ return out;
18
24
  }
19
- export function createElectronIpcSendBackend(ipcRenderer) {
20
- const out = allocateEntity();
21
- initializeElectronIpcSendBackend(out, ipcRenderer);
22
- return finishEntity(out);
25
+ export function electronHostIpcSend(ipcRenderer) {
26
+ const out = {};
27
+ populateElectronHostIpcSend(out, ipcRenderer);
28
+ return out;
23
29
  }
24
- export function createElectronIpcTargetedSendBackend() {
25
- const out = allocateEntity();
26
- initializeElectronIpcTargetedSendBackend(out);
27
- return finishEntity(out);
30
+ export function electronHostIpcTargetedSend() {
31
+ const out = {};
32
+ populateElectronHostIpcTargetedSend(out);
33
+ return out;
28
34
  }
29
- export function initializeElectronIpcHandleBackend(out, electron) {
35
+ export function populateElectronHostIpcHandle(out, electron) {
30
36
  const ipcMain = electron.ipcMain;
31
37
  out.handle = (channel, handler) => {
32
38
  ipcMain.handle(channel, (_event, ...args) => handler(...args));
@@ -39,12 +45,12 @@ export function initializeElectronIpcHandleBackend(out, electron) {
39
45
  };
40
46
  };
41
47
  }
42
- export function initializeElectronIpcInvokeBackend(out, ipcRenderer) {
48
+ export function populateElectronHostIpcInvoke(out, ipcRenderer) {
43
49
  out.invoke = (channel, args) => {
44
50
  return ipcRenderer.invoke(channel, ...args);
45
51
  };
46
52
  }
47
- export function initializeElectronIpcMessageBackend(out, electron) {
53
+ export function populateElectronHostIpcMessage(out, electron) {
48
54
  const ipcMain = electron.ipcMain;
49
55
  out.subscribe = (channel, listener) => {
50
56
  const handler = (_event, ...args) => listener(args);
@@ -52,12 +58,12 @@ export function initializeElectronIpcMessageBackend(out, electron) {
52
58
  return () => ipcMain.removeListener(channel, handler);
53
59
  };
54
60
  }
55
- export function initializeElectronIpcSendBackend(out, ipcRenderer) {
61
+ export function populateElectronHostIpcSend(out, ipcRenderer) {
56
62
  out.send = (channel, args) => {
57
63
  ipcRenderer.send(channel, ...args);
58
64
  };
59
65
  }
60
- export function initializeElectronIpcTargetedSendBackend(out) {
66
+ export function populateElectronHostIpcTargetedSend(out) {
61
67
  out.send = (target, channel, args) => {
62
68
  target.send(channel, ...args);
63
69
  };
@@ -1 +1 @@
1
- {"version":3,"file":"electronIpc.js","sourceRoot":"","sources":["../src/electronIpc.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electronIpc.js","sourceRoot":"","sources":["../src/electronIpc.ts"],"names":[],"mappings":"AAWA,kGAAkG;AAClG,4GAA4G;AAE5G,MAAM,UAAU,eAAe,CAC7B,QAAqB;IAErB,OAAO;QACL,MAAM,EAAE,qBAAqB,CAAC,QAAQ,CAAC;QACvC,OAAO,EAAE,sBAAsB,CAAC,QAAQ,CAAC;QACzC,YAAY,EAAE,2BAA2B,EAAqB;KAC/D,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAqB;IACzD,MAAM,GAAG,GAAG,EAA6B,CAAC;IAC1C,6BAA6B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,WAAgC;IACpE,MAAM,GAAG,GAAG,EAA6B,CAAC;IAC1C,6BAA6B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAChD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,sBAAsB,CAAC,QAAqB;IAC1D,MAAM,GAAG,GAAG,EAA8B,CAAC;IAC3C,8BAA8B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,WAAgC;IAClE,MAAM,GAAG,GAAG,EAA2B,CAAC;IACxC,2BAA2B,CAAC,GAAG,EAAE,WAAW,CAAC,CAAC;IAC9C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,2BAA2B;IAGzC,MAAM,GAAG,GAAG,EAA2C,CAAC;IACxD,mCAAmC,CAAC,GAAG,CAAC,CAAC;IACzC,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAA4B,EAAE,QAAqB;IAC/F,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,GAAG,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,OAAO,EAAE,EAAE;QAChC,OAAO,CAAC,MAAM,CAAC,OAAO,EAAE,CAAC,MAAM,EAAE,GAAG,IAAI,EAAE,EAAE,CAAC,OAAO,CAAC,GAAG,IAAI,CAAC,CAAC,CAAC;QAC/D,IAAI,MAAM,GAAG,IAAI,CAAC;QAClB,OAAO,GAAG,EAAE;YACV,IAAI,CAAC,MAAM;gBAAE,OAAO;YACpB,MAAM,GAAG,KAAK,CAAC;YACf,OAAO,CAAC,aAAa,CAAC,OAAO,CAAC,CAAC;QACjC,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAA4B,EAAE,WAAgC;IAC1G,GAAG,CAAC,MAAM,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QAC7B,OAAO,WAAW,CAAC,MAAM,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAC9C,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAAC,GAA6B,EAAE,QAAqB;IACjG,MAAM,OAAO,GAAG,QAAQ,CAAC,OAAO,CAAC;IACjC,GAAG,CAAC,SAAS,GAAG,CAAC,OAAO,EAAE,QAAQ,EAAE,EAAE;QACpC,MAAM,OAAO,GAAG,CAAC,MAAe,EAAE,GAAG,IAAe,EAAQ,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,CAAC;QAC9E,OAAO,CAAC,EAAE,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;QAC7B,OAAO,GAAG,EAAE,CAAC,OAAO,CAAC,cAAc,CAAC,OAAO,EAAE,OAAO,CAAC,CAAC;IACxD,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,2BAA2B,CAAC,GAA0B,EAAE,WAAgC;IACtG,GAAG,CAAC,IAAI,GAAG,CAAC,OAAO,EAAE,IAAI,EAAE,EAAE;QAC3B,WAAW,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IACrC,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,mCAAmC,CACjD,GAA0C;IAE1C,GAAG,CAAC,IAAI,GAAG,CAAC,MAAM,EAAE,OAAO,EAAE,IAAI,EAAE,EAAE;QACnC,MAAM,CAAC,IAAI,CAAC,OAAO,EAAE,GAAG,IAAI,CAAC,CAAC;IAChC,CAAC,CAAC;AACJ,CAAC"}
@@ -1,12 +1,18 @@
1
- import type { ElectronApi, ElectronMenuCapabilities, EntityConstruction, MenuApplicationBackend, MenuPopupBackend, MenuSelectBackend } from '@flighthq/types/contract';
2
- export declare function createElectronMenuBackends(electron: ElectronApi): ElectronMenuCapabilities;
3
- export declare function initializeElectronMenuCapabilities(out: EntityConstruction<ElectronMenuCapabilities>, application: MenuApplicationBackend, popup: MenuPopupBackend, select: MenuSelectBackend): void;
4
- export declare function initializeMenuApplicationBackend(out: EntityConstruction<MenuApplicationBackend>, electron: ElectronApi, menuState: {
1
+ import type { ElectronMenuCapabilities, HostAppMenuCapability, HostMenuPopupCapability, HostMenuSelectCapability } from '@flighthq/menu/contract';
2
+ import type { ElectronApi } from './types/index.ts';
3
+ export declare function electronHostAppMenu(electron: ElectronApi): HostAppMenuCapability;
4
+ export declare function electronHostMenu(electron: ElectronApi): ElectronMenuCapabilities;
5
+ export declare function electronHostMenuPopup(electron: ElectronApi): HostMenuPopupCapability;
6
+ export declare function electronHostMenuSelect(): HostMenuSelectCapability;
7
+ export declare function populateElectronHostAppMenu(out: HostAppMenuCapability, electron: ElectronApi, menuState: {
5
8
  selectListener: ((id: string) => void) | null;
6
9
  destroyed: boolean;
7
10
  }): void;
8
- export declare function initializeMenuPopupBackend(out: EntityConstruction<MenuPopupBackend>, electron: ElectronApi): void;
9
- export declare function initializeMenuSelectBackend(out: EntityConstruction<MenuSelectBackend>, menuState: {
11
+ export declare function populateElectronHostMenu(out: {
12
+ -readonly [K in keyof ElectronMenuCapabilities]: ElectronMenuCapabilities[K];
13
+ }, app: HostAppMenuCapability, popup: HostMenuPopupCapability, select: HostMenuSelectCapability): void;
14
+ export declare function populateElectronHostMenuPopup(out: HostMenuPopupCapability, electron: ElectronApi): void;
15
+ export declare function populateElectronHostMenuSelect(out: HostMenuSelectCapability, menuState: {
10
16
  selectListener: ((id: string) => void) | null;
11
17
  destroyed: boolean;
12
18
  }): void;
@@ -1 +1 @@
1
- {"version":3,"file":"electronMenu.d.ts","sourceRoot":"","sources":["../src/electronMenu.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EACV,WAAW,EACX,wBAAwB,EACxB,kBAAkB,EAClB,sBAAsB,EACtB,gBAAgB,EAChB,iBAAiB,EAClB,MAAM,0BAA0B,CAAC;AAclC,wBAAgB,0BAA0B,CAAC,QAAQ,EAAE,WAAW,GAAG,wBAAwB,CAoB1F;AAED,wBAAgB,kCAAkC,CAChD,GAAG,EAAE,kBAAkB,CAAC,wBAAwB,CAAC,EACjD,WAAW,EAAE,sBAAsB,EACnC,KAAK,EAAE,gBAAgB,EACvB,MAAM,EAAE,iBAAiB,GACxB,IAAI,CAIN;AAED,wBAAgB,gCAAgC,CAC9C,GAAG,EAAE,kBAAkB,CAAC,sBAAsB,CAAC,EAC/C,QAAQ,EAAE,WAAW,EACrB,SAAS,EAAE;IAAE,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAC/E,IAAI,CAcN;AAED,wBAAgB,0BAA0B,CAAC,GAAG,EAAE,kBAAkB,CAAC,gBAAgB,CAAC,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAcjH;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,kBAAkB,CAAC,iBAAiB,CAAC,EAC1C,SAAS,EAAE;IAAE,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAC/E,IAAI,CAON"}
1
+ {"version":3,"file":"electronMenu.d.ts","sourceRoot":"","sources":["../src/electronMenu.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EACV,wBAAwB,EACxB,qBAAqB,EACrB,uBAAuB,EACvB,wBAAwB,EACzB,MAAM,yBAAyB,CAAC;AAGjC,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAuBpD,wBAAgB,mBAAmB,CAAC,QAAQ,EAAE,WAAW,GAAG,qBAAqB,CAEhF;AAYD,wBAAgB,gBAAgB,CAAC,QAAQ,EAAE,WAAW,GAAG,wBAAwB,CAQhF;AAED,wBAAgB,qBAAqB,CAAC,QAAQ,EAAE,WAAW,GAAG,uBAAuB,CAIpF;AAED,wBAAgB,sBAAsB,IAAI,wBAAwB,CAEjE;AAED,wBAAgB,2BAA2B,CACzC,GAAG,EAAE,qBAAqB,EAC1B,QAAQ,EAAE,WAAW,EACrB,SAAS,EAAE;IAAE,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAC/E,IAAI,CAcN;AAED,wBAAgB,wBAAwB,CACtC,GAAG,EAAE;IAAE,CAAC,UAAU,CAAC,IAAI,MAAM,wBAAwB,GAAG,wBAAwB,CAAC,CAAC,CAAC;CAAE,EACrF,GAAG,EAAE,qBAAqB,EAC1B,KAAK,EAAE,uBAAuB,EAC9B,MAAM,EAAE,wBAAwB,GAC/B,IAAI,CAIN;AAED,wBAAgB,6BAA6B,CAAC,GAAG,EAAE,uBAAuB,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAcvG;AAED,wBAAgB,8BAA8B,CAC5C,GAAG,EAAE,wBAAwB,EAC7B,SAAS,EAAE;IAAE,cAAc,EAAE,CAAC,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,CAAC,GAAG,IAAI,CAAC;IAAC,SAAS,EAAE,OAAO,CAAA;CAAE,GAC/E,IAAI,CAON"}
@@ -1,5 +1,20 @@
1
- import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
- import { toElectronTemplate } from './electronMenuTemplate';
1
+ import { toElectronTemplate } from './electronMenuTemplate.js';
2
+ function menuState() {
3
+ return { destroyed: false, selectListener: null };
4
+ }
5
+ function menuApplication(electron, state) {
6
+ const out = {};
7
+ populateElectronHostAppMenu(out, electron, state);
8
+ return out;
9
+ }
10
+ function menuSelect(state) {
11
+ const out = {};
12
+ populateElectronHostMenuSelect(out, state);
13
+ return out;
14
+ }
15
+ export function electronHostAppMenu(electron) {
16
+ return menuApplication(electron, menuState());
17
+ }
3
18
  // Maps Flight's menu slots onto Electron's Menu module. Flight menu items are plain templates with a
4
19
  // stable `id`; Electron delivers selection through per-item `click` callbacks, so the seam funnels those
5
20
  // clicks back through an explicit onSelect. Application-menu clicks go to the listener registered on the
@@ -10,33 +25,24 @@ import { toElectronTemplate } from './electronMenuTemplate';
10
25
  // separate SLOTS because their shapes are incompatible — a command returning boolean and an event
11
26
  // subscription returning an unsubscribe — but a caller taking only one of them still gets a coherent
12
27
  // pair, because both read the same closure.
13
- export function createElectronMenuBackends(electron) {
14
- const menuState = { selectListener: null, destroyed: false };
15
- const application = (() => {
16
- const b = allocateEntity();
17
- initializeMenuApplicationBackend(b, electron, menuState);
18
- return finishEntity(b);
19
- })();
20
- const popup = (() => {
21
- const b = allocateEntity();
22
- initializeMenuPopupBackend(b, electron);
23
- return finishEntity(b);
24
- })();
25
- const select = (() => {
26
- const b = allocateEntity();
27
- initializeMenuSelectBackend(b, menuState);
28
- return finishEntity(b);
29
- })();
30
- const out = allocateEntity();
31
- initializeElectronMenuCapabilities(out, application, popup, select);
32
- return finishEntity(out);
28
+ export function electronHostMenu(electron) {
29
+ const state = menuState();
30
+ const application = menuApplication(electron, state);
31
+ const popup = electronHostMenuPopup(electron);
32
+ const select = menuSelect(state);
33
+ const out = {};
34
+ populateElectronHostMenu(out, application, popup, select);
35
+ return Object.freeze(out);
33
36
  }
34
- export function initializeElectronMenuCapabilities(out, application, popup, select) {
35
- out.application = application;
36
- out.popup = popup;
37
- out.select = select;
37
+ export function electronHostMenuPopup(electron) {
38
+ const out = {};
39
+ populateElectronHostMenuPopup(out, electron);
40
+ return out;
41
+ }
42
+ export function electronHostMenuSelect() {
43
+ return menuSelect(menuState());
38
44
  }
39
- export function initializeMenuApplicationBackend(out, electron, menuState) {
45
+ export function populateElectronHostAppMenu(out, electron, menuState) {
40
46
  // Provider lifecycle: releases the OS menu this provider installed. It deliberately does NOT end
41
47
  // select subscriptions — those are ended by their own unsubscribe.
42
48
  out.destroy = () => {
@@ -45,12 +51,17 @@ export function initializeMenuApplicationBackend(out, electron, menuState) {
45
51
  menuState.destroyed = true;
46
52
  electron.Menu.setApplicationMenu(null);
47
53
  };
48
- out.setApplicationMenu = (items) => {
54
+ out.setAppMenu = (items) => {
49
55
  electron.Menu.setApplicationMenu(electron.Menu.buildFromTemplate(toElectronTemplate(items, (id) => menuState.selectListener?.(id))));
50
56
  return true;
51
57
  };
52
58
  }
53
- export function initializeMenuPopupBackend(out, electron) {
59
+ export function populateElectronHostMenu(out, app, popup, select) {
60
+ out.app = app;
61
+ out.popup = popup;
62
+ out.select = select;
63
+ }
64
+ export function populateElectronHostMenuPopup(out, electron) {
54
65
  // The Electron seam exposes no menu close event, so the Promise resolves on the first item click
55
66
  // and never resolves to null from a dismissal — callers treat a non-resolving Promise as "still
56
67
  // open". We resolve null only if popup throws.
@@ -66,7 +77,7 @@ export function initializeMenuPopupBackend(out, electron) {
66
77
  });
67
78
  };
68
79
  }
69
- export function initializeMenuSelectBackend(out, menuState) {
80
+ export function populateElectronHostMenuSelect(out, menuState) {
70
81
  out.subscribe = (listener) => {
71
82
  menuState.selectListener = listener;
72
83
  return () => {
@@ -1 +1 @@
1
- {"version":3,"file":"electronMenu.js","sourceRoot":"","sources":["../src/electronMenu.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electronMenu.js","sourceRoot":"","sources":["../src/electronMenu.ts"],"names":[],"mappings":"AAOA,OAAO,EAAE,kBAAkB,EAAE,MAAM,2BAA2B,CAAC;AAQ/D,SAAS,SAAS;IAChB,OAAO,EAAE,SAAS,EAAE,KAAK,EAAE,cAAc,EAAE,IAAI,EAAE,CAAC;AACpD,CAAC;AAED,SAAS,eAAe,CAAC,QAAqB,EAAE,KAAwB;IACtE,MAAM,GAAG,GAAG,EAA2B,CAAC;IACxC,2BAA2B,CAAC,GAAG,EAAE,QAAQ,EAAE,KAAK,CAAC,CAAC;IAClD,OAAO,GAAG,CAAC;AACb,CAAC;AAED,SAAS,UAAU,CAAC,KAAwB;IAC1C,MAAM,GAAG,GAAG,EAA8B,CAAC;IAC3C,8BAA8B,CAAC,GAAG,EAAE,KAAK,CAAC,CAAC;IAC3C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,mBAAmB,CAAC,QAAqB;IACvD,OAAO,eAAe,CAAC,QAAQ,EAAE,SAAS,EAAE,CAAC,CAAC;AAChD,CAAC;AAED,qGAAqG;AACrG,yGAAyG;AACzG,yGAAyG;AACzG,kFAAkF;AAClF,EAAE;AACF,mGAAmG;AACnG,0GAA0G;AAC1G,kGAAkG;AAClG,qGAAqG;AACrG,4CAA4C;AAC5C,MAAM,UAAU,gBAAgB,CAAC,QAAqB;IACpD,MAAM,KAAK,GAAG,SAAS,EAAE,CAAC;IAC1B,MAAM,WAAW,GAAG,eAAe,CAAC,QAAQ,EAAE,KAAK,CAAC,CAAC;IACrD,MAAM,KAAK,GAAG,qBAAqB,CAAC,QAAQ,CAAC,CAAC;IAC9C,MAAM,MAAM,GAAG,UAAU,CAAC,KAAK,CAAC,CAAC;IACjC,MAAM,GAAG,GAAG,EAAsF,CAAC;IACnG,wBAAwB,CAAC,GAAG,EAAE,WAAW,EAAE,KAAK,EAAE,MAAM,CAAC,CAAC;IAC1D,OAAO,MAAM,CAAC,MAAM,CAAC,GAAG,CAA6B,CAAC;AACxD,CAAC;AAED,MAAM,UAAU,qBAAqB,CAAC,QAAqB;IACzD,MAAM,GAAG,GAAG,EAA6B,CAAC;IAC1C,6BAA6B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC7C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,sBAAsB;IACpC,OAAO,UAAU,CAAC,SAAS,EAAE,CAAC,CAAC;AACjC,CAAC;AAED,MAAM,UAAU,2BAA2B,CACzC,GAA0B,EAC1B,QAAqB,EACrB,SAAgF;IAEhF,iGAAiG;IACjG,mEAAmE;IACnE,GAAG,CAAC,OAAO,GAAG,GAAS,EAAE;QACvB,IAAI,SAAS,CAAC,SAAS;YAAE,OAAO;QAChC,SAAS,CAAC,SAAS,GAAG,IAAI,CAAC;QAC3B,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAAC,IAAI,CAAC,CAAC;IACzC,CAAC,CAAC;IACF,GAAG,CAAC,UAAU,GAAG,CAAC,KAAK,EAAW,EAAE;QAClC,QAAQ,CAAC,IAAI,CAAC,kBAAkB,CAC9B,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,SAAS,CAAC,cAAc,EAAE,CAAC,EAAE,CAAC,CAAC,CAAC,CACnG,CAAC;QACF,OAAO,IAAI,CAAC;IACd,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,wBAAwB,CACtC,GAAqF,EACrF,GAA0B,EAC1B,KAA8B,EAC9B,MAAgC;IAEhC,GAAG,CAAC,GAAG,GAAG,GAAG,CAAC;IACd,GAAG,CAAC,KAAK,GAAG,KAAK,CAAC;IAClB,GAAG,CAAC,MAAM,GAAG,MAAM,CAAC;AACtB,CAAC;AAED,MAAM,UAAU,6BAA6B,CAAC,GAA4B,EAAE,QAAqB;IAC/F,iGAAiG;IACjG,gGAAgG;IAChG,+CAA+C;IAC/C,GAAG,CAAC,KAAK,GAAG,CAAC,KAAK,EAAE,CAAC,EAAE,CAAC,EAA0B,EAAE;QAClD,OAAO,IAAI,OAAO,CAAgB,CAAC,OAAO,EAAE,EAAE;YAC5C,MAAM,IAAI,GAAG,QAAQ,CAAC,IAAI,CAAC,iBAAiB,CAAC,kBAAkB,CAAC,KAAK,EAAE,CAAC,EAAE,EAAE,EAAE,CAAC,OAAO,CAAC,EAAE,CAAC,CAAC,CAAC,CAAC;YAC7F,IAAI,CAAC;gBACH,IAAI,CAAC,KAAK,CAAC,EAAE,CAAC,EAAE,CAAC,EAAE,CAAC,CAAC;YACvB,CAAC;YAAC,MAAM,CAAC;gBACP,OAAO,CAAC,IAAI,CAAC,CAAC;YAChB,CAAC;QACH,CAAC,CAAC,CAAC;IACL,CAAC,CAAC;AACJ,CAAC;AAED,MAAM,UAAU,8BAA8B,CAC5C,GAA6B,EAC7B,SAAgF;IAEhF,GAAG,CAAC,SAAS,GAAG,CAAC,QAAQ,EAAgB,EAAE;QACzC,SAAS,CAAC,cAAc,GAAG,QAAQ,CAAC;QACpC,OAAO,GAAG,EAAE;YACV,IAAI,SAAS,CAAC,cAAc,KAAK,QAAQ;gBAAE,SAAS,CAAC,cAAc,GAAG,IAAI,CAAC;QAC7E,CAAC,CAAC;IACJ,CAAC,CAAC;AACJ,CAAC"}
@@ -1,3 +1,4 @@
1
- import type { ElectronMenuItemOptions, MenuItemTemplate } from '@flighthq/types/contract';
1
+ import type { MenuItemTemplate } from '@flighthq/menu/contract';
2
+ import type { ElectronMenuItemOptions } from './types/index.ts';
2
3
  export declare function toElectronTemplate(items: readonly MenuItemTemplate[], onSelect?: (id: string) => void): ElectronMenuItemOptions[];
3
4
  //# sourceMappingURL=electronMenuTemplate.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"electronMenuTemplate.d.ts","sourceRoot":"","sources":["../src/electronMenuTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,uBAAuB,EAAwB,gBAAgB,EAAE,MAAM,0BAA0B,CAAC;AAIhH,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,gBAAgB,EAAE,EAClC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAC9B,uBAAuB,EAAE,CAkB3B"}
1
+ {"version":3,"file":"electronMenuTemplate.d.ts","sourceRoot":"","sources":["../src/electronMenuTemplate.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,yBAAyB,CAAC;AAEhE,OAAO,KAAK,EAAE,uBAAuB,EAAwB,MAAM,kBAAkB,CAAC;AAItF,wBAAgB,kBAAkB,CAChC,KAAK,EAAE,SAAS,gBAAgB,EAAE,EAClC,QAAQ,CAAC,EAAE,CAAC,EAAE,EAAE,MAAM,KAAK,IAAI,GAC9B,uBAAuB,EAAE,CAkB3B"}
@@ -1 +1 @@
1
- {"version":3,"file":"electronMenuTemplate.js","sourceRoot":"","sources":["../src/electronMenuTemplate.ts"],"names":[],"mappings":"AAEA,kGAAkG;AAClG,qGAAqG;AACrG,MAAM,UAAU,kBAAkB,CAChC,KAAkC,EAClC,QAA+B;IAE/B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,OAAO,GAA4B;YACvC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC7C,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAuB;IACvE,OAAO;IACP,SAAS;IACT,sBAAsB;IACtB,OAAO;IACP,MAAM;IACN,KAAK;IACL,QAAQ;IACR,UAAU;IACV,UAAU;IACV,aAAa;IACb,OAAO;IACP,MAAM;IACN,MAAM;IACN,YAAY;IACZ,iBAAiB;IACjB,UAAU;IACV,oBAAoB;IACpB,OAAO;IACP,oBAAoB;IACpB,MAAM;IACN,iBAAiB;IACjB,MAAM;IACN,QAAQ;IACR,WAAW;IACX,WAAW;IACX,eAAe;IACf,mBAAmB;IACnB,UAAU;IACV,WAAW;IACX,aAAa;IACb,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,oBAAoB;IACpB,cAAc;IACd,kBAAkB;IAClB,MAAM;IACN,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,QAAQ;IACR,SAAS;CACV,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,IAA8B;IACpD,IAAI,IAAI,KAAK,kBAAkB;QAAE,OAAO,kBAAkB,CAAC;IAC3D,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC;IACvC,OAAO,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAA6B,CAAC,CAAC,CAAC,SAAS,CAAC;AACpG,CAAC"}
1
+ {"version":3,"file":"electronMenuTemplate.js","sourceRoot":"","sources":["../src/electronMenuTemplate.ts"],"names":[],"mappings":"AAIA,kGAAkG;AAClG,qGAAqG;AACrG,MAAM,UAAU,kBAAkB,CAChC,KAAkC,EAClC,QAA+B;IAE/B,OAAO,KAAK,CAAC,GAAG,CAAC,CAAC,IAAI,EAAE,EAAE;QACxB,MAAM,OAAO,GAA4B;YACvC,WAAW,EAAE,IAAI,CAAC,WAAW;YAC7B,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,OAAO,EAAE,IAAI,CAAC,OAAO;YACrB,EAAE,EAAE,IAAI,CAAC,EAAE;YACX,KAAK,EAAE,IAAI,CAAC,KAAK;YACjB,IAAI,EAAE,cAAc,CAAC,IAAI,CAAC,IAAI,CAAC;YAC/B,IAAI,EAAE,IAAI,CAAC,IAAI;SAChB,CAAC;QACF,IAAI,IAAI,CAAC,OAAO,EAAE,CAAC;YACjB,OAAO,CAAC,OAAO,GAAG,kBAAkB,CAAC,IAAI,CAAC,OAAO,EAAE,QAAQ,CAAC,CAAC;QAC/D,CAAC;aAAM,IAAI,QAAQ,IAAI,IAAI,CAAC,EAAE,KAAK,SAAS,EAAE,CAAC;YAC7C,OAAO,CAAC,KAAK,GAAG,GAAG,EAAE,CAAC,QAAQ,CAAC,IAAI,CAAC,EAAG,CAAC,CAAC;QAC3C,CAAC;QACD,OAAO,OAAO,CAAC;IACjB,CAAC,CAAC,CAAC;AACL,CAAC;AAED,MAAM,aAAa,GAAwB,IAAI,GAAG,CAAuB;IACvE,OAAO;IACP,SAAS;IACT,sBAAsB;IACtB,OAAO;IACP,MAAM;IACN,KAAK;IACL,QAAQ;IACR,UAAU;IACV,UAAU;IACV,aAAa;IACb,OAAO;IACP,MAAM;IACN,MAAM;IACN,YAAY;IACZ,iBAAiB;IACjB,UAAU;IACV,oBAAoB;IACpB,OAAO;IACP,oBAAoB;IACpB,MAAM;IACN,iBAAiB;IACjB,MAAM;IACN,QAAQ;IACR,WAAW;IACX,WAAW;IACX,eAAe;IACf,mBAAmB;IACnB,UAAU;IACV,WAAW;IACX,aAAa;IACb,eAAe;IACf,cAAc;IACd,gBAAgB;IAChB,oBAAoB;IACpB,cAAc;IACd,kBAAkB;IAClB,MAAM;IACN,QAAQ;IACR,UAAU;IACV,QAAQ;IACR,YAAY;IACZ,MAAM;IACN,QAAQ;IACR,SAAS;CACV,CAAC,CAAC;AAEH,SAAS,cAAc,CAAC,IAA8B;IACpD,IAAI,IAAI,KAAK,kBAAkB;QAAE,OAAO,kBAAkB,CAAC;IAC3D,IAAI,IAAI,KAAK,UAAU;QAAE,OAAO,MAAM,CAAC;IACvC,OAAO,IAAI,KAAK,SAAS,IAAI,aAAa,CAAC,GAAG,CAAC,IAAI,CAAC,CAAC,CAAC,CAAE,IAA6B,CAAC,CAAC,CAAC,SAAS,CAAC;AACpG,CAAC"}
@@ -1,16 +1,34 @@
1
- import type { ElectronApi, ElectronBackendOptions, ElectronMacosNotificationCapabilities, ElectronNotificationCapabilities, DesktopOsProfile, EntityConstruction, EntityRuntimeKey } from '@flighthq/types/contract';
1
+ import type { ElectronMacosNotificationCapabilities, ElectronNotificationCapabilities } from '@flighthq/notification/contract';
2
+ import type { DesktopOsProfile } from '@flighthq/tray/contract';
3
+ import type { ElectronApi, ElectronHostOptions } from './types/index.ts';
2
4
  type ElectronNotificationCapabilitiesFor<Profile extends DesktopOsProfile> = Profile extends 'macos' ? ElectronMacosNotificationCapabilities : ElectronNotificationCapabilities;
3
- export declare function createElectronNotificationCapabilities<Profile extends DesktopOsProfile>(electron: ElectronApi, options: Readonly<ElectronBackendOptions> & {
5
+ export declare function electronHostNotification<Profile extends DesktopOsProfile>(electron: ElectronApi, options: Readonly<ElectronHostOptions> & {
4
6
  readonly platform: Profile;
5
7
  }): ElectronNotificationCapabilitiesFor<Profile>;
6
- export declare function createElectronNotificationCapabilities(electron: ElectronApi, options: Readonly<ElectronBackendOptions & {
8
+ export declare function electronHostNotification(electron: ElectronApi, options: Readonly<ElectronHostOptions & {
7
9
  platform: 'macos';
8
10
  }>): ElectronMacosNotificationCapabilities;
9
- export declare function createElectronNotificationCapabilities(electron: ElectronApi, options: Readonly<ElectronBackendOptions & {
11
+ export declare function electronHostNotification(electron: ElectronApi, options: Readonly<ElectronHostOptions & {
10
12
  platform: 'linux' | 'windows';
11
13
  }>): ElectronNotificationCapabilities;
12
- export declare function createElectronNotificationCapabilities(electron: ElectronApi, options: Readonly<ElectronBackendOptions>): ElectronMacosNotificationCapabilities | ElectronNotificationCapabilities;
13
- export declare function initializeElectronMacosNotificationCapabilities(out: EntityConstruction<ElectronMacosNotificationCapabilities>, capabilities: Readonly<Omit<ElectronNotificationCapabilities, typeof EntityRuntimeKey>>, action: ElectronMacosNotificationCapabilities['action'], reply: ElectronMacosNotificationCapabilities['reply']): void;
14
- export declare function initializeElectronNotificationCapabilities(out: EntityConstruction<ElectronNotificationCapabilities>, capabilities: Readonly<Omit<ElectronNotificationCapabilities, typeof EntityRuntimeKey>>): void;
14
+ export declare function electronHostNotification(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronMacosNotificationCapabilities | ElectronNotificationCapabilities;
15
+ export declare function electronHostNotificationAction(electron: ElectronApi, options: Readonly<ElectronHostOptions & {
16
+ platform: 'macos';
17
+ }>): ElectronMacosNotificationCapabilities['action'];
18
+ export declare function electronHostNotificationClick(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronNotificationCapabilities['click'];
19
+ export declare function electronHostNotificationClose(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronNotificationCapabilities['close'];
20
+ export declare function electronHostNotificationDelivery(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronNotificationCapabilities['delivery'];
21
+ export declare function electronHostNotificationDismiss(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronNotificationCapabilities['dismiss'];
22
+ export declare function electronHostNotificationLifecycle(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronNotificationCapabilities['lifecycle'];
23
+ export declare function electronHostNotificationReceived(electron: ElectronApi, options: Readonly<ElectronHostOptions>): ElectronNotificationCapabilities['received'];
24
+ export declare function electronHostNotificationReply(electron: ElectronApi, options: Readonly<ElectronHostOptions & {
25
+ platform: 'macos';
26
+ }>): ElectronMacosNotificationCapabilities['reply'];
27
+ export declare function populateElectronHostNotificationCommon(out: {
28
+ -readonly [K in keyof ElectronNotificationCapabilities]: ElectronNotificationCapabilities[K];
29
+ }, capabilities: Readonly<ElectronNotificationCapabilities>): void;
30
+ export declare function populateElectronHostNotificationMacos(out: {
31
+ -readonly [K in keyof ElectronMacosNotificationCapabilities]: ElectronMacosNotificationCapabilities[K];
32
+ }, capabilities: Readonly<ElectronNotificationCapabilities>, action: ElectronMacosNotificationCapabilities['action'], reply: ElectronMacosNotificationCapabilities['reply']): void;
15
33
  export {};
16
34
  //# sourceMappingURL=electronNotification.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"electronNotification.d.ts","sourceRoot":"","sources":["../src/electronNotification.ts"],"names":[],"mappings":"AAEA,OAAO,KAAK,EACV,WAAW,EACX,sBAAsB,EACtB,qCAAqC,EAErC,gCAAgC,EAChC,gBAAgB,EAChB,kBAAkB,EAClB,gBAAgB,EAOjB,MAAM,0BAA0B,CAAC;AAElC,KAAK,mCAAmC,CAAC,OAAO,SAAS,gBAAgB,IAAI,OAAO,SAAS,OAAO,GAChG,qCAAqC,GACrC,gCAAgC,CAAC;AAErC,wBAAgB,sCAAsC,CAAC,OAAO,SAAS,gBAAgB,EACrF,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GAAG;IAAE,QAAQ,CAAC,QAAQ,EAAE,OAAO,CAAA;CAAE,GACzE,mCAAmC,CAAC,OAAO,CAAC,CAAC;AAEhD,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,QAAQ,CAAC,sBAAsB,GAAG;IAAE,QAAQ,EAAE,OAAO,CAAA;CAAE,CAAC,GAChE,qCAAqC,CAAC;AACzC,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,QAAQ,CAAC,sBAAsB,GAAG;IAAE,QAAQ,EAAE,OAAO,GAAG,SAAS,CAAA;CAAE,CAAC,GAC5E,gCAAgC,CAAC;AACpC,wBAAgB,sCAAsC,CACpD,QAAQ,EAAE,WAAW,EACrB,OAAO,EAAE,QAAQ,CAAC,sBAAsB,CAAC,GACxC,qCAAqC,GAAG,gCAAgC,CAAC;AAyJ5E,wBAAgB,+CAA+C,CAC7D,GAAG,EAAE,kBAAkB,CAAC,qCAAqC,CAAC,EAC9D,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,gBAAgB,CAAC,CAAC,EACvF,MAAM,EAAE,qCAAqC,CAAC,QAAQ,CAAC,EACvD,KAAK,EAAE,qCAAqC,CAAC,OAAO,CAAC,GACpD,IAAI,CASN;AAED,wBAAgB,0CAA0C,CACxD,GAAG,EAAE,kBAAkB,CAAC,gCAAgC,CAAC,EACzD,YAAY,EAAE,QAAQ,CAAC,IAAI,CAAC,gCAAgC,EAAE,OAAO,gBAAgB,CAAC,CAAC,GACtF,IAAI,CAON"}
1
+ {"version":3,"file":"electronNotification.d.ts","sourceRoot":"","sources":["../src/electronNotification.ts"],"names":[],"mappings":"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"}
@@ -1,6 +1,5 @@
1
- import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
1
  import { bindNotificationClose, createNotificationResource } from '@flighthq/notification/contract';
3
- export function createElectronNotificationCapabilities(electron, options) {
2
+ export function electronHostNotification(electron, options) {
4
3
  const nativeByNotification = new Map();
5
4
  const actionListeners = new Set();
6
5
  const clickListeners = new Set();
@@ -33,7 +32,7 @@ export function createElectronNotificationCapabilities(electron, options) {
33
32
  return failures.length === 0 ? { reason: 'ok' } : { failures, reason: 'operation-failed' };
34
33
  }
35
34
  const capabilities = {
36
- click: createElectronNotificationEventBackend(clickListeners, () => destroyed),
35
+ click: electronHostNotificationEventProvider(clickListeners, () => destroyed),
37
36
  close: { closeAllNotifications: closeAll },
38
37
  delivery: {
39
38
  async notify(request) {
@@ -129,7 +128,7 @@ export function createElectronNotificationCapabilities(electron, options) {
129
128
  });
130
129
  },
131
130
  },
132
- dismiss: createElectronNotificationEventBackend(dismissListeners, () => destroyed),
131
+ dismiss: electronHostNotificationEventProvider(dismissListeners, () => destroyed),
133
132
  lifecycle: {
134
133
  async destroy() {
135
134
  if (destroyCompleted)
@@ -146,36 +145,60 @@ export function createElectronNotificationCapabilities(electron, options) {
146
145
  return outcome;
147
146
  },
148
147
  },
149
- received: createElectronNotificationEventBackend(receivedListeners, () => destroyed),
148
+ received: electronHostNotificationEventProvider(receivedListeners, () => destroyed),
150
149
  };
151
150
  if (options.platform !== 'macos') {
152
- const out = allocateEntity();
153
- initializeElectronNotificationCapabilities(out, capabilities);
154
- return finishEntity(out);
151
+ return Object.freeze(capabilities);
155
152
  }
156
- const out = allocateEntity();
157
- initializeElectronMacosNotificationCapabilities(out, capabilities, createElectronNotificationEventBackend(actionListeners, () => destroyed), createElectronNotificationEventBackend(replyListeners, () => destroyed));
158
- return finishEntity(out);
153
+ return Object.freeze({
154
+ ...capabilities,
155
+ action: electronHostNotificationEventProvider(actionListeners, () => destroyed),
156
+ reply: electronHostNotificationEventProvider(replyListeners, () => destroyed),
157
+ });
159
158
  }
160
- export function initializeElectronMacosNotificationCapabilities(out, capabilities, action, reply) {
161
- out.action = action;
159
+ export function electronHostNotificationAction(electron, options) {
160
+ return electronHostNotification(electron, options).action;
161
+ }
162
+ export function electronHostNotificationClick(electron, options) {
163
+ return electronHostNotification(electron, options).click;
164
+ }
165
+ export function electronHostNotificationClose(electron, options) {
166
+ return electronHostNotification(electron, options).close;
167
+ }
168
+ export function electronHostNotificationDelivery(electron, options) {
169
+ return electronHostNotification(electron, options).delivery;
170
+ }
171
+ export function electronHostNotificationDismiss(electron, options) {
172
+ return electronHostNotification(electron, options).dismiss;
173
+ }
174
+ export function electronHostNotificationLifecycle(electron, options) {
175
+ return electronHostNotification(electron, options).lifecycle;
176
+ }
177
+ export function electronHostNotificationReceived(electron, options) {
178
+ return electronHostNotification(electron, options).received;
179
+ }
180
+ export function electronHostNotificationReply(electron, options) {
181
+ return electronHostNotification(electron, options).reply;
182
+ }
183
+ export function populateElectronHostNotificationCommon(out, capabilities) {
162
184
  out.click = capabilities.click;
163
185
  out.close = capabilities.close;
164
186
  out.delivery = capabilities.delivery;
165
187
  out.dismiss = capabilities.dismiss;
166
188
  out.lifecycle = capabilities.lifecycle;
167
189
  out.received = capabilities.received;
168
- out.reply = reply;
169
190
  }
170
- export function initializeElectronNotificationCapabilities(out, capabilities) {
191
+ export function populateElectronHostNotificationMacos(out, capabilities, action, reply) {
192
+ out.action = action;
171
193
  out.click = capabilities.click;
172
194
  out.close = capabilities.close;
173
195
  out.delivery = capabilities.delivery;
174
196
  out.dismiss = capabilities.dismiss;
175
197
  out.lifecycle = capabilities.lifecycle;
176
198
  out.received = capabilities.received;
199
+ out.reply = reply;
177
200
  }
178
- function createElectronNotificationEventBackend(listeners, isDestroyed) {
201
+ function electronHostNotificationEventProvider(listeners, isDestroyed) {
179
202
  return {
180
203
  async attach(listener) {
181
204
  if (isDestroyed())
@@ -1 +1 @@
1
- {"version":3,"file":"electronNotification.js","sourceRoot":"","sources":["../src/electronNotification.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"electronNotification.js","sourceRoot":"","sources":["../src/electronNotification.ts"],"names":[],"mappings":"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"}
@@ -1,4 +1,6 @@
1
- import type { ElectronApi, Entity, PlatformBackend, EntityConstruction } from '@flighthq/types/contract';
2
- export declare function createElectronPlatformBackend(electron: ElectronApi): PlatformBackend & Entity;
3
- export declare function initializeElectronPlatformBackend(out: EntityConstruction<PlatformBackend>, electron: ElectronApi): void;
1
+ import type { HostPlatformCapabilities, HostPlatformCapability } from '@flighthq/platform/contract';
2
+ import type { ElectronApi } from './types/index.ts';
3
+ export declare function electronHostPlatform(electron: ElectronApi): HostPlatformCapability;
4
+ export declare function electronHostPlatformGroup(electron: ElectronApi): Required<Pick<HostPlatformCapabilities, 'info'>>;
5
+ export declare function populateElectronHostPlatform(out: HostPlatformCapability, electron: ElectronApi): void;
4
6
  //# sourceMappingURL=electronPlatform.d.ts.map
@@ -1 +1 @@
1
- {"version":3,"file":"electronPlatform.d.ts","sourceRoot":"","sources":["../src/electronPlatform.ts"],"names":[],"mappings":"AACA,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,EAAE,eAAe,EAAgB,kBAAkB,EAAE,MAAM,0BAA0B,CAAC;AAEvH,wBAAgB,6BAA6B,CAAC,QAAQ,EAAE,WAAW,GAAG,eAAe,GAAG,MAAM,CAI7F;AAMD,wBAAgB,iCAAiC,CAC/C,GAAG,EAAE,kBAAkB,CAAC,eAAe,CAAC,EACxC,QAAQ,EAAE,WAAW,GACpB,IAAI,CAcN"}
1
+ {"version":3,"file":"electronPlatform.d.ts","sourceRoot":"","sources":["../src/electronPlatform.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,wBAAwB,EAAE,sBAAsB,EAAgB,MAAM,6BAA6B,CAAC;AAElH,OAAO,KAAK,EAAE,WAAW,EAAE,MAAM,kBAAkB,CAAC;AAEpD,wBAAgB,oBAAoB,CAAC,QAAQ,EAAE,WAAW,GAAG,sBAAsB,CAIlF;AAED,wBAAgB,yBAAyB,CAAC,QAAQ,EAAE,WAAW,GAAG,QAAQ,CAAC,IAAI,CAAC,wBAAwB,EAAE,MAAM,CAAC,CAAC,CAEjH;AAMD,wBAAgB,4BAA4B,CAAC,GAAG,EAAE,sBAAsB,EAAE,QAAQ,EAAE,WAAW,GAAG,IAAI,CAcrG"}
@@ -1,14 +1,16 @@
1
- import { allocateEntity, finishEntity } from '@flighthq/entity/contract';
2
- export function createElectronPlatformBackend(electron) {
3
- const out = allocateEntity();
4
- initializeElectronPlatformBackend(out, electron);
5
- return finishEntity(out);
1
+ export function electronHostPlatform(electron) {
2
+ const out = {};
3
+ populateElectronHostPlatform(out, electron);
4
+ return out;
6
5
  }
7
- // Maps Flight's PlatformBackend onto the Node `process` running the Electron main process, with the
6
+ export function electronHostPlatformGroup(electron) {
7
+ return { info: electronHostPlatform(electron) };
8
+ }
9
+ // Maps Flight's HostPlatformCapability onto the Node `process` running the Electron main process, with the
8
10
  // locale sourced from Electron's `app`. `process` is accessed defensively (it may be absent and is not
9
11
  // typed without @types/node) and falls back to '' / 'unknown' sentinels. Writes into caller-owned
10
12
  // `out` so callers control allocation.
11
- export function initializeElectronPlatformBackend(out, electron) {
13
+ export function populateElectronHostPlatform(out, electron) {
12
14
  out.getInfo = (out) => {
13
15
  const proc = typeof process !== 'undefined'
14
16
  ? process
@@ -1 +1 @@
1
- {"version":3,"file":"electronPlatform.js","sourceRoot":"","sources":["../src/electronPlatform.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,cAAc,EAAE,YAAY,EAAE,MAAM,2BAA2B,CAAC;AAGzE,MAAM,UAAU,6BAA6B,CAAC,QAAqB;IACjE,MAAM,GAAG,GAAG,cAAc,EAAmB,CAAC;IAC9C,iCAAiC,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IACjD,OAAO,YAAY,CAAC,GAAG,CAAC,CAAC;AAC3B,CAAC;AAED,oGAAoG;AACpG,uGAAuG;AACvG,kGAAkG;AAClG,uCAAuC;AACvC,MAAM,UAAU,iCAAiC,CAC/C,GAAwC,EACxC,QAAqB;IAErB,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,EAAE,EAAE;QACpB,MAAM,IAAI,GACR,OAAO,OAAO,KAAK,WAAW;YAC5B,CAAC,CAAE,OAAiF;YACpF,CAAC,CAAC,IAAI,CAAC;QACX,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1C,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC;QACrB,GAAG,CAAC,OAAO,GAAG,IAAI,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,CAAC;QAC/C,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;QAC5B,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACtC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,QAA4B;IAClD,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAC1C,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC;IACzC,OAAO,SAAS,CAAC;AACnB,CAAC"}
1
+ {"version":3,"file":"electronPlatform.js","sourceRoot":"","sources":["../src/electronPlatform.ts"],"names":[],"mappings":"AAIA,MAAM,UAAU,oBAAoB,CAAC,QAAqB;IACxD,MAAM,GAAG,GAAG,EAA4B,CAAC;IACzC,4BAA4B,CAAC,GAAG,EAAE,QAAQ,CAAC,CAAC;IAC5C,OAAO,GAAG,CAAC;AACb,CAAC;AAED,MAAM,UAAU,yBAAyB,CAAC,QAAqB;IAC7D,OAAO,EAAE,IAAI,EAAE,oBAAoB,CAAC,QAAQ,CAAC,EAAE,CAAC;AAClD,CAAC;AAED,2GAA2G;AAC3G,uGAAuG;AACvG,kGAAkG;AAClG,uCAAuC;AACvC,MAAM,UAAU,4BAA4B,CAAC,GAA2B,EAAE,QAAqB;IAC7F,GAAG,CAAC,OAAO,GAAG,CAAC,GAAG,EAAE,EAAE;QACpB,MAAM,IAAI,GACR,OAAO,OAAO,KAAK,WAAW;YAC5B,CAAC,CAAE,OAAiF;YACpF,CAAC,CAAC,IAAI,CAAC;QACX,GAAG,CAAC,IAAI,GAAG,cAAc,CAAC,IAAI,EAAE,QAAQ,CAAC,CAAC;QAC1C,GAAG,CAAC,IAAI,GAAG,SAAS,CAAC;QACrB,GAAG,CAAC,OAAO,GAAG,IAAI,EAAE,gBAAgB,EAAE,EAAE,IAAI,EAAE,CAAC;QAC/C,GAAG,CAAC,IAAI,GAAG,IAAI,EAAE,IAAI,IAAI,EAAE,CAAC;QAC5B,GAAG,CAAC,MAAM,GAAG,QAAQ,CAAC,GAAG,CAAC,SAAS,EAAE,CAAC;QACtC,GAAG,CAAC,OAAO,GAAG,KAAK,CAAC;QACpB,OAAO,GAAG,CAAC;IACb,CAAC,CAAC;AACJ,CAAC;AAED,SAAS,cAAc,CAAC,QAA4B;IAClD,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,SAAS,CAAC;IAC3C,IAAI,QAAQ,KAAK,QAAQ;QAAE,OAAO,OAAO,CAAC;IAC1C,IAAI,QAAQ,KAAK,OAAO;QAAE,OAAO,OAAO,CAAC;IACzC,OAAO,SAAS,CAAC;AACnB,CAAC"}