asyar-sdk 1.11.0 → 1.13.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 (165) hide show
  1. package/README.md +71 -5
  2. package/dist/ExtensionBridge.d.ts +7 -0
  3. package/dist/ExtensionBridge.d.ts.map +1 -1
  4. package/dist/ExtensionBridge.js +16 -0
  5. package/dist/ExtensionBridge.js.map +1 -1
  6. package/dist/ExtensionBridge.test.js +65 -0
  7. package/dist/ExtensionBridge.test.js.map +1 -1
  8. package/dist/ExtensionContext.d.ts +33 -31
  9. package/dist/ExtensionContext.d.ts.map +1 -1
  10. package/dist/ExtensionContext.js +105 -42
  11. package/dist/ExtensionContext.js.map +1 -1
  12. package/dist/ExtensionContext.test.js +80 -19
  13. package/dist/ExtensionContext.test.js.map +1 -1
  14. package/dist/cli/lib/manifest.d.ts +1 -1
  15. package/dist/cli/lib/manifest.d.ts.map +1 -1
  16. package/dist/cli/lib/manifest.js +4 -0
  17. package/dist/cli/lib/manifest.js.map +1 -1
  18. package/dist/index.d.ts +3 -1
  19. package/dist/index.d.ts.map +1 -1
  20. package/dist/index.js +5 -1
  21. package/dist/index.js.map +1 -1
  22. package/dist/ipc/MessageBroker.d.ts +2 -1
  23. package/dist/ipc/MessageBroker.d.ts.map +1 -1
  24. package/dist/ipc/MessageBroker.js.map +1 -1
  25. package/dist/ipc/namespaces.d.ts +5 -0
  26. package/dist/ipc/namespaces.d.ts.map +1 -0
  27. package/dist/ipc/namespaces.js +32 -0
  28. package/dist/ipc/namespaces.js.map +1 -0
  29. package/dist/ipc/namespaces.test.d.ts +2 -0
  30. package/dist/ipc/namespaces.test.d.ts.map +1 -0
  31. package/dist/ipc/namespaces.test.js +22 -0
  32. package/dist/ipc/namespaces.test.js.map +1 -0
  33. package/dist/search/textUtils.d.ts +2 -1
  34. package/dist/search/textUtils.d.ts.map +1 -1
  35. package/dist/search/textUtils.js +143 -7
  36. package/dist/search/textUtils.js.map +1 -1
  37. package/dist/search/textUtils.test.js +47 -0
  38. package/dist/search/textUtils.test.js.map +1 -1
  39. package/dist/services/AIServiceProxy.js +1 -1
  40. package/dist/services/AIServiceProxy.js.map +1 -1
  41. package/dist/services/AIServiceProxy.test.js +9 -0
  42. package/dist/services/AIServiceProxy.test.js.map +1 -1
  43. package/dist/services/ActionServiceProxy.d.ts +1 -0
  44. package/dist/services/ActionServiceProxy.d.ts.map +1 -1
  45. package/dist/services/ActionServiceProxy.js +7 -4
  46. package/dist/services/ActionServiceProxy.js.map +1 -1
  47. package/dist/services/ActionServiceProxy.test.d.ts +2 -0
  48. package/dist/services/ActionServiceProxy.test.d.ts.map +1 -0
  49. package/dist/services/ActionServiceProxy.test.js +58 -0
  50. package/dist/services/ActionServiceProxy.test.js.map +1 -0
  51. package/dist/services/ApplicationService.d.ts +39 -0
  52. package/dist/services/ApplicationService.d.ts.map +1 -0
  53. package/dist/services/ApplicationService.js +32 -0
  54. package/dist/services/ApplicationService.js.map +1 -0
  55. package/dist/services/ApplicationService.test.d.ts +2 -0
  56. package/dist/services/ApplicationService.test.d.ts.map +1 -0
  57. package/dist/services/ApplicationService.test.js +75 -0
  58. package/dist/services/ApplicationService.test.js.map +1 -0
  59. package/dist/services/BaseServiceProxy.d.ts.map +1 -1
  60. package/dist/services/BaseServiceProxy.js.map +1 -1
  61. package/dist/services/CacheServiceProxy.d.ts +27 -0
  62. package/dist/services/CacheServiceProxy.d.ts.map +1 -0
  63. package/dist/services/CacheServiceProxy.js +67 -0
  64. package/dist/services/CacheServiceProxy.js.map +1 -0
  65. package/dist/services/CacheServiceProxy.test.d.ts +2 -0
  66. package/dist/services/CacheServiceProxy.test.d.ts.map +1 -0
  67. package/dist/services/CacheServiceProxy.test.js +61 -0
  68. package/dist/services/CacheServiceProxy.test.js.map +1 -0
  69. package/dist/services/CommandServiceProxy.d.ts +3 -0
  70. package/dist/services/CommandServiceProxy.d.ts.map +1 -1
  71. package/dist/services/CommandServiceProxy.js +12 -4
  72. package/dist/services/CommandServiceProxy.js.map +1 -1
  73. package/dist/services/CommandServiceProxy.test.d.ts +2 -0
  74. package/dist/services/CommandServiceProxy.test.d.ts.map +1 -0
  75. package/dist/services/CommandServiceProxy.test.js +106 -0
  76. package/dist/services/CommandServiceProxy.test.js.map +1 -0
  77. package/dist/services/EntitlementServiceProxy.js +2 -2
  78. package/dist/services/EntitlementServiceProxy.js.map +1 -1
  79. package/dist/services/EntitlementServiceProxy.test.d.ts +2 -0
  80. package/dist/services/EntitlementServiceProxy.test.d.ts.map +1 -0
  81. package/dist/services/EntitlementServiceProxy.test.js +45 -0
  82. package/dist/services/EntitlementServiceProxy.test.js.map +1 -0
  83. package/dist/services/ExtensionManagerProxy.js +15 -15
  84. package/dist/services/ExtensionManagerProxy.js.map +1 -1
  85. package/dist/services/ExtensionManagerProxy.test.d.ts +2 -0
  86. package/dist/services/ExtensionManagerProxy.test.d.ts.map +1 -0
  87. package/dist/services/ExtensionManagerProxy.test.js +130 -0
  88. package/dist/services/ExtensionManagerProxy.test.js.map +1 -0
  89. package/dist/services/FeedbackServiceProxy.d.ts +1 -1
  90. package/dist/services/FeedbackServiceProxy.js +1 -1
  91. package/dist/services/FileManagerServiceProxy.js +2 -2
  92. package/dist/services/FileManagerServiceProxy.js.map +1 -1
  93. package/dist/services/FileManagerServiceProxy.test.js +8 -8
  94. package/dist/services/FileManagerServiceProxy.test.js.map +1 -1
  95. package/dist/services/IAIService.d.ts +3 -3
  96. package/dist/services/ICacheService.d.ts +45 -0
  97. package/dist/services/ICacheService.d.ts.map +1 -0
  98. package/dist/services/ICacheService.js +3 -0
  99. package/dist/services/ICacheService.js.map +1 -0
  100. package/dist/services/ICommandService.d.ts +3 -0
  101. package/dist/services/ICommandService.d.ts.map +1 -1
  102. package/dist/services/IOAuthService.d.ts +1 -1
  103. package/dist/services/IPreferencesService.d.ts +27 -0
  104. package/dist/services/IPreferencesService.d.ts.map +1 -0
  105. package/dist/services/IPreferencesService.js +3 -0
  106. package/dist/services/IPreferencesService.js.map +1 -0
  107. package/dist/services/InteropServiceProxy.js +1 -1
  108. package/dist/services/InteropServiceProxy.js.map +1 -1
  109. package/dist/services/InteropServiceProxy.test.js +2 -2
  110. package/dist/services/InteropServiceProxy.test.js.map +1 -1
  111. package/dist/services/NotificationServiceProxy.js +7 -7
  112. package/dist/services/NotificationServiceProxy.js.map +1 -1
  113. package/dist/services/NotificationServiceProxy.test.d.ts +2 -0
  114. package/dist/services/NotificationServiceProxy.test.d.ts.map +1 -0
  115. package/dist/services/NotificationServiceProxy.test.js +67 -0
  116. package/dist/services/NotificationServiceProxy.test.js.map +1 -0
  117. package/dist/services/OAuthServiceProxy.js +2 -2
  118. package/dist/services/OAuthServiceProxy.js.map +1 -1
  119. package/dist/services/OAuthServiceProxy.test.js +2 -2
  120. package/dist/services/OAuthServiceProxy.test.js.map +1 -1
  121. package/dist/services/PreferencesServiceProxy.d.ts +8 -0
  122. package/dist/services/PreferencesServiceProxy.d.ts.map +1 -0
  123. package/dist/services/PreferencesServiceProxy.js +17 -0
  124. package/dist/services/PreferencesServiceProxy.js.map +1 -0
  125. package/dist/services/PreferencesServiceProxy.test.d.ts +2 -0
  126. package/dist/services/PreferencesServiceProxy.test.d.ts.map +1 -0
  127. package/dist/services/PreferencesServiceProxy.test.js +58 -0
  128. package/dist/services/PreferencesServiceProxy.test.js.map +1 -0
  129. package/dist/services/SettingsServiceProxy.js +2 -2
  130. package/dist/services/SettingsServiceProxy.js.map +1 -1
  131. package/dist/services/SettingsServiceProxy.test.d.ts +2 -0
  132. package/dist/services/SettingsServiceProxy.test.d.ts.map +1 -0
  133. package/dist/services/SettingsServiceProxy.test.js +48 -0
  134. package/dist/services/SettingsServiceProxy.test.js.map +1 -0
  135. package/dist/services/ShellServiceProxy.js +1 -1
  136. package/dist/services/ShellServiceProxy.js.map +1 -1
  137. package/dist/services/ShellServiceProxy.test.d.ts +2 -0
  138. package/dist/services/ShellServiceProxy.test.d.ts.map +1 -0
  139. package/dist/services/ShellServiceProxy.test.js +176 -0
  140. package/dist/services/ShellServiceProxy.test.js.map +1 -0
  141. package/dist/services/StatusBarServiceProxy.js +3 -3
  142. package/dist/services/StatusBarServiceProxy.test.d.ts +2 -0
  143. package/dist/services/StatusBarServiceProxy.test.d.ts.map +1 -0
  144. package/dist/services/StatusBarServiceProxy.test.js +41 -0
  145. package/dist/services/StatusBarServiceProxy.test.js.map +1 -0
  146. package/dist/services/WindowManagementService.d.ts +48 -0
  147. package/dist/services/WindowManagementService.d.ts.map +1 -0
  148. package/dist/services/WindowManagementService.js +37 -0
  149. package/dist/services/WindowManagementService.js.map +1 -0
  150. package/dist/services/WindowManagementService.test.d.ts +2 -0
  151. package/dist/services/WindowManagementService.test.d.ts.map +1 -0
  152. package/dist/services/WindowManagementService.test.js +51 -0
  153. package/dist/services/WindowManagementService.test.js.map +1 -0
  154. package/dist/services/index.d.ts +8 -0
  155. package/dist/services/index.d.ts.map +1 -1
  156. package/dist/services/index.js +9 -1
  157. package/dist/services/index.js.map +1 -1
  158. package/dist/types/ActionType.d.ts +2 -0
  159. package/dist/types/ActionType.d.ts.map +1 -1
  160. package/dist/types/ActionType.js.map +1 -1
  161. package/dist/types/ClipboardType.d.ts +13 -0
  162. package/dist/types/ClipboardType.d.ts.map +1 -1
  163. package/dist/types/ExtensionType.d.ts +23 -0
  164. package/dist/types/ExtensionType.d.ts.map +1 -1
  165. package/package.json +1 -1
package/README.md CHANGED
@@ -131,7 +131,7 @@ class MyExtension implements Extension {
131
131
  private logService?: ILogService;
132
132
 
133
133
  async initialize(context: ExtensionContext): Promise<void> {
134
- this.logService = context.getService<ILogService>("LogService");
134
+ this.logService = context.getService<ILogService>("log");
135
135
  this.logService?.info("Extension initialized using asyar-sdk");
136
136
  }
137
137
 
@@ -275,9 +275,73 @@ Valid values: `"macos"`, `"windows"`, `"linux"`. You can list any combination.
275
275
 
276
276
  Distributed under the AGPLv3 License. See LICENSE.md for more information.
277
277
 
278
- ## Registering Actions
278
+ ## Actions — The ⌘K Panel
279
279
 
280
- Extensions can register actions that appear in the ⌘K panel. Actions support optional grouping via the `category` field and icons via `icon`.
280
+ There are two ways to contribute actions to Asyar's ⌘K panel:
281
+
282
+ ### 1. Manifest-declared actions (root search)
283
+
284
+ Declare actions directly in `manifest.json`. These appear in the ⌘K drawer while the user has your command highlighted in the **main search results** — before opening any view.
285
+
286
+ **`manifest.json`:**
287
+ ```json
288
+ {
289
+ "id": "com.example.github",
290
+ "actions": [
291
+ {
292
+ "id": "open-settings",
293
+ "title": "Extension Settings",
294
+ "icon": "icon:settings",
295
+ "shortcut": "⌘,",
296
+ "category": "System"
297
+ }
298
+ ],
299
+ "commands": [
300
+ {
301
+ "id": "search-repos",
302
+ "name": "Search Repositories",
303
+ "resultType": "view",
304
+ "actions": [
305
+ {
306
+ "id": "clone-repo",
307
+ "title": "Clone Repository",
308
+ "icon": "icon:download",
309
+ "shortcut": "⌘⇧C",
310
+ "category": "Primary"
311
+ }
312
+ ]
313
+ }
314
+ ]
315
+ }
316
+ ```
317
+
318
+ Register handlers in your extension's `initialize()` or `activate()`:
319
+
320
+ ```typescript
321
+ class GitHubExtension implements Extension {
322
+ async initialize(context: ExtensionContext): Promise<void> {
323
+ // Extension-level: visible when any GitHub command is selected
324
+ context.actions.registerActionHandler('open-settings', async () => {
325
+ // your handler
326
+ });
327
+
328
+ // Command-level: visible only when "search-repos" is selected
329
+ context.actions.registerActionHandler('clone-repo', async () => {
330
+ // your handler
331
+ });
332
+ }
333
+ }
334
+ ```
335
+
336
+ The `actionId` you pass to `registerActionHandler` is the short local ID from `manifest.json`, not the full internal ID (`act_{extensionId}_{actionId}`).
337
+
338
+ **Visibility rules:**
339
+ - Root-level `actions[]` — visible when **any** command from your extension is highlighted
340
+ - Command-level `actions[]` — visible only when **that specific command** is highlighted
341
+
342
+ ### 2. Programmatic actions (inside extension views)
343
+
344
+ Register actions in code from your extension view components. These appear while your extension panel is open.
281
345
 
282
346
  ```typescript
283
347
  import { ActionContext, ActionCategory } from 'asyar-sdk';
@@ -287,15 +351,17 @@ actionService.registerAction({
287
351
  title: 'Do Something',
288
352
  description: 'A helpful description shown in the panel',
289
353
  icon: '✨',
290
- category: ActionCategory.PRIMARY, // Optional — groups related actions
354
+ category: ActionCategory.PRIMARY,
291
355
  extensionId: context.extensionId,
292
- context: ActionContext.GLOBAL,
356
+ context: ActionContext.EXTENSION_VIEW,
293
357
  execute: async () => {
294
358
  // your action logic
295
359
  }
296
360
  })
297
361
  ```
298
362
 
363
+ Always unregister in `onDestroy` to prevent stale actions persisting across views.
364
+
299
365
  ### Standard categories (`ActionCategory`)
300
366
 
301
367
  | Constant | Display name | Use for |
@@ -20,6 +20,13 @@ export declare class ExtensionBridge {
20
20
  registerAction(extensionId: string, action: ExtensionAction): void;
21
21
  unregisterAction(actionId: string): void;
22
22
  getActions(): ExtensionAction[];
23
+ /**
24
+ * Register a handler for a manifest-declared action.
25
+ * Stores the handler locally in the actionRegistry so the
26
+ * asyar:action:execute message from the host can find it.
27
+ * No IPC message sent — the host already knows about the action from the manifest.
28
+ */
29
+ registerActionHandler(extensionId: string, actionId: string, handler: () => Promise<void> | void): void;
23
30
  /**
24
31
  * Tells the bridge which extension this iframe represents so its internal
25
32
  * `LogServiceProxy` can stamp `extensionId` on every IPC log call.
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionBridge.d.ts","sourceRoot":"","sources":["../src/ExtensionBridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAO1D,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAkB;IACzC,OAAO,CAAC,kBAAkB,CAA6C;IACvE,OAAO,CAAC,wBAAwB,CAAqC;IACrE,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,cAAc,CAA2C;IACjE,OAAO,CAAC,eAAe,CAGT;IACd,OAAO,CAAC,WAAW,CAGL;IACd,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAc;IAE5B,OAAO;WAUO,WAAW,IAAI,eAAe;IAO5C,OAAO,CAAC,iBAAiB;IA+IzB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,GAAG,IAAI;IAS/D,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IAWlE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKxC,UAAU,IAAI,eAAe,EAAE;IAI/B;;;;;;;;;OASG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAMzC;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAkB3E;;;;;OAKG;IACH,cAAc,CACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;KAAE,GAChG,IAAI;IAKP,gBAAgB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAMnD,+BAA+B,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI;IAWjE,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBrC,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAenC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3C,YAAY,IAAI,iBAAiB,EAAE;IAKnC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAKtD,0BAA0B,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAK7D,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,MAAM,GAClB,IAAI;IAMP,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKpC,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,GAAG,CAAC;IASf,WAAW,IAAI,MAAM,EAAE;IAKvB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;CAKvD"}
1
+ {"version":3,"file":"ExtensionBridge.d.ts","sourceRoot":"","sources":["../src/ExtensionBridge.ts"],"names":[],"mappings":"AAAA,OAAO,EAAE,gBAAgB,EAAE,MAAM,oBAAoB,CAAC;AACtD,OAAO,KAAK,EAAE,SAAS,EAAE,iBAAiB,EAAE,MAAM,uBAAuB,CAAC;AAC1E,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAO1D,qBAAa,eAAe;IAC1B,OAAO,CAAC,MAAM,CAAC,QAAQ,CAAkB;IACzC,OAAO,CAAC,kBAAkB,CAA6C;IACvE,OAAO,CAAC,wBAAwB,CAAqC;IACrE,OAAO,CAAC,iBAAiB,CAA2B;IACpD,OAAO,CAAC,cAAc,CAA2C;IACjE,OAAO,CAAC,eAAe,CAGT;IACd,OAAO,CAAC,WAAW,CAGL;IACd,OAAO,CAAC,cAAc,CAA4C;IAClE,OAAO,CAAC,MAAM,CAAgB;IAC9B,OAAO,CAAC,MAAM,CAAc;IAE5B,OAAO;WAUO,WAAW,IAAI,eAAe;IAO5C,OAAO,CAAC,iBAAiB;IA+IzB,eAAe,CAAC,WAAW,EAAE,MAAM,EAAE,cAAc,EAAE,GAAG,GAAG,IAAI;IAS/D,cAAc,CAAC,WAAW,EAAE,MAAM,EAAE,MAAM,EAAE,eAAe,GAAG,IAAI;IAWlE,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IAKxC,UAAU,IAAI,eAAe,EAAE;IAI/B;;;;;OAKG;IACH,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,QAAQ,EAAE,MAAM,EAAE,OAAO,EAAE,MAAM,OAAO,CAAC,IAAI,CAAC,GAAG,IAAI,GAAG,IAAI;IAWvG;;;;;;;;;OASG;IACH,cAAc,CAAC,WAAW,EAAE,MAAM,GAAG,IAAI;IAMzC;;;;;;;;;;;;;;;OAeG;IACH,qBAAqB,CAAC,WAAW,EAAE,MAAM,EAAE,OAAO,EAAE,gBAAgB,GAAG,IAAI;IAkB3E;;;;;OAKG;IACH,cAAc,CACZ,WAAW,EAAE,MAAM,EACnB,MAAM,EAAE;QAAE,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QAAC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAA;KAAE,GAChG,IAAI;IAKP,gBAAgB,CAAC,QAAQ,EAAE,iBAAiB,GAAG,IAAI;IAMnD,+BAA+B,CAAC,EAAE,EAAE,MAAM,EAAE,SAAS,EAAE,SAAS,GAAG,IAAI;IAWjE,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAwBrC,kBAAkB,IAAI,OAAO,CAAC,IAAI,CAAC;IAenC,oBAAoB,IAAI,OAAO,CAAC,IAAI,CAAC;IAe3C,YAAY,IAAI,iBAAiB,EAAE;IAKnC,WAAW,CAAC,EAAE,EAAE,MAAM,GAAG,iBAAiB,GAAG,SAAS;IAKtD,0BAA0B,CAAC,EAAE,EAAE,MAAM,GAAG,SAAS,GAAG,SAAS;IAK7D,eAAe,CACb,SAAS,EAAE,MAAM,EACjB,OAAO,EAAE,cAAc,EACvB,WAAW,EAAE,MAAM,GAClB,IAAI;IAMP,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAKpC,cAAc,CAClB,SAAS,EAAE,MAAM,EACjB,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,GAAG,CAAC,GACzB,OAAO,CAAC,GAAG,CAAC;IASf,WAAW,IAAI,MAAM,EAAE;IAKvB,uBAAuB,CAAC,WAAW,EAAE,MAAM,GAAG,MAAM,EAAE;CAKvD"}
@@ -186,6 +186,22 @@ class ExtensionBridge {
186
186
  getActions() {
187
187
  return Array.from(this.actionRegistry.values());
188
188
  }
189
+ /**
190
+ * Register a handler for a manifest-declared action.
191
+ * Stores the handler locally in the actionRegistry so the
192
+ * asyar:action:execute message from the host can find it.
193
+ * No IPC message sent — the host already knows about the action from the manifest.
194
+ */
195
+ registerActionHandler(extensionId, actionId, handler) {
196
+ const fullActionId = `act_${extensionId}_${actionId}`;
197
+ this.actionRegistry.set(fullActionId, {
198
+ id: fullActionId,
199
+ title: actionId,
200
+ extensionId,
201
+ execute: handler,
202
+ });
203
+ this.logger.debug(`Registered action handler: ${fullActionId}`);
204
+ }
189
205
  /**
190
206
  * Tells the bridge which extension this iframe represents so its internal
191
207
  * `LogServiceProxy` can stamp `extensionId` on every IPC log call.
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionBridge.js","sourceRoot":"","sources":["../src/ExtensionBridge.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtensionBridge.js","sourceRoot":"","sources":["../src/ExtensionBridge.ts"],"names":[],"mappings":"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"}
@@ -226,4 +226,69 @@ vitest_1.vi.mock('./services/LogServiceProxy', () => ({
226
226
  });
227
227
  }));
228
228
  });
229
+ (0, vitest_1.describe)('ExtensionBridge registerActionHandler', () => {
230
+ let messageHandler;
231
+ (0, vitest_1.beforeEach)(() => {
232
+ vitest_1.vi.resetModules();
233
+ vitest_1.vi.spyOn(window, 'addEventListener').mockImplementation((type, handler) => {
234
+ if (type === 'message') {
235
+ messageHandler = handler;
236
+ }
237
+ });
238
+ Object.defineProperty(window, 'parent', {
239
+ value: { postMessage: vitest_1.vi.fn() },
240
+ writable: true,
241
+ configurable: true,
242
+ });
243
+ });
244
+ (0, vitest_1.afterEach)(() => {
245
+ vitest_1.vi.restoreAllMocks();
246
+ messageHandler = undefined;
247
+ });
248
+ (0, vitest_1.it)('stores handler in actionRegistry with full action ID', () => __awaiter(void 0, void 0, void 0, function* () {
249
+ const { ExtensionBridge } = yield Promise.resolve().then(() => __importStar(require('./ExtensionBridge')));
250
+ const bridge = ExtensionBridge.getInstance();
251
+ const handler = vitest_1.vi.fn();
252
+ bridge.registerActionHandler('com.example.github', 'open-browser', handler);
253
+ const actions = bridge.getActions();
254
+ const found = actions.find(a => a.id === 'act_com.example.github_open-browser');
255
+ (0, vitest_1.expect)(found).toBeDefined();
256
+ (0, vitest_1.expect)(found.extensionId).toBe('com.example.github');
257
+ }));
258
+ (0, vitest_1.it)('handler is invoked when asyar:action:execute message arrives', () => __awaiter(void 0, void 0, void 0, function* () {
259
+ const { ExtensionBridge } = yield Promise.resolve().then(() => __importStar(require('./ExtensionBridge')));
260
+ const bridge = ExtensionBridge.getInstance();
261
+ const handler = vitest_1.vi.fn();
262
+ bridge.registerActionHandler('com.example.github', 'open-browser', handler);
263
+ (0, vitest_1.expect)(messageHandler).toBeDefined();
264
+ const event = new MessageEvent('message', {
265
+ data: {
266
+ type: 'asyar:action:execute',
267
+ payload: { actionId: 'act_com.example.github_open-browser' },
268
+ },
269
+ source: window.parent,
270
+ });
271
+ messageHandler(event);
272
+ yield vitest_1.vi.waitFor(() => {
273
+ (0, vitest_1.expect)(handler).toHaveBeenCalledOnce();
274
+ });
275
+ }));
276
+ (0, vitest_1.it)('does not invoke handler for non-matching action ID', () => __awaiter(void 0, void 0, void 0, function* () {
277
+ const { ExtensionBridge } = yield Promise.resolve().then(() => __importStar(require('./ExtensionBridge')));
278
+ const bridge = ExtensionBridge.getInstance();
279
+ const handler = vitest_1.vi.fn();
280
+ bridge.registerActionHandler('com.example.github', 'open-browser', handler);
281
+ const event = new MessageEvent('message', {
282
+ data: {
283
+ type: 'asyar:action:execute',
284
+ payload: { actionId: 'act_com.example.github_wrong-action' },
285
+ },
286
+ source: window.parent,
287
+ });
288
+ messageHandler(event);
289
+ // Give it a tick to process
290
+ yield new Promise(r => setTimeout(r, 10));
291
+ (0, vitest_1.expect)(handler).not.toHaveBeenCalled();
292
+ }));
293
+ });
229
294
  //# sourceMappingURL=ExtensionBridge.test.js.map
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionBridge.test.js","sourceRoot":"","sources":["../src/ExtensionBridge.test.ts"],"names":[],"mappings":"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"}
1
+ {"version":3,"file":"ExtensionBridge.test.js","sourceRoot":"","sources":["../src/ExtensionBridge.test.ts"],"names":[],"mappings":"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"}
@@ -1,11 +1,8 @@
1
1
  import type { ExtensionSyncProvider } from "./types/SyncType";
2
2
  import type { ExtensionAction } from "./types/ActionType";
3
3
  import type { CommandHandler } from "./types/CommandType";
4
- import { LogServiceProxy, NotificationServiceProxy, ClipboardHistoryServiceProxy, ExtensionManagerProxy, CommandServiceProxy, ActionServiceProxy, NetworkServiceProxy, SettingsServiceProxy, StatusBarServiceProxy, EntitlementServiceProxy, StorageServiceProxy, FeedbackServiceProxy, SelectionServiceProxy, ShellServiceProxy } from "./services";
5
- import { AIServiceProxy } from './services/AIServiceProxy';
6
- import { OAuthServiceProxy } from './services/OAuthServiceProxy';
7
- import { FileManagerServiceProxy } from './services/FileManagerServiceProxy';
8
- import { InteropServiceProxy } from './services/InteropServiceProxy';
4
+ import type { Namespace } from "./ipc/namespaces";
5
+ import type { BaseServiceProxy } from "./services/BaseServiceProxy";
9
6
  /**
10
7
  * A frozen snapshot of an extension's effective preferences, taken at
11
8
  * extension boot. Extension-level preferences are flat keys on this object;
@@ -23,14 +20,30 @@ export interface PreferencesSnapshot {
23
20
  };
24
21
  };
25
22
  }
23
+ /**
24
+ * Unified preferences surface on `context.preferences`. Exposes the
25
+ * frozen snapshot at `.values` (boot-time + push-updated) alongside
26
+ * IPC-backed mutation methods (`set`, `reset`, `refresh`).
27
+ */
28
+ export declare class PreferencesFacade {
29
+ values: PreferencesSnapshot;
30
+ private readonly proxy;
31
+ /** @internal */
32
+ _setValues(snapshot: PreferencesSnapshot): void;
33
+ /** @internal */
34
+ _setExtensionId(id: string): void;
35
+ set(scope: string, key: string, value: unknown): Promise<void>;
36
+ reset(scope: string): Promise<void>;
37
+ refresh(): Promise<PreferencesSnapshot>;
38
+ }
26
39
  export declare class ExtensionContext {
27
40
  private extensionId;
28
- preferences: PreferencesSnapshot;
41
+ readonly preferences: PreferencesFacade;
29
42
  /**
30
43
  * Listeners notified *after* `setPreferences` installs a new frozen
31
44
  * snapshot. Callbacks take no arguments and must re-read fresh values
32
- * from `context.preferences` — the snapshot is already in place when
33
- * they fire. This is a read-only notification, not a live getter:
45
+ * from `context.preferences.values` — the snapshot is already in place
46
+ * when they fire. This is a read-only notification, not a live getter:
34
47
  * extensions that cache preference values at boot subscribe here to
35
48
  * recompute when the user edits their settings.
36
49
  */
@@ -42,8 +55,8 @@ export declare class ExtensionContext {
42
55
  * nesting levels — extensions cannot mutate it.
43
56
  *
44
57
  * After the snapshot is installed, registered `onPreferencesChanged`
45
- * listeners fire. They must re-read `context.preferences` to pick up
46
- * the new values.
58
+ * listeners fire. They must re-read `context.preferences.values` to
59
+ * pick up the new values.
47
60
  */
48
61
  setPreferences(bundle: {
49
62
  extension: Record<string, unknown>;
@@ -60,35 +73,24 @@ export declare class ExtensionContext {
60
73
  * uses this to recompute when the user edits the setting.
61
74
  */
62
75
  onPreferencesChanged(callback: () => void): () => void;
63
- readonly proxies: {
64
- LogService: LogServiceProxy;
65
- NotificationService: NotificationServiceProxy;
66
- ClipboardHistoryService: ClipboardHistoryServiceProxy;
67
- ExtensionManager: ExtensionManagerProxy;
68
- CommandService: CommandServiceProxy;
69
- ActionService: ActionServiceProxy;
70
- NetworkService: NetworkServiceProxy;
71
- SettingsService: SettingsServiceProxy;
72
- StatusBarService: StatusBarServiceProxy;
73
- EntitlementService: EntitlementServiceProxy;
74
- StorageService: StorageServiceProxy;
75
- FeedbackService: FeedbackServiceProxy;
76
- SelectionService: SelectionServiceProxy;
77
- AIService: AIServiceProxy;
78
- OAuthService: OAuthServiceProxy;
79
- ShellService: ShellServiceProxy;
80
- FileManagerService: FileManagerServiceProxy;
81
- InteropService: InteropServiceProxy;
82
- };
76
+ readonly proxies: Partial<Record<Namespace, BaseServiceProxy>>;
83
77
  constructor();
84
78
  private setupFocusTracking;
85
79
  private setupThemeInjection;
86
- getService<T>(serviceType: string): T;
80
+ getService<T>(namespace: Namespace): T;
87
81
  setExtensionId(id: string): void;
88
82
  registerAction(action: ExtensionAction): void;
89
83
  unregisterAction(actionId: string): void;
90
84
  registerCommand(commandId: string, handler: CommandHandler): void;
91
85
  unregisterCommand(commandId: string): void;
86
+ /**
87
+ * Build an `asyar://extensions/{extensionId}/{commandId}?args` deep link URL
88
+ * for a command owned by this extension. Pure string formatting — no IPC.
89
+ *
90
+ * Extensions can embed the returned URL in notifications, clipboard output,
91
+ * generated documents, or pass it to other apps.
92
+ */
93
+ createDeeplink(commandId: string, args?: Record<string, string>): string;
92
94
  registerSyncProvider(provider: ExtensionSyncProvider): void;
93
95
  }
94
96
  export declare function injectThemeVariables(vars: Record<string, string>): void;
@@ -1 +1 @@
1
- {"version":3,"file":"ExtensionContext.d.ts","sourceRoot":"","sources":["../src/ExtensionContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,EACL,eAAe,EACf,wBAAwB,EACxB,4BAA4B,EAC5B,qBAAqB,EACrB,mBAAmB,EACnB,kBAAkB,EAClB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,uBAAuB,EACvB,mBAAmB,EACnB,oBAAoB,EACpB,qBAAqB,EACrB,iBAAiB,EAClB,MAAM,YAAY,CAAC;AACpB,OAAO,EAAE,cAAc,EAAE,MAAM,2BAA2B,CAAC;AAC3D,OAAO,EAAE,iBAAiB,EAAE,MAAM,8BAA8B,CAAC;AACjE,OAAO,EAAE,uBAAuB,EAAE,MAAM,oCAAoC,CAAC;AAC7E,OAAO,EAAE,mBAAmB,EAAE,MAAM,gCAAgC,CAAC;AAErE;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,QAAQ,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAA;KAAE,CAAC;CAC/D;AAGD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,WAAW,CAAc;IAC1B,WAAW,EAAE,mBAAmB,CAEb;IAE1B;;;;;;;OAOG;IACH,OAAO,CAAC,yBAAyB,CAAyB;IAE1D;;;;;;;;;OASG;IACI,cAAc,CAAC,MAAM,EAAE;QAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KACnD,GAAG,IAAI;IAoBR;;;;;;;;;OASG;IACI,oBAAoB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAU7D,SAAgB,OAAO;;;;;;;;;;;;;;;;;;;MAmBrB;;IAOF,OAAO,CAAC,kBAAkB;IA6C1B,OAAO,CAAC,mBAAmB;IAoB3B,UAAU,CAAC,CAAC,EAAE,WAAW,EAAE,MAAM,GAAG,CAAC;IAQrC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAgChC,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAa7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IASxC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;IAiBjE,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAS1C,oBAAoB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;CAyF5D;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAWvE;AAGD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAQnD"}
1
+ {"version":3,"file":"ExtensionContext.d.ts","sourceRoot":"","sources":["../src/ExtensionContext.ts"],"names":[],"mappings":"AAAA,OAAO,KAAK,EAAE,qBAAqB,EAAE,MAAM,kBAAkB,CAAC;AAC9D,OAAO,KAAK,EAAE,eAAe,EAAE,MAAM,oBAAoB,CAAC;AAC1D,OAAO,KAAK,EAAE,cAAc,EAAE,MAAM,qBAAqB,CAAC;AAC1D,OAAO,KAAK,EAAE,SAAS,EAAE,MAAM,kBAAkB,CAAC;AAClD,OAAO,KAAK,EAAE,gBAAgB,EAAE,MAAM,6BAA6B,CAAC;AA0BpE;;;;;;;;GAQG;AACH,MAAM,WAAW,mBAAmB;IAClC,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAC;IACvB,QAAQ,EAAE;QAAE,CAAC,SAAS,EAAE,MAAM,GAAG;YAAE,CAAC,GAAG,EAAE,MAAM,GAAG,OAAO,CAAA;SAAE,CAAA;KAAE,CAAC;CAC/D;AAcD;;;;GAIG;AACH,qBAAa,iBAAiB;IACrB,MAAM,EAAE,mBAAmB,CAER;IAC1B,OAAO,CAAC,QAAQ,CAAC,KAAK,CAAiC;IAEvD,gBAAgB;IAChB,UAAU,CAAC,QAAQ,EAAE,mBAAmB,GAAG,IAAI;IAI/C,gBAAgB;IAChB,eAAe,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAIjC,GAAG,CAAC,KAAK,EAAE,MAAM,EAAE,GAAG,EAAE,MAAM,EAAE,KAAK,EAAE,OAAO,GAAG,OAAO,CAAC,IAAI,CAAC;IAI9D,KAAK,CAAC,KAAK,EAAE,MAAM,GAAG,OAAO,CAAC,IAAI,CAAC;IAI7B,OAAO,IAAI,OAAO,CAAC,mBAAmB,CAAC;CAK9C;AAGD,qBAAa,gBAAgB;IAC3B,OAAO,CAAC,WAAW,CAAc;IACjC,SAAgB,WAAW,EAAE,iBAAiB,CAA2B;IAEzE;;;;;;;OAOG;IACH,OAAO,CAAC,yBAAyB,CAAyB;IAE1D;;;;;;;;;OASG;IACI,cAAc,CAAC,MAAM,EAAE;QAC5B,SAAS,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC;QACnC,QAAQ,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,MAAM,EAAE,OAAO,CAAC,CAAC,CAAC;KACnD,GAAG,IAAI;IAeR;;;;;;;;;OASG;IACI,oBAAoB,CAAC,QAAQ,EAAE,MAAM,IAAI,GAAG,MAAM,IAAI;IAY7D,SAAgB,OAAO,EAAE,OAAO,CAAC,MAAM,CAAC,SAAS,EAAE,gBAAgB,CAAC,CAAC,CAsBnE;;IAOF,OAAO,CAAC,kBAAkB;IA6C1B,OAAO,CAAC,mBAAmB;IAoB3B,UAAU,CAAC,CAAC,EAAE,SAAS,EAAE,SAAS,GAAG,CAAC;IAQtC,cAAc,CAAC,EAAE,EAAE,MAAM,GAAG,IAAI;IAmChC,cAAc,CAAC,MAAM,EAAE,eAAe,GAAG,IAAI;IAa7C,gBAAgB,CAAC,QAAQ,EAAE,MAAM,GAAG,IAAI;IASxC,eAAe,CAAC,SAAS,EAAE,MAAM,EAAE,OAAO,EAAE,cAAc,GAAG,IAAI;IAiBjE,iBAAiB,CAAC,SAAS,EAAE,MAAM,GAAG,IAAI;IAS1C;;;;;;OAMG;IACH,cAAc,CAAC,SAAS,EAAE,MAAM,EAAE,IAAI,CAAC,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,MAAM;IAYxE,oBAAoB,CAAC,QAAQ,EAAE,qBAAqB,GAAG,IAAI;CAyF5D;AAGD,wBAAgB,oBAAoB,CAAC,IAAI,EAAE,MAAM,CAAC,MAAM,EAAE,MAAM,CAAC,GAAG,IAAI,CAWvE;AAGD,wBAAgB,iBAAiB,CAAC,GAAG,EAAE,MAAM,GAAG,IAAI,CAQnD"}